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);
Aprenda a Gerenciar Permissões de Arquivos no Linux
Como transformar um áudio em vídeo com efeito de forma de onda (wave form)
Como aprovar Pull Requests em seu repositório Github via linha de comando
Visualizar arquivos em formato markdown (ex.: README.md) pelo terminal
Dando - teoricamente - um gás no Gnome-Shell do Arch Linux
Como instalar o Google Cloud CLI no Ubuntu/Debian
Mantenha seu Sistema Leve e Rápido com a Limpeza do APT!
Procurando vídeos de YouTube pelo terminal e assistindo via mpv (2025)
Pastas da raiz foram para a área de trabalho (5)
Sinto uma leve lentidão ao arrastar, miniminizar e restauras as janela... (0)
Zorin OS - Virtual Box não consigo abrir maquinas virtuais (6)