Successfully reported this slideshow.
Your SlideShare is downloading. ×

Flowchart slide to illustrate ranked access

Ad
Ad
Ad
Ad
Ad
Ad
Ad
Ad
Ad
Ad
Ad
Loading in …3
×

Check these out next

1 of 207 Ad

Flowchart slide to illustrate ranked access

Download to read offline

There are four long jump records and a visual explanation of the algorithm for calculating the descending ranks of the records.
Trace the method of recording inferior times with 16 round robin calculations and the method of recording mutually inferior times with only 6 minimum comparisons.

There are four long jump records and a visual explanation of the algorithm for calculating the descending ranks of the records.
Trace the method of recording inferior times with 16 round robin calculations and the method of recording mutually inferior times with only 6 minimum comparisons.

Advertisement
Advertisement

More Related Content

Recently uploaded (20)

Advertisement

Flowchart slide to illustrate ranked access

  1. 1. 順位付けのアルゴリズム の説明 ©seastar@orion.nifty.jp Ver.2.5 (令和3年3月)
  2. 2. 内 容 目 次 1. 順位付け処理の内容 2. 自分の順位を増やす総当たり方式の表 3. 相手の順位を増やす総当たり方式の表 4. 互いの順位を増やす範囲縮小方式の表 5. 順位付けのアルゴリズムの流れ図と簡易言語 6. 自分の順位を増やす総当たり方式の流れ図トレース 7. 互いの順位を増やす範囲縮小方式の流れ図トレース (クリックして各内容に移動できる)
  3. 3. 順位付け処理の概要 • 4人の走り幅跳びのデータに順位を付ける。 • ポイント • 自分が何人に負けるかを数えてみる。 • 同点の相手には負けない。 • 1位の者は一度も負けない。 • 同点のものがいない最下位の者は、自分以外の全てに負ける。 人数より1少ない負け数。 • それぞれの計算に 1 を足すと正しい順位が求められる。 • 同点の場合もうまく計算される。
  4. 4. 説明用のデータ 走り幅跳びの 飛距離(m) 順位 1 6.20 0 2 3.80 0 3 7.30 0 4 6.20 0
  5. 5. 計算結果 走り幅跳びの 飛距離(m) 順位 1 6.20 2 2 3.80 4 3 7.30 1 4 6.20 2
  6. 6. 全員が自分の順位を計算して いく動作を見ていこう。
  7. 7. 走り幅跳びの 飛距離(m) 順位 1 6.20 0 2 3.80 0 3 7.30 0 4 6.20 0 まず全員に1を初 期設定し、一度も負 けなければ1位にな るように準備する。 順位付け開始(自分の順位操作)
  8. 8. 順位付け開始(相手の順位操作) 走り幅跳びの 飛距離(m) 順位 1 6.20 1 2 3.80 1 3 7.30 1 4 6.20 1
  9. 9. 走り幅跳びの 飛距離(m) 順位 1 6.20 1 2 3.80 1 3 7.30 1 4 6.20 1 1行目の選手の 記録を順番に比べ、 自分が小さかったら、 自分の順位を 1 増 やす。 各記録の比較(相手の順位操作) 調べる選手の背景を 赤にする。 この赤い枠の順位を 計算していく。
  10. 10. 走り幅跳びの 飛距離(m) 順位 1 6.20 1 2 3.80 1 3 7.30 1 4 6.20 1 まず自分と比較する。 同点なので順位はそのま ま。 各記録の比較(相手の順位操作)
  11. 11. 走り幅跳びの 飛距離(m) 順位 1 6.20 1 2 3.80 1 3 7.30 1 4 6.20 1 2人目と比較する。 自分の記録の方が大きい ので、順位はそのまま。 各記録の比較(相手の順位操作) 較べる相手選手の背 景を黄色にする。
  12. 12. 走り幅跳びの 飛距離(m) 順位 1 6.20 1 2 3.80 1 3 7.30 1 4 6.20 1 3人目と比較する。 各記録の比較(自分の順位操作)
  13. 13. 走り幅跳びの 飛距離(m) 順位 1 6.20 2 2 3.80 1 3 7.30 1 4 6.20 1 自分の記録の方が小 さいので順位を1増やす。 各記録の比較(自分の順位操作)
  14. 14. 走り幅跳びの 飛距離(m) 順位 1 6.20 2 2 3.80 1 3 7.30 1 4 6.20 1 4人目と比較する。 自分の記録と等しいので、 順位はそのまま。 各記録の比較(自分の順位操作)
  15. 15. 走り幅跳びの 飛距離(m) 順位 1 6.20 2 2 3.80 1 3 7.30 1 4 6.20 1 1人目の順位計算完了。 2人目を調べることにする。 各記録の比較(自分の順位操作)
  16. 16. 走り幅跳びの 飛距離(m) 順位 1 6.20 2 2 3.80 1 3 7.30 1 4 6.20 1 2人目の順位計算を開 始する。自分も含めて、4 人とも比較していく。 各記録の比較(自分の順位操作)
  17. 17. 走り幅跳びの 飛距離(m) 順位 1 6.20 2 2 3.80 1 3 7.30 1 4 6.20 1 まず1人目と比較する。 各記録の比較(自分の順位操作)
  18. 18. 走り幅跳びの 飛距離(m) 順位 1 6.20 2 2 3.80 2 3 7.30 1 4 6.20 1 自分の方が小さいので、 自分の順位を1増やす。 各記録の比較(自分の順位操作)
  19. 19. 走り幅跳びの 飛距離(m) 順位 1 6.20 2 2 3.80 2 3 7.30 1 4 6.20 1 2行目の自分と比較する。 各記録の比較(自分の順位操作)
  20. 20. 走り幅跳びの 飛距離(m) 順位 1 6.20 2 2 3.80 2 3 7.30 1 4 6.20 1 同点なので順位はそのまま。 各記録の比較(自分の順位操作)
  21. 21. 走り幅跳びの 飛距離(m) 順位 1 6.20 2 2 3.80 2 3 7.30 1 4 6.20 1 3行目の記録と比較する。 各記録の比較(自分の順位操作)
  22. 22. 走り幅跳びの 飛距離(m) 順位 1 6.20 2 2 3.80 3 3 7.30 1 4 6.20 1 自分の記録が小さいので、 順位を1増やす。 各記録の比較(自分の順位操作)
  23. 23. 走り幅跳びの 飛距離(m) 順位 1 6.20 2 2 3.80 3 3 7.30 1 4 6.20 1 4行目の記録と比較する。 各記録の比較(自分の順位操作)
  24. 24. 走り幅跳びの 飛距離(m) 順位 1 6.20 2 2 3.80 4 3 7.30 1 4 6.20 1 自分の記録が小さいので、 自分の順位を1増やす。 各記録の比較(自分の順位操作)
  25. 25. 走り幅跳びの 飛距離(m) 順位 1 6.20 2 2 3.80 4 3 7.30 1 4 6.20 1 結局、最下位なので自分以 外の記録相手すべてで順位を 増やした。 2行目の選手の順位計算完了 各記録の比較(自分の順位操作)
  26. 26. 走り幅跳びの 飛距離(m) 順位 1 6.20 2 2 3.80 4 3 7.30 1 4 6.20 1 次に3行目の記録の順位を 計算する。 各記録の比較(自分の順位操作)
  27. 27. 走り幅跳びの 飛距離(m) 順位 1 6.20 2 2 3.80 4 3 7.30 1 4 6.20 1 1行目の記録と比較し、自分 と同点なので、順位はそのま ま。 各記録の比較(自分の順位操作)
  28. 28. 走り幅跳びの 飛距離(m) 順位 1 6.20 2 2 3.80 4 3 7.30 1 4 6.20 1 2行目の記録と比較し、自分 の方が大きいので、順位はそ のまま。 各記録の比較(自分の順位操作)
  29. 29. 走り幅跳びの 飛距離(m) 順位 1 6.20 2 2 3.80 4 3 7.30 1 4 6.20 1 自分の記録と比較し、同点 ので、順位はそのまま。 各記録の比較(自分の順位操作)
  30. 30. 走り幅跳びの 飛距離(m) 順位 1 6.20 2 2 3.80 4 3 7.30 1 4 6.20 1 4人目の記録と比較し、自分 の方が大きいので、順位はそ のまま。 各記録の比較(自分の順位操作)
  31. 31. 走り幅跳びの 飛距離(m) 順位 1 6.20 2 2 3.80 4 3 7.30 1 4 6.20 1 結局、最大の記録なので順 位を増やすことは一度もな かった。 3行目の選手の順位計算完了。 各記録の比較(自分の順位操作)
  32. 32. 走り幅跳びの 飛距離(m) 順位 1 6.20 2 2 3.80 4 3 7.30 1 4 6.20 1 4行目の選手の順位計算開始 各記録の比較(自分の順位操作)
  33. 33. 走り幅跳びの 飛距離(m) 順位 1 6.20 2 2 3.80 4 3 7.30 1 4 6.20 1 まず1行目の記録と比較。同 点なので、順位はそのまま。 各記録の比較(自分の順位操作)
  34. 34. 走り幅跳びの 飛距離(m) 順位 1 6.20 2 2 3.80 4 3 7.30 1 4 6.20 1 2行目の記録と比較。自分の 記録の方が大きいので、順位は そのまま。 各記録の比較(自分の順位操作)
  35. 35. 走り幅跳びの 飛距離(m) 順位 1 6.20 2 2 3.80 4 3 7.30 1 4 6.20 1 3行目の記録と比較。 各記録の比較(自分の順位操作)
  36. 36. 走り幅跳びの 飛距離(m) 順位 1 6.20 2 2 3.80 4 3 7.30 1 4 6.20 2 自分の記録の方が小さい ので、自分の順位を1増やす。 各記録の比較(自分の順位操作)
  37. 37. 走り幅跳びの 飛距離(m) 順位 1 6.20 2 2 3.80 4 3 7.30 1 4 6.20 2 最後に自分の記録と比較 する。同点なので順位はそ のまま。 各記録の比較(自分の順位操作)
  38. 38. 走り幅跳びの 飛距離(m) 順位 1 6.20 2 2 3.80 4 3 7.30 1 4 6.20 2 4行目の選手の順位計算 完了。 各記録の比較(自分の順位操作)
  39. 39. 走り幅跳びの 飛距離(m) 順位 1 6.20 2 2 3.80 4 3 7.30 1 4 6.20 2 全員の順位計算完了。 各記録の比較(自分の順位操作)
  40. 40. 走り幅跳びの 飛距離(m) 順位 1 6.20 2 2 3.80 4 3 7.30 1 4 6.20 2 つまり、総当たりで記録をく らべて、負けた数を数えると 順位が求められる。 各記録の比較(自分の順位操作) 比較回数は、 4件 × 4回 = 16回
  41. 41. 今度は相手の順位を 足していってみよう。
  42. 42. 各記録の比較開始(相手の順位操作) 走り幅跳びの 飛距離(m) 順位 1 6.20 1 2 3.80 1 3 7.30 1 4 6.20 1 まずすべての順位の 値を1 用意する。
  43. 43. 走り幅跳びの 飛距離(m) 順位 1 6.20 1 2 3.80 1 3 7.30 1 4 6.20 1 1行目の選手の 記録を順番に比べ、 相手が小さかったら、 相手の順位を 1 増 やす。 各記録の比較(相手の順位操作) 調べる選手の背景を 赤にする。 この赤い枠の順位は 書き換えない。
  44. 44. 走り幅跳びの 飛距離(m) 順位 1 6.20 1 2 3.80 1 3 7.30 1 4 6.20 1 まず自分の記録と 比較する。 同点なので順位は そのままにする。 各記録の比較(相手の順位操作)
  45. 45. 走り幅跳びの 飛距離(m) 順位 1 6.20 1 2 3.80 1 3 7.30 1 4 6.20 1 2行目の記録と比 較する。 各記録の比較(相手の順位操作) 較べる相手選手の背景 を黄色にする。この相手 の順位を折々増やして いく。
  46. 46. 走り幅跳びの 飛距離(m) 順位 1 6.20 1 2 3.80 2 3 7.30 1 4 6.20 1 相手の記録の方が 小さいので、相手の 順位を1増やす。 各記録の比較(相手の順位操作)
  47. 47. 走り幅跳びの 飛距離(m) 順位 1 6.20 1 2 3.80 2 3 7.30 1 4 6.20 1 3行目の記録と比較 する。相手の方が大き いので、相手の順位を そのままにする。 各記録の比較(相手の順位操作)
  48. 48. 走り幅跳びの 飛距離(m) 順位 1 6.20 1 2 3.80 2 3 7.30 1 4 6.20 1 4行目と比較。同点なので 順位をそのままにする。 各記録の比較(相手の順位操作)
  49. 49. 走り幅跳びの 飛距離(m) 順位 1 6.20 1 2 3.80 2 3 7.30 1 4 6.20 1 1行目の比較終了。 相手側なので、まだ何位な のかはどの選手も不明。 各記録の比較(相手の順位操作)
  50. 50. 走り幅跳びの 飛距離(m) 順位 1 6.20 1 2 3.80 2 3 7.30 1 4 6.20 1 2行目の選手の記録を上 から順番に比較していく。 各記録の比較(相手の順位操作)
  51. 51. 走り幅跳びの 飛距離(m) 順位 1 6.20 1 2 3.80 2 3 7.30 1 4 6.20 1 1行目の選手の記録の方 が大きいので、この順位は そのままにする。 各記録の比較(相手の順位操作)
  52. 52. 走り幅跳びの 飛距離(m) 順位 1 6.20 1 2 3.80 2 3 7.30 1 4 6.20 1 2行目の自分の記録と比 較する。同点なので順位は そのままにする。 各記録の比較(相手の順位操作)
  53. 53. 走り幅跳びの 飛距離(m) 順位 1 6.20 1 2 3.80 2 3 7.30 1 4 6.20 1 3行目の記録と比較する。 こちらの記録の方が大きいの で、順位はそのままにする。 各記録の比較(相手の順位操作)
  54. 54. 走り幅跳びの 飛距離(m) 順位 1 6.20 1 2 3.80 2 3 7.30 1 4 6.20 1 4行目の記録と比較する。 こちらの記録の方が大きいの で、順位はそのままにする。 各記録の比較(相手の順位操作)
  55. 55. 走り幅跳びの 飛距離(m) 順位 1 6.20 1 2 3.80 2 3 7.30 1 4 6.20 1 各記録の比較(相手の順位操作) 2行目の比較終了。 実際は、最下位なので、ど の相手の順位も増やせな かった。
  56. 56. 走り幅跳びの 飛距離(m) 順位 1 6.20 1 2 3.80 2 3 7.30 1 4 6.20 1 各記録の比較(相手の順位操作) 3行目の記録の比較開始。
  57. 57. 走り幅跳びの 飛距離(m) 順位 1 6.20 1 2 3.80 2 3 7.30 1 4 6.20 1 各記録の比較(相手の順位操作) 1行目の記録と比較する。 1行目の方が小さい。
  58. 58. 走り幅跳びの 飛距離(m) 順位 1 6.20 2 2 3.80 2 3 7.30 1 4 6.20 1 各記録の比較(相手の順位操作) 1行目の順位を1増やす。
  59. 59. 走り幅跳びの 飛距離(m) 順位 1 6.20 2 2 3.80 2 3 7.30 1 4 6.20 1 各記録の比較(相手の順位操作) 2行目の記録と比較する。 2行目の方が小さい。
  60. 60. 走り幅跳びの 飛距離(m) 順位 1 6.20 2 2 3.80 3 3 7.30 1 4 6.20 1 各記録の比較(相手の順位操作) 2行目の順位を1増やす。
  61. 61. 走り幅跳びの 飛距離(m) 順位 1 6.20 2 2 3.80 3 3 7.30 1 4 6.20 1 各記録の比較(相手の順位操作) 自分自身の記録と比較する。 同点なので、順位はそのまま にする。
  62. 62. 走り幅跳びの 飛距離(m) 順位 1 6.20 2 2 3.80 3 3 7.30 1 4 6.20 1 各記録の比較(相手の順位操作) 4行目の記録と比較する。 4行目の方が小さい。
  63. 63. 走り幅跳びの 飛距離(m) 順位 1 6.20 2 2 3.80 3 3 7.30 1 4 6.20 2 各記録の比較(相手の順位操作) 4行目の順位を1増やす。
  64. 64. 走り幅跳びの 飛距離(m) 順位 1 6.20 2 2 3.80 3 3 7.30 1 4 6.20 2 各記録の比較(相手の順位操作) 3行目の比較終了。 実際は、1番なので、自分 以外のすべての順位を1ず つ増やした。
  65. 65. 走り幅跳びの 飛距離(m) 順位 1 6.20 2 2 3.80 3 3 7.30 1 4 6.20 2 各記録の比較(相手の順位操作) 4行目の記録の比較開始。
  66. 66. 走り幅跳びの 飛距離(m) 順位 1 6.20 2 2 3.80 3 3 7.30 1 4 6.20 2 各記録の比較(相手の順位操作) 1行目と比較。同点な ので順位をそのままに する。
  67. 67. 走り幅跳びの 飛距離(m) 順位 1 6.20 2 2 3.80 3 3 7.30 1 4 6.20 2 各記録の比較(相手の順位操作) 2行目の記録と比較する。 2行目の方が小さい。
  68. 68. 走り幅跳びの 飛距離(m) 順位 1 6.20 2 2 3.80 4 3 7.30 1 4 6.20 2 各記録の比較(相手の順位操作) 2行目の順位を1増やす。
  69. 69. 走り幅跳びの 飛距離(m) 順位 1 6.20 2 2 3.80 4 3 7.30 1 4 6.20 2 各記録の比較(相手の順位操作) 3行目の選手の記録の方 が大きいので、この順位は そのままにする。
  70. 70. 走り幅跳びの 飛距離(m) 順位 1 6.20 2 2 3.80 4 3 7.30 1 4 6.20 2 各記録の比較(相手の順位操作) 自分自身の記録と比較する。 同点なので、順位はそのまま にする。
  71. 71. 走り幅跳びの 飛距離(m) 順位 1 6.20 2 2 3.80 4 3 7.30 1 4 6.20 2 各記録の比較(相手の順位操作) 4行目の比較終了。同点の 1行目との比較でも矛盾なく 計算できている。
  72. 72. 走り幅跳びの 飛距離(m) 順位 1 6.20 2 2 3.80 4 3 7.30 1 4 6.20 2 順位付け完成(相手の順位操作) 全データの比較終了。 順位が正しく導けている。 相手側の順位を増やし ていっても、順位は計算で きる。 比較回数は、 4件 × 4回 = 16回
  73. 73. 順位付けのポイント確認 走り幅跳びの 飛距離(m) 順位 1 6.20 2 2 3.80 4 3 7.30 1 4 6.20 2 ① 順位の最初の値を1にする。 ② 順番に値を較べていく。 ③ 値が小さかったら、順位 を1増やす。 ④ すべての組合せの比較を 済ませると順位の計算が完 成する。 ⑤ もし同点の値があっても、 うまく同点になり、後の順 位も間違いない。
  74. 74. 今度は自分の順位も 相手の順位も足して いってみよう。
  75. 75. 各記録の比較開始(お互いの順位操作) 走り幅跳びの 飛距離(m) 順位 1 6.20 1 2 3.80 1 3 7.30 1 4 6.20 1 まずすべての順 位の値を1 用意する。
  76. 76. 各記録の比較開始(お互いの順位操作) 走り幅跳びの 飛距離(m) 順位 1 6.20 1 2 3.80 1 3 7.30 1 4 6.20 1 少なかった方の順位を増やし ていく。 ただし、2回繰り返さないよう に、比較範囲を狭めていく。 ← 1行目は、2~4行目と比較し計算する。 ← 2行目は、3~4行目と比較し計算する。 ← 3行目は、4行目と比較し計算する。 つまり、1行目対2行目の比較を済ませた後 で、2行目対1行目の比較をしないように相手 を後の番号のみに絞り込んでいく。
  77. 77. 走り幅跳びの 飛距離(m) 順位 1 6.20 1 2 3.80 1 3 7.30 1 4 6.20 1 まず1行目と他の3つの行と の比較計算を行う。 各記録の比較(お互いの順位操作) 調べる側の背景を赤 色にする。
  78. 78. 走り幅跳びの 飛距離(m) 順位 1 6.20 1 2 3.80 1 3 7.30 1 4 6.20 1 1行目と2行目の記録を比較 する。 2行目の記録の方が小さい。 各記録の比較(お互いの順位操作) 較べる相手選手の背 景を黄色にする。
  79. 79. 走り幅跳びの 飛距離(m) 順位 1 6.20 1 2 3.80 2 3 7.30 1 4 6.20 1 2行目の順位を1増やす。 各記録の比較(お互いの順位操作)
  80. 80. 走り幅跳びの 飛距離(m) 順位 1 6.20 1 2 3.80 2 3 7.30 1 4 6.20 1 各記録の比較(お互いの順位操作) 1行目と3行目の記録を比較 する。 1行目の記録の方が小さい。
  81. 81. 走り幅跳びの 飛距離(m) 順位 1 6.20 2 2 3.80 2 3 7.30 1 4 6.20 1 各記録の比較(お互いの順位操作) 1行目の順位を1増やす。
  82. 82. 走り幅跳びの 飛距離(m) 順位 1 6.20 2 2 3.80 2 3 7.30 1 4 6.20 1 各記録の比較(お互いの順位操作) 4行目と比較。同点な ので順位をそのままに する。
  83. 83. 走り幅跳びの 飛距離(m) 順位 1 6.20 2 2 3.80 2 3 7.30 1 4 6.20 1 各記録の比較(お互いの順位操作) 1行目の比較計算が終了。 以後の比較計算では、1行 目との組合せはしない。
  84. 84. 走り幅跳びの 飛距離(m) 順位 1 6.20 2 2 3.80 2 3 7.30 1 4 6.20 1 各記録の比較(お互いの順位操作) 2行目と残りの2つの行との 比較計算を行う。
  85. 85. 走り幅跳びの 飛距離(m) 順位 1 6.20 2 2 3.80 2 3 7.30 1 4 6.20 1 各記録の比較(お互いの順位操作) 2行目と3行目の記録を比較 する。 2行目の記録の方が小さい。
  86. 86. 走り幅跳びの 飛距離(m) 順位 1 6.20 2 2 3.80 3 3 7.30 1 4 6.20 1 各記録の比較(お互いの順位操作) 2行目の順位を1増やす。
  87. 87. 走り幅跳びの 飛距離(m) 順位 1 6.20 2 2 3.80 3 3 7.30 1 4 6.20 1 各記録の比較(お互いの順位操作) 2行目と4行目の記録を比較 する。 2行目の記録の方が小さい。
  88. 88. 走り幅跳びの 飛距離(m) 順位 1 6.20 2 2 3.80 4 3 7.30 1 4 6.20 1 各記録の比較(お互いの順位操作) 2行目の順位を1増やす。
  89. 89. 走り幅跳びの 飛距離(m) 順位 1 6.20 2 2 3.80 4 3 7.30 1 4 6.20 1 各記録の比較(お互いの順位操作) 2行目の比較計算が終了。 以後の比較計算では、2行 目との組合せはしない。
  90. 90. 走り幅跳びの 飛距離(m) 順位 1 6.20 2 2 3.80 4 3 7.30 1 4 6.20 1 各記録の比較(お互いの順位操作) 3行目と残りの1行との比較 計算を行う。
  91. 91. 走り幅跳びの 飛距離(m) 順位 1 6.20 2 2 3.80 4 3 7.30 1 4 6.20 1 各記録の比較(お互いの順位操作) 3行目と4行目の記録を比較 する。 4行目の記録の方が小さい。
  92. 92. 走り幅跳びの 飛距離(m) 順位 1 6.20 2 2 3.80 4 3 7.30 1 4 6.20 2 各記録の比較(お互いの順位操作) 4行目の順位を1増やす。
  93. 93. 走り幅跳びの 飛距離(m) 順位 1 6.20 2 2 3.80 4 3 7.30 1 4 6.20 2 各記録の比較(お互いの順位操作) 3行目の比較計算が終了。
  94. 94. 走り幅跳びの 飛距離(m) 順位 1 6.20 2 2 3.80 4 3 7.30 1 4 6.20 2 各記録の比較(お互いの順位操作) つまり、4行目との比較も終 わり、すべての比較と順位計 算が完了したということ。
  95. 95. 走り幅跳びの 飛距離(m) 順位 1 6.20 2 2 3.80 4 3 7.30 1 4 6.20 2 各記録の比較(お互いの順位操作) 順位の処理完了
  96. 96. 走り幅跳びの 飛距離(m) 順位 1 6.20 2 2 3.80 4 3 7.30 1 4 6.20 2 各記録の比較(お互いの順位操作) 比較回数は、 3回 +2回+1回 = 6回 総当たりの16回よりも10回も 少ない。 もっとデータが多ければ、さ らに差が出る。 例.100件では、 4,950回 対 10,000回 お互いに順位を増やす方が 断然、効率がよい。
  97. 97. 順位付けの流れ図と 簡易言語表記
  98. 98. 流れ図で表現 自分の順位を総当たりで計算 は じ め お わ り 記録(1)~(4)を準備 繰り返し1 調べる行を1から4まで 繰り返し2 相手の行を1から4まで 結果を出力 記録(調べる行) <記録(相手の行) 記録(調べる行) + 1 → 記録(調べる行) 1 1 yes no 順位(1)~(4)に1を入れる 繰り返し2 繰り返し1
  99. 99. 2 流れ図で表現 お互いの順位を重複なしで計算 は じ め お わ り 記録(1)~(4)を準備 繰り返し1 調べる行を1から3まで 繰り返し2 相手の行を (調べる行+1)から4まで 結果を出力 記録(調べる行) <記録(相手の行) 記録(調べる行) + 1 → 記録(調べる行) 1 1 yes no 順位(1)~(4)に1を入れる 繰り返し2 繰り返し1 記録(相手の行) + 1 → 記録(相手の行) 記録(調べる行) = 記録(相手の行) yes no 2
  100. 100. 総当たり順位付けの疑似言語表現 ○プログラム名:順位付け総当たり ○関数:表示関数(A) ○実数型:記録[4] 順位[4] ○整数型:調べる行 相手の行 ●記録[1] ← 6.2 ●記録[2] ← 3.8 ●記録[3] ← 7.3 ●記録[4] ← 6.2 ●順位[1] ← 1 ●順位[2] ← 1 ●順位[3] ← 1 ●順位[4] ← 1 ■ 調べる行:1, 調べる行 ≦ 4, 1 | ■相手の行:1, 相手の行 ≦ 4, 1 | | ▲記録[調べる行] < 記録[相手の行] | | | ・順位[調べる行] ← 順位[調べる行] + 1 | | ▼ | □ □ ・表示(順位[])
  101. 101. お互いへの順位付けの疑似言語表現 ○プログラム名:順位付け総当たり ○関数:表示関数(A) ○実数型:記録[4] 順位[4] ○整数型:調べる行 相手の行 ●記録[1] ← 6.2 ●記録[2] ← 3.8 ●記録[3] ← 7.3 ●記録[4] ← 6.2 ●順位[1] ← 1 ●順位[2] ← 1 ●順位[3] ← 1 ●順位[4] ← 1 ■調べる行:1, 調べる行 ≦ 3, 1 | ■ 相手の行:調べる行+1 , 相手の行 ≦ 4, 1 | | ▲記録[調べる行] ≠ 記録[相手の行] | | | ▲記録[調べる行] < 記録[相手の行] | | | | ・順位[調べる行] ← 順位[調べる行] + 1 | | | +---------- | | | | ・順位[相手の行] ← 順位[相手の行] + 1 | | | ▼ | | ▼ | □ □ ・表示(順位[])
  102. 102. 順位付けについて 流れ図で値の変化を 追ってみよう。
  103. 103. 流れ図でトレース (自分の順位を総当たりで計算)
  104. 104. 流れ図でトレース (自分の順位を総当たりで計算) は じ め お わ り 記録(1)~(4)を準備 繰り返し1 調べる行を1から4まで 繰り返し2 相手の行を1から4まで 結果を出力 記録(調べる行) <記録(相手の行) 順位(調べる行) + 1 → 順位(調べる行) yes no 順位(1)~(4)に1を入れる 繰り返し2 繰り返し1 走り幅跳びの 飛距離(m) 順位 1 2 3 4 調べる行 相手の行
  105. 105. 流れ図でトレース (自分の順位を総当たりで計算) は じ め お わ り 記録(1)~(4)を準備 繰り返し1 調べる行を1から4まで 繰り返し2 相手の行を1から4まで 結果を出力 記録(調べる行) <記録(相手の行) 順位(調べる行) + 1 → 順位(調べる行) yes no 順位(1)~(4)に1を入れる 繰り返し2 繰り返し1 走り幅跳びの 飛距離(m) 順位 1 6.20 2 3.80 3 7.30 4 6.20 調べる行 相手の行 くらべるデータ を用意する。
  106. 106. 流れ図でトレース (自分の順位を総当たりで計算) は じ め お わ り 記録(1)~(4)を準備 繰り返し1 調べる行を1から4まで 繰り返し2 相手の行を1から4まで 結果を出力 記録(調べる行) <記録(相手の行) 順位(調べる行) + 1 → 順位(調べる行) yes no 順位(1)~(4)に1を入れる 繰り返し2 繰り返し1 走り幅跳びの 飛距離(m) 順位 1 6.20 1 2 3.80 1 3 7.30 1 4 6.20 1 調べる行 1 相手の行 それぞれの順 位に1を入れる。
  107. 107. 流れ図でトレース (自分の順位を総当たりで計算) は じ め お わ り 記録(1)~(4)を準備 繰り返し1 調べる行を1から4まで 繰り返し2 相手の行を1から4まで 結果を出力 記録(調べる行) <記録(相手の行) 順位(調べる行) + 1 → 順位(調べる行) yes no 順位(1)~(4)に1を入れる 繰り返し2 繰り返し1 走り幅跳びの 飛距離(m) 順位 1 6.20 1 2 3.80 1 3 7.30 1 4 6.20 1 調べる行 1 相手の行 調べる行に 1を用意する。
  108. 108. 流れ図でトレース (自分の順位を総当たりで計算) は じ め お わ り 記録(1)~(4)を準備 繰り返し1 調べる行を1から4まで 繰り返し2 相手の行を1から4まで 結果を出力 記録(調べる行) <記録(相手の行) 順位(調べる行) + 1 → 順位(調べる行) yes no 順位(1)~(4)に1を入れる 繰り返し2 繰り返し1 走り幅跳びの 飛距離(m) 順位 1 6.20 1 2 3.80 1 3 7.30 1 4 6.20 1 調べる行 1 相手の行 1 相手の行に 2を用意する。
  109. 109. 流れ図でトレース (自分の順位を総当たりで計算) は じ め お わ り 記録(1)~(4)を準備 繰り返し1 調べる行を1から4まで 繰り返し2 相手の行を1から4まで 結果を出力 記録(調べる行) <記録(相手の行) 順位(調べる行) + 1 → 順位(調べる行) yes no 順位(1)~(4)に1を入れる 繰り返し2 繰り返し1 走り幅跳びの 飛距離(m) 順位 1 6.20 1 2 3.80 1 3 7.30 1 4 6.20 1 調べる行 1 相手の行 1 同点なの で下に行く。
  110. 110. 流れ図でトレース (自分の順位を総当たりで計算) は じ め お わ り 記録(1)~(4)を準備 繰り返し1 調べる行を1から4まで 繰り返し2 相手の行を1から4まで 結果を出力 記録(調べる行) <記録(相手の行) 順位(調べる行) + 1 → 順位(調べる行) yes no 順位(1)~(4)に1を入れる 繰り返し2 繰り返し1 走り幅跳びの 飛距離(m) 順位 1 6.20 1 2 3.80 1 3 7.30 1 4 6.20 1 調べる行 1 相手の行 1 まだ1行目な ので引き返す。
  111. 111. 流れ図でトレース (自分の順位を総当たりで計算) は じ め お わ り 記録(1)~(4)を準備 繰り返し1 調べる行を1から4まで 繰り返し2 相手の行を1から4まで 結果を出力 記録(調べる行) <記録(相手の行) 順位(調べる行) + 1 → 順位(調べる行) yes no 順位(1)~(4)に1を入れる 繰り返し2 繰り返し1 走り幅跳びの 飛距離(m) 順位 1 6.20 1 2 3.80 1 3 7.30 1 4 6.20 1 調べる行 1 相手の行 2 相手の行を1 増やす
  112. 112. 流れ図でトレース (自分の順位を総当たりで計算) は じ め お わ り 記録(1)~(4)を準備 繰り返し1 調べる行を1から4まで 繰り返し2 相手の行を1から4まで 結果を出力 記録(調べる行) <記録(相手の行) 順位(調べる行) + 1 → 順位(調べる行) yes no 順位(1)~(4)に1を入れる 繰り返し2 繰り返し1 走り幅跳びの 飛距離(m) 順位 1 6.20 1 2 3.80 1 3 7.30 1 4 6.20 1 調べる行 1 相手の行 2 6.20の方 が大きいの で下に行く。
  113. 113. 流れ図でトレース (自分の順位を総当たりで計算) は じ め お わ り 記録(1)~(4)を準備 繰り返し1 調べる行を1から4まで 繰り返し2 相手の行を1から4まで 結果を出力 記録(調べる行) <記録(相手の行) 順位(調べる行) + 1 → 順位(調べる行) yes no 順位(1)~(4)に1を入れる 繰り返し2 繰り返し1 走り幅跳びの 飛距離(m) 順位 1 6.20 1 2 3.80 1 3 7.30 1 4 6.20 1 調べる行 1 相手の行 2 まだ2行目な ので引き返す。
  114. 114. 流れ図でトレース (自分の順位を総当たりで計算) は じ め お わ り 記録(1)~(4)を準備 繰り返し1 調べる行を1から4まで 繰り返し2 相手の行を1から4まで 結果を出力 記録(調べる行) <記録(相手の行) 順位(調べる行) + 1 → 順位(調べる行) yes no 順位(1)~(4)に1を入れる 繰り返し2 繰り返し1 走り幅跳びの 飛距離(m) 順位 1 6.20 1 2 3.80 1 3 7.30 1 4 6.20 1 調べる行 1 相手の行 3 相手の行を1 増やす
  115. 115. 流れ図でトレース (自分の順位を総当たりで計算) は じ め お わ り 記録(1)~(4)を準備 繰り返し1 調べる行を1から4まで 繰り返し2 相手の行を1から4まで 結果を出力 記録(調べる行) <記録(相手の行) 順位(調べる行) + 1 → 順位(調べる行) yes no 順位(1)~(4)に1を入れる 繰り返し2 繰り返し1 走り幅跳びの 飛距離(m) 順位 1 6.20 1 2 3.80 1 3 7.30 1 4 6.20 1 調べる行 1 相手の行 3 自分の値が小さ いので左側へ進む。
  116. 116. 流れ図でトレース (自分の順位を総当たりで計算) は じ め お わ り 記録(1)~(4)を準備 繰り返し1 調べる行を1から4まで 繰り返し2 相手の行を1から4まで 結果を出力 記録(調べる行) <記録(相手の行) 順位(調べる行) + 1 → 順位(調べる行) yes no 順位(1)~(4)に1を入れる 繰り返し2 繰り返し1 走り幅跳びの 飛距離(m) 順位 1 6.20 2 2 3.80 1 3 7.30 1 4 6.20 1 調べる行 1 相手の行 3 自分の順位を 1増やす。
  117. 117. 流れ図でトレース (自分の順位を総当たりで計算) は じ め お わ り 記録(1)~(4)を準備 繰り返し1 調べる行を1から4まで 繰り返し2 相手の行を1から4まで 結果を出力 記録(調べる行) <記録(相手の行) 順位(調べる行) + 1 → 順位(調べる行) yes no 順位(1)~(4)に1を入れる 繰り返し2 繰り返し1 走り幅跳びの 飛距離(m) 順位 1 6.20 2 2 3.80 1 3 7.30 1 4 6.20 1 調べる行 1 相手の行 3 まだ3行目な ので引き返す。
  118. 118. 流れ図でトレース (自分の順位を総当たりで計算) は じ め お わ り 記録(1)~(4)を準備 繰り返し1 調べる行を1から4まで 繰り返し2 相手の行を1から4まで 結果を出力 記録(調べる行) <記録(相手の行) 順位(調べる行) + 1 → 順位(調べる行) yes no 順位(1)~(4)に1を入れる 繰り返し2 繰り返し1 走り幅跳びの 飛距離(m) 順位 1 6.20 2 2 3.80 1 3 7.30 1 4 6.20 1 調べる行 1 相手の行 4 相手の行を1 増やす
  119. 119. 流れ図でトレース (自分の順位を総当たりで計算) は じ め お わ り 記録(1)~(4)を準備 繰り返し1 調べる行を1から4まで 繰り返し2 相手の行を1から4まで 結果を出力 記録(調べる行) <記録(相手の行) 順位(調べる行) + 1 → 順位(調べる行) yes no 順位(1)~(4)に1を入れる 繰り返し2 繰り返し1 走り幅跳びの 飛距離(m) 順位 1 6.20 2 2 3.80 1 3 7.30 1 4 6.20 1 調べる行 1 相手の行 4 同点なので下 へ行く
  120. 120. 流れ図でトレース (自分の順位を総当たりで計算) は じ め お わ り 記録(1)~(4)を準備 繰り返し1 調べる行を1から4まで 繰り返し2 相手の行を1から4まで 結果を出力 記録(調べる行) <記録(相手の行) 順位(調べる行) + 1 → 順位(調べる行) yes no 順位(1)~(4)に1を入れる 繰り返し2 繰り返し1 走り幅跳びの 飛距離(m) 順位 1 6.20 2 2 3.80 1 3 7.30 1 4 6.20 1 調べる行 1 相手の行 4 相手の行が4 になったので 下に行く。
  121. 121. 流れ図でトレース (自分の順位を総当たりで計算) は じ め お わ り 記録(1)~(4)を準備 繰り返し1 調べる行を1から4まで 繰り返し2 相手の行を1から4まで 結果を出力 記録(調べる行) <記録(相手の行) 順位(調べる行) + 1 → 順位(調べる行) yes no 順位(1)~(4)に1を入れる 繰り返し2 繰り返し1 走り幅跳びの 飛距離(m) 順位 1 6.20 2 2 3.80 1 3 7.30 1 4 6.20 1 調べる行 1 相手の行 4 調べる行がまだ 1行目なので引き 返す。
  122. 122. 流れ図でトレース (自分の順位を総当たりで計算) は じ め お わ り 記録(1)~(4)を準備 繰り返し1 調べる行を1から4まで 繰り返し2 相手の行を1から4まで 結果を出力 記録(調べる行) <記録(相手の行) 順位(調べる行) + 1 → 順位(調べる行) yes no 順位(1)~(4)に1を入れる 繰り返し2 繰り返し1 走り幅跳びの 飛距離(m) 順位 1 6.20 2 2 3.80 1 3 7.30 1 4 6.20 1 調べる行 2 相手の行 4 調べる行を 1増やす
  123. 123. 流れ図でトレース (自分の順位を総当たりで計算) は じ め お わ り 記録(1)~(4)を準備 繰り返し1 調べる行を1から4まで 繰り返し2 相手の行を1から4まで 結果を出力 記録(調べる行) <記録(相手の行) 順位(調べる行) + 1 → 順位(調べる行) yes no 順位(1)~(4)に1を入れる 繰り返し2 繰り返し1 走り幅跳びの 飛距離(m) 順位 1 6.20 2 2 3.80 1 3 7.30 1 4 6.20 1 相手の行 1 相手の行を 1から数え直す 調べる行 2
  124. 124. 流れ図でトレース (自分の順位を総当たりで計算) は じ め お わ り 記録(1)~(4)を準備 繰り返し1 調べる行を1から4まで 繰り返し2 相手の行を1から4まで 結果を出力 記録(調べる行) <記録(相手の行) 順位(調べる行) + 1 → 順位(調べる行) yes no 順位(1)~(4)に1を入れる 繰り返し2 繰り返し1 走り幅跳びの 飛距離(m) 順位 1 6.20 2 2 3.80 1 3 7.30 1 4 6.20 1 相手の行 1 自分の3.80の 方が小さいので 右を通る 調べる行 2
  125. 125. 流れ図でトレース (自分の順位を総当たりで計算) は じ め お わ り 記録(1)~(4)を準備 繰り返し1 調べる行を1から4まで 繰り返し2 相手の行を1から4まで 結果を出力 記録(調べる行) <記録(相手の行) 順位(調べる行) + 1 → 順位(調べる行) yes no 順位(1)~(4)に1を入れる 繰り返し2 繰り返し1 走り幅跳びの 飛距離(m) 順位 1 6.20 2 2 3.80 2 3 7.30 1 4 6.20 1 相手の行 1 調べる行 2 自分の順位を 1増やす。
  126. 126. 流れ図でトレース (自分の順位を総当たりで計算) は じ め お わ り 記録(1)~(4)を準備 繰り返し1 調べる行を1から4まで 繰り返し2 相手の行を1から4まで 結果を出力 記録(調べる行) <記録(相手の行) 順位(調べる行) + 1 → 順位(調べる行) yes no 順位(1)~(4)に1を入れる 繰り返し2 繰り返し1 走り幅跳びの 飛距離(m) 順位 1 6.20 2 2 3.80 2 3 7.30 1 4 6.20 1 相手の行 1 調べる行 2 相手の行はま だ1行目なので 引き返す。
  127. 127. 流れ図でトレース (自分の順位を総当たりで計算) は じ め お わ り 記録(1)~(4)を準備 繰り返し1 調べる行を1から4まで 繰り返し2 相手の行を1から4まで 結果を出力 記録(調べる行) <記録(相手の行) 順位(調べる行) + 1 → 順位(調べる行) yes no 順位(1)~(4)に1を入れる 繰り返し2 繰り返し1 走り幅跳びの 飛距離(m) 順位 1 6.20 2 2 3.80 2 3 7.30 1 4 6.20 1 調べる行 2 相手の行 2 相手の行を1 増やす
  128. 128. 流れ図でトレース (自分の順位を総当たりで計算) は じ め お わ り 記録(1)~(4)を準備 繰り返し1 調べる行を1から4まで 繰り返し2 相手の行を1から4まで 結果を出力 記録(調べる行) <記録(相手の行) 順位(調べる行) + 1 → 順位(調べる行) yes no 順位(1)~(4)に1を入れる 繰り返し2 繰り返し1 走り幅跳びの 飛距離(m) 順位 1 6.20 2 2 3.80 2 3 7.30 1 4 6.20 1 調べる行 2 相手の行 2 等しい値なの で下に行く。
  129. 129. 流れ図でトレース (自分の順位を総当たりで計算) は じ め お わ り 記録(1)~(4)を準備 繰り返し1 調べる行を1から4まで 繰り返し2 相手の行を1から4まで 結果を出力 記録(調べる行) <記録(相手の行) 順位(調べる行) + 1 → 順位(調べる行) yes no 順位(1)~(4)に1を入れる 繰り返し2 繰り返し1 走り幅跳びの 飛距離(m) 順位 1 6.20 2 2 3.80 2 3 7.30 1 4 6.20 1 調べる行 2 相手の行 2 まだ2行目な ので引き返す。
  130. 130. 流れ図でトレース (自分の順位を総当たりで計算) は じ め お わ り 記録(1)~(4)を準備 繰り返し1 調べる行を1から4まで 繰り返し2 相手の行を1から4まで 結果を出力 記録(調べる行) <記録(相手の行) 順位(調べる行) + 1 → 順位(調べる行) yes no 順位(1)~(4)に1を入れる 繰り返し2 繰り返し1 走り幅跳びの 飛距離(m) 順位 1 6.20 2 2 3.80 2 3 7.30 1 4 6.20 1 調べる行 2 相手の行 3 相手の行を1 増やす
  131. 131. 流れ図でトレース (自分の順位を総当たりで計算) は じ め お わ り 記録(1)~(4)を準備 繰り返し1 調べる行を1から4まで 繰り返し2 相手の行を1から4まで 結果を出力 記録(調べる行) <記録(相手の行) 順位(調べる行) + 1 → 順位(調べる行) yes no 順位(1)~(4)に1を入れる 繰り返し2 繰り返し1 走り幅跳びの 飛距離(m) 順位 1 6.20 2 2 3.80 2 3 7.30 1 4 6.20 1 調べる行 2 相手の行 3 自分の値が小さ いので左側へ進む。
  132. 132. 流れ図でトレース (自分の順位を総当たりで計算) は じ め お わ り 記録(1)~(4)を準備 繰り返し1 調べる行を1から4まで 繰り返し2 相手の行を1から4まで 結果を出力 記録(調べる行) <記録(相手の行) 順位(調べる行) + 1 → 順位(調べる行) yes no 順位(1)~(4)に1を入れる 繰り返し2 繰り返し1 走り幅跳びの 飛距離(m) 順位 1 6.20 2 2 3.80 3 3 7.30 1 4 6.20 1 調べる行 2 相手の行 3 自分の順位を 1増やす。
  133. 133. 流れ図でトレース (自分の順位を総当たりで計算) は じ め お わ り 記録(1)~(4)を準備 繰り返し1 調べる行を1から4まで 繰り返し2 相手の行を1から4まで 結果を出力 記録(調べる行) <記録(相手の行) 順位(調べる行) + 1 → 順位(調べる行) yes no 順位(1)~(4)に1を入れる 繰り返し2 繰り返し1 走り幅跳びの 飛距離(m) 順位 1 6.20 2 2 3.80 3 3 7.30 1 4 6.20 1 調べる行 2 相手の行 3 まだ3行目な ので引き返す。
  134. 134. 流れ図でトレース (自分の順位を総当たりで計算) は じ め お わ り 記録(1)~(4)を準備 繰り返し1 調べる行を1から4まで 繰り返し2 相手の行を1から4まで 結果を出力 記録(調べる行) <記録(相手の行) 順位(調べる行) + 1 → 順位(調べる行) yes no 順位(1)~(4)に1を入れる 繰り返し2 繰り返し1 走り幅跳びの 飛距離(m) 順位 1 6.20 2 2 3.80 3 3 7.30 1 4 6.20 1 調べる行 2 相手の行 4 相手の行を1 増やす
  135. 135. 流れ図でトレース (自分の順位を総当たりで計算) は じ め お わ り 記録(1)~(4)を準備 繰り返し1 調べる行を1から4まで 繰り返し2 相手の行を1から4まで 結果を出力 記録(調べる行) <記録(相手の行) 順位(調べる行) + 1 → 順位(調べる行) yes no 順位(1)~(4)に1を入れる 繰り返し2 繰り返し1 走り幅跳びの 飛距離(m) 順位 1 6.20 2 2 3.80 3 3 7.30 1 4 6.20 1 調べる行 2 相手の行 4 自分の値が小さ いので左側へ進む。
  136. 136. 流れ図でトレース (自分の順位を総当たりで計算) は じ め お わ り 記録(1)~(4)を準備 繰り返し1 調べる行を1から4まで 繰り返し2 相手の行を1から4まで 結果を出力 記録(調べる行) <記録(相手の行) 順位(調べる行) + 1 → 順位(調べる行) yes no 順位(1)~(4)に1を入れる 繰り返し2 繰り返し1 走り幅跳びの 飛距離(m) 順位 1 6.20 2 2 3.80 4 3 7.30 1 4 6.20 1 調べる行 2 相手の行 4 自分の順位を1増 やす。
  137. 137. 流れ図でトレース (自分の順位を総当たりで計算) は じ め お わ り 記録(1)~(4)を準備 繰り返し1 調べる行を1から4まで 繰り返し2 相手の行を1から4まで 結果を出力 記録(調べる行) <記録(相手の行) 順位(調べる行) + 1 → 順位(調べる行) yes no 順位(1)~(4)に1を入れる 繰り返し2 繰り返し1 走り幅跳びの 飛距離(m) 順位 1 6.20 2 2 3.80 4 3 7.30 1 4 6.20 1 調べる行 2 相手の行 4 4になったの で下に行く。
  138. 138. 流れ図でトレース (自分の順位を総当たりで計算) は じ め お わ り 記録(1)~(4)を準備 繰り返し1 調べる行を1から4まで 繰り返し2 相手の行を1から4まで 結果を出力 記録(調べる行) <記録(相手の行) 順位(調べる行) + 1 → 順位(調べる行) yes no 順位(1)~(4)に1を入れる 繰り返し2 繰り返し1 走り幅跳びの 飛距離(m) 順位 1 6.20 2 2 3.80 4 3 7.30 1 4 6.20 1 調べる行 2 相手の行 4 調べる行がまだ 2行目なので引き 返す。
  139. 139. 流れ図でトレース (自分の順位を総当たりで計算) は じ め お わ り 記録(1)~(4)を準備 繰り返し1 調べる行を1から4まで 繰り返し2 相手の行を1から4まで 結果を出力 記録(調べる行) <記録(相手の行) 順位(調べる行) + 1 → 順位(調べる行) yes no 順位(1)~(4)に1を入れる 繰り返し2 繰り返し1 走り幅跳びの 飛距離(m) 順位 1 6.20 2 2 3.80 4 3 7.30 1 4 6.20 1 調べる行 3 相手の行 4 調べる行を 1増やす
  140. 140. 流れ図でトレース (自分の順位を総当たりで計算) は じ め お わ り 記録(1)~(4)を準備 繰り返し1 調べる行を1から4まで 繰り返し2 相手の行を1から4まで 結果を出力 記録(調べる行) <記録(相手の行) 順位(調べる行) + 1 → 順位(調べる行) yes no 順位(1)~(4)に1を入れる 繰り返し2 繰り返し1 走り幅跳びの 飛距離(m) 順位 1 6.20 2 2 3.80 4 3 7.30 1 4 6.20 1 調べる行 3 相手の行 1 相手の行を1 に戻す
  141. 141. 流れ図でトレース (自分の順位を総当たりで計算) は じ め お わ り 記録(1)~(4)を準備 繰り返し1 調べる行を1から4まで 繰り返し2 相手の行を1から4まで 結果を出力 記録(調べる行) <記録(相手の行) 順位(調べる行) + 1 → 順位(調べる行) yes no 順位(1)~(4)に1を入れる 繰り返し2 繰り返し1 走り幅跳びの 飛距離(m) 順位 1 6.20 2 2 3.80 4 3 7.30 1 4 6.20 1 調べる行 3 相手の行 2 7.30の方が大き いので下に行く。
  142. 142. 流れ図でトレース (自分の順位を総当たりで計算) は じ め お わ り 記録(1)~(4)を準備 繰り返し1 調べる行を1から4まで 繰り返し2 相手の行を1から4まで 結果を出力 記録(調べる行) <記録(相手の行) 順位(調べる行) + 1 → 順位(調べる行) yes no 順位(1)~(4)に1を入れる 繰り返し2 繰り返し1 走り幅跳びの 飛距離(m) 順位 1 6.20 2 2 3.80 4 3 7.30 1 4 6.20 1 調べる行 3 相手の行 2 まだ2行目な ので引き返す。
  143. 143. 流れ図でトレース (自分の順位を総当たりで計算) は じ め お わ り 記録(1)~(4)を準備 繰り返し1 調べる行を1から4まで 繰り返し2 相手の行を1から4まで 結果を出力 記録(調べる行) <記録(相手の行) 順位(調べる行) + 1 → 順位(調べる行) yes no 順位(1)~(4)に1を入れる 繰り返し2 繰り返し1 走り幅跳びの 飛距離(m) 順位 1 6.20 2 2 3.80 4 3 7.30 1 4 6.20 1 調べる行 3 相手の行 3 相手の行を1 増やす
  144. 144. 流れ図でトレース (自分の順位を総当たりで計算) は じ め お わ り 記録(1)~(4)を準備 繰り返し1 調べる行を1から4まで 繰り返し2 相手の行を1から4まで 結果を出力 記録(調べる行) <記録(相手の行) 順位(調べる行) + 1 → 順位(調べる行) yes no 順位(1)~(4)に1を入れる 繰り返し2 繰り返し1 走り幅跳びの 飛距離(m) 順位 1 6.20 2 2 3.80 4 3 7.30 1 4 6.20 1 調べる行 3 相手の行 3 等しい値なの で下に行く。
  145. 145. 流れ図でトレース (自分の順位を総当たりで計算) は じ め お わ り 記録(1)~(4)を準備 繰り返し1 調べる行を1から4まで 繰り返し2 相手の行を1から4まで 結果を出力 記録(調べる行) <記録(相手の行) 順位(調べる行) + 1 → 順位(調べる行) yes no 順位(1)~(4)に1を入れる 繰り返し2 繰り返し1 走り幅跳びの 飛距離(m) 順位 1 6.20 2 2 3.80 4 3 7.30 1 4 6.20 1 調べる行 3 相手の行 3 まだ3行目な ので引き返す。
  146. 146. 流れ図でトレース (自分の順位を総当たりで計算) は じ め お わ り 記録(1)~(4)を準備 繰り返し1 調べる行を1から4まで 繰り返し2 相手の行を1から4まで 結果を出力 記録(調べる行) <記録(相手の行) 順位(調べる行) + 1 → 順位(調べる行) yes no 順位(1)~(4)に1を入れる 繰り返し2 繰り返し1 走り幅跳びの 飛距離(m) 順位 1 6.20 2 2 3.80 4 3 7.30 1 4 6.20 1 調べる行 3 相手の行 4 相手の行を1 増やす
  147. 147. 流れ図でトレース (自分の順位を総当たりで計算) は じ め お わ り 記録(1)~(4)を準備 繰り返し1 調べる行を1から4まで 繰り返し2 相手の行を1から4まで 結果を出力 記録(調べる行) <記録(相手の行) 順位(調べる行) + 1 → 順位(調べる行) yes no 順位(1)~(4)に1を入れる 繰り返し2 繰り返し1 走り幅跳びの 飛距離(m) 順位 1 6.20 2 2 3.80 4 3 7.30 1 4 6.20 1 調べる行 3 相手の行 4 7.30の方が大き いので下に行く。
  148. 148. 流れ図でトレース (自分の順位を総当たりで計算) は じ め お わ り 記録(1)~(4)を準備 繰り返し1 調べる行を1から4まで 繰り返し2 相手の行を1から4まで 結果を出力 記録(調べる行) <記録(相手の行) 順位(調べる行) + 1 → 順位(調べる行) yes no 順位(1)~(4)に1を入れる 繰り返し2 繰り返し1 走り幅跳びの 飛距離(m) 順位 1 6.20 2 2 3.80 4 3 7.30 1 4 6.20 1 調べる行 3 相手の行 4 4になったので 下に行く。
  149. 149. 流れ図でトレース (自分の順位を総当たりで計算) は じ め お わ り 記録(1)~(4)を準備 繰り返し1 調べる行を1から4まで 繰り返し2 相手の行を1から4まで 結果を出力 記録(調べる行) <記録(相手の行) 順位(調べる行) + 1 → 順位(調べる行) yes no 順位(1)~(4)に1を入れる 繰り返し2 繰り返し1 走り幅跳びの 飛距離(m) 順位 1 6.20 2 2 3.80 4 3 7.30 1 4 6.20 1 調べる行 3 相手の行 4 調べる行がまだ 3行目なので引き 返す。
  150. 150. 流れ図でトレース (自分の順位を総当たりで計算) は じ め お わ り 記録(1)~(4)を準備 繰り返し1 調べる行を1から4まで 繰り返し2 相手の行を1から4まで 結果を出力 記録(調べる行) <記録(相手の行) 順位(調べる行) + 1 → 順位(調べる行) yes no 順位(1)~(4)に1を入れる 繰り返し2 繰り返し1 走り幅跳びの 飛距離(m) 順位 1 6.20 2 2 3.80 4 3 7.30 1 4 6.20 1 調べる行 4 相手の行 4 調べる行を 1増やす
  151. 151. 流れ図でトレース (自分の順位を総当たりで計算) は じ め お わ り 記録(1)~(4)を準備 繰り返し1 調べる行を1から4まで 繰り返し2 相手の行を1から4まで 結果を出力 記録(調べる行) <記録(相手の行) 順位(調べる行) + 1 → 順位(調べる行) yes no 順位(1)~(4)に1を入れる 繰り返し2 繰り返し1 走り幅跳びの 飛距離(m) 順位 1 6.20 2 2 3.80 4 3 7.30 1 4 6.20 1 調べる行 4 相手の行 1 相手の行を1 に戻す
  152. 152. 流れ図でトレース (自分の順位を総当たりで計算) は じ め お わ り 記録(1)~(4)を準備 繰り返し1 調べる行を1から4まで 繰り返し2 相手の行を1から4まで 結果を出力 記録(調べる行) <記録(相手の行) 順位(調べる行) + 1 → 順位(調べる行) yes no 順位(1)~(4)に1を入れる 繰り返し2 繰り返し1 走り幅跳びの 飛距離(m) 順位 1 6.20 2 2 3.80 4 3 7.30 1 4 6.20 1 調べる行 4 相手の行 1 6.20の方が大き いので下に行く。
  153. 153. 流れ図でトレース (自分の順位を総当たりで計算) は じ め お わ り 記録(1)~(4)を準備 繰り返し1 調べる行を1から4まで 繰り返し2 相手の行を1から4まで 結果を出力 記録(調べる行) <記録(相手の行) 順位(調べる行) + 1 → 順位(調べる行) yes no 順位(1)~(4)に1を入れる 繰り返し2 繰り返し1 走り幅跳びの 飛距離(m) 順位 1 6.20 2 2 3.80 4 3 7.30 1 4 6.20 1 調べる行 4 相手の行 2 まだ1行目な ので引き返す。
  154. 154. 流れ図でトレース (自分の順位を総当たりで計算) は じ め お わ り 記録(1)~(4)を準備 繰り返し1 調べる行を1から4まで 繰り返し2 相手の行を1から4まで 結果を出力 記録(調べる行) <記録(相手の行) 順位(調べる行) + 1 → 順位(調べる行) yes no 順位(1)~(4)に1を入れる 繰り返し2 繰り返し1 走り幅跳びの 飛距離(m) 順位 1 6.20 2 2 3.80 4 3 7.30 1 4 6.20 1 調べる行 4 相手の行 2 相手の行を1 増やす
  155. 155. 流れ図でトレース (自分の順位を総当たりで計算) は じ め お わ り 記録(1)~(4)を準備 繰り返し1 調べる行を1から4まで 繰り返し2 相手の行を1から4まで 結果を出力 記録(調べる行) <記録(相手の行) 順位(調べる行) + 1 → 順位(調べる行) yes no 順位(1)~(4)に1を入れる 繰り返し2 繰り返し1 走り幅跳びの 飛距離(m) 順位 1 6.20 2 2 3.80 4 3 7.30 1 4 6.20 1 調べる行 4 相手の行 2 6.20の方が大き いので下に行く。
  156. 156. 流れ図でトレース (自分の順位を総当たりで計算) は じ め お わ り 記録(1)~(4)を準備 繰り返し1 調べる行を1から4まで 繰り返し2 相手の行を1から4まで 結果を出力 記録(調べる行) <記録(相手の行) 順位(調べる行) + 1 → 順位(調べる行) yes no 順位(1)~(4)に1を入れる 繰り返し2 繰り返し1 走り幅跳びの 飛距離(m) 順位 1 6.20 2 2 3.80 4 3 7.30 1 4 6.20 1 調べる行 4 相手の行 2 まだ2行目な ので引き返す。
  157. 157. 流れ図でトレース (自分の順位を総当たりで計算) は じ め お わ り 記録(1)~(4)を準備 繰り返し1 調べる行を1から4まで 繰り返し2 相手の行を1から4まで 結果を出力 記録(調べる行) <記録(相手の行) 順位(調べる行) + 1 → 順位(調べる行) yes no 順位(1)~(4)に1を入れる 繰り返し2 繰り返し1 走り幅跳びの 飛距離(m) 順位 1 6.20 2 2 3.80 4 3 7.30 1 4 6.20 1 調べる行 4 相手の行 3 相手の行を1 増やす
  158. 158. 流れ図でトレース (自分の順位を総当たりで計算) は じ め お わ り 記録(1)~(4)を準備 繰り返し1 調べる行を1から4まで 繰り返し2 相手の行を1から4まで 結果を出力 記録(調べる行) <記録(相手の行) 順位(調べる行) + 1 → 順位(調べる行) yes no 順位(1)~(4)に1を入れる 繰り返し2 繰り返し1 走り幅跳びの 飛距離(m) 順位 1 6.20 2 2 3.80 4 3 7.30 1 4 6.20 1 調べる行 4 相手の行 3 自分の値が小さ いので左側へ進む。
  159. 159. 流れ図でトレース (自分の順位を総当たりで計算) は じ め お わ り 記録(1)~(4)を準備 繰り返し1 調べる行を1から4まで 繰り返し2 相手の行を1から4まで 結果を出力 記録(調べる行) <記録(相手の行) 順位(調べる行) + 1 → 順位(調べる行) yes no 順位(1)~(4)に1を入れる 繰り返し2 繰り返し1 走り幅跳びの 飛距離(m) 順位 1 6.20 2 2 3.80 4 3 7.30 1 4 6.20 2 調べる行 4 相手の行 3 自分の順位を1増 やす。
  160. 160. 流れ図でトレース (自分の順位を総当たりで計算) は じ め お わ り 記録(1)~(4)を準備 繰り返し1 調べる行を1から4まで 繰り返し2 相手の行を1から4まで 結果を出力 記録(調べる行) <記録(相手の行) 順位(調べる行) + 1 → 順位(調べる行) yes no 順位(1)~(4)に1を入れる 繰り返し2 繰り返し1 走り幅跳びの 飛距離(m) 順位 1 6.20 2 2 3.80 4 3 7.30 1 4 6.20 2 調べる行 4 相手の行 3 まだ3行目な ので引き返す。
  161. 161. 流れ図でトレース (自分の順位を総当たりで計算) は じ め お わ り 記録(1)~(4)を準備 繰り返し1 調べる行を1から4まで 繰り返し2 相手の行を1から4まで 結果を出力 記録(調べる行) <記録(相手の行) 順位(調べる行) + 1 → 順位(調べる行) yes no 順位(1)~(4)に1を入れる 繰り返し2 繰り返し1 走り幅跳びの 飛距離(m) 順位 1 6.20 2 2 3.80 4 3 7.30 1 4 6.20 2 調べる行 4 相手の行 4 相手の行を1 増やす
  162. 162. 流れ図でトレース (自分の順位を総当たりで計算) は じ め お わ り 記録(1)~(4)を準備 繰り返し1 調べる行を1から4まで 繰り返し2 相手の行を1から4まで 結果を出力 記録(調べる行) <記録(相手の行) 順位(調べる行) + 1 → 順位(調べる行) yes no 順位(1)~(4)に1を入れる 繰り返し2 繰り返し1 走り幅跳びの 飛距離(m) 順位 1 6.20 2 2 3.80 4 3 7.30 1 4 6.20 2 調べる行 4 相手の行 4 同点なので下に 行く。
  163. 163. 流れ図でトレース (自分の順位を総当たりで計算) は じ め お わ り 記録(1)~(4)を準備 繰り返し1 調べる行を1から4まで 繰り返し2 相手の行を1から4まで 結果を出力 記録(調べる行) <記録(相手の行) 順位(調べる行) + 1 → 順位(調べる行) yes no 順位(1)~(4)に1を入れる 繰り返し2 繰り返し1 走り幅跳びの 飛距離(m) 順位 1 6.20 2 2 3.80 4 3 7.30 1 4 6.20 2 調べる行 4 相手の行 4 4になった ので下に行く。
  164. 164. 流れ図でトレース (自分の順位を総当たりで計算) は じ め お わ り 記録(1)~(4)を準備 繰り返し1 調べる行を1から4まで 繰り返し2 相手の行を1から4まで 結果を出力 記録(調べる行) <記録(相手の行) 順位(調べる行) + 1 → 順位(調べる行) yes no 順位(1)~(4)に1を入れる 繰り返し2 繰り返し1 走り幅跳びの 飛距離(m) 順位 1 6.20 2 2 3.80 4 3 7.30 1 4 6.20 2 調べる行 4 相手の行 4 4になった ので下に行く。
  165. 165. 流れ図でトレース (自分の順位を総当たりで計算) は じ め お わ り 記録(1)~(4)を準備 繰り返し1 調べる行を1から4まで 繰り返し2 相手の行を1から4まで 結果を出力 記録(調べる行) <記録(相手の行) 順位(調べる行) + 1 → 順位(調べる行) yes no 順位(1)~(4)に1を入れる 繰り返し2 繰り返し1 走り幅跳びの 飛距離(m) 順位 1 6.20 2 2 3.80 4 3 7.30 1 4 6.20 2 調べる行 4 相手の行 4 これまでの計 算結果を表示 する
  166. 166. 流れ図でトレース (自分の順位を総当たりで計算) は じ め お わ り 記録(1)~(4)を準備 繰り返し1 調べる行を1から4まで 繰り返し2 相手の行を1から4まで 結果を出力 記録(調べる行) <記録(相手の行) 順位(調べる行) + 1 → 順位(調べる行) yes no 順位(1)~(4)に1を入れる 繰り返し2 繰り返し1 走り幅跳びの 飛距離(m) 順位 1 6.20 2 2 3.80 4 3 7.30 1 4 6.20 2 調べる行 4 相手の行 4 処理を 終わる
  167. 167. 流れ図でトレース (範囲を狭めながらお互いの順位を計算)
  168. 168. 流れ図でトレース (範囲を狭めながらお互いの順位を計算) 走り幅跳びの 飛距離(m) 順位 1 2 3 4 調べる行 相手の行 yes yes no は じ め お わ り 記録(1)~(4)を準備 繰り返し1 調べる行を1から3まで 繰り返し2 相手の行を (調べる行+1)から4まで 結果を出力 記録(調べる行) <記録(相手の行) 記録(調べる行) + 1 → 記録(調べる行) no 順位(1)~(4)に1を入れる 繰り返し2 繰り返し1 記録(相手の行) + 1 → 記録(相手の行) 記録(調べる行) = 記録(相手の行)
  169. 169. 流れ図でトレース (範囲を狭めながらお互いの順位を計算) 走り幅跳びの 飛距離(m) 順位 1 6.20 2 3.80 3 7.30 4 6.20 調べる行 相手の行 yes yes no は じ め お わ り 記録(1)~(4)を準備 繰り返し1 調べる行を1から3まで 繰り返し2 相手の行を (調べる行+1)から4まで 結果を出力 記録(調べる行) <記録(相手の行) 記録(調べる行) + 1 → 記録(調べる行) no 順位(1)~(4)に1を入れる 繰り返し2 繰り返し1 記録(相手の行) + 1 → 記録(相手の行) 記録(調べる行) = 記録(相手の行) くらべるデータ を用意する。
  170. 170. 流れ図でトレース (範囲を狭めながらお互いの順位を計算) yes yes no は じ め お わ り 記録(1)~(4)を準備 繰り返し1 調べる行を1から3まで 繰り返し2 相手の行を (調べる行+1)から4まで 結果を出力 記録(調べる行) <記録(相手の行) 記録(調べる行) + 1 → 記録(調べる行) no 順位(1)~(4)に1を入れる 繰り返し2 繰り返し1 記録(相手の行) + 1 → 記録(相手の行) 記録(調べる行) = 記録(相手の行) 走り幅跳びの 飛距離(m) 順位 1 6.20 1 2 3.80 1 3 7.30 1 4 6.20 1 調べる行 相手の行 それぞれの順 位に1を入れる。
  171. 171. 流れ図でトレース (範囲を狭めながらお互いの順位を計算) 走り幅跳びの 飛距離(m) 順位 1 6.20 1 2 3.80 1 3 7.30 1 4 6.20 1 調べる行 1 相手の行 yes yes no は じ め お わ り 記録(1)~(4)を準備 繰り返し1 調べる行を1から3まで 繰り返し2 相手の行を (調べる行+1)から4まで 結果を出力 記録(調べる行) <記録(相手の行) 記録(調べる行) + 1 → 記録(調べる行) no 順位(1)~(4)に1を入れる 繰り返し2 繰り返し1 記録(相手の行) + 1 → 記録(相手の行) 記録(調べる行) = 記録(相手の行) 調べる行に 1を用意する。
  172. 172. 流れ図でトレース (範囲を狭めながらお互いの順位を計算) 走り幅跳びの 飛距離(m) 順位 1 6.20 1 2 3.80 1 3 7.30 1 4 6.20 1 調べる行 1 相手の行 2 yes yes no は じ め お わ り 記録(1)~(4)を準備 繰り返し1 調べる行を1から3まで 繰り返し2 相手の行を (調べる行+1)から4まで 結果を出力 記録(調べる行) <記録(相手の行) 記録(調べる行) + 1 → 記録(調べる行) no 順位(1)~(4)に1を入れる 繰り返し2 繰り返し1 記録(相手の行) + 1 → 記録(相手の行) 記録(調べる行) = 記録(相手の行) 相手の行に 2を用意する。
  173. 173. 流れ図でトレース (範囲を狭めながらお互いの順位を計算) 走り幅跳びの 飛距離(m) 順位 1 6.20 1 2 3.80 1 3 7.30 1 4 6.20 1 調べる行 1 相手の行 2 yes yes no は じ め お わ り 記録(1)~(4)を準備 繰り返し1 調べる行を1から3まで 繰り返し2 相手の行を (調べる行+1)から4まで 結果を出力 記録(調べる行) <記録(相手の行) 記録(調べる行) + 1 → 記録(調べる行) no 順位(1)~(4)に1を入れる 繰り返し2 繰り返し1 記録(相手の行) + 1 → 記録(相手の行) 記録(調べる行) = 記録(相手の行) 同点ではない ので下に進む。
  174. 174. 流れ図でトレース (範囲を狭めながらお互いの順位を計算) 走り幅跳びの 飛距離(m) 順位 1 6.20 1 2 3.80 1 3 7.30 1 4 6.20 1 調べる行 1 相手の行 2 yes yes no は じ め お わ り 記録(1)~(4)を準備 繰り返し1 調べる行を1から3まで 繰り返し2 相手の行を (調べる行+1)から4まで 結果を出力 記録(調べる行) <記録(相手の行) 記録(調べる行) + 1 → 記録(調べる行) no 順位(1)~(4)に1を入れる 繰り返し2 繰り返し1 記録(相手の行) + 1 → 記録(相手の行) 記録(調べる行) = 記録(相手の行) 6.20の方 が大きいの で下に行く。
  175. 175. 流れ図でトレース (範囲を狭めながらお互いの順位を計算) 走り幅跳びの 飛距離(m) 順位 1 6.20 1 2 3.80 2 3 7.30 1 4 6.20 1 調べる行 1 相手の行 2 yes yes no は じ め お わ り 記録(1)~(4)を準備 繰り返し1 調べる行を1から3まで 繰り返し2 相手の行を (調べる行+1)から4まで 結果を出力 記録(調べる行) <記録(相手の行) 記録(調べる行) + 1 → 記録(調べる行) no 順位(1)~(4)に1を入れる 繰り返し2 繰り返し1 記録(相手の行) + 1 → 記録(相手の行) 記録(調べる行) = 記録(相手の行) 相手の順位 を1増やす。
  176. 176. 流れ図でトレース (範囲を狭めながらお互いの順位を計算) 走り幅跳びの 飛距離(m) 順位 1 6.20 1 2 3.80 2 3 7.30 1 4 6.20 1 調べる行 1 相手の行 2 yes yes no は じ め お わ り 記録(1)~(4)を準備 繰り返し1 調べる行を1から3まで 繰り返し2 相手の行を (調べる行+1)から4まで 結果を出力 記録(調べる行) <記録(相手の行) 記録(調べる行) + 1 → 記録(調べる行) no 順位(1)~(4)に1を入れる 繰り返し2 繰り返し1 記録(相手の行) + 1 → 記録(相手の行) 記録(調べる行) = 記録(相手の行) まだ2行目な ので引き返す。
  177. 177. 流れ図でトレース (範囲を狭めながらお互いの順位を計算) 走り幅跳びの 飛距離(m) 順位 1 6.20 1 2 3.80 2 3 7.30 1 4 6.20 1 調べる行 1 相手の行 3 相手の行を1 増やす yes yes no は じ め お わ り 記録(1)~(4)を準備 繰り返し1 調べる行を1から3まで 繰り返し2 相手の行を (調べる行+1)から4まで 結果を出力 記録(調べる行) <記録(相手の行) 記録(調べる行) + 1 → 記録(調べる行) no 順位(1)~(4)に1を入れる 繰り返し2 繰り返し1 記録(相手の行) + 1 → 記録(相手の行) 記録(調べる行) = 記録(相手の行)
  178. 178. 流れ図でトレース (範囲を狭めながらお互いの順位を計算) 走り幅跳びの 飛距離(m) 順位 1 6.20 1 2 3.80 2 3 7.30 1 4 6.20 1 調べる行 1 相手の行 3 yes yes no は じ め お わ り 記録(1)~(4)を準備 繰り返し1 調べる行を1から3まで 繰り返し2 相手の行を (調べる行+1)から4まで 結果を出力 記録(調べる行) <記録(相手の行) 記録(調べる行) + 1 → 記録(調べる行) no 順位(1)~(4)に1を入れる 繰り返し2 繰り返し1 記録(相手の行) + 1 → 記録(相手の行) 記録(調べる行) = 記録(相手の行) 記録は等しくな いので下に行く。
  179. 179. 流れ図でトレース (範囲を狭めながらお互いの順位を計算) 走り幅跳びの 飛距離(m) 順位 1 6.20 1 2 3.80 2 3 7.30 1 4 6.20 1 調べる行 1 相手の行 3 yes yes no は じ め お わ り 記録(1)~(4)を準備 繰り返し1 調べる行を1から3まで 繰り返し2 相手の行を (調べる行+1)から4まで 結果を出力 記録(調べる行) <記録(相手の行) 記録(調べる行) + 1 → 記録(調べる行) no 順位(1)~(4)に1を入れる 繰り返し2 繰り返し1 記録(相手の行) + 1 → 記録(相手の行) 記録(調べる行) = 記録(相手の行) 自分の値6.20が 小さいので左側へ 進む。
  180. 180. 流れ図でトレース (範囲を狭めながらお互いの順位を計算) 走り幅跳びの 飛距離(m) 順位 1 6.20 2 2 3.80 2 3 7.30 1 4 6.20 1 調べる行 1 相手の行 3 yes yes no は じ め お わ り 記録(1)~(4)を準備 繰り返し1 調べる行を1から3まで 繰り返し2 相手の行を (調べる行+1)から4まで 結果を出力 記録(調べる行) <記録(相手の行) 記録(調べる行) + 1 → 記録(調べる行) no 順位(1)~(4)に1を入れる 繰り返し2 繰り返し1 記録(相手の行) + 1 → 記録(相手の行) 記録(調べる行) = 記録(相手の行) 自分の順位を 1 増やす。
  181. 181. 流れ図でトレース (範囲を狭めながらお互いの順位を計算) 走り幅跳びの 飛距離(m) 順位 1 6.20 2 2 3.80 2 3 7.30 1 4 6.20 1 調べる行 1 相手の行 3 yes yes no は じ め お わ り 記録(1)~(4)を準備 繰り返し1 調べる行を1から3まで 繰り返し2 相手の行を (調べる行+1)から4まで 結果を出力 記録(調べる行) <記録(相手の行) 記録(調べる行) + 1 → 記録(調べる行) no 順位(1)~(4)に1を入れる 繰り返し2 繰り返し1 記録(相手の行) + 1 → 記録(相手の行) 記録(調べる行) = 記録(相手の行) まだ3行目な ので引き返す。
  182. 182. 流れ図でトレース (範囲を狭めながらお互いの順位を計算) 走り幅跳びの 飛距離(m) 順位 1 6.20 2 2 3.80 2 3 7.30 1 4 6.20 1 調べる行 1 相手の行 4 yes yes no は じ め お わ り 記録(1)~(4)を準備 繰り返し1 調べる行を1から3まで 繰り返し2 相手の行を (調べる行+1)から4まで 結果を出力 記録(調べる行) <記録(相手の行) 記録(調べる行) + 1 → 記録(調べる行) no 順位(1)~(4)に1を入れる 繰り返し2 繰り返し1 記録(相手の行) + 1 → 記録(相手の行) 記録(調べる行) = 記録(相手の行) 相手の行を1 増やす
  183. 183. 流れ図でトレース (範囲を狭めながらお互いの順位を計算) 走り幅跳びの 飛距離(m) 順位 1 6.20 2 2 3.80 2 3 7.30 1 4 6.20 1 調べる行 1 相手の行 4 yes yes no は じ め お わ り 記録(1)~(4)を準備 繰り返し1 調べる行を1から3まで 繰り返し2 相手の行を (調べる行+1)から4まで 結果を出力 記録(調べる行) <記録(相手の行) 記録(調べる行) + 1 → 記録(調べる行) no 順位(1)~(4)に1を入れる 繰り返し2 繰り返し1 記録(相手の行) + 1 → 記録(相手の行) 記録(調べる行) = 記録(相手の行) 記録が等しい ので左側へ進む。
  184. 184. 流れ図でトレース (範囲を狭めながらお互いの順位を計算) 走り幅跳びの 飛距離(m) 順位 1 6.20 2 2 3.80 2 3 7.30 1 4 6.20 1 調べる行 1 相手の行 4 yes yes no は じ め お わ り 記録(1)~(4)を準備 繰り返し1 調べる行を1から3まで 繰り返し2 相手の行を (調べる行+1)から4まで 結果を出力 記録(調べる行) <記録(相手の行) 記録(調べる行) + 1 → 記録(調べる行) no 順位(1)~(4)に1を入れる 繰り返し2 繰り返し1 記録(相手の行) + 1 → 記録(相手の行) 記録(調べる行) = 記録(相手の行) 相手の行が4に なったので下に 行く。
  185. 185. 流れ図でトレース (範囲を狭めながらお互いの順位を計算) 走り幅跳びの 飛距離(m) 順位 1 6.20 2 2 3.80 2 3 7.30 1 4 6.20 1 調べる行 1 相手の行 4 yes yes no は じ め お わ り 記録(1)~(4)を準備 繰り返し1 調べる行を1から3まで 繰り返し2 相手の行を (調べる行+1)から4まで 結果を出力 記録(調べる行) <記録(相手の行) 記録(調べる行) + 1 → 記録(調べる行) no 順位(1)~(4)に1を入れる 繰り返し2 繰り返し1 記録(相手の行) + 1 → 記録(相手の行) 記録(調べる行) = 記録(相手の行) 調べる行がまだ 1行目なので引き 返す。
  186. 186. 流れ図でトレース (範囲を狭めながらお互いの順位を計算) 走り幅跳びの 飛距離(m) 順位 1 6.20 2 2 3.80 2 3 7.30 1 4 6.20 1 調べる行 2 相手の行 4 yes yes no は じ め お わ り 記録(1)~(4)を準備 繰り返し1 調べる行を1から3まで 繰り返し2 相手の行を (調べる行+1)から4まで 結果を出力 記録(調べる行) <記録(相手の行) 記録(調べる行) + 1 → 記録(調べる行) no 順位(1)~(4)に1を入れる 繰り返し2 繰り返し1 記録(相手の行) + 1 → 記録(相手の行) 記録(調べる行) = 記録(相手の行) 調べる行を 1増やす
  187. 187. 流れ図でトレース (範囲を狭めながらお互いの順位を計算) 走り幅跳びの 飛距離(m) 順位 1 6.20 2 2 3.80 2 3 7.30 1 4 6.20 1 調べる行 2 相手の行 3 yes yes no は じ め お わ り 記録(1)~(4)を準備 繰り返し1 調べる行を1から3まで 繰り返し2 相手の行を (調べる行+1)から4まで 結果を出力 記録(調べる行) <記録(相手の行) 記録(調べる行) + 1 → 記録(調べる行) no 順位(1)~(4)に1を入れる 繰り返し2 繰り返し1 記録(相手の行) + 1 → 記録(相手の行) 記録(調べる行) = 記録(相手の行) 相手の行を調べる行の 次の行から数え直す。
  188. 188. 流れ図でトレース (範囲を狭めながらお互いの順位を計算) 走り幅跳びの 飛距離(m) 順位 1 6.20 2 2 3.80 2 3 7.30 1 4 6.20 1 調べる行 2 相手の行 3 yes yes no は じ め お わ り 記録(1)~(4)を準備 繰り返し1 調べる行を1から3まで 繰り返し2 相手の行を (調べる行+1)から4まで 結果を出力 記録(調べる行) <記録(相手の行) 記録(調べる行) + 1 → 記録(調べる行) no 順位(1)~(4)に1を入れる 繰り返し2 繰り返し1 記録(相手の行) + 1 → 記録(相手の行) 記録(調べる行) = 記録(相手の行) 記録は等しくな いので下に行く。
  189. 189. 流れ図でトレース (範囲を狭めながらお互いの順位を計算) 走り幅跳びの 飛距離(m) 順位 1 6.20 2 2 3.80 2 3 7.30 1 4 6.20 1 調べる行 2 相手の行 3 yes yes no は じ め お わ り 記録(1)~(4)を準備 繰り返し1 調べる行を1から3まで 繰り返し2 相手の行を (調べる行+1)から4まで 結果を出力 記録(調べる行) <記録(相手の行) 記録(調べる行) + 1 → 記録(調べる行) no 順位(1)~(4)に1を入れる 繰り返し2 繰り返し1 記録(相手の行) + 1 → 記録(相手の行) 記録(調べる行) = 記録(相手の行) 自分の値3.80が 小さいので左側へ 進む。
  190. 190. 流れ図でトレース (範囲を狭めながらお互いの順位を計算) 走り幅跳びの 飛距離(m) 順位 1 6.20 2 2 3.80 3 3 7.30 1 4 6.20 1 調べる行 2 相手の行 3 yes yes no は じ め お わ り 記録(1)~(4)を準備 繰り返し1 調べる行を1から3まで 繰り返し2 相手の行を (調べる行+1)から4まで 結果を出力 記録(調べる行) <記録(相手の行) 記録(調べる行) + 1 → 記録(調べる行) no 順位(1)~(4)に1を入れる 繰り返し2 繰り返し1 記録(相手の行) + 1 → 記録(相手の行) 記録(調べる行) = 記録(相手の行) 自分の順位を 1 増やす。
  191. 191. 流れ図でトレース (範囲を狭めながらお互いの順位を計算) 走り幅跳びの 飛距離(m) 順位 1 6.20 2 2 3.80 3 3 7.30 1 4 6.20 1 調べる行 2 相手の行 3 yes yes no は じ め お わ り 記録(1)~(4)を準備 繰り返し1 調べる行を1から3まで 繰り返し2 相手の行を (調べる行+1)から4まで 結果を出力 記録(調べる行) <記録(相手の行) 記録(調べる行) + 1 → 記録(調べる行) no 順位(1)~(4)に1を入れる 繰り返し2 繰り返し1 記録(相手の行) + 1 → 記録(相手の行) 記録(調べる行) = 記録(相手の行) まだ3行目な ので引き返す。
  192. 192. 流れ図でトレース (範囲を狭めながらお互いの順位を計算) 走り幅跳びの 飛距離(m) 順位 1 6.20 2 2 3.80 3 3 7.30 1 4 6.20 1 調べる行 2 相手の行 4 yes yes no は じ め お わ り 記録(1)~(4)を準備 繰り返し1 調べる行を1から3まで 繰り返し2 相手の行を (調べる行+1)から4まで 結果を出力 記録(調べる行) <記録(相手の行) 記録(調べる行) + 1 → 記録(調べる行) no 順位(1)~(4)に1を入れる 繰り返し2 繰り返し1 記録(相手の行) + 1 → 記録(相手の行) 記録(調べる行) = 記録(相手の行) 相手の行を 1増やす
  193. 193. 流れ図でトレース (範囲を狭めながらお互いの順位を計算) 走り幅跳びの 飛距離(m) 順位 1 6.20 2 2 3.80 3 3 7.30 1 4 6.20 1 調べる行 2 相手の行 4 yes yes no は じ め お わ り 記録(1)~(4)を準備 繰り返し1 調べる行を1から3まで 繰り返し2 相手の行を (調べる行+1)から4まで 結果を出力 記録(調べる行) <記録(相手の行) 記録(調べる行) + 1 → 記録(調べる行) no 順位(1)~(4)に1を入れる 繰り返し2 繰り返し1 記録(相手の行) + 1 → 記録(相手の行) 記録(調べる行) = 記録(相手の行) 記録は等しくな いので下に行く。
  194. 194. 流れ図でトレース (範囲を狭めながらお互いの順位を計算) 走り幅跳びの 飛距離(m) 順位 1 6.20 2 2 3.80 3 3 7.30 1 4 6.20 1 調べる行 2 相手の行 4 yes yes no は じ め お わ り 記録(1)~(4)を準備 繰り返し1 調べる行を1から3まで 繰り返し2 相手の行を (調べる行+1)から4まで 結果を出力 記録(調べる行) <記録(相手の行) 記録(調べる行) + 1 → 記録(調べる行) no 順位(1)~(4)に1を入れる 繰り返し2 繰り返し1 記録(相手の行) + 1 → 記録(相手の行) 記録(調べる行) = 記録(相手の行) 自分の値3.80が 小さいので左側へ 進む。
  195. 195. 流れ図でトレース (範囲を狭めながらお互いの順位を計算) 走り幅跳びの 飛距離(m) 順位 1 6.20 2 2 3.80 4 3 7.30 1 4 6.20 1 調べる行 2 相手の行 4 yes yes no は じ め お わ り 記録(1)~(4)を準備 繰り返し1 調べる行を1から3まで 繰り返し2 相手の行を (調べる行+1)から4まで 結果を出力 記録(調べる行) <記録(相手の行) 記録(調べる行) + 1 → 記録(調べる行) no 順位(1)~(4)に1を入れる 繰り返し2 繰り返し1 記録(相手の行) + 1 → 記録(相手の行) 記録(調べる行) = 記録(相手の行) 自分の順位を 1 増やす。
  196. 196. 流れ図でトレース (範囲を狭めながらお互いの順位を計算) 走り幅跳びの 飛距離(m) 順位 1 6.20 2 2 3.80 4 3 7.30 1 4 6.20 1 調べる行 2 相手の行 4 yes yes no は じ め お わ り 記録(1)~(4)を準備 繰り返し1 調べる行を1から3まで 繰り返し2 相手の行を (調べる行+1)から4まで 結果を出力 記録(調べる行) <記録(相手の行) 記録(調べる行) + 1 → 記録(調べる行) no 順位(1)~(4)に1を入れる 繰り返し2 繰り返し1 記録(相手の行) + 1 → 記録(相手の行) 記録(調べる行) = 記録(相手の行) 相手の行が4に なったので下に 行く。
  197. 197. 流れ図でトレース (範囲を狭めながらお互いの順位を計算) 走り幅跳びの 飛距離(m) 順位 1 6.20 2 2 3.80 4 3 7.30 1 4 6.20 1 調べる行 2 相手の行 4 yes yes no は じ め お わ り 記録(1)~(4)を準備 繰り返し1 調べる行を1から3まで 繰り返し2 相手の行を (調べる行+1)から4まで 結果を出力 記録(調べる行) <記録(相手の行) 記録(調べる行) + 1 → 記録(調べる行) no 順位(1)~(4)に1を入れる 繰り返し2 繰り返し1 記録(相手の行) + 1 → 記録(相手の行) 記録(調べる行) = 記録(相手の行) 調べる行がまだ 2行目なので引き 返す。
  198. 198. 流れ図でトレース (範囲を狭めながらお互いの順位を計算) 走り幅跳びの 飛距離(m) 順位 1 6.20 2 2 3.80 4 3 7.30 1 4 6.20 1 調べる行 3 相手の行 4 yes yes no は じ め お わ り 記録(1)~(4)を準備 繰り返し1 調べる行を1から3まで 繰り返し2 相手の行を (調べる行+1)から4まで 結果を出力 記録(調べる行) <記録(相手の行) 記録(調べる行) + 1 → 記録(調べる行) no 順位(1)~(4)に1を入れる 繰り返し2 繰り返し1 記録(相手の行) + 1 → 記録(相手の行) 記録(調べる行) = 記録(相手の行) 調べる行を 1増やす
  199. 199. 流れ図でトレース (範囲を狭めながらお互いの順位を計算) 走り幅跳びの 飛距離(m) 順位 1 6.20 2 2 3.80 4 3 7.30 1 4 6.20 1 調べる行 3 相手の行 4 yes yes no は じ め お わ り 記録(1)~(4)を準備 繰り返し1 調べる行を1から3まで 繰り返し2 相手の行を (調べる行+1)から4まで 結果を出力 記録(調べる行) <記録(相手の行) 記録(調べる行) + 1 → 記録(調べる行) no 順位(1)~(4)に1を入れる 繰り返し2 繰り返し1 記録(相手の行) + 1 → 記録(相手の行) 記録(調べる行) = 記録(相手の行) 相手の行を調べる行 の次の行から始める。
  200. 200. 流れ図でトレース (範囲を狭めながらお互いの順位を計算) 走り幅跳びの 飛距離(m) 順位 1 6.20 2 2 3.80 4 3 7.30 1 4 6.20 1 調べる行 3 相手の行 4 yes yes no は じ め お わ り 記録(1)~(4)を準備 繰り返し1 調べる行を1から3まで 繰り返し2 相手の行を (調べる行+1)から4まで 結果を出力 記録(調べる行) <記録(相手の行) 記録(調べる行) + 1 → 記録(調べる行) no 順位(1)~(4)に1を入れる 繰り返し2 繰り返し1 記録(相手の行) + 1 → 記録(相手の行) 記録(調べる行) = 記録(相手の行) 記録は等しくな いので下に行く。
  201. 201. 流れ図でトレース (範囲を狭めながらお互いの順位を計算) 走り幅跳びの 飛距離(m) 順位 1 6.20 2 2 3.80 4 3 7.30 1 4 6.20 1 調べる行 3 相手の行 4 yes yes no は じ め お わ り 記録(1)~(4)を準備 繰り返し1 調べる行を1から3まで 繰り返し2 相手の行を (調べる行+1)から4まで 結果を出力 記録(調べる行) <記録(相手の行) 記録(調べる行) + 1 → 記録(調べる行) no 順位(1)~(4)に1を入れる 繰り返し2 繰り返し1 記録(相手の行) + 1 → 記録(相手の行) 記録(調べる行) = 記録(相手の行) 7.30の方 が大きいの で下に行く。
  202. 202. 流れ図でトレース (範囲を狭めながらお互いの順位を計算) 走り幅跳びの 飛距離(m) 順位 1 6.20 2 2 3.80 4 3 7.30 1 4 6.20 2 調べる行 3 相手の行 4 yes yes no は じ め お わ り 記録(1)~(4)を準備 繰り返し1 調べる行を1から3まで 繰り返し2 相手の行を (調べる行+1)から4まで 結果を出力 記録(調べる行) <記録(相手の行) 記録(調べる行) + 1 → 記録(調べる行) no 順位(1)~(4)に1を入れる 繰り返し2 繰り返し1 記録(相手の行) + 1 → 記録(相手の行) 記録(調べる行) = 記録(相手の行) 相手の順位 を1増やす。
  203. 203. 流れ図でトレース (範囲を狭めながらお互いの順位を計算) 走り幅跳びの 飛距離(m) 順位 1 6.20 2 2 3.80 4 3 7.30 1 4 6.20 2 調べる行 3 相手の行 4 yes yes no は じ め お わ り 記録(1)~(4)を準備 繰り返し1 調べる行を1から3まで 繰り返し2 相手の行を (調べる行+1)から4まで 結果を出力 記録(調べる行) <記録(相手の行) 記録(調べる行) + 1 → 記録(調べる行) no 順位(1)~(4)に1を入れる 繰り返し2 繰り返し1 記録(相手の行) + 1 → 記録(相手の行) 記録(調べる行) = 記録(相手の行) 相手の行が4 なので下に行く。
  204. 204. yes yes no は じ め お わ り 記録(1)~(4)を準備 繰り返し1 調べる行を1から3まで 繰り返し2 相手の行を (調べる行+1)から4まで 結果を出力 記録(調べる行) <記録(相手の行) 記録(調べる行) + 1 → 記録(調べる行) no 順位(1)~(4)に1を入れる 繰り返し2 繰り返し1 記録(相手の行) + 1 → 記録(相手の行) 記録(調べる行) = 記録(相手の行) 流れ図でトレース (範囲を狭めながらお互いの順位を計算) 走り幅跳びの 飛距離(m) 順位 1 6.20 2 2 3.80 4 3 7.30 1 4 6.20 2 調べる行 3 相手の行 4 調べる行が3なので下に行く。 つまり、すべての組み合わせ の計算が済んだということ。
  205. 205. yes yes no は じ め お わ り 記録(1)~(4)を準備 繰り返し1 調べる行を1から3まで 繰り返し2 相手の行を (調べる行+1)から4まで 結果を出力 記録(調べる行) <記録(相手の行) 記録(調べる行) + 1 → 記録(調べる行) no 順位(1)~(4)に1を入れる 繰り返し2 繰り返し1 記録(相手の行) + 1 → 記録(相手の行) 記録(調べる行) = 記録(相手の行) 流れ図でトレース (範囲を狭めながらお互いの順位を計算) 走り幅跳びの 飛距離(m) 順位 1 6.20 2 2 3.80 4 3 7.30 1 4 6.20 2 調べる行 3 相手の行 4 これまでの計 算結果を表示 する
  206. 206. yes yes no は じ め お わ り 記録(1)~(4)を準備 繰り返し1 調べる行を1から3まで 繰り返し2 相手の行を (調べる行+1)から4まで 結果を出力 記録(調べる行) <記録(相手の行) 記録(調べる行) + 1 → 記録(調べる行) no 順位(1)~(4)に1を入れる 繰り返し2 繰り返し1 記録(相手の行) + 1 → 記録(相手の行) 記録(調べる行) = 記録(相手の行) 流れ図でトレース (範囲を狭めながらお互いの順位を計算) 走り幅跳びの 飛距離(m) 順位 1 6.20 2 2 3.80 4 3 7.30 1 4 6.20 2 調べる行 3 相手の行 4 処理を 終わる
  207. 207. 順位付けのアルゴリズムの説明 ©seastar@orion.nifty.jp 終 わ り

×