【发布时间】:2025-12-10 19:00:02
【问题描述】:
我经常使用这个网站,但我从来没有真正写过任何东西。 今天,我偶然发现了一个我似乎找不到解决方案的问题。
问题是,我有一个未知位数的int variable。要求我将所有这些数字相加,然后将其打印/shown_as_a_message 并将所有这些数字分开。
例如,用户输入数字“12345678”,最后我需要一条消息说“数字 1 + 2 + 3 + 4 + 5 + 6 + 7 + 8 = 36”。我知道如何分离和总结所有这些数字,但我不知道如何保存每个数字然后显示它,因为我不仅不知道正确的数字数量,而且我不知道它们的值要么。
通常这不难做到,但对我来说棘手的部分来了,因为我们还没有学习arrays、strings、索引等东西,我们不允许使用他们。所以,我应该用最简单的代码来做。
到目前为止,我得到了以下内容:
import java.util.Scanner;
public class Numbers {
public static void main(String[] args) {
int number, result;
Scanner sc = new Scanner(System.in);
System.out.println("Enter number:");
number = sc.nextInt();
result = 0;
while (number > 0){
result = result + (number % 10);
number = number / 10;
}
System.out.println("This is where the message would go.");
}
}
【问题讨论】:
-
那么这段代码又有什么问题?它似乎在你的约束下完成了这项工作
-
如果您不能使用字符串,您将如何打印任何内容?一次一个字符?
-
尝试将每个数字保存在一个字符串中,可能你应该在使用 charAt 循环之前将其反转并打印“1+2+3+ ..”版本
-
不能使用 String 和 charAt。我只写完整的数字并使用大部分数字。
-
"12345678".replaceAll("\\B", " + ")➜1 + 2 + 3 + 4 + 5 + 6 + 7 + 8