Решение задач с массивами

Слайд 2


Задание. Списать все три задачи в тетрадь без ошибок и прислать фото

Задание. Списать все три задачи в тетрадь без ошибок и прислать фото конспекта
конспекта

Слайд 3

Рассмотрим решение типовых задач.
1. Задача 1. Данных массив из 10 целых чисел.

Рассмотрим решение типовых задач. 1. Задача 1. Данных массив из 10 целых
Найти в нем сумму четных и произведение нечетных элементов.
Решение.
Program a2; - название программы а2
Const n=10; - размерность массива
Var - начало раздела описаний
A:array [1..n] of integer; - описываем массив А, состоящий из 10 целых чисел
Is,p:integer; - параметр цикла
Begin - начало программы
Randomize; - подключаем генератор случайных чисел
For I:=1 to n do - перемещаясь последовательно от ячейки к ячейке
Begin открываем операторную скобку
a[I]:=random(10); - с 1 по 10-ую ячейки памяти заполняем случайными целыми числами,
write(‘ ‘,a[I]:1) - и выводим их на экран
end ; - закрываем операторную скобку
writeln; - перевод курсора на следующую строку
s:=0; - в ячейку s записываем ноль для получения суммы
p:=1; - в ячейку p записываем единицу для получения произведения
for I:=1 to n do - перемещаясь последовательно от ячейки к ячейке проверяем,
if not odd(a[I]) then - если элемент четный,
s:=s + a[I] если - то прибавляем его к содержимому ячейки s,
else - иначе (т.е. нечетный)
p:=p*a[I]; - умножаем на содержимое ячейки p
writeln(‘s=’,s:3); - вывод суммы четных чисел
writeln(‘p=’,p:3); - вывод произведения нечетных чисел.
readln
end.
В данной задаче использована функция odd(x), проверяющая нечетность чисел, так как массив содержит целые числа. Функция odd(x) = истине, если число нечетное и = ложь, если число четное.

Слайд 4

Задача 2. Данных массив из 10 целых чисел. Найти в нем наибольший

Задача 2. Данных массив из 10 целых чисел. Найти в нем наибольший
и наименьший элементы и их порядковые номера.
Решение.
Program a3; - название программы а3
Const n=10; - размерность массива
Var - начало раздела описаний
A:array [1..n] of integer; - описываем массив А, состоящий из 10 целых чисел
I,k,p,max,min:integer; - переменные, участвующие в программе
Begin - начало программы
Randomize; -подключаем генератор случайных чисел
For I:=1 to n do - перемещаясь последовательно от ячейки к ячейке
Begin открываем операторную скобку
a[I]:=random(10); - с 1 по 10-ую ячейки памяти заполняем случайными целыми числами,
write(‘ ‘,a[I]:1) - и выводим их на экран
end ; - закрываем операторную скобку
writeln; - перевод курсора на следующую строку
max:=a[1]; - в ячейку с именем max записываем первый элемент массива
k:=1; - в ячейку с именем к порядковый номер первого элемента
for I:=2 to n do - начиная со второй ячейки
if max begin - если max меньше, то
max:=a[I]; - большее значение записываем в ячейку max,
k:=I - а в ячейку к порядковый номер большего элемента
end;
Аналогично и для минимального (наименьшего) элемента:
min:=a[1]; p:=1;
for I:=2 to n do
if min>a[I] then
begin
min:=a[I];
p:=I
end;
writeln(‘max=’,max:2); - вывод значения максимального элемента
writeln(‘k=’,k:2); - вывод порядкового номера максимального элемента
writeln(‘min=’,min:2); - вывод значения минимального элемента
writeln(‘p=’,p:2); - вывод порядкового номера минимального элемента
readln
end.