此问题在此处已有答案:
Is floating point math broken?(31个答案)
6天前关闭。
我想要结果返回类型为字符串加法,但是当加法使用Kotlin编程语言时,结果不匹配
问题示例:假设我有两个大的数字串,如:
"3334567891011121314151648"
"12345678911"
输出示例:
3334567891011133659830559
使用Kotlin编写一个程序,将两个数字相加,结果返回类型为字符串。
这是我的编码:
fun sum(n1: String, n2: String) : String {
return "%.0f".format(n1.toDouble() + n2.toDouble()).toString()
}
fun main() {
println(sum("3334567891011121314151648", "12345678911"))
}
但这样的结果与示例输出不匹配:
3334567891011134000000000
我的编码的解决方案是什么,以使结果与上面的示例输出相匹配。
1条答案
按热度按时间tyg4sfes1#
这是家庭作业吗?它看起来像是一个你必须解决的难题,因为语言的限制(以及它用基本类型所能表示的数字的大小)意味着你不能把它们放在一起就结束了。
假设是这样,看看他们想要什么--一个
String
的结果。只是文本,它不必用数字类型来表示。那么,如果你有笔和纸,你将如何把这两个数字加在一起?你将采取什么步骤?你在进行过程中存储了什么信息?你将朝着什么结果发展?