Имея проблему с программой C, чтобы найти общие факторы между 2 числами.
Программа печатает не общее, а инициализированное значение, которое должно увеличиваться, как закодировано в программе.
И я думаю, что проблема заключается в цикле while.
было бы очень полезно, если бы следующий код был исправлен вместо того, чтобы писать совершенно другой код.
Что я уже пробовал:
#include <conio.h> #include <stdio.h> int main(){ int a, b, i, j; int total_a=0, total_b=0; printf("Enter your integers: \n"); scanf(" %d%d", &a, &b); for(i=1, j=1; i<=a,j<=b; i++,j++){ if(a%i==0) total_a = total_a*10 + i; if(b%j==0) total_b = total_b*10 + j; } /*printf(" %d %d", total_a, total_b); int total=0; printf(" %d", total);*/ int rem_a, rem_b, total =0; while(total_a!=0){ rem_a = total_a%10; while(total_b!=0){ rem_b =total_b%10; if(rem_a==rem_b){ total = total*10 + rem_a; } total_b/=10; } total_a/=10; } printf(" %d", total); return 0; }