Как написать программу на языке Паскаль, которая будет находить среднее арифметическое положительных и отрицательных чисел в последовательности целых чисел от -50 до 50, если количество чисел не превышает 1000? Программа должна выводить среднее с точностью до одного знака после запятой или слово NO, если положительных или отрицательных чисел нет.
Информатика 9 класс Программирование на языке Паскаль программа на Паскале среднее арифметическое положительные числа отрицательные числа Последовательность целых чисел точность до одного знака язык программирования алгоритм нахождения среднего условия задачи вывод результата Новый
Для написания программы на языке Паскаль, которая находит среднее арифметическое положительных и отрицательных чисел в заданной последовательности, следуйте следующим шагам:
Теперь давайте посмотрим на пример кода, который реализует описанные шаги:
program AverageCalculator; var num: Integer; posSum, negSum: Real; posCount, negCount: Integer; begin posSum := 0; negSum := 0; posCount := 0; negCount := 0; while (posCount + negCount < 1000) do begin ReadLn(num); if (num = 0) then Break; // Завершение ввода по нулю if (num > 0) then begin posSum := posSum + num; posCount := posCount + 1; end else if (num < 0) then begin negSum := negSum + num; negCount := negCount + 1; end; end; if (posCount = 0) then WriteLn('NO') else WriteLn('Среднее положительных: ', Round(posSum / posCount * 10) / 10:0:1); if (negCount = 0) then WriteLn('NO') else WriteLn('Среднее отрицательных: ', Round(negSum / negCount * 10) / 10:0:1); end.
В этом коде мы используем цикл для ввода чисел и проверяем, является ли каждое число положительным или отрицательным. Затем мы вычисляем средние значения и выводим их с нужной точностью. Если положительных или отрицательных чисел нет, выводится "NO".