令和6年度 ITパスポート 問62 解説|擬似言語 配列から文字列

ITパスポート 公開問題の解説令和6年度 問62最終更新 2026-10-19

分類テクノロジ系 » アルゴリズムとプログラミング » アルゴリズムとプログラミング新しい試験範囲外(2027年度からの新しい試験には出ない分野)年度令和6年度の100問の一覧

関数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
正解と解説

正解:エ

ア× 変換すると「BBABA」です。1番目が0なので、最初の文字がもう B になります。

イ× 変換すると「BABAA」です。1番目が0なので、最初の文字が B になります。

ウ× 変換すると「ABABB」です。2番目が0なので、2文字目が B になります。

エ○ 正解 1・1・2・1・0 は「1・1・1以外・1・1以外」なので、変換すると「AABAB」になります。

解説

このプログラムは、配列 arrayInput の要素を1番目から順に見て、値が1なら「A」、1以外なら「B」を文字列の末尾に足していきます。要素の値が1かどうかだけで A と B が決まるので、0 も 2 も同じ「B」になります。

戻り値が「AABAB」なら、1番目から順に「1・1・1以外・1・1以外」でなければなりません。4つの配列を変換すると次のとおりです。

{0, 0, 1, 2, 1} → BBABA
{0, 1, 2, 1, 1} → BABAA
{1, 0, 1, 2, 0} → ABABB
{1, 1, 2, 1, 0} → AABAB

教科書 g37この問題の知識

アルゴリズムとプログラミング

アルゴリズムは問題を解くための手順で、順次・選択・繰返しの3つで組み立てます。流れ図と擬似言語の読み方、変数の値を書き出すトレース、空欄の埋め方、線形探索と2分探索、選択ソート・バブルソート・クイックソートと併合までを、公開問題を解ける形でまとめます。

教科書を読む →同じ分野の過去問を続けて解く(アルゴリズムとプログラミング 17問)

ITパスポートのUdemy講座を口コミで比べる。動画講座3つ・問題集3つ、受講者数・★評価・口コミつき。広告を含むページですITパスポートのUdemy講座を口コミで比べる。動画講座3つ・問題集3つ、受講者数・★評価・口コミつき。広告を含むページです

Udemy の ITパスポート講座を、受講者数・★評価・口コミで比べたページです(広告を含みます)。

過去問教科書の一覧(現行の試験の順)教科書の一覧(新しい試験の順)

出典:IPA「ITパスポート試験 公開問題」令和6年度 問62。問題文と選択肢は改変せずに引用しています(表・図は文字に書き起こしたもの)。正解は IPA 公表の解答例によります。

タイトルとURLをコピーしました