将a/b和c/d简化一下就可以了

分数加减法
Time Limit: 1000MS   Memory Limit: 65536K
Total Submissions: 12588   Accepted: 4206

Description

编写一个C程序,实现两个分数的加减法

Input

输入包括多行数据 

每行数据是一个字符串。格式是"a/boc/d"。

当中a, b, c, d是一个0-9的整数。o是运算符"+"或者"-"。

数据以EOF结束 

输入数据保证合法

Output

对于输入数据的每一行输出两个分数的运算结果。 

注意结果应符合书写习惯。没有多余的符号、分子、分母,而且化简至最简分数

Sample Input

  1. 1/8+3/8
  2. 1/4-1/2
  3. 1/3-1/3

Sample Output

  1. 1/2
  2. -1/4
  3. 0

Source

  1. #include<stdio.h>
  2.  
  3. int gcd(int a,int b)
  4. {
  5. return b==0?a:gcd(b,a%b);
  6. }
  7.  
  8. int main()
  9. {
  10. int a,b,c,d,sum1,sum2,f,flag;
  11. char o;
  12. while(~scanf("%d/%d%c%d/%d",&a,&b,&o,&c,&d))
  13. {
  14. flag=0;
  15. sum2=b*d;
  16. if(o=='+')
  17. {
  18. sum1=a*d+b*c;
  19. }
  20. else if(o=='-')
  21. {
  22. sum1=a*d-b*c;
  23. }
  24. f=gcd(sum1,sum2);
  25. if(sum1==0)
  26. printf("0\n");
  27. else if(sum2/f==1)
  28. printf("%d\n",sum1/f);
  29. else
  30. {
  31. if(sum1<0&&sum2<0)
  32. {
  33. sum1=-sum1;
  34. sum2=-sum2;
  35. }
  36. else if(sum1<0&&sum2>0)
  37. {
  38. sum1=-sum1;
  39. flag=1;
  40. }
  41. else if(sum1>0&&sum2<0)
  42. {
  43. sum2=-sum2;
  44. flag=1;
  45. }
  46. f=gcd(sum1,sum2);
  47. if(flag==0)
  48. printf("%d/%d\n",sum1/f,sum2/f);
  49. else if(flag==1)
  50. {
  51. printf("-%d/%d\n",sum1/f,sum2/f);
  52. }
  53. }
  54. }
  55. return 0;
  56. }

版权声明:本文博客原创文章,博客,未经同意,不得转载。

POJ 3979 分数减法【数学问题的探讨】的更多相关文章

  1. poj 3979 分数加减法

    分数加减法 Time Limit: 1000MS   Memory Limit: 65536K Total Submissions: 13666   Accepted: 4594 Descriptio ...

  2. c#部分---用结构体的题目- //请输入班级人数,输入每个人的学号,姓名,和语文分数、数学分数和英语分数(要求使用结构体)

    //请输入班级人数,输入每个人的学号,姓名,和语文分数.数学分数和英语分数(要求使用结构体), //求班级里两个语文分数是最高分的学生的所有信息:数学分数是最高分的两个学生的所有信息:英语平均分 建立 ...

  3. YTU 2578: 分数减法——结构体

    2578: 分数减法--结构体 时间限制: 1 Sec  内存限制: 128 MB 提交: 522  解决: 399 题目描述 分数可以看成是由字符'/'分割两个整数构成,可以用结构体类型表示.请用结 ...

  4. POJ 3597 种类数 数学+递推

    http://poj.org/problem?id=3597 题目大意:把一个正多边形分成数个三角形或者四边形,问有多少种方案. 思路:http://www.cnblogs.com/Ritchie/p ...

  5. POJ 1759 Garland(二分+数学递归+坑精度)

    POJ 1759 Garland  这个题wa了27次,忘了用一个数来储存f[n-1],每次由于二分都会改变f[n-1]的值,得到的有的值不精确,直接输出f[n-1]肯定有问题. 这个题用c++交可以 ...

  6. poj 3399 Product(数学)

    主题链接:http://poj.org/problem?id=3399 Product Time Limit: 1000MS   Memory Limit: 65536K Total Submissi ...

  7. POJ 3252 Round Numbers 数学题解

    Description The cows, as you know, have no fingers or thumbs and thus are unable to play Scissors, P ...

  8. POJ 1845-Sumdiv【经典数学题目---求因子和】

    转载请注明出处:http://blog.csdn.net/lyy289065406/article/details/6648539 優YoU  http://user.qzone.qq.com/289 ...

  9. UVA&&POJ离散概率与数学期望入门练习[4]

    POJ3869 Headshot 题意:给出左轮手枪的子弹序列,打了一枪没子弹,要使下一枪也没子弹概率最大应该rotate还是shoot 条件概率,|00|/(|00|+|01|)和|0|/n谁大的问 ...

随机推荐

  1. windows phone (13) 样式继承

    原文:windows phone (13) 样式继承 在上一遍文章中已经介绍到可以在Resources集合中定义样式,我们也可以在一个样式上引用其他的样式,这就是继承的概念,使用方法是将引用的样式放置 ...

  2. windows phone 页面传值(7)

    原文:windows phone 页面传值(7) 在windows phone 中微软为我们提供了页面间传递参数的解决方案,下面就为大家介绍使用方法,页面传值的案例中我们建立两个页面,一个是MainP ...

  3. 实现Android ListView 自动加载更多内容

    研究了几个小时终于实现了Android ListView 自动加载的效果. 说说我是怎样实现的.分享给大家. 1.给ListView增加一个FooterView,调用addFooterView(foo ...

  4. hdu1430魔板

    Problem Description 在魔方风靡全球之后不久,Rubik先生发明了它的简化版——魔板.魔板由8个同样大小的方块组成,每个方块颜色均不相同,可用数字1-8分别表示.任一时刻魔板的状态可 ...

  5. 使用JAVASCRIPT实现静态物体、静态方法和静态属性

    Javascript语言的面向对象特征非常弱.其它面向对象语言在创建类时仅仅要使用keywordstatic就可以指定类为静态类,Javascript没有提供static这种keyword.要让Jav ...

  6. 重新想象 Windows 8 Store Apps (7) - 控件之布局控件: Canvas, Grid, StackPanel, VirtualizingStackPanel, WrapGrid, VariableSizedWrapGrid

    原文:重新想象 Windows 8 Store Apps (7) - 控件之布局控件: Canvas, Grid, StackPanel, VirtualizingStackPanel, WrapGr ...

  7. HDU 4149 Magic Potion

    意甲冠军: a[i] ^ x = f[i] ( i = 1...8 ) 和 ( a[1] + a[2] + ... + a[8] ) ^ x = f[9] 如今f为已知  求x 思路: 从低位到高位确 ...

  8. 使用ThinkPHP框架高速发展网站(多图)

    使用ThinkPHP框架高速搭建站点 这一周一直忙于做实验室的站点,基本功能算是完毕了.比較有收获的是大概了解了ThinkPHP框架.写一些东西留作纪念吧.假设对于相同是Web方面新手的你有一丝丝帮助 ...

  9. 玩转Web之Json(三)-----easy ui怎么把前台显示的dataGird中的所有数据序列化为json,返回到后台并解析

    最近做一个项目时,需要在dataGird中插入<input>,即文本输入框,当点击提交时,需要把文本框里填的数据返以及其他列的一些信息以json数组的格式返回到后台,虽然我实现了该功能,但 ...

  10. Android Splash界面支持用户点击 直接进入主界面

    转载请注明出处:http://blog.csdn.net/lmj623565791/article/details/23613403 现在大部分APP都有Splash界面,下面列一下Splash页面的 ...