Лабораторная работа № 10. Линейные массивы. Расчетные задачи Вариант 7 Pascal
Описание работы
Работа пользователя И. Нестеров
I. Дана программа, решающая определенную задачу.
Проделать следующую работу: исполнить алгоритм при 2-3 наборах данных. Записать исходные данные, промежуточные данные и результат работы для каждого из выбранных наборов значений величин. Сформулировать условие задачи, которую решает данная программа.
Примечание. При формулировании условия задачи в качестве образцов формулировки взять те задачи, которые вы решаете. В частности, из условия однозначно должно быть понятно, что дано и что требуется получить.
7
Program Ex_7;
Type LinMass = Array[1..100] Of Integer;
Var A : LinMass; N, i : Integer;
R : Boolean;
begin
Write('Количество элементов массива? '); ReadLn(N);
For I := 1 To N Do
Begin
Write('Введите A[', I, '] '); ReadLn(A[I]);
End;
R := false; i:=1;
while (i<=n) and not R do
begin
if a[i] = 0 then R:= true;
i:=i+1;
end;
if R then writeln('Нуль есть в массиве') else writeln('Нуля нет в массиве')
end.
II. Дано условие задачи и ее решение, содержащее пропуски. Заполнить пропуски. Проверить работоспособность программы на 2-3 наборах тестовых данных.
Подсчитать количество вхождений максимального элемента в линейный массив.
Type LinMass = Array[1..100] Of Integer;
Var A : LinMass; N, i, max, K : Integer;
begin
Write('Количество элементов массива? '); ReadLn(N);
For I := 1 To __ Do
Begin
Write('Введите A[', I, '] '); ReadLn(A[I]);
End;
max:=a[1]; k:=1;
For I := 2 To N Do
begin
if max < a[i] then begin max :=a[i]; k:=1 end
else if max=a[i] then k:=k+__;
end;
writeln('Ответ: ', ___)
end.
III. Выполнить тренировочное задание ЕГЭ по информатике и ИКТ[1]
Дан массив, содержащий 70 неотрицательных целых чисел. Опишите на одном из языков программирования алгоритм, позволяющий найти и вывести наименьшую нечётную сумму двух соседних элементов массива. Гарантируется, что в массиве есть соседние элементы с нечётной суммой. Исходные данные объявлены так, как показано ниже. Запрещается использовать переменные, не описанные ниже, но разрешается не использовать часть из них.
Паскаль
const N=70;
var
a: array [1..N] of integer;
i, j, x, y: integer;
begin
for i:=1 to N do
readln(a[i]);
…
end.
Проделать следующую работу: исполнить алгоритм при 2-3 наборах данных. Записать исходные данные, промежуточные данные и результат работы для каждого из выбранных наборов значений величин. Сформулировать условие задачи, которую решает данная программа.
Примечание. При формулировании условия задачи в качестве образцов формулировки взять те задачи, которые вы решаете. В частности, из условия однозначно должно быть понятно, что дано и что требуется получить.
7
Program Ex_7;
Type LinMass = Array[1..100] Of Integer;
Var A : LinMass; N, i : Integer;
R : Boolean;
begin
Write('Количество элементов массива? '); ReadLn(N);
For I := 1 To N Do
Begin
Write('Введите A[', I, '] '); ReadLn(A[I]);
End;
R := false; i:=1;
while (i<=n) and not R do
begin
if a[i] = 0 then R:= true;
i:=i+1;
end;
if R then writeln('Нуль есть в массиве') else writeln('Нуля нет в массиве')
end.
II. Дано условие задачи и ее решение, содержащее пропуски. Заполнить пропуски. Проверить работоспособность программы на 2-3 наборах тестовых данных.
Подсчитать количество вхождений максимального элемента в линейный массив.
Type LinMass = Array[1..100] Of Integer;
Var A : LinMass; N, i, max, K : Integer;
begin
Write('Количество элементов массива? '); ReadLn(N);
For I := 1 To __ Do
Begin
Write('Введите A[', I, '] '); ReadLn(A[I]);
End;
max:=a[1]; k:=1;
For I := 2 To N Do
begin
if max < a[i] then begin max :=a[i]; k:=1 end
else if max=a[i] then k:=k+__;
end;
writeln('Ответ: ', ___)
end.
III. Выполнить тренировочное задание ЕГЭ по информатике и ИКТ[1]
Дан массив, содержащий 70 неотрицательных целых чисел. Опишите на одном из языков программирования алгоритм, позволяющий найти и вывести наименьшую нечётную сумму двух соседних элементов массива. Гарантируется, что в массиве есть соседние элементы с нечётной суммой. Исходные данные объявлены так, как показано ниже. Запрещается использовать переменные, не описанные ниже, но разрешается не использовать часть из них.
Паскаль
const N=70;
var
a: array [1..N] of integer;
i, j, x, y: integer;
begin
for i:=1 to N do
readln(a[i]);
…
end.
IV. Решить задачу
Для заданного линейного массива вычислить
a1 – 2a2 + 4a3 – 8a4 ... + 2n–1(–1)n+1an
Для заданного линейного массива вычислить
a1 – 2a2 + 4a3 – 8a4 ... + 2n–1(–1)n+1an





