Составить алгоритм и написать функцию, которая находит наибольший общий делитель натуральных чисел а и б - C (СИ)
Формулировка задачи:
Составить алгоритм и написать функцию, которая находит наибольший общий делитель натуральных чисел а и б.
Решение задачи: «Составить алгоритм и написать функцию, которая находит наибольший общий делитель натуральных чисел а и б»
textual
Листинг программы
#include<stdio.h> #include<conio.h> int nod(int a,int b) { int c; if(b>a) c=nod(b,a); else if(b<=0) c=a; else c=nod(b,a%b); return(c); } int main() { int a,b; fflush(stdin); puts("1-e chislo = "); scanf("%d",&a); puts("2-e chislo = "); scanf("%d",&b); printf("nod chisel = %d",nod(a,b)); getch(); }
Объяснение кода листинга программы
- Включаем необходимые заголовочные файлы
- Определяем функцию nod(int a,int b), которая находит наибольший общий делитель натуральных чисел а и b
- Объявляем переменную c, которая будет хранить результат
- Проверяем условие, если b больше или равно a, то вызываем рекурсивно функцию nod, меняя местами значения a и b
- Если b меньше или равно нулю, то c присваивается значение a
- Иначе, c присваивается результат вызова функции nod, где вторым аргументом является остаток от деления a на b
- Возвращаем значение c из функции
- В функции main() объявляем переменные a и b, считываем их значения с помощью scanf
- Вызываем функцию nod с значениями a и b и выводим результат на экран с помощью printf
- Ждем нажатия клавиши с помощью getch
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д