Работа с массивами
7 класс
Задача 1. С клавиатуры вводится число n . Заполнить массив первыми n чётными числами 2, 4, 6, 8, … и вывести его. В массиве может находиться не более 100 элементов.
var i, n: integer;
M: array [1..100] of integer;
begin
write( ‘Введите количество элементов массива: ‘ );
readln(n);
//заполнение массива
for i := 1 to n do M[i] := 2*i;
//вывод массива
for i := 1 to n do write(M[i], ‘ ‘ );
end.
Задача 2. С клавиатуры вводится число n , а за ним n элементов массива. Вычислить среднее арифметическое элементов массива. В массиве может находиться не более 100 элементов.
var i, n, sum: integer;
M: array [1..100] of integer;
begin
write( ‘Введите количество элементов массива: ‘ );
readln(n);
//заполнение массива
for i := 1 to n do
begin
write( ‘M[ ‘ , i, ‘] = ‘ );
readln(M[i]);
end ;
//расчёт суммы элементов массива
sum := 0;
for i := 1 to n do sum := sum + M[i];
writeln ( ‘Среднее арифметическое элементов = ‘ , sum / n);
end.
Обратите внимание, что программу можно упростить, убрав из неё второй цикл (в котором считается сумма). Мы можем считать сумму во время ввода. Тогда программа будет выглядеть следующим образом.
var i, n, sum: integer;
M: array [1..100] of integer;
begin
write( ‘Введите количество элементов массива: ‘ );
readln(n);
//заполнение массива и расчёт суммы элементов массива
sum := 0;
writeln(‘Введите элементы’);
for i := 1 to n do
begin
write( ‘M[ ‘ , i, ‘] = ‘ );
readln(M[i]);
sum := sum + M[i];
end ;
for i := 1 to n do writeln ( ‘Среднее арифметическое элементов = ‘ , sum / n);
end.
0) then begin for i := 1 to n do if (M[i] mod 2 0) then sum := sum + M[i]; writeln( ‘Сумма нечётных значений: ‘ , sum); end else for i := 1 to n do sum := sum + M[i]; writeln ( ‘В массиве значений нет‘ ); end." width="640"
Задача 3. Массив заполняется до нуля, при этом нуль в массив не записывается. Необходимо посчитать и вывести сумму элементов данного массива с нечётными значениями.
var a, i, n, sum: integer;
M: array [1..100] of integer;
begin
write( ‘Вводите элементы массива до нуля: ‘ );
//заполнение массива
readln(a);
i := 1;
while (a 0) do
begin
M[i] := a;
i := i + 1;
readln(a);
end ;
n := i – 1;
sum := 0;
if (n 0) then
begin
for i := 1 to n do
if (M[i] mod 2 0) then sum := sum + M[i];
writeln( ‘Сумма нечётных значений: ‘ , sum);
end
else
for i := 1 to n do sum := sum + M[i];
writeln ( ‘В массиве значений нет‘ );
end.
Задача 4. С клавиатуры вводится число n , а за ним n элементов массива. Переставить все значения элементов массива в обратном порядке.
var i, n, temp: integer;
M: array [1..100] of integer;
begin
write( ‘Введите количество элементов массива: ‘ );
readln(n);
//заполнение массива
write( ‘Введите элементы: ‘ );
for i := 1 to n do
begin
write( ‘M[ ‘ , i, ‘] = ‘ );
readln(M[i]);
end ;
for i := 1 to n do
begin
temp := M[i];
M[i] := M[n – i + 1];
M[n – i + 1] := temp;
end ;
write( ‘Перевёрнутый массив: ’ );
for i := 1 to n do write(M[i], ‘ ‘);
end.
Источник
- Горячев А.В. Информатика. 7 класс: учебник для общеобразовательных учреждений: в 2-х книгах. Книга 2. – М.: Баласс, 2014.