求1-100之间能被3或能被5整除的数的和,每行输出5个数。 用Java怎么做

如题所述

第1个回答  2011-03-02
public class Test {

public static void main(String[] args) {
int count = 0;// 保存和
String listSum = "";// 保存数字
for (int i = 1; i <= 100; i++) {
if (i % 3 == 0 || i % 5 == 0) {
// 将1-100之间能被3或能被5整除的数连成字符串,以备后面输出
listSum += i + "*";
count = count + i;
}
}
System.out.println("1-100之间能被3或能被5整除的数的和:" + count);
// 输出前面保存的数字,不能直接用String[] sum = listSum.split("[*]"),会出错,因为*本身
String[] sum = listSum.split("[*]");
int j = 0;
for (int i = 0; i < sum.length; i++) {
if (i % 5 == 0) {
j++;
System.out.println("\n第" + j + "行5个数字为:");
}
System.out.print(" " + sum[i]);
}
}
}
输出结果为:
1-100之间能被3或能被5整除的数的和:2418

第1行5个数字为:
3 5 6 9 10
第2行5个数字为:
12 15 18 20 21
第3行5个数字为:
24 25 27 30 33
第4行5个数字为:
35 36 39 40 42
第5行5个数字为:
45 48 50 51 54
第6行5个数字为:
55 57 60 63 65
第7行5个数字为:
66 69 70 72 75
第8行5个数字为:
78 80 81 84 85
第9行5个数字为:
87 90 93 95 96
第10行5个数字为:
99 100
第2个回答  2011-03-02
public static void main(String[] args) {
List<Integer> arrayList = new ArrayList<Integer>();
for(int i = 1;i <= 100;i++){
if(i%3 == 0 || i%5 == 0){
arrayList.add(i);
}
}
int k = 0;
while(k <= arrayList.size()/5+1){
for(int i = 0;i< 5;i++){
if(i+5*k<arrayList.size()){
System.out.print(arrayList.get(i+5*k)+" ");
}
}
System.out.println("");
k++;
}
}
运行结果:
3 5 6 9 10
12 15 18 20 21
24 25 27 30 33
35 36 39 40 42
45 48 50 51 54
55 57 60 63 65
66 69 70 72 75
78 80 81 84 85
87 90 93 95 96
99 100本回答被提问者采纳
相似回答
大家正在搜