您好我是这个论坛的新手,也是java的新手,我需要一些帮助来介绍我的java作业。我完成了大部分逻辑。问题是要编写一个程序,显示100到1000之间的所有数字,每行10个,可以被5和6整除。数字只用一个空格分隔。我的教授希望它在Joptionpane窗口中完成。当我尝试这样做时,窗口中只会弹出一个答案。如何让我的答案出现在一行中,只在一个窗口中只有一个空格分隔?我的教授希望我们使用转义函数来显示答案行。
public class FindFactors {
public static void main(String[] args) {
String message = "";
final int NumbersPerLine = 10; // Display 10 numbers per line
int count = 0; // Count the number of numbers divisible by 5 and 6
// Test all numbers from 100 to 1,000
for (int i = 100; i <= 1000; i++) {
// Test if number is divisible by 5 and 6
message = message + " " + i;
count++;
if (count == 10) {
message = message + "\r\n";
count = 0;
}
if (i % 5 == 0 && i % 6 == 0) {
count++; // increment count
// Test if numbers per line is 10
if (count % NumbersPerLine == 0)
JOptionPane.showMessageDialog(null, i);
else
JOptionPane.showMessageDialog(null, (i + " "));
}
}
}
}
答案 0 :(得分:1)
请参阅以下方法,对您的代码稍作修改并提供所需的输出。
public class FindFactors {
public static void main(String[] args) {
final int NumbersPerLine = 10; // Display 10 numbers per line
int count = 0; // Count the number of numbers divisible by 5 and 6
// Test all numbers from 100 to 1,000
String numbersPerLine = "";
for (int i = 100; i <= 1000; i++) {
// Test if number is divisible by 5 and 6
if (count == 10) {
count = 0;
}
if (i % 5 == 0 && i % 6 == 0) {
numbersPerLine =numbersPerLine+" "+i;
count++; // increment count
// Test if numbers per line is 10
if (count % NumbersPerLine == 0)
numbersPerLine =numbersPerLine+"\n";
}
}
JOptionPane.showMessageDialog(null, numbersPerLine);
}
}
答案 1 :(得分:0)