SlideShare a Scribd company logo
1 of 30
Download to read offline
結語
學好程式需要大量練習,在練習中才能由中發掘一套適合自己邏輯
思維的解題方式。
本章的重點是迴圈,迴圈代表著「有規則的重複步驟」。一個
程式問題通常是由一些有規則與沒規則的步驟交錯組合而成,有規
則步驟使用迴圈替代,沒有規則步驟則用一般式子。
迴圈下標常會與迴圈內的變數有所關聯,它們之間的對應關係
通常要利用等差數列求得,這方面可參考附錄A。數字間的對應關
係,有些可由心算得到,但大多時候需透過紙筆推導,少了這一步
驟,程式就難以順利完成。在動手寫程式前先由紙筆推導入手,規
則理清楚了,轉為程式碼就相對簡單。這種方法也是最節省時間,
最能獲得成就感的學習程式方法。
以下的練習題,許多題目都需先透過紙筆推導才能完成,而且
都只要透過迴圈就可解決,推導前請謹記一個原則:有規則步驟使
用迴圈替代,沒有規則步驟則用一般式子。
341 型別與迴圈
習題 1
 輸入數字 n 印出以下階乘計算過程與結果:
35
> 5
1! = 1 = 1
2! = 1x2 = 2
3! = 1x2x3 = 6
4! = 1x2x3x4 = 24
5! = 1x2x3x4x5 = 120
1 型別與迴圈
習題 2
 輸入數字 n 印出以下數字求和過程與結果:
36
> 5
sum([1,5]) = 1+2+3+4+5 = 15
sum([1,4]) = 1+2+3+4 = 10
sum([1,3]) = 1+2+3 = 6
sum([1,2]) = 1+2 = 3
sum([1,1]) = 1 = 1
1 型別與迴圈
習題 3
 輸入列數 n 印出 n× n 方形數字圖形如下:
37
> 3 > 4
1 2 3 1 2 3 4
4 5 6 5 6 7 8
7 8 9 9 0 1 2
3 4 5 6
1 型別與迴圈
習題 4
 輸入列數 n 印出 n× n 方形空心數字圖形:
38
> 3 > 4
1 2 3 1 2 3 4
4 5 5 6
6 7 8 7 8
9 0 1 2
1 型別與迴圈
習題 5
 輸入列數 n 印出 n× n 環形數字圖形:
39
> 4 > 5
1 1 1 2 1 1 1 1 2
4 2 4 2
4 2 4 2
4 3 3 3 4 2
4 3 3 3 3
1 型別與迴圈
習題 6
 輸入列數 n 印出 n× n 環形遞增數字圖形:
40
> 4 > 5
1 2 3 4 1 2 3 4 5
2 5 6 6
1 6 5 7
0 9 8 7 4 8
3 2 1 0 9
1 型別與迴圈
習題 7
 輸入列數 n 印出以下右下三角數字圖案:
41
> 3 > 4
1 1
2 3 2 3
4 5 6 4 5 6
7 8 9 0
1 型別與迴圈
習題 8
 輸入列數 n 印出以下數字圖案:
42
> 3 > 4
1 1 1 1
2 2 2 2 2 2 2 2
3 3 3 3 3 3 3 3 3 3 3 3
4 4 4 4 4 4 4 4
1 型別與迴圈
習題 9
 輸入列數 n 印出以下數字圖形:
43
> 4 > 5
1 2 3 4 1 2 3 4 5
2 3 4 1 2 3 4 5 1
3 4 1 2 3 4 5 1 2
4 1 2 3 4 5 1 2 3
5 1 2 3 4
1 型別與迴圈
習題 10
 輸入列數 n 印出數字排列圖形 :
44
> 3 > 4
|123|231|312| |1234|2341|3412|4123|
|231|312|123| |2341|3412|4123|1234|
|312|123|231| |3412|4123|1234|2341|
|4123|1234|2341|3412|
1 型別與迴圈
習題 11
 輸入列數 n 印出以下 V 圖案:
45
> 3 > 4
 /  /
 /  /
/  /
/
1 型別與迴圈
習題 12
 輸入列數 n 印出 n 個連在一起的 V 圖案:
46
> 3 > 4
 / / /  / / / /
 /  /  /  /  /  /  /
/ / /  /  /  /  /
/ / / /
1 型別與迴圈
習題 13
 輸入列數 n 印出 n 個連在一起的 X 圖案:
47
> 3 > 4
 / / /  / / / /
 /  /  /  /  /  /  /
/ / /  /  /  /  /
/ / / / / / /
/  /  /  / / / /
/ / /  /  /  /  / 
/  /  /  / 
/ / / / 
1 型別與迴圈
習題 14
 輸入列數 n 印出 n 個連在一起菱形圖案,
並在各個菱形框內填入數字:
48
> 3 > 4
 / / /  / / / /
1 /22 /33 /4 1 /22 /33 /44 /5
11/2222/3333/44 11 /2222 /3333 /4444 /55
11/2222/3333/44 111/222222/333333/444444/555
1/ 22/ 33/ 4 111/222222/333333/444444/555
/ / /  11/ 2222/ 3333/ 4444/ 55
1/ 22/ 33/ 44/ 5
/ / / / 
1 型別與迴圈
習題 15
 輸入列數 n 印出以下 n 個方塊數字:
49
> 3 > 4
111/2 333/4 555/6 1111/2 3333/4 5555/6 7777/8
11/22 33/44 55/66 111/22 333/44 555/66 777/88
1/222 3/444 5/666 11/222 33/444 55/666 77/888
1/2222 3/4444 5/6666 7/8888
1 型別與迴圈
習題 16
 撰寫程式利用四重迴圈印出以下數字排列:
50
1 1 1 1 1 2 2 2 2 2 3 3 3 3 3 4 4 4 4 4
1 1 1 1 1 2 2 2 2 2 3 3 3 3 3 4 4 4 4 4
1 1 1 1 1 2 2 2 2 2 3 3 3 3 3 4 4 4 4 4
5 5 5 5 5 6 6 6 6 6 7 7 7 7 7 8 8 8 8 8
5 5 5 5 5 6 6 6 6 6 7 7 7 7 7 8 8 8 8 8
5 5 5 5 5 6 6 6 6 6 7 7 7 7 7 8 8 8 8 8
1 型別與迴圈
習題 17
 輸入數字 n 印出以下數字排列圖案:
51
> 4 > 5
1111 11111
1111 2222 11111 22222
1111 2222 3333 11111 22222 33333
1111 2222 3333 4444 11111 22222 33333 44444
11111 22222 33333 44444 55555
1 型別與迴圈
習題 18
 輸入數字 n 印出以下數字排列圖案:
52
> 4 > 5
1111 2222 3333 4444 11111 22222 33333 44444 55555
2222 3333 4444 22222 33333 44444 55555
3333 4444 33333 44444 55555
4444 44444 55555
55555
1 型別與迴圈
習題 19
 輸入數字 n 印出以下方塊數字排列圖案:
53
> 2 > 3
1 1 1 1 1
1 1 1 1 1
1 1 1
2 2 3 3
2 2 3 3 2 2 2 3 3 3
2 2 2 3 3 3
2 2 2 3 3 3
4 4 4 5 5 5 6 6 6
4 4 4 5 5 5 6 6 6
4 4 4 5 5 5 6 6 6
1 型別與迴圈
習題 20
 輸入數字 n 印出以下空心方塊數字排列圖案:
54
> 3 > 4
11111 1111111
1 1 1 1
11111 1 1
1111111
22222 33333
2 2 3 3 2222222 3333333
22222 33333 2 2 3 3
2 2 3 3
44444 55555 66666 2222222 3333333
4 4 5 5 6 6
44444 55555 66666 4444444 5555555 6666666
4 4 5 5 6 6
4 4 5 5 6 6
4444444 5555555 6666666
1 型別與迴圈
習題 21
 輸入列數 n 印出以下數字圖案:
55
> 5 > 6
1---------------2 1-------------------2
3-----------4 3---------------4
5-------6 5-----------6
7---8 7-------8
9 9---0
1
1 型別與迴圈
習題 22
 輸入列數 n 印出以下雙組連在一起的數字圖案:
56
> 4 > 5
1-----------2-----------3 1---------------2---------------3
4-------5 6-------7 4-----------5 6-----------7
8---9 0---1 8-------9 0-------1
2 3 2---3 4---5
6 7
1 型別與迴圈
習題 23
 輸入列數 n 印出以下 n 個數字塔:
57
> 3 > 4
1 1 1 1 1 1 1
222 222 222 222 222 222 222
33333 33333 33333 33333 33333 33333 33333
4444444 4444444 4444444 4444444
1 型別與迴圈
習題 24
 輸入列數 n 印出以下 n 個數字空心塔:
58
> 3 > 4
1 1 1 1 1 1 1
2 2 2 2 2 2 2 2 2 2 2 2 2 2
33333 33333 33333 3 3 3 3 3 3 3 3
4444444 4444444 4444444 4444444
1 型別與迴圈
習題 25
 輸入數字 n 印出以下一排山:
59
> 3 > 4
/ / / / / / /
// // // // // // //
///////// /// /// /// ///
////////////////
1 型別與迴圈
習題 26
 輸入數字 n 印出以下一排山與其倒影圖案:
60
> 3 > 4
/ / / / / / /
// // // // // // //
///////// /// /// /// ///
~~~~~~~~~~~~~~~~~~ ////////////////
///////// ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
// // // ////////////////
/ / / /// /// /// ///
// // // //
/ / / /
1 型別與迴圈
習題 27
 輸入數字 n 印出以下方塊數字排列圖案:
61
> 3 > 5
111 111 11111 11111
111 111 11111 11111
111 111 11111 11111
222 222 11111 11111
222 222 11111 11111
222 222 22222 22222
333 22222 22222
333 22222 22222
333 22222 22222
22222 22222
33333 33333
33333 33333
33333 33333
33333 33333
33333 33333
44444 44444
44444 44444
44444 44444
44444 44444
44444 44444
55555
55555
55555
55555
55555
1 型別與迴圈
提示:將前 n-1 列方塊與最後一列方塊分開處理
習題 28
 輸入數字 n 印出以下方塊數字排列圖案:
62
> 3 > 4
333 4444
333 4444
333 4444
222 222 4444
222 222 3333 3333
222 222 3333 3333
111 111 3333 3333
111 111 3333 3333
111 111 2222 2222
2222 2222
2222 2222
2222 2222
1111 1111
1111 1111
1111 1111
1111 1111
1 型別與迴圈
提示:可藉由更動上題程式執行步驟與逆轉迴圈順序快速完成,不需重寫
習題 29
 輸入數字 n 印出以下方塊數字排列圖案:
63
> 3 > 4
333 4444
333 4444
333 4444
222 222 4444
222 222 3333 3333
222 222 3333 3333
111 111 3333 3333
111 111 3333 3333
111 111 2222 2222
222 222 2222 2222
222 222 2222 2222
222 222 2222 2222
333 1111 1111
333 1111 1111
333 1111 1111
1111 1111
2222 2222
2222 2222
2222 2222
2222 2222
3333 3333
3333 3333
3333 3333
3333 3333
4444
4444
4444
4444
1 型別與迴圈
提示:合成以上兩份程式碼即可迅速完成

More Related Content

What's hot

What's hot (20)

Ch1
Ch1Ch1
Ch1
 
Ch3 教學
Ch3 教學Ch3 教學
Ch3 教學
 
Ch4 範例
Ch4 範例Ch4 範例
Ch4 範例
 
九九乘法表之秘密
九九乘法表之秘密九九乘法表之秘密
九九乘法表之秘密
 
103指考數學乙試題
103指考數學乙試題103指考數學乙試題
103指考數學乙試題
 
SQL 語言簡介
SQL 語言簡介 SQL 語言簡介
SQL 語言簡介
 
P3 teoria de exponentes I solucion
P3   teoria de exponentes I solucionP3   teoria de exponentes I solucion
P3 teoria de exponentes I solucion
 
Ch2 教學
Ch2 教學Ch2 教學
Ch2 教學
 
108年數甲指考試題
108年數甲指考試題108年數甲指考試題
108年數甲指考試題
 
Ppt 101-119
Ppt 101-119Ppt 101-119
Ppt 101-119
 
姜昱安108學年度下學期數學科課程學習成果
姜昱安108學年度下學期數學科課程學習成果姜昱安108學年度下學期數學科課程學習成果
姜昱安108學年度下學期數學科課程學習成果
 
103指考數學甲試題
103指考數學甲試題103指考數學甲試題
103指考數學甲試題
 
98up12
98up1298up12
98up12
 
Ch1 教學
Ch1 教學Ch1 教學
Ch1 教學
 
Func diff cal_exercise2-3
Func diff cal_exercise2-3Func diff cal_exercise2-3
Func diff cal_exercise2-3
 
姜昱安110上學期數學科課程學習成果
姜昱安110上學期數學科課程學習成果姜昱安110上學期數學科課程學習成果
姜昱安110上學期數學科課程學習成果
 
108指考數學乙試卷定稿
108指考數學乙試卷定稿108指考數學乙試卷定稿
108指考數學乙試卷定稿
 
Ppt 26-50
Ppt 26-50Ppt 26-50
Ppt 26-50
 
姜昱安108學年度上學期 數學課程學習成果
姜昱安108學年度上學期 數學課程學習成果姜昱安108學年度上學期 數學課程學習成果
姜昱安108學年度上學期 數學課程學習成果
 
Ppt 51-77
Ppt 51-77Ppt 51-77
Ppt 51-77
 

More from hungchiayang1 (20)

Exercise 1 3
Exercise 1 3Exercise 1 3
Exercise 1 3
 
P127 135 new
P127 135 newP127 135 new
P127 135 new
 
Python p.193 197
Python p.193 197Python p.193 197
Python p.193 197
 
Python differential equation
Python differential equationPython differential equation
Python differential equation
 
化學系 python 習題
化學系 python 習題化學系 python 習題
化學系 python 習題
 
化學系 python 練習
化學系 python 練習化學系 python 練習
化學系 python 練習
 
化學系 python 教學
化學系 python 教學化學系 python 教學
化學系 python 教學
 
Ppt 120-126
Ppt 120-126Ppt 120-126
Ppt 120-126
 
Ppt 151-151
Ppt 151-151Ppt 151-151
Ppt 151-151
 
Ppt 136-136
Ppt 136-136Ppt 136-136
Ppt 136-136
 
Ppt 143-143
Ppt 143-143Ppt 143-143
Ppt 143-143
 
Ppt 137-137
Ppt 137-137Ppt 137-137
Ppt 137-137
 
Ppt 150-150
Ppt 150-150Ppt 150-150
Ppt 150-150
 
Ppt 145-149
Ppt 145-149Ppt 145-149
Ppt 145-149
 
Ppt 138-142
Ppt 138-142Ppt 138-142
Ppt 138-142
 
Ppt 174-174
Ppt 174-174Ppt 174-174
Ppt 174-174
 
Ppt 1-25
Ppt 1-25Ppt 1-25
Ppt 1-25
 
Ppt 144-144
Ppt 144-144Ppt 144-144
Ppt 144-144
 
Ppt 167-173
Ppt 167-173Ppt 167-173
Ppt 167-173
 
Ppt 152-155
Ppt 152-155Ppt 152-155
Ppt 152-155
 

Recently uploaded

法国蒙彼利埃国家高等建筑学院毕业证制作/德语歌德B1证书/加拿大新斯科舍省农业学院文凭加急制作一个
法国蒙彼利埃国家高等建筑学院毕业证制作/德语歌德B1证书/加拿大新斯科舍省农业学院文凭加急制作一个法国蒙彼利埃国家高等建筑学院毕业证制作/德语歌德B1证书/加拿大新斯科舍省农业学院文凭加急制作一个
法国蒙彼利埃国家高等建筑学院毕业证制作/德语歌德B1证书/加拿大新斯科舍省农业学院文凭加急制作一个
michaelell902
 
10.2.1 马来西亚各州名称的由来六年级历史单元练习马来西亚各州名称的由来练习
10.2.1 马来西亚各州名称的由来六年级历史单元练习马来西亚各州名称的由来练习10.2.1 马来西亚各州名称的由来六年级历史单元练习马来西亚各州名称的由来练习
10.2.1 马来西亚各州名称的由来六年级历史单元练习马来西亚各州名称的由来练习
PUAXINYEEMoe
 

Recently uploaded (6)

法国蒙彼利埃国家高等建筑学院毕业证制作/德语歌德B1证书/加拿大新斯科舍省农业学院文凭加急制作一个
法国蒙彼利埃国家高等建筑学院毕业证制作/德语歌德B1证书/加拿大新斯科舍省农业学院文凭加急制作一个法国蒙彼利埃国家高等建筑学院毕业证制作/德语歌德B1证书/加拿大新斯科舍省农业学院文凭加急制作一个
法国蒙彼利埃国家高等建筑学院毕业证制作/德语歌德B1证书/加拿大新斯科舍省农业学院文凭加急制作一个
 
1.🎉“黑客”如何修改成绩?🤔🎉 在这个信息爆炸的时代,我们经常会看到各种作弊手段。但是你知道吗?有一种作弊方式可能比你想象中更巧妙:它就是——黑客![单...
1.🎉“黑客”如何修改成绩?🤔🎉 在这个信息爆炸的时代,我们经常会看到各种作弊手段。但是你知道吗?有一种作弊方式可能比你想象中更巧妙:它就是——黑客![单...1.🎉“黑客”如何修改成绩?🤔🎉 在这个信息爆炸的时代,我们经常会看到各种作弊手段。但是你知道吗?有一种作弊方式可能比你想象中更巧妙:它就是——黑客![单...
1.🎉“黑客”如何修改成绩?🤔🎉 在这个信息爆炸的时代,我们经常会看到各种作弊手段。但是你知道吗?有一种作弊方式可能比你想象中更巧妙:它就是——黑客![单...
 
taibif_開放資料流程-清理資料01-通則_20240509_20240509.pdf
taibif_開放資料流程-清理資料01-通則_20240509_20240509.pdftaibif_開放資料流程-清理資料01-通則_20240509_20240509.pdf
taibif_開放資料流程-清理資料01-通則_20240509_20240509.pdf
 
10.2.1 马来西亚各州名称的由来六年级历史单元练习马来西亚各州名称的由来练习
10.2.1 马来西亚各州名称的由来六年级历史单元练习马来西亚各州名称的由来练习10.2.1 马来西亚各州名称的由来六年级历史单元练习马来西亚各州名称的由来练习
10.2.1 马来西亚各州名称的由来六年级历史单元练习马来西亚各州名称的由来练习
 
啟思中國語文 - 中二 單元一 - 孟嘗君列傳 - 記敍的方法和人稱1.pptx
啟思中國語文 - 中二 單元一 - 孟嘗君列傳 - 記敍的方法和人稱1.pptx啟思中國語文 - 中二 單元一 - 孟嘗君列傳 - 記敍的方法和人稱1.pptx
啟思中國語文 - 中二 單元一 - 孟嘗君列傳 - 記敍的方法和人稱1.pptx
 
taibif_資料標準概念介紹_20240509_20240509_20340509.pdf
taibif_資料標準概念介紹_20240509_20240509_20340509.pdftaibif_資料標準概念介紹_20240509_20240509_20340509.pdf
taibif_資料標準概念介紹_20240509_20240509_20340509.pdf
 

Ch1 習題