mirror of
https://github.com/Kiritow/OJ-Problems-Source.git
synced 2024-03-22 13:11:29 +08:00
Create 1737.c
This commit is contained in:
parent
7863261dd4
commit
5d6257fb54
62
QUSTOJ/1737.c
Normal file
62
QUSTOJ/1737.c
Normal file
|
@ -0,0 +1,62 @@
|
|||
#include <stdio.h>
|
||||
//Written by Kiritow. 求最大公约数
|
||||
long gcd(long a,long b)
|
||||
{
|
||||
if(a==0||b==0)
|
||||
{
|
||||
if(a+b==0)
|
||||
{
|
||||
return 0;
|
||||
}
|
||||
return (a==0)?b:a;
|
||||
}
|
||||
|
||||
while(a!=b)
|
||||
{
|
||||
if(a>b)
|
||||
{
|
||||
a=a-b;
|
||||
}
|
||||
else
|
||||
{
|
||||
b=b-a;
|
||||
}
|
||||
}
|
||||
return a;
|
||||
}
|
||||
int main()
|
||||
{
|
||||
int a,b,c,d;
|
||||
char op;
|
||||
scanf("%d/%d%c%d/%d",&a,&b,&op,&c,&d);
|
||||
int x,y;
|
||||
switch(op)
|
||||
{
|
||||
case '+':
|
||||
x=a*d+b*c;
|
||||
y=b*d;
|
||||
break;
|
||||
case '-':
|
||||
x=a*d-b*c;
|
||||
y=b*d;
|
||||
break;
|
||||
case '*':
|
||||
x=a*c;
|
||||
y=b*d;
|
||||
break;
|
||||
case '/':
|
||||
x=a*d;
|
||||
y=b*c;
|
||||
break;
|
||||
}
|
||||
int ret;
|
||||
while((ret=gcd(x,y))!=1)
|
||||
{
|
||||
x/=ret;
|
||||
y/=ret;
|
||||
}
|
||||
//*/
|
||||
int mx=x>y?x:y;
|
||||
printf("%d/%d%c%d/%d=%d/%d\n",a,b,op,c,d,x,y);
|
||||
return 0;
|
||||
}
|
Loading…
Reference in New Issue
Block a user