zoukankan      html  css  js  c++  java
  • keys

    1.
    double 与0比较时有个精度问题,有时需精确到小数点后面几位,例如与>0.0001,而不能与>0比较




    例如杭电1408
    盐水的故事
    ac
    #include<iostream>
    using namespace std;
    int main()
    {
        double vul,d;
        int sum;
        int n;
        while(cin>>vul>>d)
        {
            sum=0;
            n=1;
            while(vul>d*n)
            {
                sum=sum+n+1;
                vul=vul-d*n;
                n++;
            }
            while(vul>0.001)//此处最小精度得>0.001,不能为while(vul>0)
            {
                vul=vul-d;
                sum++;
            }
            cout<<sum<<endl;
        }    
    return 0;
    }
    盐水的故事
    ac
    #include<iostream>
    using namespace std;
    int main()
    {
        double vul,d;
        int sum;
        int n;
        while(cin>>vul>>d)
        {
            sum=0;
            n=1;
            while(vul>d*n)
            {
                sum=sum+n+1;
                vul=vul-d*n;
                n++;
            }
    int k=vul/d;
            sum=sum+k;
            if((vul/d)-k < 0.000001) ;
            else 
                sum=sum+1;
            /*while(vul>0)
            {
                vul=vul-d;
                sum++;
            }*/
            cout<<sum<<endl;
        }    
    return 0;
    }






    2.




    double与long long哪个更大?





    float的范围为-2^128 ~ +2^128,也即-3.40E+38 ~ +3.40E+38;


    double的范围为-2^1024 ~ +2^1024,也即-1.79E+308 ~ +1.79E+308。


    float:2^23 = 8388608,一共七位,这意味着最多能有7位有效数字,但绝对能保证的为6位,也即float的精度为6~7位有效数字;


    double:2^52 = 4503599627370496,一共16位,同理,double的精度为15~16位。


    long long :-922337203685775808~922337203685775807     共18位,









  • 相关阅读:
    Python 面向对象
    pymysql增删改查
    pymysql简单链接示例
    mysql权限管理
    mysql五补充部分:SQL逻辑查询语句执行顺序
    mysql安装与基本管理
    mysql索引原理与慢查询优化2
    ftp 服务
    Linux 并发链接数
    Linux
  • 原文地址:https://www.cnblogs.com/gongpixin/p/4477503.html
Copyright © 2011-2022 走看看