99乘法表,輸出結果有列數與行數,設計成讓使用者執行時,鍵盤輸入列數與行數,程式即根據接收的列與行的資料,將結果運算輸出
引入鍵盤數入的功能,java.util.Scanner
Step 2:
撰寫巢狀迴圈,主要執行運算結果的步驟
Step 3:
完整程式步驟
Step 4:
測試,編譯與執行
問題分析
觀察99乘法表,可以得出圖表的規律:總共有9行,第幾行就有幾個運算式。同時要注意每行運算式的規律:第i行,運算式就從j*1開始,一直到j*j結束,共有j個運算式,這個效果可以透過一次迴圈實現。這樣的話,正好可以透過雙重迴圈來控制輸出,外層迴圈控制行數,內層迴圈控制列。還有個地方需要注意的是,內層和外層之間的關聯,內層列的個數式根據外層的行數來控制。
撰寫步驟
Step 1
撰寫鍵盤輸入功能
Step 2
巢狀迴圈控制項目,運算式輸出
Step 3
完整程式
Step 4
編譯,測試與執行結果
問題分析
這個問題是一個很經典的迴圈應用題目。題目要求,執行時使用者輸入列數,輸出結果會按照順序,1,3,5,7…且第一個為置中呈金字塔型,不是靠左對齊。
我們可以發現:第一行的左邊空格為6個,第二行為5個,第三行為4個,第四行為3個……,每行依次遞減,直到最後一行空格數為0:而星號數為第一行1個,第二行3個,第三行5個,…….,每行一次遞增2,直到最後一行星號數為13
撰寫步驟
Step 1:
依照問題分析得到,主要計算與最左差幾個空格的規律。得出結果如5列,第一行左邊就四個空格,剛好差一。
Step 2:
依照問題分析得到撰寫星號數,計算規則為當列2倍-1
Step 3
完整程式
Step 4:
編譯,測試執行
根據輸入行數,列印出巴斯卡三角形。
問題分析:
觀察巴斯卡三角型的圖案,它的規律性為:三角形的直邊與斜邊都為”1”,三角形裡面任意數字正好等於前一列正上方與左上角兩個數字和,且第幾行就有幾個數字。
撰寫步驟
Step 1:
由問題分析可知,用二維陣列計算t無存巴斯卡三角,巴斯卡三角直邊與斜邊都設為1,在設定中間元素直為上方與左上方相加的公式。以此撰寫一個static的方法method 回傳值為此二維陣列,private static int[][] getTriangle(int num)
Step 2:
撰寫列印巴斯卡三角的方法static method,透過第一個方法產生的巴斯卡三角,為一二維陣列物件,所以這個方法設計成引數為陣列物件,只要將產生的二維陣列注入後,內容為將二維陣列容輸出列印即可
Step 3
完整程式
Step 4
編譯,測試與執行
程式課程試聽索取
江聖榮 老師
專長:
程式設計:從前端(UI front-end)到後端(Back-end)之全端工程師(full-stack)
精通語言:Java、Javascript 前後端框架
開課詳情 |