Задача 1.Ввести в ЭВМ последовательность из n чисел x1, х2,..., хn, n<200. Найти минимальное и максимальное из них.
При поиске минимума или максимума используется дополнительная переменная min (или max), которой:
1) вначале присваивается значение первого числа из последовательности (x1), т.е. принимается, что первое число является текущим минимумом (максимумом);
2) начиная со второго числа, производится сравнение этого числа со значением переменной min (или max) и если число из массива меньше min (больше max), то на место min (max) записывается это число. Теперь это число будет текущим минимумом (максимумом).
Ясно, что после просмотра всех чисел последовательности в переменной min (или max) будет находиться окончательное значение минимума (или максимума). Программа для этого алгоритма будет иметь вид
Program Minmax;
Const
Nmax=200;
Var
X : Array [1..Nmax] Of Real;
Min, Max : Real;
N, i : Integer;
Begin
Writeln('Введите количество чисел');
Readln(n);
Writeln('Вводите элементы массива');
For i := 1 To n Do
Read(X[i]);
Min := X[1];
Max := X[1];
For i : =2 To n Do
If Max < X[i] Then
Max := X[i]
Else
If Min > X[i] Then
Min :=X [i];
Writeln ('Min= ', Min:8;2,'Max= ', Max:8:2);
End.
В некоторых случаях бывает необходимо не только найти минимальное или максимальное число в последовательности, но и запомнить его номер (индекс).
Задача 2.Найти минимум в последовательности из n чисел (n>=100) и номер минимального числа. В этой задаче необходимо использовать ещё одну переменную: не только Min, но и номер, – например Imin. Каждый раз, когда Min присваивается очередное значение, нужно запомнить и индекс (номер) числа. Соответствующая программа может быть представлена в виде