草庐IT

c++ - 如何在不四舍五入的情况下在C++中显示固定数量的数字

我有这段代码(非常基本):#include#includeusingnamespacestd;intmain(){floata=0.0,b=0.0,c=0.0;cout>a;cout>b;cout当我输入两个数字(例如,a=513和b=791)时,我得到0.65。计算器显示正确答案是0.648。我知道我的代码将最后一个十进制数四舍五入,但这不是我想要的。我怎样才能让它保持在0.64而不是0.65? 最佳答案 如果您想将值截断到小数点后两位,可以将其乘以100,截断为整数,然后除以100,如下所示:c=a/b;c=floor(100*

java - 如何将以毫秒为单位的时间戳四舍五入到最接近的秒数?

如何将当前时间戳以毫秒为单位四舍五入到秒?如果这是我的当前时间戳(以毫秒为单位)-1384393612958如果我四舍五入到最接近的秒,那么它会像这样吗?TimeinMSroundedofftonearestSecond=1384393612000我可能需要在Java和C++中执行此操作。 最佳答案 如果您使用的是Python:old_number=1384393612958new_number=1000*(old_number/1000)printnew_number基本上您想要使用一个整数,除以一千(以削减毫秒),然后乘以千以获

c++ - 四舍五入到最接近和更大的 float

我想使用C/C++将大双数(>1e6)舍入到最接近但更大的float。我试过这个,但我不确定它是否总是正确的,也许有最快的方法来做到这一点:intmain(){//xisthedoublewewanttorounddoublex=100000000005.0;doubley=log10(x)-7.0;floata=pow(10.0,y);floatb=(float)x;//ctheclosestroundupfloatfloatc=a+b;printf("%.12f%.12f%.12f\n",c,b,x);return0;}谢谢。 最佳答案

c++ - 如果float和double都不准确,那么银行如何进行涉及金钱的准确计算呢?

目前正在学习C++,这是我刚刚想到的。我只是对此感到好奇,因为我即将开发一个简单的银行程序。我将使用double来计算美元/利率等,但计算机计算和人工计算之间存在一些细微差别。我想现实世界中那些额外的.pennies可以让一切变得不同! 最佳答案 在许多情况下,财务计算是使用定点运算而不是浮点运算完成的。例如,.NETDecimal类型,或VB6Currency类型。这些基本上只是整数类型,每个人都同意单位是几分之一美分,比如$.0001。是的,必须进行一些舍入,但这是非常系统地完成的。通常,四舍五入规则在契约(Contract)细

c++ - 将正数四舍五入到下一个最接近的 5 的倍数

我需要将一个数字(输入保证为整数且为正数)舍入到下一个5的倍数。我试过这个:intround=((grades[j]+2)/5)*5;但是,这会将数字四舍五入到最接近的5的倍数。例如:67四舍五入为65,而不是70。 最佳答案 汇总一般形式应该是:((n+denominator-1)/denominator)*denominator所以在你的情况下:intround=((grades[j]+4)/5)*5;我们从分母中减去1的原因是为了处理舍入值的精确倍数,例如:((70+4)/5)*5将产生70

c++ - 添加两个 float 时出现意外输出

我写了下面的C++代码:floata,b;intc;a=8.6;b=1.4;c=a+b;printf("%d\n",c);输出是10。但是当我运行下面的代码时:floata,b;intc;a=8.7;b=1.3;c=a+b;printf("%d\n",c);输出是9。两者有什么区别,因为它们提供不同的输出? 最佳答案 float中没有8.7或1.3这样的数字。有一个数字10,一个数字-6.5,一个数字0.96044921875...但没有8.7或1.3。您的计算机最多可以将8.7舍入到最接近的float,并将1.3舍入到最接近的fl

c++ - 你如何在 C++ 中四舍五入小数位?

我需要帮助将浮点值四舍五入到小数点后一位。我知道setprecision(x)和cout.如果我想将整个float四舍五入,这两种方法都有效,但我只对将小数点四舍五入到十分位感兴趣。 最佳答案 还有另一种不需要转换为int的解决方案:#includey=floor(x*10d)/10d 关于c++-你如何在C++中四舍五入小数位?,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/questions/1

c++ - 符合 IEEE-754 标准的四舍五入

C标准库提供了round,lround,和llroundC99中的函数族。但是,这些函数不符合IEEE-754,因为它们没有实现IEEE规定的半对偶的“银行家四舍五入”。如果小数部分恰好为0.5,则半对偶四舍五入要求将结果四舍五入到最接近的偶数。如cppreference.com中所述,C99标准改为要求离零一半。1-3)Computesthenearestintegervaluetoarg(infloating-pointformat),roundinghalfwaycasesawayfromzero,regardlessofthecurrentroundingmode.在C中实现舍

ios - 用 2 位小数格式化 Double 并在 Swift 中四舍五入

这个问题在这里已经有了答案:Roundupdoubleto2decimalplaces(13个答案)关闭5年前。目前,我正在使用以下代码来格式化“值”常量:letformatString="%.2f";letvalue=2366.34321;letformattedValue=String(format:formatString,value);我得到的结果是2366.34,但我希望它是0.05的倍数。在这种情况下,它应该是2366.35。解决这个问题的最佳方法是什么?

ios - UINavigationBar 的顶角在 iOS6 中被四舍五入

我有一个带有自定义背景的UINavigation栏,我在代码的viewDidLoad方法中这样设置:UIImage*image=[UIImageimageNamed:@"V2_navbar"];[self.navigationBarsetBackgroundImage:imageforBarMetrics:UIBarMetricsDefault];在iOS5中,结果如下所示:在iOS6中,结果如下所示:一方面,状态栏现在是黑色的,这没问题。但是,如果您仔细查看第二张图片,您会注意到我的导航栏的顶角现在被四舍五入了,这看起来很糟糕。有人知道如何解决这个问题吗?