Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Основы Алгоритм и Програм.doc
Скачиваний:
5
Добавлен:
14.09.2019
Размер:
407.04 Кб
Скачать

2.1. Циклы с заданным числом повторений

В циклах с заданным числом повторений, как правило, используются операторы for-to-do или for-downto-do.

Общий вид оператора for-to-do:

for i:=m1 to m2 do s; (если значение параметра i нужно увеличивать)

for i:=m1 downto m2 do s; (если значение параметра i нужно уменьшать)

где i – управляющая переменная цикла (параметр цикла); m1 и m2 – начальное и конечное значения переменной i, шаг изменения которой равен 1; s – тело цикла, состоящее из простого или составного оператора.

Выполнение оператора for-to-do:

  1. выполняются операторы цикла;

  2. значение переменной i изменяется на единицу (i:=i+1 или i:=i-1);

  3. если i<= m2, процесс повторяется, начиная с пункта 1), в противном случае происходит выход из цикла и переход на продолжение программы.

2.1.1. Вычисление массива значений функции

Пример 5. Вычислить значения функции y(x)=ax+b для n значений аргумента x.

Другими словами, вычислить массив Y={y1, y2, …, yn} при заданном массиве X={x1, x2, …, xn} по формулам yi(xi)=axi+b, где i=1, 2, …, n. Пусть n<=20.

Программа Схема алгоритма

P rogram Prim5;

var

x,y : array[1..20] of real;

i,n : integer;

a,b : real;

begin

writeln('Введите a,b');

readln(a,b);

writeln('Введите n');

readln(n);

writeln('Введите массив');

for i:=1 to n do

read(x[i]);

for i:=1 to n do

begin

y[i]:=a*x[i]+b;

writeln('y[', i ,']=', y[i]:7:2);

end;

end.

Исходные данные: Результат:

a = 3; b = 6; n = 5 y[1]= 21.90

Массив X y[2]= 18.60

5.3 4.2 6.8 2.5 7.1 y[3]= 26.40

y[4]= 13.50

y[5]= 27.30

2.1.2. Обработка одномерных массивов

2.1.2.1. Поиск наименьшего (наибольшего) элемента массива

При поиске наименьшего (наибольшего) элемента массива начальное значение искомого элемента последовательно сравнивают с остальными элементами, изменяя (или не изменяя) значение искомого элемента в соответствии с результатами сравнения. В качестве начального значения наименьшего (наибольшего) элемента можно выбрать первый элемент.

Пример 6. В массиве В, состоящем из n элементов, найти наименьший элемент и индекс (порядковый номер) этого элемента (n20).

Программа Схема алгоритма

P rogram Prim6;

var

b : array[1..20] of real;

i,n,k : integer;

min : real;

begin

writeln('Введите n');

readln(n);

writeln('Введите массив');

for i:=1 to n do

read(b[i]);

min:=b[1]; k:=1;

for i:=2 to n do

if b[i]<min then

begin

min:=b[i];

k:=i;

end;

writeln('min=', min:6:1, ' k=' , k:2)

end.

Исходные данные: Результат:

n = 8

min= -7.0 k= 6

Массив B

4 3 -2 5 11 -7 8 1