Java——編寫應用程序,輸出滿足1+2+3+......+n<8888的最大正整數n


問題描述:
編寫應用程序,輸出滿足1+2+3+......+n<8888的最大正整數n
問題分析:
根據問題描述可以看到,我們需要進行累加,然后對累加起來的值進行判斷,判斷累加到那個數的時候 根據問題描述可以看到,我們需要進行累加,然后對累加起來的值進行判斷,判斷累加到那個數的時候這個數最大而且還小於8888。
算法設計:
為了方便操作,我們可以從鍵盤錄入一個數作為這個判斷的最大值,對於累加的計算我們采用for循環的方法,i從1開始累加,然后對其每累加一個值后進行判斷累加值為sum,判斷sum是否小於n,小於則繼續累加,若不小於則跳出循環,輸出i-1。
    **注意這里是i-1,因為我們是對每個累加值都進行了判斷,這個i值是連續的,當不滿足跳出來時,說明i-1仍然是滿足的,所以我們實際應該輸出i-1.**
package com.java_03;

import java.util.Scanner;


public class Test04_6 {
    public static void main(String[] args) {
        //定義初始值i,累加值sum,累加上限值n
        int i,sum,n;
        sum = 0;
        //鍵盤錄入累加上限n
        System.out.println("請輸入累加上限值:");
        Scanner sc = new Scanner(System.in);
        n = sc.nextInt();
        for(i=1; i<n; i++) {
            sum +=i;
            //判斷sum是否小於n
            if(sum<n) {
                continue;
            } else  {
                System.out.println("最大正整數:"+(i-1));
                break;
            }
        }
    }
}


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM