令和6年度 ITパスポート 問62「擬似言語」の解説
関数convertは,整数型の配列を一定のルールで文字列に変換するプログラムである。関数convertをconvert(arrayInput)として呼び出したときの戻り値が“AABAB”になる引数arrayInputの値はどれか。ここで,arrayInputの要素数は1以上とし,配列の要素番号は1から始まる。 〔プログラム〕 ○文字列型: convert(整数型の配列: arrayInput) 文字列型: stringOutput ← "" // 空文字列を格納 整数型: i for (i を 1 から arrayInput の要素数 まで 1 ずつ増やす) if (arrayInput[i] が 1 と等しい) stringOutput の末尾 に "A"を追加する else stringOutput の末尾 に "B"を追加する endif endfor return stringOutput
- ア{0, 0, 1, 2, 1}
- イ{0, 1, 2, 1, 1}
- ウ{1, 0, 1, 2, 0}
- エ{1, 1, 2, 1, 0}
正解と解説を見る
正解:エ
このプログラムは、配列の先頭から順に要素を見て、値が1なら“A”を、そうでなければ“B”を文字列の末尾に追加します。戻り値“AABAB”になるには、1番目と2番目の要素が1、3番目は1以外、4番目が1、5番目が1以外である必要があります。選択肢のうちこの条件を満たすのは{1, 1, 2, 1, 0}です。0も2も「1と等しくない」ので同じくBになる点に注意し、値そのものではなく1かどうかで判定することを押さえましょう。
文章だけだと分かりにくいときは「アルゴリズムとフローチャート」を図解で見る図解と確認問題つき・登録不要出典:令和6年度 ITパスポート試験 公開問題 問62
問題文・選択肢はIPA公開問題の原文です。解説は本サービスが独自に作成したもので、IPAの公式解説ではありません。
この問題のテーマを基礎から学ぶ
同じテーマの過去問
この分野の続きをアプリで解く
アプリでは公式過去問500問を本番の並びのまま解けるほか、分野別の演習や100問模試、合格準備度スコアで弱い分野と次の一歩が分かります。最初の7日間は学習記録も無料です。