Ir ao conteúdo

Posts recomendados

Postado

Olá pessoal, boa noite. Alguém poderia indicar o possível motivo do código que criei não atualizar a variável "LN", que se encontra fora do loop? Abaixo, segue o código citado:

Dados_Mat = int(input('Informe o Fck do concreto em MPa: '))
Dados_Mat1 = int(input('Informe o Fyk do aço em MPa: '))
Dados_Mat2 = float(input('Informe a bitola da armadura longitudinal em mm: '))
Dados_Mat3 = int(input('Informe a quantidade de barras que compõem a armadura longitudinal: '))
Dados_Sec = float(input('Informe o valor da menor dimensão da seção em metros: '))
Dados_Sec1 = float(input('Informe o valor da maior dimensão da seção em metros: '))
Dados_Sec2 = float(input('Informe o valor do desconto da maior dimensão em metros: '))
Aaco = ((3.14159 * ((Dados_Mat2 / 1000) ** 2)) / 4) * Dados_Mat3
Faco = Aaco * (Dados_Mat1 * 10 ** 6)
Tconc = 0.85 * ((Dados_Mat * 10 ** 6) / 1.4)
LN = 0
Fcon = Tconc * Dados_Sec * 0.8 * LN
if Fcon < Faco:
    cont = 0
    while cont == 0:
        LN += 0.01
        Aaco = ((3.14159 * ((Dados_Mat2 / 1000) ** 2)) / 4) * Dados_Mat3
        Faco = Aaco * (Dados_Mat1 * 10 ** 6)
        Tconc = 0.85 * ((Dados_Mat * 10 ** 6) / 1.4)
        Fcon = Tconc * Dados_Sec * 0.8 * LN
        if Fcon == Faco:
            break
print(LN)

 

  • Amei 1
Postado

@V Sanji    a variáveL  "LN"  está sendo AtuaLizada sim ,  mas o Que faz você penar Que não esteja ?  ,   experimente escrever os valores atuais dessa variável , lá dentro do Loop's ,  assim  :

import time

Dados_Mat = int(input('Informe o Fck do concreto em MPa: '))
Dados_Mat1 = int(input('Informe o Fyk do aço em MPa: '))
Dados_Mat2 = float(input('Informe a bitola da armadura longitudinal em mm: '))
Dados_Mat3 = int(input('Informe a quantidade de barras que compõem a armadura longitudinal: '))
Dados_Sec = float(input('Informe o valor da menor dimensão da seção em metros: '))
Dados_Sec1 = float(input('Informe o valor da maior dimensão da seção em metros: '))
Dados_Sec2 = float(input('Informe o valor do desconto da maior dimensão em metros: '))
Aaco = ((3.14159 * ((Dados_Mat2 / 1000) ** 2)) / 4) * Dados_Mat3
Faco = Aaco * (Dados_Mat1 * 10 ** 6)
Tconc = 0.85 * ((Dados_Mat * 10 ** 6) / 1.4)
LN = 0

print("Aaco= ",Aaco)
print("Faco= ",Faco)

Fcon = Tconc * Dados_Sec * 0.8 * LN
print("Fcon= ",Fcon)
if Fcon < Faco:
    cont = 0
    while cont == 0:
        LN += 0.01
        Aaco = ((3.14159 * ((Dados_Mat2 / 1000) ** 2)) / 4) * Dados_Mat3
        Faco = Aaco * (Dados_Mat1 * 10 ** 6)
        Tconc = 0.85 * ((Dados_Mat * 10 ** 6) / 1.4)
        Fcon = Tconc * Dados_Sec * 0.8 * LN
        print("LN ----= ", LN)
        print("Fcon --= ", Fcon)
        print("Faco --= ", Faco)
        time.sleep(2)
        if Fcon == Faco:
            break
print(LN)

 

Postado

@devair1010, boa noite. Eu gostaria, a princípio, de mostrar apenas o valor final de "LN", para o momento em que os valores de "Fcon" e "Faco" se tornariam iguais.

  • Amei 1
Postado

@V Sanji       entendi   ,    porém creio que isso nunca vai acontecer ,   pois o incremento de LN é bem pouquinho ,  e a diferença entre Faco e Fcon é muito Grande mesmo ,   como você pode observar ao escrever os valores gerados pelo código . 

Postado

Olá @devair1010, boa tarde. Verifiquei novamente o código e parece que, mesmo com as sugestões dadas por você e por outros colegas, a saída de dados continua não retornando o valor desejado por mim. Pelo que pude constatar, a sequência de ações, aparentemente, não está atualizando os dados contidos no laço "while".

  • Obrigado 1
Postado

@V Sanji Os dados no while são atualizados, mas Fcon não está convergindo para Faco. Explique porque isso deve acontecer e em quais condições. Isso vale para qualquer input? Tem algum exemplo de entradas para o código que chegue no resultado esperado? Os cálculos estão corretos? Se isso é um exercício poste o enunciado.

  • Obrigado 1
  • 2 semanas depois...
Postado
Em 03/06/2022 às 21:58, V Sanji disse:
LN = 0
Fcon = Tconc * Dados_Sec * 0.8 * LN

n sei se ta influenciando no código, mas esse cálculo n esta errado?? você definiu LN com valor 0 e logo depois multiplicou ele com outras variáveis, porém qualquer valor multiplicado por 0 é 0, ou seja, Fcon sempre será 0 antes do loop nesse seu cálculo

  • Curtir 1

Crie uma conta ou entre para comentar

Você precisa ser um usuário para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar agora

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...

GRÁTIS: ebook Redes Wi-Fi – 2ª Edição

EBOOK GRÁTIS!

CLIQUE AQUI E BAIXE AGORA MESMO!