草庐IT

c# - 将小数格式化为两位或整数

对于10,我想要10而不是10.00对于10.11,我想要10.11没有代码这可能吗?即通过单独指定格式字符串类似于{0:N2} 最佳答案 decimalnum=10.11M;Console.WriteLine(num.ToString("0.##")); 关于c#-将小数格式化为两位或整数,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/questions/2148271/

objective-c - 使 float 只显示两位小数

我在float中有值25.00,但是当我在屏幕上打印它时它是25.0000000。如何显示只有两位小数的值? 最佳答案 这与如何存储数字无关,而是如何显示它。将其转换为字符串时,您必须四舍五入到所需的精度,在您的情况下是两位小数。例如:NSString*formattedNumber=[NSStringstringWithFormat:@"%.02f",myFloat];%.02f告诉格式化程序您将格式化一个float(%f)并且应该四舍五入到两个位置,并且应该用0s.例如:%f=25.000000%.f=25%.02f=25.00

php - 显示一个数字到小数点后两位

将PHP字符串四舍五入到小数点后两位的正确方法是什么?$number="520";//It'sastringfromadatabase$formatted_number=round_to_2dp($number);echo$formatted_number;输出应该是520.00;round_to_2dp()函数定义应该如何? 最佳答案 您可以使用number_format():returnnumber_format((float)$number,2,'.','');例子:$foo="105";echonumber_format((

python - 将 float 限制为两位小数

我希望a舍入到13.95。我尝试使用round,但我得到:>>>a13.949999999999999>>>round(a,2)13.949999999999999有关标准库Decimal类的类似问题,请参阅HowcanIformatadecimaltoalwaysshow2decimalplaces?. 最佳答案 你遇到了oldproblem使用float,并非所有数字都可以精确表示。命令行只是从内存中向您显示完整的浮点形式。使用浮点表示,您的四舍五入版本是相同的数字。由于计算机是二进制的,它们将float存储为整数,然后除以2的

ruby-on-rails - 为什么我的小数点从数据库出来后稍微大一点?

我对2位小数在进出数据库后获得额外的0.000000000000000001(左右)感到有点困惑。这就是我所做的:(Rails3.2.8)创建迁移:classCreateItems16,:scale=>2endendend创建了一个模型:classItem然后:$railsc>>i=Item.new>>i.price=9.46>>i.save>>Item.first.price=>#这是一个SQLite数据库,里面看起来一切正常:$railsdb>>select*fromitems;1|9.46请注意,我注意到发生这种情况的唯一数字是9.46。多出来的0.00000000000001从

ruby - 如何将有理数格式化为小数?

给定一个具有有限十进制表示的任意大(或小)有理数数,例如:r=Rational(1,2**15)#=>(1/32768)如何获取其完整的十进制值作为字符串?上述数字的预期输出是:"0.000030517578125"to_f显然不起作用:r.to_f#=>3.0517578125e-05而sprintf要求我指定位数:sprintf('%.30f',r)#=>"0.000030517578125000000000000000" 最佳答案 大多数十岁的child都知道怎么做:使用长除法!1代码deffinite_long_divisi

Ruby float to_r 计算。小数化为分数

有人可以澄清为什么ruby​​在使用to_r时返回这么大的数字吗例如:a=0.025a.to_r3602879701896397/144115188075855872.为什么不用1/40? 最佳答案 这听起来像是一个典型的float问题,但隐藏在其中。虽然0.025可能被精确表示,但函数to_r无疑会在内部执行各种必然不精确的浮点运算。结果3602879701896397/144115188075855872无疑会比你的提议1/40更接近a的中间转换版本。现在3602879701896397/144115188075855872非常

ruby-on-rails - 如何将小数舍入到 Ruby 中的第一个有效数字

我正在尝试解决与个人项目相关的任务的边缘案例。确定一个服务的单价,由total_amount和cost组成。示例包括:#1unit_price=300/1000#=0.3#2unit_price=600/800#=0.75#3unit_price=500/1600#=0.3125对于1和2,unit_prices可以保持不变。对于3,四舍五入到小数点后两位就足够了,例如(500/1600).round(2)当float变长时出现问题:#4unit_price=400/56000#=0.007142857142857143很明显,float相当长。在这种情况下,目标是四舍五入到第一个有效

ruby-on-rails - 将秒数转换为小数小时(半小时为 0.50 而不是 30)

我有以下方法可以将以秒为单位的持续时间转换为小时。例如,2小时半的结果是2.30。另外,2小时15分钟的结果是2.15。所以它输出小时数和分钟数。我想修改显示2.5或2.25的方法,而不是上面的。我需要那样做才能进行计算。例如,如果薪水为30美元/小时,员工工作了10个半小时,我需要乘以30*10.5而不是30*10.30。defhour_quantityunlessself.duration.blank?hours=(self.duration/60)/60minutes=(self.duration/60)%60hours.to_s+'.'+minutes.to_sendend

小数点后没有任何零的 Ruby float

我进行了很多搜索,以了解获取float值的确切要求,小数点后没有不需要的零。Eg:14.0shouldbe1414.1shouldbe14.1到目前为止我找到的最接近的可能解决方案是使用sprintf():irb(main):050:0>num=123.0=>123.0irb(main):051:0>sprintf('%g',num)=>"123"这里的问题是我的num类型从Float更改为String。我可以在不更改类型的情况下更改浮点值吗? 最佳答案 尝试:classFloatdeftry_integerto_i==self?t