Trouble arranging numbers in language python help me

Question:

I wrote this code but it doesn’t work it always gives the number zero

tab = []
N=int(input('Entre un nombre '))
for i in range(0,N):
   tab.append(int(input('entre un nombre')))
   min_valu = tab[0]
for i in range(0,N):
  if (min_valu > i ):
     min_valu = i
print('la veleur minimale est',min_valu)     

enter image description here

Asked By: ibra taha

||

Answers:

You’re always on the right track my brother;
Just you’ve misunderstand doing looping with range and operator in :

  • As @mousetail responded in comments,
    You could not use range method using just for i in tab :
for i in tab:
    if (min_valu > i):
        min_valu = i
  • As @MadPhysicist responded in comments,
    You could use range but access tab with index i:
for i in range(0,N):
    if (min_valu > tab[i]):
        min_valu = tab[i]
Answered By: TAHER El Mehdi

Bonjour Ibra
Première remarque: la ligne 5 est a l’intérieur de la boucle. Il n’y a aucune utilité à assigner N fois la même valeur à min_valu.
Deuxièmement, avec les nombres montrés dans l’exemple, min_valu vaudra 4. À la première itération de la 2ième boucle, tu compareras 4 à 0 et tu déposeras 0 dans min_valu. Ce zéro demeurera le minimum jusqu’à la fin de l’exécution.
Troisièmement: il existe une fonction min() qui détermine le minimum de 2 items.L’utiliser rendra ton programme plus clair.

min_valu = min( min_valu, tab[i])

Finalement, puisque min() peut traiter toute une liste, je te propose le programme suivant:

tb=[]
ligne = input( "Entre des nombres séparés par un espace: ")
for nombre in ligne.split():
  tb.append( int( nombre))
print( "La valeur minimale est ", min(tb))
Answered By: user3435121
Categories: questions Tags: , ,
Answers are sorted by their score. The answer accepted by the question owner as the best is marked with
at the top-right corner.