Boucle de Scanner.

Fermé
Nat600 - 8 août 2022 à 16:46
Whismeril Messages postés 19048 Date d'inscription mardi 11 mars 2003 Statut Contributeur Dernière intervention 30 mai 2024 - 9 août 2022 à 08:46

bonjour je débute dans mon apprentissage de java sur éclipse.

Je cherche a crée un programme qui permettra a l utilisateur de rentrer des nombres entiers jusqu'à ce que le nombre 999 soit reçu.Je ne comprend pas comment faire une boucle (en utilisant for) qui permettra à l'utilisateur de rentrer une nouvelle variable à chaque loop (par le bin d un scanner) sachant qu'un boucle se focalise sur la même variable?

Enoncé:

Le programme recevra des nombres entiers de l'utilisateur jusqu'à ce que le nombre 999 soit reçu.Le programme imprimera le nombre minimum et maximum des valeurs reçus.De plus, le nombre valeurs reçu doit être imprimé jusqu'à réception de 999 (non compris).

___________________________________________________________________

Exemple d'exécution :

Veuillez saisir des chiffres. entrez 999 pour arrêter
24
80
400
156
844
45
19
11
90
600
13
999
Le nombre maximum est : 844

Le nombre minimum est : 88

Nombres entrés : 11

________________________________________________________________


Macintosh / Safari 15.6

A voir également:

1 réponse

KX Messages postés 16741 Date d'inscription samedi 31 mai 2008 Statut Modérateur Dernière intervention 30 mai 2024 3 016
8 août 2022 à 21:16

Bonjour,

comment faire une boucle (en utilisant for) qui permettra à l'utilisateur de rentrer une nouvelle variable à chaque loop

Tu n'as pas besoin d'une variable pour chaque tour de boucle. 3 variables suffiront :

  1. le minimum
  2. le maximum
  3. la valeur saisie

0
Whismeril Messages postés 19048 Date d'inscription mardi 11 mars 2003 Statut Contributeur Dernière intervention 30 mai 2024 913
9 août 2022 à 08:19

Bonjour 

je pense que la boucle for n'est pas adaptée.

Cette boucle sert à faire un nombre de tours prédéfini.

Or dans ce cas, c'est la saisie de 999 qui stoppe la boucle, le nombre de tours n'est pas prédéfini.

Donc, à mon sens, il faut utiliser une autre boucle, et il faudra une 4eme variable pour compter le nombre de nombres ( et pas chiffres) que l'utilisateur saisit.

0
KX Messages postés 16741 Date d'inscription samedi 31 mai 2008 Statut Modérateur Dernière intervention 30 mai 2024 3 016 > Whismeril Messages postés 19048 Date d'inscription mardi 11 mars 2003 Statut Contributeur Dernière intervention 30 mai 2024
9 août 2022 à 08:34

Salut,

En effet je n'avais pas vu qu'il fallait aussi afficher le nombre d'entrées.

Quant aux boucles elles sont interchangeables, donc dans l'esprit une boucle while(true) avec un break serait peut être plus adaptée, mais on pourrait très bien l'écrire avec un for quand même. Exemple :

for (int x = scanner.nextInt(); x != 999; x = scanner.nextInt())
0
Whismeril Messages postés 19048 Date d'inscription mardi 11 mars 2003 Statut Contributeur Dernière intervention 30 mai 2024 913 > KX Messages postés 16741 Date d'inscription samedi 31 mai 2008 Statut Modérateur Dernière intervention 30 mai 2024
9 août 2022 à 08:46

En effet, mais vue la question posée, je ne suis pas certain que Nat600 ait déjà le background pour cette boucle for.

0