2022/03/24
7881

Java程式教室(一):Java for巢狀迴圈

Java迴圈教學
 
在企業面試程式設計師的筆試中,for巢狀迴圈的題目是很常被拿來測試應徵者是否具備基本數學邏輯演算能力,這裡整理幾個最常出現的範例:

1. JAVA撰寫99乘法表

問題需求與分析:
99乘法表,輸出結果有列數與行數,設計成讓使用者執行時,鍵盤輸入列數與行數,程式即根據接收的列與行的資料,將結果運算輸出
99乘法表
撰寫步驟:
Step 1:
引入鍵盤數入的功能,java.util.Scanner
1-1
Step 2:
撰寫巢狀迴圈,主要執行運算結果的步驟
1-2
Step 3:
完整程式步驟
1-3
Step 4:
測試,編譯與執行
1-4

2. 階梯狀99乘法表

問題分析
觀察99乘法表,可以得出圖表的規律:總共有9行,第幾行就有幾個運算式。同時要注意每行運算式的規律:第i行,運算式就從j*1開始,一直到j*j結束,共有j個運算式,這個效果可以透過一次迴圈實現。這樣的話,正好可以透過雙重迴圈來控制輸出,外層迴圈控制行數,內層迴圈控制列。還有個地方需要注意的是,內層和外層之間的關聯,內層列的個數式根據外層的行數來控制。
2-0

撰寫步驟
Step 1
撰寫鍵盤輸入功能
2-1

Step 2
巢狀迴圈控制項目,運算式輸出
2-2

Step 3
完整程式
2-3

Step 4
編譯,測試與執行結果 
2-4

3. 金字塔圖案

問題分析
這個問題是一個很經典的迴圈應用題目。題目要求,執行時使用者輸入列數,輸出結果會按照順序,1,3,5,7…且第一個為置中呈金字塔型,不是靠左對齊。
我們可以發現:第一行的左邊空格為6個,第二行為5個,第三行為4個,第四行為3個……,每行依次遞減,直到最後一行空格數為0:而星號數為第一行1個,第二行3個,第三行5個,…….,每行一次遞增2,直到最後一行星號數為13
3-0
 
撰寫步驟
Step 1:
依照問題分析得到,主要計算與最左差幾個空格的規律。得出結果如5列,第一行左邊就四個空格,剛好差一。
3-1
 
Step 2:
依照問題分析得到撰寫星號數,計算規則為當列2倍-1
3-2
 
Step 3
完整程式
3-3
 
 
Step 4:
編譯,測試執行
3-4

4. 巴斯卡三角

根據輸入行數,列印出巴斯卡三角形。
4-0
 
問題分析:
觀察巴斯卡三角型的圖案,它的規律性為:三角形的直邊與斜邊都為”1”,三角形裡面任意數字正好等於前一列正上方與左上角兩個數字和,且第幾行就有幾個數字。

撰寫步驟
Step 1:
由問題分析可知,用二維陣列計算t無存巴斯卡三角,巴斯卡三角直邊與斜邊都設為1,在設定中間元素直為上方與左上方相加的公式。以此撰寫一個static的方法method 回傳值為此二維陣列,private static int[][] getTriangle(int num)
4-1

 
Step 2:
撰寫列印巴斯卡三角的方法static method,透過第一個方法產生的巴斯卡三角,為一二維陣列物件,所以這個方法設計成引數為陣列物件,只要將產生的二維陣列注入後,內容為將二維陣列容輸出列印即可
4-2
 
Step 3
完整程式
 
4-3-1

4-3-2
 
Step 4
編譯,測試與執行
4-4
 

程式課程試聽索取 



  江聖榮 老師
  專長:

  程式設計:從前端(UI front-end)到後端(Back-end)之全端工程師(full-stack)
  精通語言:Java、Javascript 前後端框架   
  開課詳情

 
LINE-friend
近期文章熱搜文章排行
熱門標籤熱門標籤
近期文章你可能有興趣的文章
熱門標籤熱門標籤