如何在最后输出结果的时候取到n和m的初始值

如何在最后输出结果的时候取到n和m的初始值

public class PlusSumDemo {
   public static void main(String[] args) {
       System.out.println("请输入2个整数:");
       Scanner sc = new Scanner(System.in);
       int n = sc.nextInt();
       int m = sc.nextInt();
       int sum = 0;
       while (n <= m) {
           sum += n;
           //n++;
           System.out.println("n="+n+","+"m="+m);
           n += 2;
       }
       System.out.println("累加和sum="+sum);
       //System.out.println(n+"到"+m+"的累加和是"+sum);

   }
}

假如输入的n = 1, m = 15, 我最后想输出的结果是 1到15的累加和是sum,这个应该怎么取值,谢谢!

正在回答

登陆购买课程后可参与讨论,去登陆

3回答

同学你好,因为n在循环中做了运算,所以初始值得不到,所以可以将刚定义的变量n重新赋值给n1。

具体修改如下:

http://img1.sycdn.imooc.com//climg/5e57aadc09bbf57b07660533.jpg

如果我的回答解决了你的疑惑,请采纳,祝学习愉快~

慕九州3571693 2020-02-27 16:49:21

while (n <= m) {
           sum += n;
           //n++;
           System.out.println("n="+n+","+"m="+m);
           n += 2;
       }

你前面的语言基本没存在问题,但你while里面存在问题。

语句“n+=2”,表示n=n+2,那你想表达的是1、3、5、7、9等数字的相加,不是1到15的累加。

好帮手慕小脸 2020-02-27 16:43:18

同学你好,

    1、如何在最后输出结果的时候取到n和m的初始值?

    把打印n与m值的语句放在循环外即可,如下所示:

    http://img1.sycdn.imooc.com//climg/5e5780900909d78707610486.jpg

    2、假如输入的n = 1, m = 15, 我最后想输出的结果是 1到15的累加和是sum,这个应该怎么取值?是课程中老师说的习题吗?

如果是同学的代码已经实现了。如下所示:

http://img1.sycdn.imooc.com//climg/5e57810d093f096107450477.jpg

如果我的回答解决了你的疑惑,请采纳,祝学习愉快~

  • 提问者 大帽子夹克衫 #1
    谢谢老师解答,我的意思是说我想实现最后输出的结果为:“1到15的累加和为64”, 也就是说此处的n和m取到从键盘上输入的初始值。
    2020-02-27 16:47:47
问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师