Enviado em 01/11/2020 - 11:29h
Comecei recentemente no python, estou tentando transcrever meu código em matlab para python, porém ainda não me familiarizei totalmente com questões de identação, agradeço se puderem me ajudar. No código a baixo não está entrando no
M = float(input("Digite o valor do modulo: "))
print("\n")
print('Para o passo fino, recomenda-se um Ângulo de Pressão de 20°\n')
print('Para o passo grosso, recomenda-se um Ângulo de Pressão de 20° a 25°\n')
AngPres = input ('Digite o valor do Angulo de Pressão: ')
print('\nDigite o 0 para Utilizar como entrada os Números de Dentes\n')
entrada = input('Digite o 1 para Utilizar como entrada o Diâmetro Primitivo\n')
armazenar = open('_resultado.txt', "w")
armazenar.write('------------------Cálculo para Engrenagem de Dente Reto-------------\n')
armazenar.write('\n')
armazenar.write(' Característica Valor\n')
armazenar.write('\n')
"-----------------------Dente Padronizado------------------------"
while True:
if M >= 1.25: "Passo Grosso"
"---------------Tabela do Livro ---------------------"
Adendo = 1*M
Dedendo =1.25*M
ProfundidadeDeTrabalho = 2*M
Profundidade = 2.25*M
EspessuraDoDente = 1.57*M
RaioDeArredondamento = 0.30*M
FolgaMinima = 0.25*M
MinimaEspessuraDoTopo = 0.25*M
AlturaDente = Adendo+Dedendo
"---------------------------------------------------"
with open('Passo_Grosso.txt','w') as armazenar:
armazenar.write('---------------------Passo Grosso-----------------\n')
armazenar.write('---------------------Especificações AGMA-------------\n')
armazenar.write(' Adendo(mm) = ')
armazenar.write(str(Adendo))
armazenar.write('\n')
armazenar.write(' Dedendo(mm) = ')
armazenar.write(str(Dedendo))
armazenar.write('\n')
armazenar.write(' Profundidade De Trabalho(mm) = ')
armazenar.write(str(ProfundidadeDeTrabalho))
armazenar.write('\n')
armazenar.write(' Profundidade(mm) = ')
armazenar.write(str(Profundidade))
armazenar.write('\n')
armazenar.write(' Espessura Do Dente(mm) = ')
armazenar.write(str(FolgaMinima))
armazenar.write('\n')
armazenar.write(' Raio De Arredondamento(mm) = ')
armazenar.write(str(RaioDeArredondamento))
armazenar.write('\n')
armazenar.write(' Minima Espessura Do Topo(mm) = ')
armazenar.write(str(MinimaEspessuraDoTopo))
armazenar.write('\n')
armazenar.write(' Altura Dente(mm) = ')
armazenar.write(str(AlturaDente))
armazenar.write('\n')
armazenar.write('---------------------------------------------------------\n')
armazenar.write('\n')
if M < 1.25: "Passo Fino"
"---------------Tabela do Livro ---------------------"
Adendo_pf = 1*M
Dedendo_pf = 1.40*M
ProfundidadeDeTrabalho_pf = 2*M
Profundidade_pf = 2.40*M
EspessuraDoDente_pf = 1.57*M
FolgaMinima_pf = 0.40*M
AlturaDente_pf = Adendo_pf+Dedendo_pf
"---------------------------------------------------"
with open('Passo_Fino.txt','w') as armazenar:
armazenar.write('---------------------Passo Fino-----------------\n')
armazenar.write('---------------------Especificações AGMA-----------------\n')
armazenar.write(' Adendo(mm) = ')
armazenar.write(str(Adendo_pf))
armazenar.write('\n')
armazenar.write(' Dedendo(mm) = ')
armazenar.write(str(Dedendo_pf))
armazenar.write('\n')
armazenar.write(' Profundidade De Trabalho(mm) = ')
armazenar.write(str(ProfundidadeDeTrabalho_pf))
armazenar.write('\n')
armazenar.write(' Profundidade(mm) = ')
armazenar.write(str(Profundidade_pf))
armazenar.write('\n')
armazenar.write(' Espessura Do Dente(mm) = ')
armazenar.write(str(EspessuraDoDente_pf))
armazenar.write('\n')
armazenar.write(' Folga Minima(mm) = ')
armazenar.write(str(FolgaMinima_pf))
armazenar.write('\n')
armazenar.write(' Altura Dente(mm) = ')
armazenar.write(str(AlturaDente_pf))
armazenar.write('\n')
armazenar.write('---------------------------------------------------------\n')
armazenar.write('\n')
armazenar.close()
"------------Diametro Primitivo ou N de Dentes----------"
if entrada == 0:
NDT1 = input('Digite o número de Dentes para a Engrenagem 1: \n')
NDT2 = input('Digite o número de Dentes para a Engrenagem 2: ')
if AngPres == 14.5:
if NDT1 <= 37:
print('Número de Dentes abaixo do recomendado\n')
print('------------------Numero de dentes recomendados------------------\n')
print(' Angulo Preção No de Dentes\n')
print(' 14.5o = 37 \n')
print(' -----> 20o = 21 \n')
print(' -----> 25o = 14 \n')
d = input('Deseja alterar o numero de dentes novamente ? se sim digite [>> 0 <<]: \n')
if d == 0:
NDT1 = input('Digite o novo Número de Dentes para a Engrenagem 1: ')
d = 1
if NDT2 <= 37:
print('Número de Dentes abaixo do recomendado\n')
print('------------------Numero de dentes recomendados------------------\n')
print(' Angulo Preção No de Dentes\n')
print(' 14.5o = 37 \n');
print(' -----> 20o = 21 \n')
print(' -----> 25o = 14 \n')
d = input('Deseja alterar o numero de dentes novamente ? se sim digite [>> 0 <<]: \n')
if d == 0:
NDT2 = input('Digite o novo Número de Dentes para a Engrenagem 2: ')
d = 1
if AngPres == 20:
if NDT1 <= 21:
print('Número de Dentes abaixo do recomendado\n')
print('------------------Numero de dentes recomendados------------------\n')
print(' Angulo Preção No de Dentes\n')
print(' 14.5o = 37 \n');
print(' -----> 20o = 21 \n')
print(' -----> 25o = 14 \n')
d = input('Deseja alterar o numero de dentes novamente ? se sim digite [>> 0 <<]: \n')
if d == 0:
NDT1 = input('Digite o novo Número de Dentes para aEngrenagem 1: ')
d = 1
if NDT2 <= 21:
print('Número de Dentes abaixo do recomendado\n')
print('------------------Numero de dentes recomendados------------------\n')
print(' Angulo Preção No de Dentes\n')
print(' 14.5o = 37 \n');
print(' -----> 20o = 21 \n')
print(' -----> 25o = 14 \n')
d = input('Deseja alterar o numero de dentes novamente ? se sim digite [>> 0 <<]: \n')
if d == 0:
NDT2 = input('Digite o novo Número de Dentes para aEngrenagem 2: ')
d = 1
if AngPres == 25:
if NDT1 <= 14:
print('Número de Dentes abaixo do recomendado\n')
print('------------------Numero de dentes recomendados------------------\n')
print(' Angulo Preção No de Dentes\n')
print(' 14.5o = 37 \n');
print(' -----> 20o = 21 \n')
print(' -----> 25o = 14 \n')
d = input('Deseja alterar o numero de dentes novamente ? se sim digite [>> 0 <<]: \n')
if d == 0:
NDT1 = input('Digite o novo Número de Dentes para a Engrenagem 1: ')
d = 1
if NDT2 <= 14:
print('Número de Dentes abaixo do recomendado\n')
print('------------------Numero de dentes recomendados------------------\n')
print(' Angulo Preção No de Dentes\n')
print(' 14.5o = 37 \n');
print(' -----> 20o = 21 \n')
print(' -----> 25o = 14 \n')
d = input('Deseja alterar o numero de dentes novamente ? se sim digite [>> 0 <<]: \n')
if d == 0:
NDT2 = input('Digite o novo Número de Dentes para a Engrenagem 2: ')
d = 1
Dp1 = (M*NDT1)
Dp2 = (M*NDT2)
if entrada == 1:
Dp1 = input('Digite o Diâmetro primitivo da Engrenagem 1(mm):\n ')
Dp2 = input('Digite o Diâmetro primitivo da Engrenagem 2(mm):\n ')
NDT1 = (Dp1/M)
NDT2 = (Dp2/M)
if AngPres == 14.5:
if NDT1 <= 37:
print('Número de Dentes abaixo do recomendado\n')
print('----------Numero de dentes recomendados - DP------------------\n')
print(' Diametro Primitivo No de Dentes\n')
print(' 46,5 (mm) = 37 \n');
print(' ---> 26,25 (mm) = 21 \n')
print(' ---> 17,25 (mm) = 14 \n')
d = input('Deseja alterar o numero de dentes novamente ? se sim digite [>> 0 <<]: \n')
if d == 0:
Dp1 = input('Digite o novo Diâmetro primitivo para a Engrenagem 1(mm): ')
d = 1
if NDT2 <= 37:
print('Número de Dentes abaixo do recomendado\n')
print('----------Numero de dentes recomendados - DP------------------\n')
print(' Diametro Primitivo No de Dentes\n')
print(' 46,5 (mm) = 37 \n');
print(' ---> 26,25 (mm) = 21 \n')
print(' ---> 17,25 (mm) = 14 \n')
d = input('Deseja alterar o numero de dentes novamente ? se sim digite [>> 0 <<]: \n')
if d == 0:
Dp2 = input('Digite o novo Diâmetro primitivo para a Engrenagem 1(mm): ')
d = 1
if AngPres == 20:
if NDT1 <= 21:
print('Número de Dentes abaixo do recomendado\n')
print('----------Numero de dentes recomendados - DP------------------\n')
print(' Diametro Primitivo No de Dentes\n')
print(' 46,5 (mm) = 37 \n');
print(' ---> 26,25 (mm) = 21 \n');
print(' ---> 17,25 (mm) = 14 \n');
d = input('Deseja alterar o numero de dentes novamente ? se simdigite [>> 0 <<]: \n')
if d == 0:
Dp1 = input('Digite o novo Diâmetro primitivo para aEngrenagem 1(mm): ')
d = 1
if NDT2 <= 21:
print('Número de Dentes abaixo do recomendado\n')
print('----------Numero de dentes recomendados - DP------------------\n')
print(' Diametro Primitivo No de Dentes\n')
print(' 46,5 (mm) = 37 \n');
print(' ---> 26,25 (mm) = 21 \n');
print(' ---> 17,25 (mm) = 14 \n');
d = input('Deseja alterar o numero de dentes novamente ? se simdigite [>> 0 <<]: \n')
if d == 0:
Dp2 = input('Digite o novo Diâmetro primitivo para aEngrenagem 1(mm): ')
d = 1
if AngPres == 25:
if NDT1 <= 14:
print('Número de Dentes abaixo do recomendado\n')
print('----------Numero de dentes recomendados - DP------------------\n')
print(' Diametro Primitivo No de Dentes\n')
print(' 46,5 (mm) = 37 \n');
print(' ---> 26,25 (mm) = 21 \n');
print(' ---> 17,25 (mm) = 14 \n');
d = input('Deseja alterar o numero de dentes novamente ? se sim digite [>> 0 <<]: \n')
if d == 0:
Dp1 = input('Digite o novo Diâmetro primitivo para aEngrenagem 1(mm): ')
d = 1
if NDT2 <= 14:
print('Número de Dentes abaixo do recomendado\n')
print('----------Numero de dentes recomendados - DP------------------\n')
print(' Diametro Primitivo No de Dentes\n')
print(' 46,5 (mm) = 37 \n');
print(' ---> 26,25 (mm) = 21 \n');
print(' ---> 17,25 (mm) = 14 \n');
d = input('Deseja alterar o numero de dentes novamente ? se simdigite [>> 0 <<]: \n')
if d == 0:
Dp2 = input('Digite o novo Diâmetro primitivo para aEngrenagem 2(mm): ')
d = 1
NDT1 = (Dp1/M)
NDT2 = (Dp2/M)
## OBS: A PARTIR DAQUI NÃO TENHO CERTEZA DA IDENTAÇÃO, POIS NÃO SEI DIZER ONDE ESTÃO ESSAS PRÓXIMAS LINHAS DE COD, DENTRO DO LOOP WHILE?
print(armazenar, '\n');
print(armazenar, '----------------------Dados Gerais-------------------\n');
print(armazenar, ' Número de Dentes 1 =%f\n', NDT1);
print(armazenar, ' Número de Dentes 2 =%f\n', NDT2);
print(armazenar, ' Diâmetro Primitivo 1(mm) =%f\n', Dp1);
print(armazenar, ' Diâmetro Primitivo 2(mm) =%f\n', Dp2);
print(armazenar, ' Módulo(mm) =%f\n', M);
print(armazenar, ' Ângulo de Pressão(o) =%f\n', AngPres);
#clc##como dar esse clear no python?
#----------------Relação de Velocidade e Torque----------------
MV = (NDT1/NDT2)
MT = (NDT2/NDT1)
if MV > MT: #Relação de Transmissão
MG = MV
else:
MG = MT
#-------------------------Diametros-------------------------------
Dext1 = Dp1 + 2*M
Dext2 = Dp2 + 2*M
print(armazenar, '\n');
print(armazenar, '---------------------Diâmetros Externos-----------------\n');
print(armazenar, ' Diâmetro Externo 1(mm) =%f\n', Dext1);
print(armazenar, ' Diâmetro Externo 2(mm) =%f\n', Dext2);
#clc##como dar esse clear no python?
#---------------------Distância entre Eixos-----------------------
E = (Dp1 + Dp2)/2
print(armazenar, '\n');
print(armazenar, '------------------------Distância--------------------\n');
print(armazenar, ' Distância Entre Eixos(mm) =%f\n', E);
#clc##como dar esse clear no python?
#----------------------Passos------------------------
PassoCircular = (M*(math.pi))
PassodeBase = PassoCircular*math.cos(math.deg2rad(AngPres))
PassoDiametral = (math.pi)/PassoCircular
print(armazenar, '\n');
print(armazenar, '--------------------------Passos--------------------\n');
print(armazenar, ' Passo Circular(mm) =%f\n', PassoCircular);
print(armazenar, ' Passo de Base(mm) =%f\n', PassodeBase);
print(armazenar, ' Passo Diametral(1/mm) =%f\n', PassoDiametral);
#clc
#-----------------------Raios--------------------
r1 = Dp1/2
r2 = Dp2/2
print(armazenar, '\n');
print(armazenar, '---------------------Raios Primitivos-----------------\n');
print(armazenar, ' Raio Primitivo 1(mm) =%f\n', r1);
print(armazenar, ' Raio Primitivo 2(mm) =%f\n', r2);
#clc
#-----------------Razão de contato-------------------
ComprimentoDeAcao = (math.sqrt(((r1+Adendo)^2)-((r1*math.cos(math.deg2rad(AngPres)))^2)) +
math.sqrt(((r2+Adendo)^2)-((r2*math.cos(math.deg2rad(AngPres)))^2)))
(E*math.sin(math.deg2rad(AngPres)))
GraudeRecobrimento = ComprimentoDeAcao/PassodeBase
print(armazenar, '\n');
print(armazenar, '---------------------Razão de Contato-----------------\n');
print(armazenar, ' Comprimento De Ação(mm) =%f\n', ComprimentoDeAcao);
print(armazenar, ' Grau de Recobrimento =%f\n', GraudeRecobrimento);
#clc
#-------------------Jogo de Dentes----------------
j = input('Digite 0 se deseja calcular uma mudança no jogo de Dentes: \n')
if j == 0:
porcentagem = input('Digite a porcentagem que se deseja aumentar na distância entre centros: \n')
aumento = 1+(porcentagem/100)
AngPresNovo = math.rad2deg(math.acos(math.cos(math.deg2rad(AngPres))/aumento))
MudancaNoJogo1 = 43200*((porcentagem/100)(E))((math.tan(math.deg2rad(AngPresNovo)))/(math.pi*Dp1))
MudancaNoJogo2 = 43200*((porcentagem/100)(E))((math.tan(math.deg2rad(AngPresNovo)))/(math.pi*Dp2))
print(armazenar, '\n');
print(armazenar, '---------------------Jogo de Dentes------------------\n');
print(armazenar, ' Angulo de Pressão Novo(°) =%f\n', AngPresNovo);
print(armazenar, ' Mudança no Jogo 1(min de arco)=%f\n', MudancaNoJogo1);
print(armazenar, ' Mudança no Jogo 2(min de arco)=%f\n', MudancaNoJogo2);
#clc
#--------------------Torque-----------------------
b = input('Digite 0 para calcular o Torque: ')
if b == 0:
F = input('Digite a Força aplicada no Sistema (N): ')
Torque1 = F*r1
Torque2 = F*r2
ComponenteTangencial = Torque1/r1
ComponenteRadial = ComponenteTangencial*math.tan(math.deg2rad(AngPres))
ForcaResultante = ComponenteTangencial/math.cos(math.deg2rad(AngPres))
print(armazenar, '\n');
print(armazenar, '-------------------------Torque---------------------\n');
print(armazenar, ' Força Aplicada(N) =%f\n', F);
print(armazenar, ' Torque 1(N.mm) =%f\n', Torque1);
print(armazenar, ' Torque 2(N.mm) =%f\n', Torque2);
print(armazenar, ' Componente Tangencial(N) =%f\n', ComponenteTangencial);
print(armazenar, ' Componente Radial(N) =%f\n', ComponenteRadial);
print(armazenar, ' Força Resultante(N) =%f\n', ForcaResultante);
Criar entrada (menuentry) ISO no Grub
Como gerar qualquer emoji ou símbolo unicode a partir do seu teclado
Instalar o VIM 9.1 no Debian 12
Como saber o range de um IP público?
Muitas dificuldades ao instalar distro Linux em Notebook Sony Vaio PCG-6131L (VPCEA24FM)
Slackpkg+ (Slackpkg Plus) está de volta!
Como dividir duas janelas igualmente e lado-a-lado na sua tela
Problemas com SQL em objeto TLabel ... (1)
Youtube e networkmeneger para de funcionar (5)
Minha rede tem um espaço invisível que não dá pra digitar o nome da re... (1)
Pedagogia no brasil não passa de alfabetização por m4sturbação mental ... (2)