-
【課題1】次のプログラムを入力して、実行しなさい。そのあと、以下の間1~3の【ア】【ク】にあて
はまる数字を答え、 【ケ】 には、 〔図4〕 から適当なものを1つ選べ。
《プログラム》
問1 プログラムにおいて、行番号 08~13の文の実行によって、〔図3] の記号が描かれるのは、Xの
値が 【ア】でYの値が 【イ】 のときである。
〔図3]
01 # 模様を描くプログラム
02 # 模様の1行目を描く
03 for X in range (1,8):
04
print("*", end="")
05 print("")
06 # 模様の2行目から6行目を描く
07 for Y in range (2, 7):
for X in range (1,8):
if X == 8-Y :
08
09
10
print("*"
11
else:
12
13
print("''*)
これは模様を描くプログラムです
模様の1行目を描きましょう
変数Xを1から7まで順番に次のことをします
「*」を表示して、 X の値を1つ増やす
終わったら改行します
模様の2行目から6行目を描きましょう
変数Y を2から6まで順番に次のことをします
変数Xを1から7まで順番に次のことをします
もし X=8-Y ならば
「*」 を表示して
end=""
" )
そうでなければ
print(".", end="")
14 # 模様の7行目を描く
16
15 for X in range (18)
print("*", end=""
17 print("")
18
19
20
「・」を表示して、 Xの値を1つ増やす
Xが終わったら改行してYの値を1つ増やす
模様の7行目を描きましょう
変数Xを1から7まで順番に次のことをします
「*」 を表示して、 Xの値を1つ増やす
終わったら改行する
問2 プログラムの実行において、行番号 09のif文は、全部で 【ウエ】 回実行され、行番号 13 の print
文は全部で 【オ】 回実行される。
問3 プログラムにおいて、行番号 08 の for 文を for X in range (1, Y+1) に変更して実行する。 行番
号 07~13の文の繰り返しの中で、Yの値が5のとき、行番号 09のif文は 【カ】 回実行され、 "*"
記号が 【キ】 個、 "." 記号が 【ク】 個それぞれ表示される。
したがって、変更したプログラムの実行によって描かれる図形は、 【ケ】である。
1
*******
2
*******
3
*******
4
*******
*
*..
.*
・*・
*******
*******
*******
*******
《実行結果》
*******
*******
5
6
7
*******
*****.
*******
*****
*******
*******
.*
****.
***
*
**
***
**•
* .
*****>
*
***
*
**
***
*******
[図4]