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);
Como escolher o melhor escalonador de CPU para melhorar o desempenho da máquina
Curiosidade sobre DOOM Guy e Isabelle de Animal Crossing
Inicializando servidor Ubuntu na AWS e rodando apache em Container
Instalando TeamViewer no Debian 12
Conheça o Octopi, outro frontend para o Pacman com acesso ao AUR (Arch Linux e derivados)
Terminal transparente no Debian 12 com interface i3wm usando Xfce4-Terminal e Compton
horário adiantado no sistema (12)
Apertei Crtl+alt+f4 e agora somente inicia na linha de comando (1)
Eu estou com problemas para usar o QBASIC no Dosbox X (3)
Tibia não pode ser aberto em virtual machine (14)
Após atualização do Ubuntu 22.04.4 LTS perdi a instalação da placa de ... (3)