Difference between revisions of "Solução: Problema da simplificação das frações (Bruno Barbosa)"
From AdonaiMedrado.Pro.Br
(5 intermediate revisions by 3 users not shown) | |||
Line 2: | Line 2: | ||
#include <stdio.h> | #include <stdio.h> | ||
− | + | ||
+ | int analisaImprime(int num, int x, int y); | ||
+ | |||
+ | int analisaImprime(int i, int x, int y){ | ||
+ | |||
+ | while((x%i!=0)||(y%i!=0)){ | ||
+ | i--; | ||
+ | } | ||
+ | if((x%i == 0)&&(y%i==0)) | ||
+ | printf("%d %d\n", x/i, y/i); | ||
+ | |||
+ | else | ||
+ | printf("%d %d\n", x, y); | ||
+ | } | ||
+ | |||
int main(){ | int main(){ | ||
− | int n, m | + | |
+ | int n, m; | ||
scanf("%d %d", &n, &m); | scanf("%d %d", &n, &m); | ||
− | + | ||
while(n || m){ | while(n || m){ | ||
− | + | ||
if(!n || !m){ | if(!n || !m){ | ||
− | + | ||
− | + | if(n != 0) | |
− | + | printf("%d %d\n", n/n, m); | |
− | if(n | + | if(m != 0) |
− | + | printf("%d %d\n", n, m/m); | |
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | if( | + | |
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
} | } | ||
+ | |||
+ | else | ||
+ | analisaImprime(n, n, m); | ||
+ | |||
scanf("%d %d", &n, &m); | scanf("%d %d", &n, &m); | ||
} | } | ||
} | } | ||
− | + | ||
</code> | </code> |
Latest revision as of 18:53, 12 June 2009
#include <stdio.h> int analisaImprime(int num, int x, int y); int analisaImprime(int i, int x, int y){ while((x%i!=0)||(y%i!=0)){ i--; } if((x%i == 0)&&(y%i==0)) printf("%d %d\n", x/i, y/i); else printf("%d %d\n", x, y); } int main(){ int n, m; scanf("%d %d", &n, &m); while(n || m){ if(!n || !m){ if(n != 0) printf("%d %d\n", n/n, m); if(m != 0) printf("%d %d\n", n, m/m); } else analisaImprime(n, n, m); scanf("%d %d", &n, &m); } }