日期:2014-05-20  浏览次数:20650 次

书上课题
输入一组数,求和。当输入为0或者负数时程序结束。
以上就是题目。
这里是我写的代码:
import java.util.Scanner;

public class AddSum {
  public static void main(String[] args){
  System.out.println("sum="+(new Sum()).getSum());
   
}
}
class Sum{
public float getSum(){
float num=1;
System.out.println("please input number");

float sum=0;
while(num>0){
Scanner reader=new Scanner(System.in);
num=reader.nextFloat();
sum+=num;

}
return sum;
}
}
请各位看一下,有什么不规范的希望能够指出。
或者有其他的方法的话也可以贴出来让我这个新手饱下眼福,谢谢啦!

------解决方案--------------------
你这个简单点搞就好了,不用整那么多类。
Java code

import java.util.Scanner;
public class Sum {
    public static void main(String[] args) {
        int sum = 0;
        Scanner s = new Scanner(System.in);
        int i;
        while((i=s.nextInt()) > 0) 
            sum += i;
        System.out.println("sum is: " + sum);
    }
}

------解决方案--------------------
public class mysum {
int ok = 0;

/**
* 输入一组数,求和。当输入为0或者负数时程序结束。
*/
public static void main(String[] args) {
int num[] = { 1, -4, -5, 8, -2,0};
mysum s=new mysum();
System.out.println(s.sum(num));
}

public int sum(int num[]) { // 1 1
for (int i = 0; i < num.length; i++) {
if (num[i] >= 0) {
ok = ok + num[i];
}else{
break;
}
}
return ok;
}
}
楼主可以看看这段代码。