Máximo não entre todos
Se precisarmos encontrar o máximo (mínimo) não entre todos os números inseridos, mas apenas entre os números que atendem a uma determinada condição, devemos levar em consideração o fato de que o primeiro número que tomamos como valor inicial do máximo (mínimo) nem sempre satisfará nossos requisitos.
Por exemplo, se estamos procurando o número negativo máximo, tendo o conjunto de dados:
\(\{5, -2, 4, 2, -1, -3\}\ ) obteremos o número 5 no valor inicial do máximo, e é positivo e maior que qualquer negativo. E, portanto, a condição
X > M sempre será falso.
Portanto, não basta adicionar apenas uma verificação de número negativo ao algoritmo do problema anterior, é necessário também levar em consideração o fato de que o primeiro número pode não satisfazer a condição exigida (neste caso, ser negativo ).
Você pode corrigir isso adicionando a seguinte condição dentro do loop:
pseudocódigo
se X é negativo, então
se M >= 0 ou M < X, então
M=X
No código especificado, a condição M >= 0
permite que você execute a ação M = X
mesmo se M
variável contém inicialmente um valor obviamente maior que o resto (no nosso exemplo, o valor é igual a 5).
Também observamos que, se o intervalo de números for conhecido, o número mínimo (máximo) do intervalo especificado pode ser considerado como o valor inicial do máximo (mínimo).