gpt4 book ai didi

modulo - 如何在 Basic 中获取给定数字的每个数字?

转载 作者:行者123 更新时间:2023-12-01 15:07:12 27 4
gpt4 key购买 nike

我有一个从互联网上下载的程序,需要从一个三位数字中打印出每个数字。例如:

输入:123

预期输出:

1

2

3

我有 598

需要得到:

5
9
8

我尝试使用这个公式,但问题是当数字与小数函数失败时:

FIRST_DIGIT  = (number mod 1000) / 100
SECOND_DIGIT = (number mod 100) / 10
THIRD_DIGIT = (number mod 10)

其中数字是上面的例子所以这里是计算:

FIRST_DIGIT = (598 mod 1000)/100 = 5,98 <== FAILED...我需要得到 5 但我的程序显示 0 因为我有小数点

SECOND_DIGIT = (598 mod 100)/10 = 9,8 <== FAILED...我需要得到 9 但我的程序显示 0 因为我有小数点

THIRD_DIGIT = (598 mod 10) = 8 <== CORRECT...我从程序输出编号 8 得到,这个数字是正确的。

所以我的问题是是否有示例或更有效的代码可以从没有小数点的数字中获取每个数字?我不想使用四舍五入来舍入最接近的数字,因为有时如果数字大于 .5,它会填充失败。

谢谢

最佳答案

最简单的解决方案是使用整数除法 (\) 而不是 float 除法 (/)。

如果您将每个示例替换为反斜杠 (\) 而不是正斜杠 (/),它们将返回整数值。

FIRST_DIGIT  = (598 mod 1000) \ 100 = 5
SECOND_DIGIT = (598 mod 100) \ 10 = 9
THIRD_DIGIT = (598 mod 10) = 8

关于modulo - 如何在 Basic 中获取给定数字的每个数字?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49674171/

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