Найти среднее арифметическое чисел, находящихся между a и b (while) - C (СИ)
Формулировка задачи:
Даны натуральные числа a и b. Найти среднее арифметическое всех чисел, находящихся между a и b.
Используя цикл white
Решение задачи: «Найти среднее арифметическое чисел, находящихся между a и b (while)»
textual
Листинг программы
#include <stdio.h> #include <conio.h> int avg(int a, int b) { int i,n,s; s=0; n=0; for (i=a; i<=b; i++) { s+=i; n++; } return s/n; } int main(int argc, char* argv[]) { int a,b,tmp; printf("a="); scanf("%d",&a); printf("b="); scanf("%d",&b); if (a==b) { printf("Bad data!\n"); return -1; } else if (b < a) { tmp=a; a=b; b=tmp; } printf("avg=%d\n",avg(a,b)); getch(); return 0; }
Объяснение кода листинга программы
- Включаем необходимые заголовочные файлы
- Определяем функцию
avg
, которая принимает два целых числа и находит их среднее арифметическое - Внутри функции объявляем переменные
i
,n
иs
, которые будут использоваться в цикле - Инициализируем переменную
s
нулем и переменнуюn
нулем - Запускаем цикл от
a
доb
(включительно) и добавляем каждое число кs
, увеличиваяn
на единицу - Возвращаем среднее арифметическое
s
иn
- В функции
main
объявляем переменныеa
,b
иtmp
- Запрашиваем у пользователя значения для
a
иb
с помощьюscanf
- Проверяем, равны ли
a
иb
, и если да, выводим сообщение об ошибке и завершаем программу - Если
a
иb
не равны, то меняем их значения местами, еслиb
меньшеa
, чтобы они были в порядке возрастания - Вызываем функцию
avg
с аргументамиa
иb
- Выводим результат на экран с помощью
printf
- Ждем нажатия клавиши с помощью
getch
- Завершаем программу с кодом 0
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д