Сделать программу в Pascal. 1. Организуйте ввод и вывод одномерного массива в строку, в...

0 голосов
46 просмотров

Сделать программу в Pascal. 1. Организуйте ввод и вывод одномерного массива в строку, в столбец. 2. Найдите произведение ненулевых элементов одномерного массива. 3. Найдите количество элементов одномерного массива, чьи значения лежат в пределах от -5 до 5 включительно. 4. Выведите индексы нулевых элементов одномерного массива. Выходные данные оформите в виде: Нулевые элементы массива находятся на 2, 3, 5, 8 местах.


Информатика (80 баллов) | 46 просмотров
0

индексы и места это разное, вам нужно именно индексы ненулевых элементов или их порядковые номера в массиве?

Дан 1 ответ
0 голосов

begin

 var a := Arr(1, 0, 2, 0, 3, 0, 4, 0, 5);

 Println('в строку:'); a.Println;

 Println('в столбец:'); a.Println(Newline);

 Println('произведение ненулевых элементов:');

 a.Where(x -> x <> 0).Aggregate(1, (p, x)-> p * x).Println;

 Println('кол-во элементов со значениями в пределах (-5, 5):');

 a.Where(x -> x.InRange(-5, 5)).Count.Println;

 Println('нулевые элементы находятся на местах:');

 a.IndexesOf(x -> x = 0).Select(x -> x + 1).Println;

end.


image
(2.5k баллов)
0

Если нужно вводить элементы вручную, замените вторую строку на var a := ReadArrInteger(ReadInteger('n ='));