import java.util.Scanner;
public class Lianxi10 {
public static void main (String[]args){
Scanner input = new Scanner(System.in);
System.out.println ("输入一个整数,比如1或-1,然后按回车:");//输出文字
int a = input.nextInt(); //输入a的数据
System.out.println("输入一个比上一项大的整数,比如100或-100,然后按回车:");//输出提示文字
int b = input.nextInt(); //输入b的数据
int c = b ; //c的数据等于b
int d = 2; //d的数据等于2(固定,不可改变)
int e = (a + b)*c/d ; //核心运算公式
System.out.println ("最后的结果等于:" +e);//输出结果
System.out.println ("********************************");
System.out.println ("若出现错误请检查:\n1,是否输入了非法字符;\n2,输入的数字是否形如0.99之类的小数;\n3,输入的不是数字;\n若需联系,请email:[email protected]");
}
}是否还在为形如1+2+3+4+5…+100=?这样的问题而烦恼?现在不必了!这个问题已经得到解决了!!
有点激动了。
写了一段小java代码来解决此问题,需要注意的是:电脑上必须有能运行java源代码的工具(因为我是初学者,这个小程序目前还只能在my eslipse的控制台上运行)。

解决方案 »

  1.   

    楼主确实辛苦,不过,你这好像是把java当数学来玩了
      

  2.   

    虽然很想说LZ的想法有意思,但LZ的代码有很严重的BUG……等差数列的求和公式是:
    sum=(a(1)+a(n))*n/2 public static void main(String[] args) throws IOException {
    Scanner in = new Scanner(System.in);
    System.out.println("公差为1的等差数列求和");
    System.out.println("-----------------------------------------");
    System.out.print("请输入起始整数:");
    int a = in.nextInt();
    System.out.print("请输入终止整数:");
    int b = in.nextInt();
    //int n = (a + b) * (Math.abs(a - b) + 1) / 2;
    System.out.println("最后的结果为:" + (a + b) * (Math.abs(a - b) + 1) / 2);
            System.out.println ("********************************");
            System.out.println ("若出现错误请检查:\n1,是否输入了非法字符;\n2,输入的数字是否形如0.99之类的小数;\n3,输入的不是数字;\n若需联系,请email:[email protected]");
    }
      

  3.   

    楼主,这个,原来还有bug,受惊了说这么多也不是为了纯打击楼主,别怕丢脸,脸丢多了,才有动力学好东西,对不?
      

  4.   

    求100以内的和是不是该这么求的import java.util.*;public class Test { public static void main(String[] args) {
    Scanner sc = new Scanner(System.in);
    System.out.println("输入一个正整数:");
         int n = sc.nextInt();
         System.out.println(fun(n));
    }

    public static int fun(int n){
    if(n==1){
    return 1;
    }else{
    return n=n+fun(n-1);
    }
    }
    }
      

  5.   

    不用递归的方式也该这么来吧:import java.util.*;public class Test { public static void main(String[] args) {
    Scanner sc = new Scanner(System.in);
    System.out.println("输入一个正整数:");
         int n = sc.nextInt();
         System.out.println(fun(n));
    }

    public static long fun(int n){
    long sum=0;
    for(long i=0;i<=n;i++){
    sum+=i;
    }
    return sum;
    }
    }
      

  6.   

    [Quote=引用 4 楼  的回复:]
    楼主辛苦了。。
      

  7.   

    和1+2+3+4+...+100没半毛线关系啊,汗,还有类名最好别用汉语拼音Lianxi10啊,可以是Practice10或者Test10,就算你要用拼音也应该是LianXi10吧,呵呵,规范点,愿楼主和我一起加油,但要记得规范。
      

  8.   

    按照楼主的想法,是想求和是吧,那c应该是数字的个数吧,
    把b赋值给c的话,那么你输入的a必须是1,这样c才是数字才个数。若a不是1的话,结果不知道是什么东西
    这哪里是bug,明显就是一个错误!!!
      

  9.   

    不过负数好像就不能计算了,可能会计算出错。b只能是正整数,这样c才是正整数,才能正常的运算。设计理念是:从1+.....N=?(其中N为任意正整数)。现在用公式运算出来就是:e=(a+b)*c/d【其中a=1,b为键盘键入的正整数,c=b,d=2】【这个公式是在网上看到的:网上是这样说的:假如是1+2+3+4+5...+100=?可以这样运算:(1+100)*100/2.头尾相加,乘以多少数字,除以2】.
      

  10.   

    这段代码我放MYeclipse里面,提示好多错误,LZ理解下,我是个菜鸟太高深的代码看不明白