Min et max d'une liste de nombres aleatoires
Fermé
maria_silva
Messages postés
13
Date d'inscription
samedi 18 juin 2011
Statut
Membre
Dernière intervention
27 février 2012
-
26 juin 2011 à 19:37
KX Messages postés 16753 Date d'inscription samedi 31 mai 2008 Statut Modérateur Dernière intervention 25 novembre 2024 - 27 juin 2011 à 08:47
KX Messages postés 16753 Date d'inscription samedi 31 mai 2008 Statut Modérateur Dernière intervention 25 novembre 2024 - 27 juin 2011 à 08:47
A voir également:
- Min et max d'une liste de nombres aleatoires
- Liste déroulante excel - Guide
- I14 pro max - Accueil - Guide téléphones
- Liste déroulante en cascade - Guide
- Min en maj - Guide
- Liste de diffusion whatsapp - Guide
3 réponses
KX
Messages postés
16753
Date d'inscription
samedi 31 mai 2008
Statut
Modérateur
Dernière intervention
25 novembre 2024
3 019
26 juin 2011 à 20:13
26 juin 2011 à 20:13
Quand tu fais min=max=tab[0], tab[0] n'est pas initialisées et sa valeur par défaut a peu de chance d'être en MIN et MAX (par exemple chez moi elle vaut -858993460)
Du coup puisque tu n'as jamais de valeurs aléatoires plus petite que ce nombre, c'est ce résultat faux que tu gardes jusqu'à la fin...
Il vaudrait mieux faire une initialisation, int min=MAX, max=MIN;
Du coup puisque tu n'as jamais de valeurs aléatoires plus petite que ce nombre, c'est ce résultat faux que tu gardes jusqu'à la fin...
Il vaudrait mieux faire une initialisation, int min=MAX, max=MIN;
maria_silva
Messages postés
13
Date d'inscription
samedi 18 juin 2011
Statut
Membre
Dernière intervention
27 février 2012
27 juin 2011 à 01:45
27 juin 2011 à 01:45
salut!! merci pour ta réponse, mais si j'initialise mes variables min et max comme MIN et MAX, il prend les valeurs entre 1 et 100 (que j'utilise pour mes bornes de la partie aleatoire) et non les nombres qui appartient a mon tableau.
KX
Messages postés
16753
Date d'inscription
samedi 31 mai 2008
Statut
Modérateur
Dernière intervention
25 novembre 2024
3 019
27 juin 2011 à 08:06
27 juin 2011 à 08:06
Attention : c'est min que tu initialises à MAX, et max que tu initialises à MIN...
Ça marchera parce que tu sais que les nombres qui seront dans ton tableau seront compris entre MIN et MAX, donc dès le premier calcul tab[0]<=MAX donc tab[0]<=min donc on fait min=tab[0] dans le premier if, et tab[0]>=MIN, donc tab[0]>=max, donc on fait max=tab[0] dans le deuxième if et tout marchera correctement à condition d'enlever ce else qui n'a pas de sens...
Ça marchera parce que tu sais que les nombres qui seront dans ton tableau seront compris entre MIN et MAX, donc dès le premier calcul tab[0]<=MAX donc tab[0]<=min donc on fait min=tab[0] dans le premier if, et tab[0]>=MIN, donc tab[0]>=max, donc on fait max=tab[0] dans le deuxième if et tout marchera correctement à condition d'enlever ce else qui n'a pas de sens...
KX
Messages postés
16753
Date d'inscription
samedi 31 mai 2008
Statut
Modérateur
Dernière intervention
25 novembre 2024
3 019
27 juin 2011 à 08:47
27 juin 2011 à 08:47
Autres remarques :
Ton return tab[i] n'a aucun sens, car en sortie de boucle on a i==n alors que tab[n] n'est pas défini. De plus tu défini dans le main tab comme int, alors que ça doit évidemment être un tableau sinon tu ne pourras pas récupérer les résultats de celui-ci...
En fait ça présente un problème plus "grave" dans ta manière de concevoir le code, il faudrait séparer les opérations d'affectations et de calculs, c'est à dire d'abord tu initialises ton tableau avec des valeurs aléatoires et après seulement tu lui appliques des calculs comme faire le min et le max. C'est vraiment bizarre de modifier ce qu'on calcul au moment où on le calcule...
Ton return tab[i] n'a aucun sens, car en sortie de boucle on a i==n alors que tab[n] n'est pas défini. De plus tu défini dans le main tab comme int, alors que ça doit évidemment être un tableau sinon tu ne pourras pas récupérer les résultats de celui-ci...
En fait ça présente un problème plus "grave" dans ta manière de concevoir le code, il faudrait séparer les opérations d'affectations et de calculs, c'est à dire d'abord tu initialises ton tableau avec des valeurs aléatoires et après seulement tu lui appliques des calculs comme faire le min et le max. C'est vraiment bizarre de modifier ce qu'on calcul au moment où on le calcule...