Придумайте алгоритм, вводящий три целых числа, который находит второе по величине число, если оно существует - C (СИ)

Узнай цену своей работы

Формулировка задачи:

Придумайте алгоритм, вводящий три целых числа, который находит второе по величине число, если оно существует.(С++)

Решение задачи: «Придумайте алгоритм, вводящий три целых числа, который находит второе по величине число, если оно существует»

textual
Листинг программы
#include <stdio.h>
int f(int a,int b,int c); 
int main() 
{
    int a,b,c,x;
    printf("Enter numbers: ");
    scanf("%d%d%d",&a,&b,&c);
    a=f(a,b,c);
    if(a) printf("%d\n",a);
return 0;
}
int f(int a,int b,int c)
{
    if(a==b && b==c) return 0;
    if((a>b && b>=c) ||(c>b && b>=a)) return b;
    if((b>a && a>=c) ||(c>a && a>=b)) return a;
    if((a>c && c>=b) ||(b>c && c>=a)) return c;
}

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

В этом коде:

  1. В функции main() объявлены три переменные типа int - a, b и c, а также переменная x.
  2. Пользователю предлагается ввести три целых числа с помощью функции scanf().
  3. Функция f() вызывается с аргументами a, b и c.
  4. Если возвращаемое значение функции f() не равно нулю, то это второе по величине число, и оно выводится на экран с помощью printf().
  5. В функции f() проверяется, являются ли числа одинаковыми.
  6. Если числа одинаковы, то возвращается ноль.
  7. Если числа не одинаковы, то находится максимальное число из трех.
  8. Если максимальное число равно a, то возвращается b.
  9. Если максимальное число равно b, то возвращается a.
  10. Если максимальное число равно c, то возвращается a.
  11. Если максимальное число равно a, но b больше c, то возвращается b.
  12. Если максимальное число равно b, но c больше a, то возвращается a.
  13. Если максимальное число равно c, но a больше b, то возвращается a.
  14. Если максимальное число равно a, но c больше b, то возвращается c.
  15. Если максимальное число равно b, но a больше c, то возвращается c.
  16. Если максимальное число равно c, но b больше a, то возвращается b.
  17. Если максимальное число равно a, но b больше c, то возвращается a.
  18. Если максимальное число равно b, но c больше a, то возвращается a.
  19. Если максимальное число равно c, но a больше b, то возвращается a.
  20. Если максимальное число равно a, но c больше b, то возвращается c.

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


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

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

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