草庐IT

swift - 将整数四舍五入为 3 的倍数

我想将一个整数四舍五入到最接近的3的倍数。示例:varnumberOne=2varnumberTwo=7numberOne向上舍入等于3numberTwo四舍五入等于9我不希望它向下舍入。有什么想法吗?谢谢 最佳答案 我的2克拉funcroundUp(value:Int,divisor:Int)->Int{letrem=value%divisorreturnrem==0?value:value+divisor-rem} 关于swift-将整数四舍五入为3的倍数,我们在StackOverf

swift - Swift 中的四舍五入整数

出于货币目的,我想将整数四舍五入到最接近的百分之一,这在Swift中如何实现?示例:1397968变为1397900 最佳答案 如果您想向下舍入到100的倍数,那么您可以这样做(正如@vadian在评论中所说):letamount=1397968letrounded=amount/100*100print(rounded)//1397900这是有效的,因为整数除法截断结果趋向于零:amount/100的计算结果为13979,然后乘以再次乘以100得到1397900。但您要求的是给定整数的最接近100的倍数,这可以通过一个小的修改来完

java - 格式化 double 而不是四舍五入

我需要将double格式化(并且不四舍五入)到小数点后两位。我试过:Strings1="10.126";Doublef1=Double.parseDouble(s1);DecimalFormatdf=newDecimalFormat(".00");System.out.println("f1"+df.format(f1));结果:10.13但我要求输出为10.12 最佳答案 调用setRoundingMode设置RoundingMode适本地:Strings1="10.126";Doublef1=Double.parseDouble

java - 四舍五入到最接近的整数——我是在作弊还是这已经足够了?

本质上,如果生成的数字是2.3,那么如果我减去.5,它将是1.8,但舍入函数将使它成为2,这正是我想要的。或者如果答案是2.99999并且我减去.5,答案是2.49999,它应该向下舍入到2,这就是我想要的。我的问题是如果答案是2even并且我减去.5,答案现在是1.5,那么它仍然会四舍五入为2。temp1_1=Math.round(temp2_2/(360/temp_value)-.5);这是我的代码行。 最佳答案 已经有一个函数可以做到这一点。它叫做floor:doubled=Math.floor(2.9999)//result

Java Double 始终四舍五入为小数点后两位

这个问题在这里已经有了答案:Formattingdoubleto2decimalsdoesn'twork(4个答案)关闭8年前。我正在尝试将double值四舍五入为2位小数,但它并非在所有情况下都有效publicstaticdoubleround(doublevalue,intplaces){if(places简而言之,无论是否存在小数点,即使需要补零,也始终将值保留为小数点后两位。感谢任何帮助!

java - DecimalFormat 四舍五入

下面是一些小代码来说明我所看到的floatfloater=59.999f;DecimalFormatdf=newDecimalFormat("00.0");System.out.println(df.format(floater));这打印:60.0我想打印59.9我需要做什么? 最佳答案 在使用DecimalFormat之前添加这一行:df.setRoundingMode(RoundingMode.DOWN);看看其他舍入模式,看看哪种最适合您。注意:此方法只适用于JDK1.6及以上版本

python - 如何将日期时间对象四舍五入到最近的前一刻钟?

假设我有日期时间对象。我希望它们四舍五入到最近的一刻钟:2014-07-18T14:23:12-->2014-07-18T14:15:002014-07-18T14:14:59-->2014-07-18T14:00:002014-07-18T00:00:00-->2014-07-18T00:00:00等等 最佳答案 rounded_qtr_hour=lambdadt:datetime.datetime(dt.year,dt.month,dt.day,dt.hour,15*(dt.minute//15))基本上,您创建一个新对象(修改

Python格式化 float 时默认四舍五入

我正在尝试用Python2.7.10解决我的代码中的一些浮点问题。在测试时,我遇到了format方法的奇怪行为:print"{}".format(0.3000000000004)#13decimals打印:0.3但是:print"{}".format(0.300000000004)#12decimals打印:0.300000000004既然我没有指定格式,为什么要将第一个数字四舍五入?是否有默认的允许小数位数? 最佳答案 由于您没有指定格式,因此使用默认类型强制转换为字符串。所以这并不是format的真正问题。Python2为flo

python - 四舍五入到最接近的因素?

我有一道小数学题想解给定数字x和分辨率y,我需要找到具有所需分辨率的下一个x'。例如x=1.002y=0.1x'=1.1x=0.348y=0.1x'=0.4x=0.50y=1x'=1x=0.32y=0.05x'=0.35在Python中有什么聪明的方法可以做到这一点吗? 最佳答案 importmathdefnext_multiple(x,y):returnmath.ceil(x/y)*ydeftry_it(x,y):printx,y,next_multiple(x,y)forx,yin[(1.002,0.1),(0.348,0.1)

python - 四舍五入 Python 数字列表并维护它们的总和

我在Python中有一个十进制数列表或数组。我需要将它们四舍五入到最接近的小数点后两位,因为这些是货币金额。但是,我需要维护总和,即原始数组的总和四舍五入到小数点后2位必须等于数组四舍五入元素的总和。到目前为止,这是我的代码:myOriginalList=[27226.94982,193.0595233,1764.3094,12625.8607,26714.67907,18970.35388,12725.41407,23589.93271,27948.40386,23767.83261,12449.81318]originalTotal=round(sum(myOriginalList