JJ プログラム仙人修行日誌

2024/04/20 からは、プログラム仙人修行の日誌を書いてます。

 次の流れ図は,10 進整数 j(0 < j < 100) を 2 進数に変換する処理を表して
いる。2 進数は下位けたから順に,配列の要素 NISHIN(1) から NISHIN(8) に格
納される。流れ図の a 及び b に入る処理はどれか。ここで,j div 2 は j を
2で割った商の整数部分を,j mod 2は j を 2 で割った余りを表す。

  ───────
 (  開始   )
  ───┬───

 ───┴─────
/  j を入力 /
─────┬───
  │
/───┴───\
│ 変換 │
│k : 1,1,8(注) │
└───┬───┘

┌───┴───┐
│┏━━━━━┓│
│┃  a   ┃│
│┗━━━━━┛│
└───┬───┘

┌───┴───┐
│┏━━━━━┓│
│┃  b   ┃│
│┗━━━━━┛│
└───┬───┘

┌───┴───┐
│ │
│ 変換 │
\───┬───/


  ───┴───
 (  終了   )
  ───────

(注)ループ端の繰返し指定は,変数名:初期値,増分,終値を示す。

  ┌───────────┬───────────┐
  │     a      │     b      │
┌─┼───────────┼───────────┤
│ア│j div 2 → j    │j mod 2 → NISHIN(k)│
├─┼───────────┼───────────┤
│イ│j div 2 → NISHIN(k)│j mod 2 → j   │
├─┼───────────┼───────────┤
│ウ│j mod 2 → j    │j div 2 → NISHIN(k)│
├─┼───────────┼───────────┤
│エ│j mod 2 → NISHIN(k)│j div 2 → j    │
└─┴───────────┴───────────┘

【演習】得意なプログラム言語でプログラムを作成しよう。

注意:桁がずれて表示されているときは以下のサイトを参考にして下さい。
等幅フォントに…@まぐまぐ http://help.mag2.com/000045.html

■キーワード■ アルゴリズム:基数変換

■解答■
  基本情報技術者午前平成20年秋問01
  基本情報技術者午前平成17年春問01
  第二種情報処理技術者午前平成12年秋問59

  ┌───────────┬───────────┐
  │     a      │     b      │
┌─┼───────────┼───────────┤
│エ│j mod 2 → NISHIN(k)│j div 2 → j    │
└─┴───────────┴───────────┘

> 5を二進数表記に変換
> jに5を入れて考える。
>
> jを2で割る → 2余り1 → 1をNISHIK(K)に入れる → 2をjとし、繰り返す。

 どうもありがとうございます。

                                                                                                                                              • -