如何用两种不同的方法编码此问题?我知道这可以在一个循环和一个嵌套循环中完成,但是需要以这种方式完成。我知道这全都错了,但是我需要帮助来理解逻辑。
public static int numloop(int n){
int nd = 0;
for(n = 5; n <= 49; n += 2){
nd = ndiv(n);
}
return nd;
}
public static int ndiv(int numb){
int sumsq = 0;
for( int x = 1; x <= numb; x++ ){
sumsq += x * x;
}
return sumsq;
}
public static void main(String[]args){
System.out.println("NUMBER\t" + "SUMSQ");
System.out.println(n + nd);
}
输出应如下所示:
编号||平方和
5 || 55
7 || 140
9 || 285
答案 0 :(得分:0)
@Tony非常简单。如果您希望使用2种方法完成此操作,则只需将其拆分如下:
这是程序流程的概述:
Square()
值调用i
方法。同时计算总和; 我在下面附加了代码及其输出:
代码:
import java.io.*;
class Main {
public static void main(String[] args)throws IOException {
InputStreamReader ip = new InputStreamReader(System.in);
BufferedReader br = new BufferedReader(ip);
int c = 1;
do {
System.out.println("Enter a number: ");
int n = Integer.parseInt(br.readLine());
squaresum(n);
System.out.println("\nPress 1 to continue, 0 to stop..");
c = Integer.parseInt(br.readLine());
}while(c == 1);
System.out.println("Stopped.");
}
public static void squaresum(int num) {
int n = 0;
for(int i = 1; i <= num; i++)
n += square(i);
System.out.println("Sum is: " + n);
}
public static int square(int n) {
return (n*n);
}
}
输出:
输入数字:
5
总和是:55
按1继续,按0停止。
1
输入数字:
9
总和是:285
按1继续,按0停止。
0
已停止。
答案 1 :(得分:0)
Tony-无法完全按照您想要的代码进行计算,因此我选择了使其灵活一些。限制它只执行您想要的操作应该很容易。
public class SumSquare {
public static int numloop(int start, int end, int increment){
int nd = 0;
for(int i = start; i <= end; i += increment){
nd = ndiv(i);
System.out.println(i + " || " + nd);
}
return nd;
}
public static int ndiv(int numb){
int sumsq = 0;
for( int x = 1; x <= numb; x++ ){
sumsq += x * x;
}
return sumsq;
}
public static void main(String[]args){
System.out.println("Number" + " || " + "Sum of square");
numloop(5, 49, 2);
}
}
输出:
run:
Number || Sum of square
5 || 55
7 || 140
9 || 285
11 || 506
13 || 819
15 || 1240
17 || 1785
19 || 2470
21 || 3311
23 || 4324
25 || 5525
27 || 6930
29 || 8555
31 || 10416
33 || 12529
35 || 14910
37 || 17575
39 || 20540
41 || 23821
43 || 27434
45 || 31395
47 || 35720
49 || 40425
BUILD SUCCESSFUL (total time: 0 seconds)