I need to find the least number and the second smallest number of five numbers entered.
But this strange fact is happening:
#Subtrair o menor numero encontrado do numero digitado
dif1 = n1 - menor
dif2 = n2 - menor
dif3 = n3 - menor
dif4 = n4 - menor
dif5 = n5 - menor
#O menor resultado diferente de zero é o segundo menor numero
print(dif1, dif2, dif3, dif4, dif5)
#O erro se encontra aqui!
if (dif1>0) & (dif1<dif2) & (dif1<dif3) & (dif1<dif4) & (dif1<dif5):
print("n1 é o segundo menor numero")
if (dif2>0) & ((dif2<dif1) & (dif2<dif3) & (dif2<dif4) & (dif2<dif5)):
print("n2 é o segundo menor numero")
if (dif3>0) & ((dif3<dif2) & (dif3<dif1) & (dif3<dif4) & (dif3<dif5)):
print("n3 é o segundo menor numero")
if (dif4>0) & ((dif4<dif2) & (dif4<dif3) & (dif4<dif1) & (dif4<dif5)):
print("n4 é o segundo menor numero")
if (dif5>0) & ((dif5<dif2) & (dif5<dif3) & (dif5<dif4) & (dif5<dif1)):
print("n5 é o segundo menor numero")
print(menor)
If I declare only
if (dif1>0):
...
.
The print message is executed on the screen. Likewise if I declare:
if (dif1<dif2) & (dif1<dif3) & (dif1<dif4) & (dif1<dif5):
..
.
But if I declare the sentence complete:
if (dif1>0) & (dif1<dif2) & (dif1<dif3) & (dif1<dif4) & (dif1<dif5):
..
.
The print message does not appear in any way!
I also tried with if(dif1!=0)
and other combination of relatives and nothing. And anyway the terminal does not show any error.
Could anyone tell me why?
PS: It seems to me that this case also happens in other languages.