Skip to content

Commit

Permalink
deploy: 92cb034
Browse files Browse the repository at this point in the history
  • Loading branch information
spring-haru committed Jun 15, 2024
1 parent 1f14493 commit d92f814
Show file tree
Hide file tree
Showing 113 changed files with 877 additions and 1,976 deletions.
2 changes: 1 addition & 1 deletion 1_Basics_II.html
Original file line number Diff line number Diff line change
Expand Up @@ -744,7 +744,7 @@ <h2>コンテナデータ型の操作<a class="headerlink" href="#id7" title="Li
<h3>リスト<a class="headerlink" href="#id8" title="Link to this heading">#</a></h3>
<section id="id9">
<h4>1つの要素の抽出<a class="headerlink" href="#id9" title="Link to this heading">#</a></h4>
<p>インデックスとは、リスト、タプル及び文字列における要素の位置を示す番号を意味し<code class="docutils literal notranslate"><span class="pre">0</span></code>から始まる。
<p>リスト、タプル及び文字列におけるインデックスとは、要素の位置を示す番号を意味し<code class="docutils literal notranslate"><span class="pre">0</span></code>から始まる。
次の図は、リストの要素<code class="docutils literal notranslate"><span class="pre">A</span></code><code class="docutils literal notranslate"><span class="pre">B</span></code><code class="docutils literal notranslate"><span class="pre">C</span></code><code class="docutils literal notranslate"><span class="pre">F</span></code>を並べ、各要素に対応するインデックを示している。
左から数えると<code class="docutils literal notranslate"><span class="pre">0</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">-1</span></code><code class="docutils literal notranslate"><span class="pre">-2</span></code><code class="docutils literal notranslate"><span class="pre">-3</span></code>と数える。</p>
<div class="highlight-default notranslate"><div class="highlight"><pre><span></span> 0 1 2 3 4 5 (左から数える)
Expand Down
30 changes: 15 additions & 15 deletions 1_Basics_IV.html
Original file line number Diff line number Diff line change
Expand Up @@ -540,7 +540,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/97c43036b3c5beb0de77d4a7bef9bc2f0dcd07b26af9e8eadede4fb215b4cb17.svg" src="_images/97c43036b3c5beb0de77d4a7bef9bc2f0dcd07b26af9e8eadede4fb215b4cb17.svg" /></div>
<img alt="_images/7b04a88ce1243afd1fa2ec5e814656ed6ecfe40dfcec200db4284dbb314be299.svg" src="_images/7b04a88ce1243afd1fa2ec5e814656ed6ecfe40dfcec200db4284dbb314be299.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>
<ul class="simple">
Expand Down Expand Up @@ -644,7 +644,7 @@ <h3>説明と簡単な例<a class="headerlink" href="#id3" title="Link to this h
</div>
</details>
<div class="cell_output docutils container">
<img alt="_images/8beda973d3291e3e2210a70c0d566c113d36b69bbb3a36ebcd2508a87cdc6808.svg" src="_images/8beda973d3291e3e2210a70c0d566c113d36b69bbb3a36ebcd2508a87cdc6808.svg" /></div>
<img alt="_images/d462dfe1d9e71ed823b279f3c64e4b573954d7f899649d8cb9bfd823977fa2ed.svg" src="_images/d462dfe1d9e71ed823b279f3c64e4b573954d7f899649d8cb9bfd823977fa2ed.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>
<p>次の例は上の例と似ているが少しだけ異なる。</p>
Expand Down Expand Up @@ -696,7 +696,7 @@ <h3>説明と簡単な例<a class="headerlink" href="#id3" title="Link to this h
</div>
</details>
<div class="cell_output docutils container">
<img alt="_images/2673d78e44e0207023c00a2db63152e774dc0cdde0bcbd138b234633c3015d6c.svg" src="_images/2673d78e44e0207023c00a2db63152e774dc0cdde0bcbd138b234633c3015d6c.svg" /></div>
<img alt="_images/617e83e2c51170d5442a0ef24d93a25466993b4916016f5492300a8f1fbc8f73.svg" src="_images/617e83e2c51170d5442a0ef24d93a25466993b4916016f5492300a8f1fbc8f73.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>
</section>
Expand Down Expand Up @@ -747,7 +747,7 @@ <h3>複数条件<a class="headerlink" href="#id4" title="Link to this heading">#
</div>
</details>
<div class="cell_output docutils container">
<img alt="_images/aba575785490ff6242eeacf4445bf0594600b316d6c7a1126339809af432262a.svg" src="_images/aba575785490ff6242eeacf4445bf0594600b316d6c7a1126339809af432262a.svg" /></div>
<img alt="_images/3aba5453170422808c424b3a2daf7b08dbc6b9f9f22631233df27fc336b0f9ac.svg" src="_images/3aba5453170422808c424b3a2daf7b08dbc6b9f9f22631233df27fc336b0f9ac.svg" /></div>
</div>
<p>このフローチャートをコードに落とし込むと次のようになる。</p>
<div class="cell docutils container">
Expand Down Expand Up @@ -1019,7 +1019,7 @@ <h3>数値を返す例<a class="headerlink" href="#id7" title="Link to this head
</div>
</details>
<div class="cell_output docutils container">
<img alt="_images/c6937fed66aeceb65cb2742c6ed178d3571766738237f823e652003c311b61a1.svg" src="_images/c6937fed66aeceb65cb2742c6ed178d3571766738237f823e652003c311b61a1.svg" /></div>
<img alt="_images/f55b1d464ec0a1381621de2f145d75c3f5606785aee8a8f646e4b695f70d40af.svg" src="_images/f55b1d464ec0a1381621de2f145d75c3f5606785aee8a8f646e4b695f70d40af.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>
<div class="cell tag_hide-input docutils container">
Expand Down Expand Up @@ -1050,7 +1050,7 @@ <h3>数値を返す例<a class="headerlink" href="#id7" title="Link to this head
</div>
</details>
<div class="cell_output docutils container">
<img alt="_images/53f4b78a7b502c6326d971e6185cba04d142cc8b00b7423b3f76b0be3943d454.svg" src="_images/53f4b78a7b502c6326d971e6185cba04d142cc8b00b7423b3f76b0be3943d454.svg" /></div>
<img alt="_images/c617d9ffadaa7fc204ddc6b626e83643a407eb68a05a6ed4cc8b8d7c6320eef7.svg" src="_images/c617d9ffadaa7fc204ddc6b626e83643a407eb68a05a6ed4cc8b8d7c6320eef7.svg" /></div>
</div>
<p>このフローチャートに従って,<code class="docutils literal notranslate"><span class="pre">if</span></code>文を使いコードを書いてみよう。</p>
<div class="cell docutils container">
Expand Down Expand Up @@ -1311,7 +1311,7 @@ <h3><code class="docutils literal notranslate"><span class="pre">print()</span><
</div>
</details>
<div class="cell_output docutils container">
<img alt="_images/316e1ce4af18141430a0296057122c5ccde4f5e2c10fc9930d3da2d2d2400692.svg" src="_images/316e1ce4af18141430a0296057122c5ccde4f5e2c10fc9930d3da2d2d2400692.svg" /></div>
<img alt="_images/f7b45d5ad189269387d4b3dfb2ed72f4cb3a13d7518fcd87d81267d4c6489ba2.svg" src="_images/f7b45d5ad189269387d4b3dfb2ed72f4cb3a13d7518fcd87d81267d4c6489ba2.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>
<div class="admonition hint">
Expand Down Expand Up @@ -2137,7 +2137,7 @@ <h3>説明と簡単な例<a class="headerlink" href="#id12" title="Link to this
</div>
</details>
<div class="cell_output docutils container">
<img alt="_images/af8fba66e8482b3792ac5363db36b2bb1e4a251522b5d5c5aa2c994e0d16557a.svg" src="_images/af8fba66e8482b3792ac5363db36b2bb1e4a251522b5d5c5aa2c994e0d16557a.svg" /></div>
<img alt="_images/d78fb21a85db9d2fe77cc5483386b129bea5b2842d6f1c370b1c4bd66a62f1ed.svg" src="_images/d78fb21a85db9d2fe77cc5483386b129bea5b2842d6f1c370b1c4bd66a62f1ed.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>
<ul class="simple">
Expand Down Expand Up @@ -2207,7 +2207,7 @@ <h3>説明と簡単な例<a class="headerlink" href="#id12" title="Link to this
</div>
</details>
<div class="cell_output docutils container">
<img alt="_images/b017d534bc1d97798760d9afd9d580130f6bd67ca7ae452b89cb027759666748.svg" src="_images/b017d534bc1d97798760d9afd9d580130f6bd67ca7ae452b89cb027759666748.svg" /></div>
<img alt="_images/27323b992e4f2b3bfb3921a9a31869e29e0b774554e8326d25035fbade2b082b.svg" src="_images/27323b992e4f2b3bfb3921a9a31869e29e0b774554e8326d25035fbade2b082b.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>
</section>
Expand Down Expand Up @@ -2449,7 +2449,7 @@ <h3><code class="docutils literal notranslate"><span class="pre">if</span></code
</div>
</details>
<div class="cell_output docutils container">
<img alt="_images/3eb2f0ed5a02b8a4e909782845acd1581cef6b93428e37a2025530dcf0459ad6.svg" src="_images/3eb2f0ed5a02b8a4e909782845acd1581cef6b93428e37a2025530dcf0459ad6.svg" /></div>
<img alt="_images/a473be21e2eac99e417f60d98ac8ce1ca830cb8b716005d27fceb8889d541cc7.svg" src="_images/a473be21e2eac99e417f60d98ac8ce1ca830cb8b716005d27fceb8889d541cc7.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>
<div class="cell tag_hide-input docutils container">
Expand Down Expand Up @@ -2488,7 +2488,7 @@ <h3><code class="docutils literal notranslate"><span class="pre">if</span></code
</div>
</details>
<div class="cell_output docutils container">
<img alt="_images/f6af0c6f45aaae06ff094fde21018d35be6edad9bebd9e3c87028726200db9f7.svg" src="_images/f6af0c6f45aaae06ff094fde21018d35be6edad9bebd9e3c87028726200db9f7.svg" /></div>
<img alt="_images/a4927fe0147c51c232c58f7d599b35233a840de35fe1c26f44dc3008ec81a481.svg" src="_images/a4927fe0147c51c232c58f7d599b35233a840de35fe1c26f44dc3008ec81a481.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>
<div class="cell docutils container">
Expand Down Expand Up @@ -2572,7 +2572,7 @@ <h3><code class="docutils literal notranslate"><span class="pre">if</span></code
</div>
</details>
<div class="cell_output docutils container">
<img alt="_images/6b9bccda9fe152d2ff0eb9db2dbd73e26ddfb3d7a03055361d2f8bc23158b1ad.svg" src="_images/6b9bccda9fe152d2ff0eb9db2dbd73e26ddfb3d7a03055361d2f8bc23158b1ad.svg" /></div>
<img alt="_images/acecbe8db1a5987a67e8f75da2a8211490a0ad4c01a7fa122c0fa1fd5da2728a.svg" src="_images/acecbe8db1a5987a67e8f75da2a8211490a0ad4c01a7fa122c0fa1fd5da2728a.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>
<p>一方で,<code class="docutils literal notranslate"><span class="pre">while</span> <span class="pre">True:</span></code>と書く<code class="docutils literal notranslate"><span class="pre">while</span></code>ループでも,途中で処理を終了させる方法がある。それが<code class="docutils literal notranslate"><span class="pre">if</span></code>文と<code class="docutils literal notranslate"><span class="pre">break</span></code>(ループを中断するコード)を組み合わせる方法である。フローチャートでは次のようになる。</p>
Expand Down Expand Up @@ -2609,7 +2609,7 @@ <h3><code class="docutils literal notranslate"><span class="pre">if</span></code
</div>
</details>
<div class="cell_output docutils container">
<img alt="_images/20a2a05a1fe5acc98038d2c643436c78581df8c64cced7c937efc9ef2d11702c.svg" src="_images/20a2a05a1fe5acc98038d2c643436c78581df8c64cced7c937efc9ef2d11702c.svg" /></div>
<img alt="_images/b355efec58748ac0298b6c50777b8599381de3c37c5cb2b81285fa00ee1d2e09.svg" src="_images/b355efec58748ac0298b6c50777b8599381de3c37c5cb2b81285fa00ee1d2e09.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>
<p>例を使って,この考えをコードに落とし込んでみよう。</p>
Expand Down Expand Up @@ -2691,7 +2691,7 @@ <h3><code class="docutils literal notranslate"><span class="pre">if</span></code
</div>
</details>
<div class="cell_output docutils container">
<img alt="_images/0f532e83e0f2d4ab9e02451e0919fb72bd00313544bcc3603a6f1c4271e67b21.svg" src="_images/0f532e83e0f2d4ab9e02451e0919fb72bd00313544bcc3603a6f1c4271e67b21.svg" /></div>
<img alt="_images/ae8a2f145746acebdac6fb6a5f84e6146522fa1990b2f6dd8544a67b2f0ee7ac.svg" src="_images/ae8a2f145746acebdac6fb6a5f84e6146522fa1990b2f6dd8544a67b2f0ee7ac.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>
<div class="cell docutils container">
Expand Down Expand Up @@ -2823,7 +2823,7 @@ <h3><code class="docutils literal notranslate"><span class="pre">continue</span>
</div>
</details>
<div class="cell_output docutils container">
<img alt="_images/41175c6bbb28a7354979e1669b91e0e0a664edbe43ad174490ed6774c5bceec6.svg" src="_images/41175c6bbb28a7354979e1669b91e0e0a664edbe43ad174490ed6774c5bceec6.svg" /></div>
<img alt="_images/00235d5dfbda4fb25f61a1ba7fc097bcba7263010e47b90a58dab3ced91b4fa5.svg" src="_images/00235d5dfbda4fb25f61a1ba7fc097bcba7263010e47b90a58dab3ced91b4fa5.svg" /></div>
</div>
</section>
</section>
Expand Down
Loading

0 comments on commit d92f814

Please sign in to comment.