当前位置:  开发笔记 > 编程语言 > 正文

如何在double变量中划分两个整数?

如何解决《如何在double变量中划分两个整数?》经验,为你挑选了2个好方法。

我正在为一所学校的实验室工作,该实验室运行10个10000张5手牌.我必须在每只手中找到冲洗和成对.我必须找到每条线索的对和冲洗的百分比.

我的问题是当我试图获得一对一条路径的百分比时

double percent =  total_pairs/10000;

要么

double percent = 5600/10000;

当我想要打印2个小数位时,我的输出变为0我得到以下内容

0.00

使用此代码

cout<

但我仍然得到零,当我像这样投射时,我得到实际数字

double percent = (double) 5600/10000;

这是正确的,因为我不希望它截断我的输出或我错过了什么

希望你能理解我.



1> naumcho..:

是的,就是这种情况,下面执行整数除法.然后将结果(0)转换为double.

double percent = 5600/10000

下面的行强制5600是一个双倍,所以现在你实际划分双打

double percent = (double) 5600/10000

如果你的一个数字是常数,你可以确保使用十进制格式来强制浮点除法:

double percent = 5600.0/10000

我有时使用的另一个技巧是乘以1.0,将后面的内容转换为double:

double percent = 1.0 * inta / intb



2> Jim Buck..:

"total_pairs"是否为int?如果是这样,则除以整数除法.您需要将其中一个数字明确地转换为double(另一个将自动提升为double):

double percent = ((double)total_pairs)/10000; // or just simply 10000.0

推荐阅读
k78283381
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有