Тема в кодификаторе: Языки программирования
Тема в аннотации к КДР: Программирование (с развернутым ответом – С).
Вариант 1.
Задан массив, содержащий 25 целых чисел. Опишите на русском языке или на
одном из языков программирования алгоритм вычисления суммы положительных
элементов, предшествующих максимальному элементу массива.
Решение:
Задача содержит следующие подзадачи:
- Ввод массива с клавиатуры;
- Поиск максимального в массиве и его номера;
- Нахождение суммы элементов, предшествующих максимальному.
const N=25; {размерность массива}
var MAX, I, K, S : integer; {описание переменных}
A: array [1..N] of integer;{описание массива}
begin
for i:=1 to N do begin{организуем цикл для ввода элементов массива с клавиатуры}
writeln (‘A[‘,i,’=]’); {вывод на экран пояснения на ввод}
readln(A[i]); {ввод с клавиатуры}
end;
MAX:=A[1]; { присваиваем MAX первый элемент массива}
K:=1; {номеру максимального присваиваем 1}
for i:=2 to N do {организуем цикл для поиска максимального, начиная со второго номера}
if A[i]>MAX then begin MAX:=A[i]; k:=i; end; {если очередной элемент массива больше MAX, то MAX=A[i] и запоминаем его номер в переменной K}
S:=0;{в этой переменной будет хранится сумма }
for i:=1 to k-1 do S:=S+A[i];{организуем цикл для подсчета суммы элементов, предшествующих K}
writeln(S);{вывод на экран суммы }
end.
Вариант 2.
Задан массив, содержащий 25 целых чисел. Опишите на русском языке или на
одном из языков программирования алгоритм вычисления суммы отрицательных
элементов, предшествующих минимальному элементу.
Решение:
Задача содержит следующие подзадачи:
- Ввод массива с клавиатуры;
- Поиск минимального в массиве и его номера;
- Нахождение суммы отрицательных элементов, предшествующих минимальному.
const N=25; {размерность массива}
var MIN, I, K, S : integer; {описание переменных}
A: array [1..N] of integer;{описание массива}
begin
for i:=1 to N do begin{организуем цикл для ввода элементов массива с клавиатуры}
writeln (‘A[‘,i,’=]’); {вывод на экран пояснения на ввод}
readln(A[i]); {ввод с клавиатуры}
end;
MIN:=A[1]; { присваиваем MIN первый элемент массива}
K:=1; {номеру минимального присваиваем 1}
for i:=2 to N do {организуем цикл для поиска минимального, начиная со второго номера}
if A[i]<MIN then begin MIN:=A[i]; k:=i; end; {если очередной элемент массива меньше MIN, то MIN=A[i] и запоминаем его номер в переменной K}
S:=0;{в этой переменной будет хранится сумма }
for i:=1 to k-1 do
if A[i]<0 then S:=S+A[i];{организуем цикл для подсчета суммы отрицательных элементов, предшествующих K}
writeln(S);{вывод на экран суммы }
end.
Вариант 3.
Задан массив, содержащий 25 целых чисел. Опишите на русском языке или на
одном из языков программирования алгоритм вычисления произведения
положительных элементов, расположенных после максимального элемента массива.
Решение:
Задача содержит следующие подзадачи:
- Ввод массива с клавиатуры;
- Поиск максимального в массиве и его номера;
- Нахождение произведения положительных элементов, расположенных после максимального
const N=25; {размерность массива}
var MAX, I, K, P : integer; {описание переменных}
A: array [1..N] of integer;{описание массива}
begin
for i:=1 to N do begin{организуем цикл для ввода элементов массива с клавиатуры}
writeln (‘A[‘,i,’=]’); {вывод на экран пояснения на ввод}
readln(A[i]); {ввод с клавиатуры}
end;
MAX:=A[1]; { присваиваем MAX первый элемент массива}
K:=1; {номеру максимального присваиваем 1}
for i:=2 to N do {организуем цикл для поиска максимального, начиная со второго номера}
if A[i]>MAX then begin MAX:=A[i]; k:=i; end; {если очередной элемент массива больше MAX, то MAX=A[i] и запоминаем его номер в переменной K}
P:=1;{в этой переменной будет хранится произведение }
for i:=k+1 to N do {организуем цикл для подсчета произведения положительных элементов, расположенных после максимального}
if A[i]>0 then P:=P*A[i];
writeln(P);{вывод на экран произведения }
end.
Вариант 4
Задан массив, содержащий 25 целых чисел. Опишите на русском языке или на
одном из языков программирования алгоритм вычисления произведения
отрицательных элементов, расположенных после минимального элемента.
Решение:
Задача содержит следующие подзадачи:
- Ввод массива с клавиатуры;
- Поиск минимального в массиве и его номера;
- Нахождение произведения отрицательных элементов, расположенных после минимального элемента.
const N=25; {размерность массива}
var MIN, I, K, P : integer; {описание переменных}
A: array [1..N] of integer;{описание массива}
begin
for i:=1 to N do begin{организуем цикл для ввода элементов массива с клавиатуры}
writeln (‘A[‘,i,’=]’); {вывод на экран пояснения на ввод}
readln(A[i]); {ввод с клавиатуры}
end;
MIN:=A[1]; { присваиваем MIN первый элемент массива}
K:=1; {номеру минимального присваиваем 1}
for i:=2 to N do {организуем цикл для поиска минимального, начиная со второго номера}
if A[i]<MIN then begin MIN:=A[i]; k:=i; end; {если очередной элемент массива меньше MIN, то MIN=A[i] и запоминаем его номер в переменной K}
P:=1;{в этой переменной будет хранится сумма }
for i:=k+1 to N do
if A[i]<0 then P:=P*A[i];{организуем цикл для подсчета суммы отрицательных элементов, расположенных после минимального}
writeln(P);{вывод на экран произведения }
end.
Комментариев нет:
Отправить комментарий