Задачи по Pascal. Найти сумму элементов массива с четными номерами, произведение отрицательных элементов, количество нечетных элементов.

Задачи по Pascal

Условие задачи: Массив А вводится с клавиатуры. Найти сумму его элементов с четными номерами, произведение отрицательных элементов, количество нечетных элементов. Размер произвольный. (Язык Pascal)

Сложность: легкая.

Решение задачи

До начала решения задачи прочитайте вот ( это ), там мы искали среднее арифметическое элементов с нечетными номерами, прочитайте там начало и вы поймете что значит элементы с четными номерами.

Теперь к решению, оно не трудное, мы начнем заполнять массив вручную (по условию задачи), и каждый введенный элемент будем проверять на условия которые даны в задаче.

Для того чтобы решить задачу нам понадобятся следующие переменные:

  1. Переменная mass — для массива
  2. Переменная i — для цикла
  3. Переменная n — для кол-ва элементов массива
  4. Переменная count — для кол-во нечетных элементов
  5. Переменная summa — для сумма элементов с четными номерами
  6. Переменная proiz — для произведения отрицательных элементов.

Начнем мы с каркаса нашей программы

1
2
3
4
5
6
7
8
9
10
11
12
13
14
type
massiv = array [1..100] of integer; // создаём свой тип данных для массива
var
mass : massiv; // объявляем
summa, proiz, count, n, i : integer; // переменные
begin
write('Введите длину массива : ');readln(n); // просим пользователя ввести длину массива
summa := 0; proiz := 1; count := 1; // присваиваем начальные значение переменным чтобы не было ошибок
readln; // чтобы программа не закрывалась
end.

Тут мы создали свой тип данных для массива, как и зачем читайте ( тут ), попросили пользователя ввести кол-во элементов массива.

Также присвоили начальные значения переменным с которыми будем работать, т.е. будем их складывать или умножать с какими-то другими переменными.

Обратите внимание что у переменной proiz начальное значение 1 а не 0, если будет 0, то произведение всегда будет равно 0.

Теперь довольно просто цикл :

1
2
3
4
5
6
7
8
9
10
11
12
for i:=1 to n do // пускаем цикл
begin
write('Введите ',i, ' элемент : ');readln(mass[i]); // просим пользователя ввести число
// проверяем введенное пользователем число на все условия
if (i mod 2 = 0) then // если номер элемента четный
summa := summa + mass[i];
if (mass[i] < 0) then // если введенное число меньше 0
proiz := proiz * mass[i];
if (mass[i] mod 2 <> 0) then // если введенное число нечетное
count := count + 1;
end;

Всё довольно просто, каждое введенное пользователем число мы проверяем на три условия.

Всё решение задачи Pascal

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
type
massiv = array [1..100] of integer; // создаём свой тип данных для массива
var
mass : massiv; // объявляем
summa, proiz, count, n, i : integer; // переменные
begin
write('Введите длину массива : ');readln(n); // просим пользователя ввести длину массива
summa := 0; proiz := 1; count := 1; // присваиваем начальные значение переменным чтобы не было ошибок
for i:=1 to n do // пускаем цикл
begin
write('Введите ',i, ' элемент : ');readln(mass[i]); // просим пользователя ввести число
// проверяем введенное пользователем число на все условия
if (i mod 2 = 0) then // если номер элемента четный
summa := summa + mass[i];
if (mass[i] < 0) then // если введенное число меньше 0
proiz := proiz * mass[i];
if (mass[i] mod 2 <> 0) then // если введенное число нечетное
count := count + 1;
end;
writeln('Сумма элементов с четными номерами : ', summa); // выводим результат
writeln('Произведение отрицательных элементов : ', proiz); // выводим результат
writeln('Количество нечетных элементов : ', count); // выводим результат
readln; // чтобы программа не закрывалась
end.
cyber
Оцените автора
CyberLesson | Быстро освоить программирование Pascal и C++. Решение задач Pascal и C++
Добавить комментарий