Вывод общих делителей для двух чисел - C (СИ)
Формулировка задачи:
Надо вывести общие делители двух чисел..
Подскажите, что я тут уже натворила?
Листинг программы
- #include <stdio.h>
- #include <conio.h>
- #include <locale.h>
- int main()
- {
- setlocale(LC_ALL,"russian");
- int a,b;
- printf("Введите первое число \n");
- scanf_s("%d",&a);
- printf("Введите второе число \n");
- scanf_s("%d",&b);
- if (b>=a)
- {
- for (int i=1;i<b;i++)
- {
- if (a/i==b/i && a%i==0)
- printf("%d ",i);
- }
- }
- if (b<a)
- {
- for (int i=1;i<a;i++)
- {
- if (a/i==b/i && a%i==0)
- printf("%d ",i);
- }
- }
- _getch();
- return 0;
- }
Решение задачи: «Вывод общих делителей для двух чисел»
textual
Листинг программы
- for (int i=2; (i <= a) && (i <=b); ++i) {
- if ( (a%i == 0) && (b%i == 0) ) {
- printf("%d ", i);
- }
- }
Объяснение кода листинга программы
В данном коде на языке C выполняется поиск общих делителей для двух чисел a и b.
- Переменная i инициализируется значением 2.
- Цикл for начинается, условие которого гласит, что i должно быть меньше или равно a и b.
- Внутри цикла проверяется, является ли i делителем и для a, и для b.
- Если i является общим делителем для a и b, то оно выводится на экран с помощью функции printf.
- После выхода из цикла, программа завершается.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д