| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1748 人关注过本帖
标题:C++小白求助,麻烦大家帮帮忙
取消只看楼主 加入收藏
五点晨曦
Rank: 1
等 级:新手上路
帖 子:5
专家分:0
注 册:2008-3-19
收藏
 问题点数:0 回复次数:4 
C++小白求助,麻烦大家帮帮忙
刚学了两天的C++……基本还是什么都不会,问题是这样的

#include <iostream>
using namespace std;
int main()
{
cout << 92934*29942 << endl;
}

我要计算 92934*29942 但是因为默认的双精度型表示范围不够大,结果发生溢出显示结果为-1512337468,于是换长双精度型92934l*29942l 还是溢出
怒了,按附件的计算机,得出2782629828,的确是超出了有效位……想问下这样该怎么写才能够不溢出?

[[it] 本帖最后由 五点晨曦 于 2008-3-19 20:51 编辑 [/it]]
搜索更多相关主题的帖子: 麻烦 
2008-03-19 20:45
五点晨曦
Rank: 1
等 级:新手上路
帖 子:5
专家分:0
注 册:2008-3-19
收藏
得分:0 
写成92934.0*29942.0倒是可以用科学计数法表示,不过精度不够啊-_,-

嘛,那来点简单的吧 910.37+9109234.92 同样是用科学计数法表示,精度也是不够……

[[it] 本帖最后由 五点晨曦 于 2008-3-19 20:53 编辑 [/it]]
2008-03-19 20:50
五点晨曦
Rank: 1
等 级:新手上路
帖 子:5
专家分:0
注 册:2008-3-19
收藏
得分:0 
LS居然注册个号来回答我的问题,感动ING~不过我知道会溢出,现在是在问怎么才能不溢出啊……
2008-03-19 21:25
五点晨曦
Rank: 1
等 级:新手上路
帖 子:5
专家分:0
注 册:2008-3-19
收藏
得分:0 
谢谢LS了,不过iNum是什么意思我没看明白……能麻烦讲解一下吗?请用教小学生1+1的方法来教我,因为我还是小白一个……谢谢了……
2008-03-19 22:17
五点晨曦
Rank: 1
等 级:新手上路
帖 子:5
专家分:0
注 册:2008-3-19
收藏
得分:0 
咩哈哈哈~我百度来百度去,终于找到答案啦~其实很简单,多打一句话就可以了
#include <iostream>
using namespace std;
int main()
{
cout.precision(10);
    cout << 92934.0*29942.0 <<endl;
}

先用科学计数发算出答案,cout.precision ,就是显示的精度,我设为小数点后十位,就能显示出来了,不说了,赶紧交功课去
2008-03-20 11:53
快速回复:C++小白求助,麻烦大家帮帮忙
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.023149 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved