Выведите среднее арифметическое всех неотрицательных из введённых чисел - C (СИ)
Формулировка задачи:
помогите написать пожалуйста такую программу:
Запросите у пользователя последовательность вещественных чисел
(продолжайте ввод, пока он успешен), после чего выведите среднее
арифметическое всех неотрицательных из введённых чисел.
Решение задачи: «Выведите среднее арифметическое всех неотрицательных из введённых чисел»
textual
Листинг программы
#include <stdio.h> #include <stdlib.h> #define MAX 100 float arr[MAX]; float *p; int i; float sum; int main() { p = arr; printf("Enter the sequence of float values\n"); while(scanf("%f\n", p)) p++; p = arr; while(*p != '\0') { if(*p) { i++; sum += *p; } p++; } if(!sum) printf("nothing is entered\n"); else printf("Value = %f", (sum / i)); return 0; }
Объяснение кода листинга программы
В этом коде:
- Объявлены массив arr типа float, указатель p и переменная i типа int.
- Указатель p инициализируется значением arr.
- Выводится сообщение
Enter the sequence of float values
. - В цикле while выполняется ввод значений в массив arr с помощью функции scanf.
- Указатель p инициализируется значением arr.
- В цикле while выполняется проверка каждого элемента массива. Если элемент не равен нулю, то к сумме sum прибавляется значение этого элемента, а переменная i увеличивается на единицу.
- Если сумма sum равна нулю, выводится сообщение
nothing is entered
. - Иначе выводится сообщение
Value = ...
, где ... - это среднее арифметическое всех неотрицательных чисел, введенных пользователем. - Возвращается 0, что означает успешный конец работы программы.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д