Вопрос задан 27.03.2026 в 10:27. Предмет Информатика. Спрашивает Батуева Полина.

1) Написать программу, которая вводит массив из 10 целых чисел и выводит на экран этот же массив в прямом и обратном порядке. 2) Написать программу, которая вводит массив из 8 целых чисел и выводит на экран номера отрицательных элементов и сами эти элементы. 3) Написать программу, которая вводит массив из 8 целых чисел и выводит на экран элементы с четными номерами. 4) Написать программу, которая вводит массив из 12 целых чисел и выводит на экран сам массив и сумму всех этих элементов.

Перейти к ответам

Ответы на вопрос

Отвечает Олінійчук Марина.

Ниже приведены решения всех 4 задач. Для каждой задачи сначала кратко объясню, что именно нужно сделать, а потом покажу пример программы. В качестве языка обычно в таких заданиях используют Pascal или C++, но чаще всего в школьных и базовых заданиях по массивам встречается Pascal, поэтому приведу решения на Pascal.


1. Ввести массив из 10 целых чисел и вывести его в прямом и обратном порядке

Что требуется

Нужно:

  1. создать массив из 10 элементов;

  2. ввести с клавиатуры 10 целых чисел;

  3. вывести массив так, как он был введен;

  4. затем вывести те же элементы, но с конца к началу.

Идея решения

Для ввода массива используем цикл от 1 до 10.
Для вывода в прямом порядке тоже идем от 1 до 10.
Для вывода в обратном порядке идем от 10 до 1.

Программа

pascal
program Zadacha1;
var
a: array[1..10] of integer;
i: integer;
begin
writeln('Введите 10 целых чисел:');
for i := 1 to 10 do
read(a[i]);

writeln('Массив в прямом порядке:');
for i := 1 to 10 do
write(a[i], ' ');
writeln;

writeln('Массив в обратном порядке:');
for i := 10 downto 1 do
write(a[i], ' ');
writeln;
end.

Пояснение

Если пользователь введет:
1 2 3 4 5 6 7 8 9 10

То программа выведет:

  • в прямом порядке: 1 2 3 4 5 6 7 8 9 10

  • в обратном порядке: 10 9 8 7 6 5 4 3 2 1


2. Ввести массив из 8 целых чисел и вывести номера отрицательных элементов и сами элементы

Что требуется

Нужно:

  1. ввести 8 целых чисел в массив;

  2. проверить каждый элемент;

  3. если элемент отрицательный, вывести его номер и значение.

Идея решения

После ввода массива просматриваем все элементы.
Если a[i] < 0, значит элемент отрицательный, и его нужно вывести.

Программа

pascal
program Zadacha2;
var
a: array[1..8] of integer;
i: integer;
begin
writeln('Введите 8 целых чисел:');
for i := 1 to 8 do
read(a[i]);

writeln('Отрицательные элементы и их номера:');
for i := 1 to 8 do
if a[i] < 0 then
writeln('Номер элемента: ', i, ' Значение: ', a[i]);
end.

Пояснение

Допустим, введены числа:
5 -3 7 -1 0 8 -9 4

Тогда программа найдет отрицательные элементы:

  • элемент под номером 2: -3

  • элемент под номером 4: -1

  • элемент под номером 7: -9

Обратите внимание: в Pascal при таком объявлении массива нумерация идет с 1, а не с 0.


3. Ввести массив из 8 целых чисел и вывести элементы с четными номерами

Что требуется

Нужно:

  1. ввести массив из 8 целых чисел;

  2. вывести только те элементы, у которых номер четный.

Идея решения

Если массив объявлен как array[1..8], то четные номера — это:
2, 4, 6, 8.

Можно пройти по всем элементам и проверять условие i mod 2 = 0, либо сразу идти с шагом 2 от 2 до 8.

Программа

pascal
program Zadacha3;
var
a: array[1..8] of integer;
i: integer;
begin
writeln('Введите 8 целых чисел:');
for i := 1 to 8 do
read(a[i]);

writeln('Элементы с четными номерами:');
for i := 2 to 8 do
if i mod 2 = 0 then
write(a[i], ' ');
writeln;
end.

Более короткий вариант

Можно записать еще проще:

pascal
program Zadacha3;
var
a: array[1..8] of integer;
i: integer;
begin
writeln('Введите 8 целых чисел:');
for i := 1 to 8 do
read(a[i]);

writeln('Элементы с четными номерами:');
for i := 2 to 8 do
if i mod 2 = 0 then
write(a[i], ' ');
writeln;
end.

Или так:

pascal
program Zadacha3;
var
a: array[1..8] of integer;
i: integer;
begin
writeln('Введите 8 целых чисел:');
for i := 1 to 8 do
read(a[i]);

writeln('Элементы с четными номерами:');
for i := 2 to 8 do
if i mod 2 = 0 then
write(a[i], ' ');
writeln;
end.

Пояснение

Если введено:
10 20 30 40 50 60 70 80

То элементы с четными номерами:

  • 2-й элемент: 20

  • 4-й элемент: 40

  • 6-й элемент: 60

  • 8-й элемент: 80

На экран будет выведено:
20 40 60 80


4. Ввести массив из 12 целых чисел и вывести сам массив и сумму всех элементов

Что требуется

Нужно:

  1. ввести 12 целых чисел;

  2. вывести весь массив;

  3. найти сумму всех элементов;

  4. вывести эту сумму.

Идея решения

Во время ввода или после ввода можно накапливать сумму в переменной s.

Программа

pascal
program Zadacha4;
var
a: array[1..12] of integer;
i, s: integer;
begin
s := 0;
writeln('Введите 12 целых чисел:');
for i := 1 to 12 do
begin
read(a[i]);
s := s + a[i];
end;

writeln('Массив:');
for i := 1 to 12 do
write(a[i], ' ');
writeln;

writeln('Сумма элементов массива = ', s);
end.

Пояснение

Если ввести:
1 2 3 4 5 6 7 8 9 10 11 12

То программа выведет массив:
1 2 3 4 5 6 7 8 9 10 11 12

И сумму:
78


Общий вывод

Все 4 задачи решаются по одной и той же схеме:

  1. объявляется массив нужного размера;

  2. элементы вводятся в цикле;

  3. затем массив либо выводится полностью, либо обрабатывается по условию.

Главное, что нужно понять в этих задачах:

  • как вводить элементы массива через цикл;

  • как обращаться к элементу по индексу;

  • как использовать условие для отбора нужных элементов;

  • как проходить массив в прямом и обратном порядке;

  • как накапливать сумму элементов.

Если нужно оформить совсем кратко, то ответы можно записать именно в таком виде, без пояснений, только с программами.


Все программы подряд

pascal
program Zadacha1;
var
a: array[1..10] of integer;
i: integer;
begin
for i := 1 to 10 do
read(a[i]);

for i := 1 to 10 do
write(a[i], ' ');
writeln;

for i := 10 downto 1 do
write(a[i], ' ');
writeln;
end.
pascal
program Zadacha2;
var
a: array[1..8] of integer;
i: integer;
begin
for i := 1 to 8 do
read(a[i]);

for i := 1 to 8 do
if a[i] < 0 then
writeln(i, ' ', a[i]);
end.
pascal
program Zadacha3;
var
a: array[1..8] of integer;
i: integer;
begin
for i := 1 to 8 do
read(a[i]);

for i := 2 to 8 do
if i mod 2 = 0 then
write(a[i], ' ');
writeln;
end.
pascal
program Zadacha4;
var
a: array[1..12] of integer;
i, s: integer;
begin
s := 0;
for i := 1 to 12 do
begin
read(a[i]);
s := s + a[i];
end;

for i := 1 to 12 do
write(a[i], ' ');
writeln;
writeln(s);
end.

Похожие вопросы

Топ вопросов за вчера в категории Информатика

Последние заданные вопросы в категории Информатика

Задать вопрос