プログラミング能力検定対策(Python編Level2)
知識小中学生が主にプログラミング能力を測るための検定試験です。ビジュアル部門とテキスト部門があり、取得者には大学受験で考慮されたり加点されたりします
【必要スキル】
① [条件分岐]if文(条件式:同じ,違う,大なり,小なり,かつ[and],または[or],否定[not]
② [繰返し] for文(回数range,リスト)
③ [文字列]文字列結合
④ [データ構造]リスト
【問題傾向】
・出力結果になるプログラムはどれか?
・命令文の書式が正しいか?
【知識1】条件式 … 「〇〇が△のとき」を「変数a==5(変数aが5のとき)」のように表現したもの
a==5 aが5のとき a != 5 aが5じゃないとき
a>5 aが5より大きいとき a<5 aが5より小さいとき
a>=5 aが5以上のとき a<=5 aが5以下のとき
問1:「チョコケーキ」と出力(表示)されるプログラムは?
【知識2】複数条件
例えば、①「性別が男性」で「年齢が25歳以上」のとき、〇〇する (つまり、両方ともOKのとき)
②「性別が女性」か「年齢が20歳以下」のとき、〇〇する (つまり、どちらかがOKのとき)
③「性別が男性ではない」とき、〇〇する
のようなことをさせたいときがあります。Pythonで表してみると
① seibetu = “男性” and nenrei >= 25 または (seibetu = “男性”) and (nenrei >= 25) ※()は実際は使われない
② seibetu = “女性” or nenrei <= 20 または (seibetu = “女性”) or (nenrei <= 20) ※()は実際は使われない
③ not(seibetu == “男性” ) ※書けるけど、実際はほとんど使われない
となります。
問2 Pythonの実行結果は?
◆対策問題演習①
コツ)変数は必ず変数の中にある「数値」や「文字」に置き換えながら解きます
① 特訓:不等価 → 問1,問4
② 特訓:論理演算子(かつ) → 問1,問3,問6,問7
③ 特訓:論理演算子(または)→ 問1,問3,問5,問6,問7
④ 特訓:論理演算子(否定) → 問1,問2,問3,問5,問6,問7
【知識③】文字列連結 … 文字列や変数とつなげて1つにできる!
例)”こんにちは、” + “さくらさん” のように「+」でつなぐと1塊にできます
例)name = “さくら”
print(“こんにちは” + name + “さん”)
を実行すると「こんにちはさくらさん」と表示させることができます
問3:「イチゴケーキ」と出力(表示)されるプログラムは?
◆対策問題演習②
① 特訓:文字列連結 → 問1,問2,問3
【知識4】配列(リスト) … 複数のものを記憶させることができる変数の仲間
変数は1つのものを記憶する → a=5 のように変数名だけでOK
リストは複数のものを記憶する → a = [100, 200, 300] のように[]で範囲を作り、データを「,」で区切る
※Q 複数ある中から、使いたい値をどうやってコンピュータに伝えるか?
A 実は、[]の中にはデータの並びに場所の「番号」が決められています
こんなふうに、[0番目,1番目,2番目,3番目,…] ということは、
例えば、リストa[100,200,300]というものがあった場、
・200を使いたい場合、 a[1] とすればOK
・もしa[2]なら、これは「300」を示してます‼
Q リストの中に何個データがあるか知りたいときは?
A len(リスト名)を使います。例)len(a) → 3など中の個数がわかります
問4 Pythonの実行結果は?
◆対策問題演習③
① 特訓:配列(宣言) → 問1,問3,問5,問6
② 特訓:配列(取り出し) → 問1,問2,問3,問6,問7
・実行すると、どんな結果(出力)がされるか?
・実行結果から逆にたどると成立するか?
・変数になんの値が入っているのか?