Дан массив А (10). Найти произведение индексов положительных элементов и количество отрицательных элементов - Pascal
Формулировка задачи:
Дан массив А (10). Найти произведение индексов положительных элементов и количество отрицательных элементов
Решение задачи: «Дан массив А (10). Найти произведение индексов положительных элементов и количество отрицательных элементов»
textual
Листинг программы
const n = 10; var a: array [1..n] of integer; i, p, count: integer; begin randomize; count := 0; p := 1; for i := 1 to n do begin a[i] := -10 + random(21); write(a[i], ' '); if a[i] > 0 then p := p * i else if a[i] < 0 then inc(count); end; writeln('Произведение: ', p, '; Количество: ', count); end.
Объяснение кода листинга программы
- Объявляются константы и переменные:
- n = 10 - размер массива
- a = array [1..n] of integer - массив для заполнения числами
- i, p, count = integer - переменные для выполнения операций
- Выполняется инициализация генератора случайных чисел:
- randomize - инициализация генератора случайных чисел
- Инициализируются счётчики:
- count = 0 - счётчик отрицательных чисел
- p = 1 - счётчик для хранения произведения индексов
- Заполняется массив a случайными числами:
- for i = 1 to n do - цикл по индексам массива
- a[i] := -10 + random(21) - в каждую ячейку записывается случайное число от -10 до 10
- write(a[i], ' ') - выводится на экран значение каждого элемента массива, разделённое пробелом
- Условие для произведения индексов положительных чисел:
- if a[i] > 0 then p := p * i - если элемент положительный, то его индекс умножается на произведение
- Условие для подсчёта отрицательных чисел:
- else if a[i] < 0 then inc(count) - если элемент отрицательный, то счётчик отрицательных чисел увеличивается на единицу
- Выводится на экран результат:
- writeln('Произведение: ', p, '; Количество: ', count) - выводится произведение и количество отрицательных чисел