Skip to content

Commit

Permalink
deploy: 98519b6
Browse files Browse the repository at this point in the history
  • Loading branch information
spring-haru committed Aug 19, 2024
1 parent a0e7857 commit 4ec8b63
Show file tree
Hide file tree
Showing 180 changed files with 908 additions and 843 deletions.
30 changes: 15 additions & 15 deletions 1_Basics_IV.html
Original file line number Diff line number Diff line change
Expand Up @@ -542,7 +542,7 @@ <h2>フローチャート<a class="headerlink" href="#id2" title="Link to this h
<div class="output stderr highlight-myst-ansi notranslate"><div class="highlight"><pre><span></span>Matplotlib is building the font cache; this may take a moment.
</pre></div>
</div>
<img alt="_images/969b88bd3c70f0e5555b0f126493a1c69bfd00c83ec34841ed455a80cff62cdb.svg" src="_images/969b88bd3c70f0e5555b0f126493a1c69bfd00c83ec34841ed455a80cff62cdb.svg" />
<img alt="_images/d4a714b78320833ba900afda598bc4827942383cc6c66cad1749ceb7a1adda5c.svg" src="_images/d4a714b78320833ba900afda598bc4827942383cc6c66cad1749ceb7a1adda5c.svg" />
</div>
</div>
<p>一番最初と最後の楕円は,プログラムの始まり(<code class="docutils literal notranslate"><span class="pre">START</span></code>)と終わり(<code class="docutils literal notranslate"><span class="pre">END</span></code>)を表す。長方形はコードの処理,そして,矢印はプログラムの実行の順番(フロー)を意味する。単純な例なので,上から下に一直線の実行フローとなっている。より複雑なコードの場合,矢印が横向きや上向きになったりもし,枠も様々な形を使い実行フローを表現することになる。以下では,枠は次の3種類だけを使い制御フローをシンプルな形で表すことにする。</p>
Expand Down Expand Up @@ -647,7 +647,7 @@ <h3>説明と簡単な例<a class="headerlink" href="#id3" title="Link to this h
</div>
</details>
<div class="cell_output docutils container">
<img alt="_images/99ec5a3302b06c8ea936f8c70c7539566faeff2255359f2238089ea6fe589d7e.svg" src="_images/99ec5a3302b06c8ea936f8c70c7539566faeff2255359f2238089ea6fe589d7e.svg" />
<img alt="_images/0c6190f053432e0ca7aa59e5e1d6b386839c5fe0a2e8b90001225190cd6aec1c.svg" src="_images/0c6190f053432e0ca7aa59e5e1d6b386839c5fe0a2e8b90001225190cd6aec1c.svg" />
</div>
</div>
<p>菱形枠中の<code class="docutils literal notranslate"><span class="pre"></span></code>は「判断」を意味するが,上のコードの<code class="docutils literal notranslate"><span class="pre">#2</span></code>に対応している。<code class="docutils literal notranslate"><span class="pre">x=10</span></code><code class="docutils literal notranslate"><span class="pre">True</span></code>なので,菱形枠から右に移動して<code class="docutils literal notranslate"><span class="pre">条件はTrueです</span></code>が表示されることになる。</p>
Expand Down Expand Up @@ -700,7 +700,7 @@ <h3>説明と簡単な例<a class="headerlink" href="#id3" title="Link to this h
</div>
</details>
<div class="cell_output docutils container">
<img alt="_images/3e0992f2547a8bdb9855085f22301277c629510653d2c8431a076e7178bc13e2.svg" src="_images/3e0992f2547a8bdb9855085f22301277c629510653d2c8431a076e7178bc13e2.svg" />
<img alt="_images/eb9e2ce00e54c7cd2f4b7476fc8cfe0f8a35bbd8cde0ffd94d641d60b177866a.svg" src="_images/eb9e2ce00e54c7cd2f4b7476fc8cfe0f8a35bbd8cde0ffd94d641d60b177866a.svg" />
</div>
</div>
<p><code class="docutils literal notranslate"><span class="pre">False</span></code>と判断されると,直ぐに<code class="docutils literal notranslate"><span class="pre">END</span></code>となっている。</p>
Expand Down Expand Up @@ -752,7 +752,7 @@ <h3>複数条件<a class="headerlink" href="#id4" title="Link to this heading">#
</div>
</details>
<div class="cell_output docutils container">
<img alt="_images/429523945d3e4a18c07a31b199f29ebb5eec2ecd9ddca80ea5dfa235dde43f80.svg" src="_images/429523945d3e4a18c07a31b199f29ebb5eec2ecd9ddca80ea5dfa235dde43f80.svg" />
<img alt="_images/cda378eeeb16a768d216a60163a9d2d2d8ffabf1cf3b01a99b8b588b975e1459.svg" src="_images/cda378eeeb16a768d216a60163a9d2d2d8ffabf1cf3b01a99b8b588b975e1459.svg" />
</div>
</div>
<p>このフローチャートをコードに落とし込むと次のようになる。</p>
Expand Down Expand Up @@ -1025,7 +1025,7 @@ <h3>数値を返す例<a class="headerlink" href="#id7" title="Link to this head
</div>
</details>
<div class="cell_output docutils container">
<img alt="_images/1f7ad1e393ebd9aea4dd2d32f57fc897a989562771d8ad484e4d89aa21c1ed70.svg" src="_images/1f7ad1e393ebd9aea4dd2d32f57fc897a989562771d8ad484e4d89aa21c1ed70.svg" />
<img alt="_images/f1b992164c056404c75b9630ed0ee04a52acf1c775444ee238b0dc7061f1bade.svg" src="_images/f1b992164c056404c75b9630ed0ee04a52acf1c775444ee238b0dc7061f1bade.svg" />
</div>
</div>
<p>ここでは,まず <span class="math notranslate nohighlight">\(x=0\)</span><code class="docutils literal notranslate"><span class="pre">True</span></code><code class="docutils literal notranslate"><span class="pre">False</span></code>かを判断し,次に <span class="math notranslate nohighlight">\(x&gt;0\)</span><code class="docutils literal notranslate"><span class="pre">True</span></code><code class="docutils literal notranslate"><span class="pre">False</span></code>かを判定している。しかし,図から分かるように,この2つの判断は,非常に似ており,次のように1つにまとめることができる。</p>
Expand Down Expand Up @@ -1057,7 +1057,7 @@ <h3>数値を返す例<a class="headerlink" href="#id7" title="Link to this head
</div>
</details>
<div class="cell_output docutils container">
<img alt="_images/7e5e463c02a39a556b120b28b922a54971684a0ec754b7cbfc5a4c91876aea41.svg" src="_images/7e5e463c02a39a556b120b28b922a54971684a0ec754b7cbfc5a4c91876aea41.svg" />
<img alt="_images/6314115f3711937ec4b06c0070d35fcc38c8715baf47ef44c99a35c2660cba61.svg" src="_images/6314115f3711937ec4b06c0070d35fcc38c8715baf47ef44c99a35c2660cba61.svg" />
</div>
</div>
<p>このフローチャートに従って,<code class="docutils literal notranslate"><span class="pre">if</span></code>文を使いコードを書いてみよう。</p>
Expand Down Expand Up @@ -1319,7 +1319,7 @@ <h3><code class="docutils literal notranslate"><span class="pre">print()</span><
</div>
</details>
<div class="cell_output docutils container">
<img alt="_images/4ba85c3c59f7c6b70bf113a849813370fbf4f8a19626111a4cb620c6ed74807a.svg" src="_images/4ba85c3c59f7c6b70bf113a849813370fbf4f8a19626111a4cb620c6ed74807a.svg" />
<img alt="_images/0b8ab44ec459ad2872be56636cb5228393f89f73459f731fc54834c1b62ac897.svg" src="_images/0b8ab44ec459ad2872be56636cb5228393f89f73459f731fc54834c1b62ac897.svg" />
</div>
</div>
<p>この図から,<code class="docutils literal notranslate"><span class="pre">for</span></code>ループの裏では菱形の判断,即ち,<code class="docutils literal notranslate"><span class="pre">if</span></code>文が動いていることが分かる。<code class="docutils literal notranslate"><span class="pre">gdp_components</span></code>の最後の要素のループ処理が終わったかどうかを判断している。</p>
Expand Down Expand Up @@ -2146,7 +2146,7 @@ <h3>説明と簡単な例<a class="headerlink" href="#id12" title="Link to this
</div>
</details>
<div class="cell_output docutils container">
<img alt="_images/5ec26c93cae645f8754d7bf22e4d65a465a43e55d4372f3e4c47a4e8607eec15.svg" src="_images/5ec26c93cae645f8754d7bf22e4d65a465a43e55d4372f3e4c47a4e8607eec15.svg" />
<img alt="_images/51f107934e2b073f82d0e7089f2b6020276b6efa7052ec24f9b5681c65e18409.svg" src="_images/51f107934e2b073f82d0e7089f2b6020276b6efa7052ec24f9b5681c65e18409.svg" />
</div>
</div>
<p>この図から,最後の<code class="docutils literal notranslate"><span class="pre">counter+=1</span></code>がなければ無限ループに陥ってしまうことが分かると思う。また,<code class="docutils literal notranslate"><span class="pre">for</span></code>ループ同様,菱形で<code class="docutils literal notranslate"><span class="pre">if</span></code>文が裏で働いていることが分かる。一方で,<code class="docutils literal notranslate"><span class="pre">if</span></code>文の判断で次の点で異なる。</p>
Expand Down Expand Up @@ -2217,7 +2217,7 @@ <h3>説明と簡単な例<a class="headerlink" href="#id12" title="Link to this
</div>
</details>
<div class="cell_output docutils container">
<img alt="_images/9d46d01c9d94bbe10f2ac7880699968474601c3dca5d64a494a0e78243b332a3.svg" src="_images/9d46d01c9d94bbe10f2ac7880699968474601c3dca5d64a494a0e78243b332a3.svg" />
<img alt="_images/520589af005e7428df597f8e20ca08ebebcb61460880d17e56f9c83f632e2b76.svg" src="_images/520589af005e7428df597f8e20ca08ebebcb61460880d17e56f9c83f632e2b76.svg" />
</div>
</div>
<p>上のフローチャートと比べると,菱形枠と<code class="docutils literal notranslate"><span class="pre">END</span></code>の間に<code class="docutils literal notranslate"><span class="pre">print('無事終了(^^)')</span></code>が追加されている。</p>
Expand Down Expand Up @@ -2460,7 +2460,7 @@ <h3><code class="docutils literal notranslate"><span class="pre">if</span></code
</div>
</details>
<div class="cell_output docutils container">
<img alt="_images/23ea40ef8e867fb4d422e3879d960c2741ea3b9bab666050e814643db73c999e.svg" src="_images/23ea40ef8e867fb4d422e3879d960c2741ea3b9bab666050e814643db73c999e.svg" />
<img alt="_images/f4dfbc73f07d8fc5fd26f54e2d129b96ebad6e863079a53d0044654b6f1a2490.svg" src="_images/f4dfbc73f07d8fc5fd26f54e2d129b96ebad6e863079a53d0044654b6f1a2490.svg" />
</div>
</div>
<p>この例に基づいて,<code class="docutils literal notranslate"><span class="pre">1</span></code>から<code class="docutils literal notranslate"><span class="pre">5</span></code>までの数字を<code class="docutils literal notranslate"><span class="pre">3</span></code>を飛ばして<code class="docutils literal notranslate"><span class="pre">1</span></code><code class="docutils literal notranslate"><span class="pre">2</span></code><code class="docutils literal notranslate"><span class="pre">4</span></code><code class="docutils literal notranslate"><span class="pre">5</span></code>を表示するとしよう。その場合に重宝するのが<code class="docutils literal notranslate"><span class="pre">if</span></code>文と<code class="docutils literal notranslate"><span class="pre">continue</span></code>(対象コードの実行を飛ばすコード)の組み合わせである。まず,フローチャートで表してみよう。</p>
Expand Down Expand Up @@ -2500,7 +2500,7 @@ <h3><code class="docutils literal notranslate"><span class="pre">if</span></code
</div>
</details>
<div class="cell_output docutils container">
<img alt="_images/7a54ef45f6e6871b6b568b92d66ae45745d57509b4d9b2b01d8994886abb571e.svg" src="_images/7a54ef45f6e6871b6b568b92d66ae45745d57509b4d9b2b01d8994886abb571e.svg" />
<img alt="_images/4851ed63c6d82cf75320bd8c27bd0cb8e47abf5972b915c64af4e2114e0de2b2.svg" src="_images/4851ed63c6d82cf75320bd8c27bd0cb8e47abf5972b915c64af4e2114e0de2b2.svg" />
</div>
</div>
<p>上のフローチャートと異なる点は,下の菱形が追加されていることだけであり,その菱形を<code class="docutils literal notranslate"><span class="pre">if</span></code>文で捉えることができる。更に,下の菱形から上の菱形への矢印(<code class="docutils literal notranslate"><span class="pre">3</span></code>の表示を飛ばす)を<code class="docutils literal notranslate"><span class="pre">continue</span></code>で実行することになる。コードを書いてみよう。</p>
Expand Down Expand Up @@ -2585,7 +2585,7 @@ <h3><code class="docutils literal notranslate"><span class="pre">if</span></code
</div>
</details>
<div class="cell_output docutils container">
<img alt="_images/46f5596c19700b85757c01a5dc7f7fe26a5d51eb04721f3bb262919e1cabd266.svg" src="_images/46f5596c19700b85757c01a5dc7f7fe26a5d51eb04721f3bb262919e1cabd266.svg" />
<img alt="_images/fe6a3b5fb40b2e20c6d9d8ad3f9aadbbdec4e1770ed3f0c02527603bbe216341.svg" src="_images/fe6a3b5fb40b2e20c6d9d8ad3f9aadbbdec4e1770ed3f0c02527603bbe216341.svg" />
</div>
</div>
<p>菱形の中は<code class="docutils literal notranslate"><span class="pre">True</span></code>なので,必ず<code class="docutils literal notranslate"><span class="pre">True</span></code>の矢印の方向に沿ってコードは実行される。<code class="docutils literal notranslate"><span class="pre">False</span></code>も書いてあるが,そちらの矢印に決して進むことはない。</p>
Expand Down Expand Up @@ -2623,7 +2623,7 @@ <h3><code class="docutils literal notranslate"><span class="pre">if</span></code
</div>
</details>
<div class="cell_output docutils container">
<img alt="_images/d65e66314416f7d3304d0a68ccc68ab646692c298b530cef5707b725e616c991.svg" src="_images/d65e66314416f7d3304d0a68ccc68ab646692c298b530cef5707b725e616c991.svg" />
<img alt="_images/0f163eb2fce559745f76b263652c2fd3bf95645d223f058a4218a6a3ef7f30fe.svg" src="_images/0f163eb2fce559745f76b263652c2fd3bf95645d223f058a4218a6a3ef7f30fe.svg" />
</div>
</div>
<p>上のフローチャートと異なるのは,下の菱形(<code class="docutils literal notranslate"><span class="pre">条件?</span></code>)を追加することにより,<code class="docutils literal notranslate"><span class="pre">while</span></code>ループは維持するとともに<code class="docutils literal notranslate"><span class="pre">END</span></code>への矢印を追加した点である。</p>
Expand Down Expand Up @@ -2706,7 +2706,7 @@ <h3><code class="docutils literal notranslate"><span class="pre">if</span></code
</div>
</details>
<div class="cell_output docutils container">
<img alt="_images/fd6d0edbd1e494fda1f4983626953644a97a39caa2d91fdf5f966a6a24d5f6b7.svg" src="_images/fd6d0edbd1e494fda1f4983626953644a97a39caa2d91fdf5f966a6a24d5f6b7.svg" />
<img alt="_images/8a438c9e6d7c8850a9c2ed379f803d5951ceee0a0bcd37ca5306172858a64a29.svg" src="_images/8a438c9e6d7c8850a9c2ed379f803d5951ceee0a0bcd37ca5306172858a64a29.svg" />
</div>
</div>
<p>上のコードの<code class="docutils literal notranslate"><span class="pre">#4</span></code><code class="docutils literal notranslate"><span class="pre">#6</span></code>を少し書き換えて,次のようにしても同じ結果が返される。</p>
Expand Down Expand Up @@ -2839,7 +2839,7 @@ <h3><code class="docutils literal notranslate"><span class="pre">continue</span>
</div>
</details>
<div class="cell_output docutils container">
<img alt="_images/dbce92db9932a925bb3b462dbc37190930da6c94c2cf112d11292f94ed3c9a39.svg" src="_images/dbce92db9932a925bb3b462dbc37190930da6c94c2cf112d11292f94ed3c9a39.svg" />
<img alt="_images/7ffe21afded8e5379144bfe5b0bce286dd211d4925915d8cb3a9a12b63fd31e5.svg" src="_images/7ffe21afded8e5379144bfe5b0bce286dd211d4925915d8cb3a9a12b63fd31e5.svg" />
</div>
</div>
</section>
Expand Down
Loading

0 comments on commit 4ec8b63

Please sign in to comment.