1. 程式人生 > >1296: a/b + c/d

1296: a/b + c/d

題目描述給你2個分數,求他們的和,並要求和為最簡形式。
輸入輸入首先包含一個正整數T(T<=1000),表示有T組測試資料,然後是T行資料,每行包含四個正整數a,b,c,d
輸出對於每組測試資料,輸出兩個整數e和f,表示a/b + c/d的最簡化結果是e/f,每組輸出佔一行。

樣例輸入
2
1 2 1 3
4 3 2 3

樣例輸出
5 6
2 1

#include<stdio.h>
#include<string.h>
int A(int a,int b){
 int c;
 while(b){
  c=a%b;
  a=b;
  b=c;
 }
 return a;
}
int main(){
 int T;
 scanf("%d",&T);
 while(T--){
  int a,b,c,d;
  scanf("%d%d%d%d",&a,&b,&c,&d);
  int n=a*d+c*b;
  int m=b*d;
  int k=A(n,m);
  printf("%d %d\n",n/k,m/k);
 }
 return 0;
}```