分数加减法
2016-07-20 19:48
267 查看
#include<stdio.h>
int gongyueshu(int i,int j)
{
int v;
while(j)
{
v=i%j;
i=j;
j=v;
}
return i;
}
int main ()
{int i,j,k,l;
char a[10];
while(scanf("%s",a)!=EOF)
{if(a[3]=='-')
i=(a[0]-48)*(a[6]-48)-(a[4]-48)*(a[2]-48);
else
i=(a[0]-48)*(a[6]-48)+(a[4]-48)*(a[2]-48);
j=(a[2]-48)*(a[6]-48);
if(i==0)
printf("0\n");
else if(i%j==0)
printf("%d\n",i/j);
else
{ if(i<0)
k=gongyueshu(-i,j);
else
k=gongyueshu(i,j);
printf("%d/%d\n",i/k,j/k);
}
}
return 0;
}
int gongyueshu(int i,int j)
{
int v;
while(j)
{
v=i%j;
i=j;
j=v;
}
return i;
}
int main ()
{int i,j,k,l;
char a[10];
while(scanf("%s",a)!=EOF)
{if(a[3]=='-')
i=(a[0]-48)*(a[6]-48)-(a[4]-48)*(a[2]-48);
else
i=(a[0]-48)*(a[6]-48)+(a[4]-48)*(a[2]-48);
j=(a[2]-48)*(a[6]-48);
if(i==0)
printf("0\n");
else if(i%j==0)
printf("%d\n",i/j);
else
{ if(i<0)
k=gongyueshu(-i,j);
else
k=gongyueshu(i,j);
printf("%d/%d\n",i/k,j/k);
}
}
return 0;
}
相关文章推荐
- UVA-11374(最短路)
- 一个非计算机专业的安卓工程师成长之路
- java之异常
- HDU 4597 Play Game[博弈论 负值最大函数 记忆化搜索]
- html5文件-上传
- 【NOIP2007提高组T3】矩阵取数游戏-动态规划+高精度
- NOIPの模拟_2016_7_20_t2_Graph Coloring
- [283] Move Zeroes
- centos6.3 安装配置redis
- Codeforces Round #363 D Fix a Tree(并查集)
- UVA 657 The die is cast
- (面试)指针与数组的区别
- Simplify Path
- codeforces C. Hometask(贪心)
- [置顶] Android6.0权限适配的那些坑
- hdu 5726 GCD 倍增+ 二分
- iOS-RAC学习笔记(一)——RACStream
- TotoiseSVN-小乌龟的使用方法
- 交叉编译Qt5.5.1 with egl (2)
- HDOJ 1002 A + B Problem II