#include <stdio.h>
#include <math.h>
struct Fraction{int up,down;
};
int gcd(int a,int b)
{return !b?a:gcd(b,a%b);
}
Fraction myFun(Fraction result)// 分数的化简规范函数
{if(result.down<0) // 负分数{result.down=-down;result.up=-up;}if(result.up==0) result.down=1; // 分子为0时 分母设为1 int gcb=gcd(result.up,result.down);// 分母最大公约数不为1 可以约分if(gcb!=1){result.down/=gcb;result.up/=gcb;}return result;
}
Fraction Add(Fraction f1,Fraction f2)// 两分数的相加
{Fraction result;result.up=f1.up*f2.down+f1.down*f2.up;result.down=f1.down*f2.down;return myFun(result);
}
Fraction minu(Fraction f1,Fraction f2)// 两分数剑法
{Fraction result;result.up=f1.up*f2.down-f2.up*f1.down;result.down=f1.down*f2.down;return myFun(result);
}
Fraction multi(Fraction f1,Fraction f2) //  两分数乘法
{Fraction result;result.down=f1.down*f2.down;result.up=f1.up*f2.up;return myFun(result);
}
Fraction divide(Fraction f1,Fraction f2)//两分数的除法, 当除数不为0的时候
{Fraction result;result.up=f1.up*f2.down;result.down=f1.down*f2.up;return myFun(result);
}
void showFraction(Fraction a)// 分数的输出,
{a=myFun(a);if(a.down==1) printf("%lld",r.up);if(fabs(a.up)>a.down)// 假分数输出{printf("%d %d/%d",a.up/a.down,fabs(a.up%a.down)/a.down);}else printf("%d/%d",a.up,a.down);} int main(){}

因为分子分母在乘和除的过程中可能导致int型溢出,分子分母可以用long long 类型储存。

算法笔记随笔:分数的化简,四则运算和输出相关推荐

  1. php打印n乘n沙漏形状图形,《算法笔记》3.3小节——入门模拟-图形输出

    @[TOC] Contest100000577 - <算法笔记>3.3小节--入门模拟->图形输出 1933 Problem A 输出梯形 #include #include #in ...

  2. 算法笔记之:大整数的四则运算

    带来<算法笔记>第五章: 大整数的四则运算 #include<cstdio> #include<cstring>struct bign{int d[1000];in ...

  3. 算法笔记-分数的表示和化简

    1.使用结构体来存储分数的分子和分母 2.对分数指定规则 1.使分母为非负数,如果分数为负,则令分子为负数即可 2.如果分数为零,则规定分子为零,分母为1 3.分子和分母没有除1以外的公约数 3.分数 ...

  4. 算法笔记知识点整理大全

    每次刷题都觉得自己吃了知识点不全,基础不牢固的亏,刷题的时候目标也不明确,于是看完了算法笔记并把知识点归纳了一下,当然直接看书会更加详细,这个归纳只是学习时加深印象以及方便自己之后回顾而已:之后刷题大 ...

  5. 算法笔记.胡凡 第五章 数学问题

    5.1 简单数学 [PAT A1069] For any 4-digit integer except the ones with all the digits being the same, if ...

  6. codeup墓地目录(算法笔记习题刷题笔记)

    在线codeup contest 地址:http://codeup.cn/contest.php Contest100000575 - <算法笔记>3.1小节--入门模拟->简单模拟 ...

  7. 算法笔记CodeUp第一至第六章刷题记录

    文章目录 <算法笔记>2.2小节--C/C++快速入门->顺序结构 1.例题1-1-1 按要求输出信息(1) 2.例题1-1-2 按要求输出信息(2) 3.例题1-2-1 求两个整数 ...

  8. 《算法笔记》学习日记——5.2 最大公约数与最小公倍数5.3 分数的四则运算5.4 素数

    目录 5.2 最大公约数与最小公倍数 问题 A: Least Common Multiple 小结 5.3 分数的四则运算 问题 A: 分数矩阵 小结 5.4 素数 问题 A: 素数 问题 B: Pr ...

  9. 分数的四则运算及化简(C语言实现)

    下面这个程序使用C语言的结构体实现了分数的加减乘除四则运算,同时将结果最简化.这里为了简化,将输入值固定了,如果需要根据输入进行计算,将main函数内的相应部分稍作修改即可. #include < ...

最新文章

  1. 移动Web单页应用开发实践——页面结构化
  2. Git 分支 - 变基
  3. 自由自在公司意式手工冰淇淋以“怪“取胜
  4. springboot接收json参数_Springboot + Vue + shiro 实现前后端分离、权限控制
  5. LeetCode 406. 根据身高重建队列(排序)
  6. sql语句count_带COUNT()函数SQL SELECT语句
  7. 解决0RA-04031故障
  8. VS C++ memcpy() 用于double、int、结构体
  9. python画折线图参数配置
  10. 手机app测试流程和要点
  11. 设置bing为chrome的默认搜索引擎
  12. JSP 页面缓存以及清除缓存
  13. uni-app微信公众号(4)——地址管理页面
  14. android 社交类ui设计,基于社交类APP界面设计与创意思维的研究
  15. Linux下安装并运行TMHMM
  16. linux有什么好的软件,Linux国产软件大盘点
  17. 机械电气自动化常用知识手册
  18. 数据结构(从概念到C++实现)
  19. 在家,看见弟妹刷电视剧,瞟了两眼
  20. 使用python抓取喜馬拉雅音樂並且下載

热门文章

  1. 斐讯dc1服务器什么时候修复,[4月1日更新!!]斐讯DC1插座自制固件接入ha
  2. WiFi万能钥匙,真的过气了?
  3. OBS Studio(obs录屏软件)官方中文版V27.2.4 | 最新obs中文版百度云下载
  4. python贴吧数据可视化软件_Python数据可视化工具之Pyecharts初体验
  5. 在线协作编辑器EtherPad使用说明
  6. opencv(python)------二值化阙值(threshold)、自适应阙值(adaptiveThreshold)
  7. 驭势吴甘沙:我的根本利益|Xtecher人物特稿
  8. 推荐一个牛逼的直播开源项目
  9. webpack5 + webpack-chain 构建一个大型应用系列 2(附 vscode 跟 prettier 配置)
  10. 多个div水平横向排列