Maximum pas parmi tous
Si nous devons trouver le maximum (minimum) non pas parmi tous les nombres saisis, mais uniquement parmi les nombres qui satisfont à une certaine condition, nous devons alors tenir compte du fait que le premier nombre que nous prenons comme valeur initiale du maximum (minimum) ne satisfera pas toujours nos exigences.
Par exemple, si nous recherchons le nombre négatif maximum, alors avoir l'ensemble de données :
\(\{5, -2, 4, 2, -1, -3\}\ ) nous obtiendrons le nombre 5 dans la valeur initiale du maximum, et il est positif et supérieur à tout négatif. Et donc la condition
X > M
sera toujours faux.
Par conséquent, il ne suffit pas d'ajouter une seule vérification pour un nombre négatif à l'algorithme du problème précédent, il faut également tenir compte du fait que le premier nombre peut ne pas satisfaire la condition requise (dans ce cas, être négatif ).
Vous pouvez résoudre ce problème en ajoutant la condition suivante dans la boucle :
pseudocode
si X est négatif, alors
si M >= 0 ou M < X, alors
M=X
Dans le code spécifié, la condition M >= 0
permet d'effectuer l'action M = X
même si la condition M
la variable contient initialement une valeur évidemment supérieure aux autres (dans notre exemple, la valeur est égale à 5).
Nous notons également que si la plage de nombres est connue, le nombre minimum (maximum) de la plage spécifiée peut être considéré comme la valeur initiale du maximum (minimum).