Функция, принимающая три числа, и возвращающая среднее из них - C (СИ)
Формулировка задачи:
функция на вход принимает три числа должен вернуть среднее среди них
например, среди 7, 2, 35 - средним будет 7. Как решить такое?
Решение задачи: «Функция, принимающая три числа, и возвращающая среднее из них»
textual
Листинг программы
#include <stdio.h> #define min(x, y) ( (x) < (y) ? (x) : (y) ) #define max(x, y) ( (x) > (y) ? (x) : (y) ) #define avg(a, b, c) ( (a) > (b) ? ( (c) > (b) ? min((a), (c)) : (b) ) : ( (c) < (b) ? max((a), (c)) : (b) ) ) int main(void) { int nA, nB, nC; while ( printf("Three values: ") && scanf("%d%d%d", &nA, &nB, &nC) == 3 ) printf("Average: %d\n", avg(nA, nB, nC)); return 0; }
Объяснение кода листинга программы
- Включаем стандартную библиотеку ввода-вывода
- Определяем три макроса: — min(x, y) — возвращает меньшее из двух чисел — max(x, y) — возвращает большее из двух чисел — avg(a, b, c) — возвращает среднее из трех чисел, учитывая их порядок
- В функции main() объявляем три переменные типа int для ввода трех чисел
- Запускаем цикл while, который будет выполняться до тех пор, пока пользователь вводит три числа и выводит результат. Внутри цикла: — Выводим приглашение для ввода трех чисел — Считываем три числа с помощью функции scanf() — Вычисляем среднее значение с помощью функции avg() — Выводим результат на экран
- По завершении цикла while завершаем программу с помощью return 0
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д