两个整数相除,结果一定是有理数。无理数即无限不循环小数无法转化成分数形式。
1.开方开不尽(如根号2)
2.与π有关(如π+2)
3.有规律但不循环(如0.1010010001。。。。。。)
如何把无限循环小数转化成分数:
其实,循环小数化分数难就难在无限的小数位数。所以我就从这里入手,想办法“剪掉”无限循环小数的“大尾巴”。策略就是用扩倍的方法,把无限循环小数扩大十倍、一百倍或一千倍……使扩大后的无限循环小数与原无限循环小数的“大尾巴”完全相同,然后这两个数相减
把0.4747……化成分数。
0.4747……×100=47.4747…… 0.4747……×100-0.4747……=47.4747……-0.4747…… (100-1)×0.4747……=47 即99×0.4747…… =47那么 0.4747……=47/99 其实结果就是: 分子是循环节,分母是n个9,n为循环节长度
求最大公约数的简洁代码 for (int t; t=x%y; x=y, y=t); return y;