zoukankan      html  css  js  c++  java
  • 无限小数转分数POJ1930分析

    将无限小数化为分数,有一套简单的公式。使其轻松表示出来。
    循环节
    例如:0.121212……
    循循环节为12。
     
    公式
    这个公式必须将循环节的开头放在十分位。若不是可将原数乘10^x(x为正整数)
    就为:12.121212……-0.121212……=12
    100倍 - 1倍 =99 (99和12之间一条分数线)
    此公式需用两位数字,其中两位数差出一个循环节。
     
    再举一个例子:0.00121212……
    公式就变为:1212.121212……-12.121212……=1200
    100000 倍 - 1000倍 =99000 (1200与99000之间一条分数线)
     
    第一行为原数的的倍数10^x(x为正整数),第二行为与原数的乘数,10^x(x为正整数)。
    解:
    设:这个数的小数部分为a,这个小数表示成3+a
    10000a-a=3050
    9999a=3053
    a=3053/9999
     
    算到这里后,能约分就约分,这样就能表示循环部分了。再把整数部分乘分母加进去就是
    (3×9999+3053)/9999
    =33050/9999
     
    还有混循环小数转分数
    如0.1555.....
    循环节有一位,分母写个9,非循环节有一位,在9后添个0
    分子为非循环节+循环节(连接)-非循环节+15-1=14
    14/90
    约分后为7/45
  • 相关阅读:
    ansible——playbook conditions条件判断
    ansible——playbook lookups从插件加载变量
    ansible——playbook循环
    lombok注解
    集合与集合取笛卡尔积
    List排列组合
    synchronized初识
    java IO与NIO
    文件I/O和标准I/O
    双数据源配置
  • 原文地址:https://www.cnblogs.com/jluzhsai/p/4336060.html
Copyright © 2011-2022 走看看