gpt4 book ai didi

java - Java中如何将一个数字分成不同的部分?

转载 作者:行者123 更新时间:2023-11-30 05:58:54 25 4
gpt4 key购买 nike

我想做以下事情:假设我有一个像 125.625 这样的数字 => 我希望能够告诉我的程序是 1 * 100 + 2 * 10 + 5 * 1 + 0.625。请问我该怎么做?

谢谢

最佳答案

如果你的数字是整数,你可以这样做:

value := 125.625
fractional part := value % 1
value := floor(value)

exponent = 1
listofvaluepairs = array()
while(value > 0)
{
tmp_part := value % 10
listofvaluepairs.add(value, exponent)
exponent = exponent * 10
value = floor(value / 10)
}

上面的伪代码将用数字和要相乘的数字对填充值对列表。所以你会得到这个:

{{1,100}, {2,10}, {5,1}}

小数部分就是您想要的最后一 block 。

作为引用,floor()函数将给出不带小数部分的数字,因此floor(1.6)给出1。% (modulo) operator或多或少会给出除法后的余数。所以 7%2 = 1。

我在上面的示例中所做的(这很大程度上不是 java 代码)是从值中一次获取一位数字。

所以我从 125 开始:

125 % 10 = 5
Then:
floor(125 / 10) = floor(12.5) = 12

然后我重复得到 2 和 1。同时我使用指数变量保存 1、10 和 100。

关于java - Java中如何将一个数字分成不同的部分?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3827637/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com