Найти среднее арифметическое чисел, находящихся между 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;
}

Объяснение кода листинга программы

  1. Включаем необходимые заголовочные файлы
  2. Определяем функцию avg, которая принимает два целых числа и находит их среднее арифметическое
  3. Внутри функции объявляем переменные i, n и s, которые будут использоваться в цикле
  4. Инициализируем переменную s нулем и переменную n нулем
  5. Запускаем цикл от a до b (включительно) и добавляем каждое число к s, увеличивая n на единицу
  6. Возвращаем среднее арифметическое s и n
  7. В функции main объявляем переменные a, b и tmp
  8. Запрашиваем у пользователя значения для a и b с помощью scanf
  9. Проверяем, равны ли a и b, и если да, выводим сообщение об ошибке и завершаем программу
  10. Если a и b не равны, то меняем их значения местами, если b меньше a, чтобы они были в порядке возрастания
  11. Вызываем функцию avg с аргументами a и b
  12. Выводим результат на экран с помощью printf
  13. Ждем нажатия клавиши с помощью getch
  14. Завершаем программу с кодом 0

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

15   голосов , оценка 3.6 из 5
Похожие ответы