zoukankan      html  css  js  c++  java
  • 2.6 精确表达浮点数

    任何一个无限循环小数或有限小数都可以表示为分数的形式。

    (1)有限小数

    假设为a.b1b2b3b4b5

    我们可以表示为:

    a+(b1b2b3b4b5)/10^5;

    (2)无限循环小数

    假设为a.b1b2b3b4b5b6(c1c2c3c4)

    a.b1b2b3b4b5b6(c1c2c3c4) = ab1b2b3b4b5b6.(c1c2c3c4)/10^6;                  (1)

    另ab1b2b3b4b5b6 = X;  0.c1c2c3c4 =Y;

    对Y而言:

    0.(c1c2c3c4)= Y ;

    0.(c1c2c3c4) = c1c2c3c4.(c1c2c3c4)/10^4

    即:

    Y×10^4= c1c2c3c4+Y;

    所以:

    Y = c1c2c3c4/(10^4-1);

    再把Y带入到(1)中,即可求得X的表达式:

    下一步是怎样求解分子分母的最大公约数?

    //C++求最大公约数
    //碾除法
    #include <iostream>
    
    using namespace std;
    
    void main()
    {
    	int a = 0;
    	int b = 0;
    	cout<<"Please input two integriate"<<endl;
    	cin>>a;
    	cin>>b;
    	cout<<endl;
    
    	int c = a>b?a:b;
    	a = c==a?b:a;
    	if(c%a == 0)
    	{
    		cout<<"The Max value:"<<a<<endl;
    	}
    	else
    	{
    		while(int e = c%a)
    		{
    			c = a;
    			a = e;
    		}
    		cout<<"The Max value:"<<a<<endl;
    
    	}
    }
    

     顺便求一个最小公倍数:

    	for(int i =e;(i%d)!=0 || (i%e)!=0;i++)
    	{
    
    	}
    	cout<<i<<endl;
    
  • 相关阅读:
    MS SQL Server中的CONVERT日期格式化大全
    简历
    Spring源码IOC部分容器简介【1】
    HadoopHDFS设计原理
    1.Linux系统简介
    3.大话C语言变量和数据类型
    2.C语言初探
    7.函数
    8.C语言预处理命令
    9.指针
  • 原文地址:https://www.cnblogs.com/CBDoctor/p/2618572.html
Copyright © 2011-2022 走看看