ipa-kei

基本情報技術者試験

交換して並べる|バブルソートと選択ソート【基本情報技術者試験 科目B】

基本情報技術者試験 科目Bの整列を図で説明します。まず入れ替えには避難用の箱が1つ要ること、次に隣どうしを比べるバブルソートと、いちばん小さいものを選ぶ選択ソート。交換の3行が内側にあるか外側にあるかで見分けられます。プログラムは全量を載せています。
基本情報技術者試験

文字列照合|重ねて、ずらして、また重ねる【基本情報技術者試験 科目B】

基本情報技術者試験 科目Bの文字列照合を図で説明します。key を data に重ねて1文字ずつ照らし合わせ、違ったら1つずらしてやり直すだけ。見る位置は i + j - 1 で、1を引く理由まで説明します。重ねはじめる位置の上限と、途中で内側のくり返しを抜ける書き方も扱います。
基本情報技術者試験

文字列を1文字ずつ見る|文字数と i文字目の文字【基本情報技術者試験 科目B】

基本情報技術者試験 科目Bの「文字列を1文字ずつ読んで答えを育てる」型を、令和6年度 問2 の convDecimal で説明します。18 になるまでを1周ずつ追い、result × 2 + 新しい桁 がなぜ正しい値になるのかを、10進数の 237 = 23 × 10 + 7 から説明します。文字数・i文字目の文字の読み方、文字型の配列で来た場合も扱います。
基本情報技術者試験

2次元配列の集計|0を入れる場所で決まる【基本情報技術者試験 科目B】

基本情報技術者試験 科目Bで、2次元配列を行ごと・列ごとに集計する読み方を図で説明します。縦に足したいなら外側を列にするだけで、添字の順は変わりません。いちばん問われるのは 0 を入れる場所で、外側の中なら行ごと、外なら表全体の集計です。
基本情報技術者試験

2次元配列の走査|外側のループが読む向きを決める【基本情報技術者試験 科目B】

基本情報技術者試験 科目Bの2次元配列を図で説明します。要素番号は行番号、列番号の順で、どちらも1から数えます。全部のマスを見るにはくり返しが2重になり、外側が行なら横に、外側が列なら縦に読みます。通る順が変わるので出力の順も変わります。行数・列数の書き方まで扱います。
基本情報技術者試験

配列に入れる・消す|末尾への追加とずらし方【基本情報技術者試験 科目B】

基本情報技術者試験 科目Bで、配列に要素を追加したり削除したりする書き方を図で説明します。末尾への追加だけは専用の書き方があり、場所を空ける必要がありません。途中に入れるときはうしろから空け、消すときは前から詰めます。向きを取り違えると同じ値で埋まります。
基本情報技術者試験

配列から探す|線形探索と「見つからなかったとき」【基本情報技術者試験 科目B】

基本情報技術者試験 科目Bの線形探索を図で説明します。前から1つずつ照らし合わせ、見つかったら止めるだけ。止め方は return と印を立てる形の2通りで、印を立てる形は上書きに注意します。いちばん問われるのは見つからなかったときに何を返すか。要素番号は1からなので 0 や -1 が印になります。
基本情報技術者試験

最大・最小を見つける|暫定の最大を置いて、大きければ入れ替える【基本情報技術者試験 科目B】

基本情報技術者試験 科目Bで、配列の中からいちばん大きい値を見つけるプログラムを、動画と同じ順で1行ずつ読みます。配列の1番目を暫定の最大にしておき、2番目から順にくらべて、大きければ入れ替える。入れ替えが起きるのは3周のうち何回か。最初の1つに 0 を入れると負の数で壊れる理由と、最小を探すときの読み替えまで。
基本情報技術者試験

配列を全部見る|ten[i] と for の読み方【基本情報技術者試験 科目B】

基本情報技術者試験 科目Bで最も出る「配列を全部見る」書き方を解説します。ten[1] ten[2] ten[3] と書き並べる代わりに、番号のところを変数にして ten[i] と書き、for で i を 1 ずつ増やす。for のかっこの中の4つの部分を1つずつ読み解き、合計・個数を求める形まで進みます。
基本情報技術者試験

配列のトレース|その周に読んだ値を書く【基本情報技術者試験 科目B】

基本情報技術者試験 科目Bで、配列が出てくるプログラムのトレース表の書き方です。i が動くと ten[i] の指す先も動くので、表には「その周に読んだ値」の列を作ります。配列の中身そのものを周ごとに書くのは、配列に書き込むプログラムのときだけ。見分け方と、本番で書く量を減らす3つの手までまとめました。