Найти количество положительных, отрицательных и нулевых чисел в массиве - Pascal
Формулировка задачи:
Решите пожалуйста вот это..
Создать Массив С на 30 целых чисел из диапазона (-25...25). Найти количество положительных чисел в массиве KP, отрицательных KO и нулевых KN. Заменить все отрицательные числа числом +50, а нулевые - числом +30. НАйти среднее арифметическое значение всех элементов массива.
Прям совсем не умею работать с двумерными и далее массивами....
Решение задачи: «Найти количество положительных, отрицательных и нулевых чисел в массиве»
textual
Листинг программы
const n = 30;
var a: array[1..n] of integer;
average: real;
i, KP, KO, KN: integer;
begin
randomize;
KP := 0;
KO := 0;
KN := 0;
writeln('Массив:');
for i := 1 to n do
begin
a[i] := -25 + random(51);
write(a[i]:4);
if a[i] > 0
then inc(KP)
else if a[i] < 0
then inc(KO)
else inc(KN)
end;
writeln;
writeln('Количество положительных чисел: ', KP);
writeln('Количество отрицательных чисел: ', KO);
writeln('Количество чисел, равных нулю: ', KN);
writeln('Преобразованный массив:');
for i := 1 to n do
begin
if a[i] < 0
then a[i] := +50
else if a[i] = 0
then a[i] := +30;
write(a[i]:4)
end;
writeln;
average := a[1];
for i := 2 to n do average := average + a[i];
average := average / n;
write('Среднее арифметическое элементов преобразованного массива: ', average:0:12);
readln
end.
Объяснение кода листинга программы
- Объявляется константа
nсо значением 30. - Объявляются переменные
a(массив целых чисел от 1 до n),average(вещественное число),i,KP,KO,KN(целые числа). - Генерируется случайное значение, инициализируются переменные
KP,KO, иKNзначением 0. - Выводится строка
Массив:. - Для каждого элемента массива от 1 до n выполняется следующее:
- Присваивается случайное значение элементу массива a[i] в диапазоне от -25 до 25.
- Выводится значение a[i], выровненное по ширине в 4 символа.
- Если a[i] больше 0, увеличивается значение переменной KP на 1.
- Иначе, если a[i] меньше 0, увеличивается значение переменной KO на 1.
- Иначе, увеличивается значение переменной KN на 1.
- Выводится пустая строка.
- Выводится количество положительных, отрицательных и нулевых чисел в массиве.
- Выводится преобразованный массив:
- Для каждого элемента массива от 1 до n выполняется следующее:
- Если a[i] меньше 0, заменяется на +50.
- Иначе, если a[i] равно 0, заменяется на +30.
- Выводится значение a[i], выровненное по ширине в 4 символа.
- Для каждого элемента массива от 1 до n выполняется следующее:
- Выводится пустая строка.
- Вычисляется среднее арифметическое элементов преобразованного массива:
- average присваивается значение первого элемента массива a.
- Для каждого элемента массива от 2 до n, к average добавляется значение a[i].
- Затем average делится на n.
- Выводится среднее арифметическое элементов преобразованного массива с точностью до 12 знаков после запятой.
- Считывается следующая строка. Этот код выполняет операции по инициализации массива, подсчету количества положительных, отрицательных и нулевых чисел в массиве, преобразованию массива и вычислению среднего арифметического его элементов.