Hello guys. I would like someone to explain why I can’t update the variable “LN”, which is outside the while loop, through an update of itself that occurs in that loop. Below is the code:
Dados_Mat = int(input('Informe o Fck do concreto em MPa: ')), int(input('Informe o Fyk do
aço em MPa: ')), float(input('Informe a bitola da armadura longitudinal em mm: ')),
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: ')),
float(input('Informe o valor da maior dimensão da seção em metros: ')),
float(input('Informe o valor do desconto da maior dimensão em metros: '))
Aaco = ((3.14159 * ((Dados_Mat[2] / 1000) ** 2)) / 4) * Dados_Mat[3]
Faco = Aaco * (Dados_Mat[1] * 10 ** 6)
Tconc = 0.85 * ((Dados_Mat[0] * 10 ** 6) / 1.4)
LN = 0
Fcon = Tconc * Dados_Sec[0] * 0.8 * LN
if Fcon < Faco:
cont = 0
while cont == 0:
LN += 0.01
Aaco = ((3.14159 * ((Dados_Mat[2] / 1000) ** 2)) / 4) * Dados_Mat[3]
Faco = Aaco * (Dados_Mat[1] * 10 ** 6)
Tconc = 0.85 * ((Dados_Mat[0] * 10 ** 6) / 1.4)
Fcon = Tconc * Dados_Sec[0] * 0.8 * LN
if Fcon == Faco:
cont += 1
print(LN)
Please see my previous post about formatting posted code.
I separated your input() lines to make them easier to read and the program looked like it works as you intend. The code in your original post is not the code you’re running because the posted code is cut into lines from word wrapping. Please use the code formatting function to make sure your posted code is the same as the code in your editor.
Using inputs of 1, 2, 3, 4, 5 ,6, 7 the LN values printed are: