基本情報技術者試験の科目BをJavaとPythonのプログラムで考える No.27
基本情報技術者試験で出題されるプログラム言語が疑似言語に変更されましたね。合格に向けて学習を進めるにおいては、やはり普段から使っているプログラム言語に置き換えて考えてみたいですよね。
このサイトでは、IPA情報処理推進機構で公開されている科目Bのプログラミングの問題を中心に、疑似言語をJavaとPythonのコードに置き換えて解説していきます。
1日1問の解説を発信していく予定です。基本情報技術者試験の合格を目指されている方のお役に立てれば幸いです。
基本情報技術者試験 科目 B サンプル問題(2022年4月公開)
https://www.ipa.go.jp/shiken/syllabus/ps6vr7000000oett-att/fe_kamoku_b_sample.pdf
問1 条件分岐
数値の範囲で条件が決まる場合は、数直線を書いてみましょう。
「以下」なのか、「以上」なのか、「未満」なのかを問題文から把握しましょう。
プログラムでは、最初に3歳以下かを判定していますので、次に判定するのは9歳以下かになり、それらの条件に合わない場合は、必然的に10歳以上となるわけです。
1.Javaのコードで考えてみよう
package kamokuB;
public class R3_Sample01 {
static int fee(int age){
int ret;
if(age <= 3) // 3歳以下か
ret = 100;
else if(age <= 9) // 9歳以下か
ret = 300;
else
ret = 500;
return ret;
}
public static void main(String[] args) {
System.out.println(fee(3));
System.out.println(fee(9));
System.out.println(fee(10));
}
}
2.Pythonのコードで考えてみよう
# 2022年4月公開問題1
def fee(age):
if age <= 3: # 3歳以下か
return 100
elif age <= 9: # 9歳以下か
return 300
else:
return 500
print(fee(3))
print(fee(9))
print(fee(10))
いかがでしょうか。
簡単そうな問題であっても、うっかりミスをしないように、簡単な図を書いて整理することをお薦めします。