diff --git a/.github/.typo-ci.yml b/.github/.typo-ci.yml index b1b60f8f9..7cb3adbb2 100644 --- a/.github/.typo-ci.yml +++ b/.github/.typo-ci.yml @@ -38,6 +38,9 @@ excluded_files: excluded_words: - typoci - OpenInColab + - ipynb + - ipython + - nbformat # Would you like filenames to also be spellchecked? spellcheck_filenames: true diff --git a/docs/index.mdx b/docs/index.mdx index e87924ec0..290ece4b4 100644 --- a/docs/index.mdx +++ b/docs/index.mdx @@ -25,3 +25,5 @@ Python やアルゴリズムについて簡単にまとめていこうかなと 10/10 第一周の分を執筆 10/10 練習問題を追加 + +10/16 練習問題をさらに追加 diff --git a/docs/python/01google-colaboratory/index.mdx b/docs/python/01google-colaboratory/index.mdx index 6c44d6c3a..487962b64 100644 --- a/docs/python/01google-colaboratory/index.mdx +++ b/docs/python/01google-colaboratory/index.mdx @@ -16,6 +16,6 @@ Google アカウントを用意してログインしておいてください。 ![新規ファイル](./new-file.jpg) -セルの中に `print("Hello World!")` のように書いて、`Ctrlキー` と `Enterキー` を同時に押すと、実行させることができます。 +セルの中に `print("Hello World!")` のように書いて、`Ctrlキー` と `Enterキー` を同時に押すと、任意の Python のコードを実行させることができます。 ![実行後](./run.jpg) diff --git a/docs/python/02get-started/index.mdx b/docs/python/02get-started/index.mdx index 967dd213c..5299b06f8 100644 --- a/docs/python/02get-started/index.mdx +++ b/docs/python/02get-started/index.mdx @@ -11,25 +11,28 @@ import Answer from "@site/src/components/Answer"; はじめてのプログラムを書いてみましょう。 -プログラミングの世界では、まず `Hello World!` と表示させるのが慣例になっています。以下のコードを実行してみましょう。 +プログラミングの世界では、まず画面上に `Hello World!` と表示させるのが慣例になっています。以下のコードが画面上に `Hello World!` と表示するプログラムです。以下のコードを Google Colaboratory 上で実行してみましょう。 `Hello World!` と表示されましたか。 -`print` は画面に文字列を表示させる命令です。`"` で括った文字列が表示されます。 +`print` は画面に文字列を表示させる命令です。`"` で括った文字列が画面に表示されます。 -### 問題 +### 練習問題 -`Hello from Python!` と出力するようなプログラムを書いてみましょう。 +先程のプログラムを少し変えて、`Hello from Python!` と出力するようなプログラムを書いてみましょう。 + +`"` で括られた文字列を `Hello World!` から次のように `Hello from Python` に変えれば、完成です。 + ## コメント `#` から文末まではコメントとして扱われます。 -プログラムの説明や一時的にあるコードを実行しないようにするときに使われます。 +プログラムを読みやすくするために説明を書くときや一時的にあるコードを実行しないようにするときなどによく使われます。 diff --git a/docs/python/03expressions/_samples/cube.ipynb b/docs/python/03expressions/_samples/cube.ipynb index 834ab80dd..1a6e98bb7 100644 --- a/docs/python/03expressions/_samples/cube.ipynb +++ b/docs/python/03expressions/_samples/cube.ipynb @@ -17,7 +17,7 @@ } ], "source": [ - "4/3*3.14*2**3" + "4 / 3 * 3.14 * 2 ** 3" ] } ], diff --git a/docs/python/03expressions/_samples/div.ipynb b/docs/python/03expressions/_samples/div.ipynb index 0b833743e..18be9d308 100644 --- a/docs/python/03expressions/_samples/div.ipynb +++ b/docs/python/03expressions/_samples/div.ipynb @@ -17,7 +17,7 @@ } ], "source": [ - "4/2" + "4 / 2" ] } ], diff --git a/docs/python/03expressions/_samples/exp.ipynb b/docs/python/03expressions/_samples/exp.ipynb index 95a72e150..5bdd9df3c 100644 --- a/docs/python/03expressions/_samples/exp.ipynb +++ b/docs/python/03expressions/_samples/exp.ipynb @@ -17,7 +17,7 @@ } ], "source": [ - "2**3" + "2 ** 3" ] } ], diff --git a/docs/python/03expressions/_samples/golden-ratio.ipynb b/docs/python/03expressions/_samples/golden-ratio.ipynb index c98fdd39d..ecb81abcc 100644 --- a/docs/python/03expressions/_samples/golden-ratio.ipynb +++ b/docs/python/03expressions/_samples/golden-ratio.ipynb @@ -17,7 +17,7 @@ } ], "source": [ - "(1+5**0.5)/2" + "(1 + 5 ** 0.5) / 2" ] } ], diff --git a/docs/python/03expressions/_samples/multi.ipynb b/docs/python/03expressions/_samples/multi.ipynb index 16f06cdd1..e4cb62dfd 100644 --- a/docs/python/03expressions/_samples/multi.ipynb +++ b/docs/python/03expressions/_samples/multi.ipynb @@ -17,7 +17,7 @@ } ], "source": [ - "2*2" + "2 * 2" ] } ], diff --git a/docs/python/03expressions/_samples/quotient.ipynb b/docs/python/03expressions/_samples/quotient.ipynb index d441f58a1..a1130131f 100644 --- a/docs/python/03expressions/_samples/quotient.ipynb +++ b/docs/python/03expressions/_samples/quotient.ipynb @@ -17,7 +17,7 @@ } ], "source": [ - "5//2" + "5 // 2" ] } ], diff --git a/docs/python/03expressions/_samples/remainder.ipynb b/docs/python/03expressions/_samples/remainder.ipynb index 59c6e13f1..68ee2d76c 100644 --- a/docs/python/03expressions/_samples/remainder.ipynb +++ b/docs/python/03expressions/_samples/remainder.ipynb @@ -17,7 +17,7 @@ } ], "source": [ - "5%2" + "5 % 2" ] } ], diff --git a/docs/python/03expressions/_samples/sub.ipynb b/docs/python/03expressions/_samples/sub.ipynb index c05d413cc..0a569c0fb 100644 --- a/docs/python/03expressions/_samples/sub.ipynb +++ b/docs/python/03expressions/_samples/sub.ipynb @@ -17,7 +17,7 @@ } ], "source": [ - "2-1" + "2 - 1" ] } ], diff --git a/docs/python/03expressions/_samples/sum.ipynb b/docs/python/03expressions/_samples/sum.ipynb index 9512d17de..63d43aa77 100644 --- a/docs/python/03expressions/_samples/sum.ipynb +++ b/docs/python/03expressions/_samples/sum.ipynb @@ -17,7 +17,7 @@ } ], "source": [ - "1+1" + "1 + 1" ] } ], diff --git a/docs/python/03expressions/_samples/sum2.ipynb b/docs/python/03expressions/_samples/sum2.ipynb index 17abed6df..793c09f98 100644 --- a/docs/python/03expressions/_samples/sum2.ipynb +++ b/docs/python/03expressions/_samples/sum2.ipynb @@ -2,7 +2,7 @@ "cells": [ { "cell_type": "code", - "execution_count": 8, + "execution_count": 1, "metadata": {}, "outputs": [ { @@ -14,7 +14,7 @@ } ], "source": [ - "print(1+1)" + "print(1 + 1)" ] } ], diff --git a/docs/python/03expressions/index.mdx b/docs/python/03expressions/index.mdx index 1ca64f2c7..8ab68cb0c 100644 --- a/docs/python/03expressions/index.mdx +++ b/docs/python/03expressions/index.mdx @@ -9,10 +9,16 @@ import Answer from "@site/src/components/Answer"; ## 式と演算子 -Python で計算をしてみましょう。次のように書くと、演算をすることができます。 +Python で計算をしてみましょう。次のように書くと、$1+1$ を Python で計算し、その結果を表示することができます。 +:::tip +Python では、演算子の前後の半角スペースは無視されます。そのため、読みやすくするために半角スペースを入れていますがなくても同じように動きます。 + +ただし、全角スペースが入っているとエラーが出てしまうのでプログラムを書くときには絶対に全角スペースを入れないように気をつけましょう。 +::: + :::info 上のプログラムは、次のようにしても実行できます。それぞれには、少し違いがあるようですが気にしなくて大丈夫でしょう。 @@ -21,7 +27,7 @@ Google Colaboratory 以外で実行するときなど上のようなプログラ ::: -Python では様々な計算ができます。 +Python では足し算以外にも次のように様々な計算をすることができます。 | 演算子 | 説明 | 例 | | ------ | ------ | ---------------------------------------------- | @@ -31,20 +37,20 @@ Python では様々な計算ができます。 | `/` | 割る | | | `**` | べき乗 | | | `//` | 商 | | -| `%` | 余り | | +| `%` | 剰余 | | -括弧`(`、`)` を用いて、複雑な計算もできます。 -黄金比 $\frac{1+\sqrt{5}}{2}$ を計算してみましょう。 +括弧`(`、`)` を用いることで、複雑な計算をすることもできます。 +黄金比を計算してみましょう。黄金比は、$\frac{1+\sqrt{5}}{2}$ で与えられます。 :::note -平方根は 0.5 乗とします。 +平方根は 0.5 乗とすることで計算できます。 ::: -### 問題 +### 練習問題 -球の体積( $\frac{4}{3}\pi r^3$ )を求めてみましょう。$\pi=3.14, r=2$ とします。 +球の体積を求めてみましょう。球の体積は $\frac{4}{3}\pi r^3$ で与えられ、$\pi=3.14, r=2$ とします。 diff --git a/docs/python/04variables/_samples/cube.ipynb b/docs/python/04variables/_samples/cube.ipynb index ddda90c48..317b77c9e 100644 --- a/docs/python/04variables/_samples/cube.ipynb +++ b/docs/python/04variables/_samples/cube.ipynb @@ -2,7 +2,7 @@ "cells": [ { "cell_type": "code", - "execution_count": 2, + "execution_count": 1, "metadata": {}, "outputs": [ { @@ -11,15 +11,15 @@ "33.49333333333333" ] }, - "execution_count": 2, + "execution_count": 1, "metadata": {}, "output_type": "execute_result" } ], "source": [ - "PI=3.14\n", - "r=2\n", - "4/3*PI*r**3" + "PI = 3.14\n", + "r = 2\n", + "4 / 3 * PI * r ** 3" ] } ], diff --git a/docs/python/04variables/_samples/sound-velocity.ipynb b/docs/python/04variables/_samples/sound-velocity.ipynb index 853798308..f390cb397 100644 --- a/docs/python/04variables/_samples/sound-velocity.ipynb +++ b/docs/python/04variables/_samples/sound-velocity.ipynb @@ -17,7 +17,7 @@ } ], "source": [ - "331.5+0.6*10" + "331.5 + 0.6 * 10" ] } ], diff --git a/docs/python/04variables/_samples/sound-velocity2.ipynb b/docs/python/04variables/_samples/sound-velocity2.ipynb index c8c3fb1c7..b56a80424 100644 --- a/docs/python/04variables/_samples/sound-velocity2.ipynb +++ b/docs/python/04variables/_samples/sound-velocity2.ipynb @@ -17,8 +17,8 @@ } ], "source": [ - "t=10\n", - "331.5+0.6*t" + "t = 10\n", + "331.5 + 0.6 * t" ] } ], diff --git a/docs/python/04variables/_samples/substitution.ipynb b/docs/python/04variables/_samples/substitution.ipynb index cf706f532..9bcc0f869 100644 --- a/docs/python/04variables/_samples/substitution.ipynb +++ b/docs/python/04variables/_samples/substitution.ipynb @@ -17,8 +17,8 @@ } ], "source": [ - "x=1\n", - "x=x+1\n", + "x = 1\n", + "x = x + 1\n", "x" ] } diff --git a/docs/python/04variables/_samples/substitution2.ipynb b/docs/python/04variables/_samples/substitution2.ipynb new file mode 100644 index 000000000..2759be32b --- /dev/null +++ b/docs/python/04variables/_samples/substitution2.ipynb @@ -0,0 +1,54 @@ +{ + "cells": [ + { + "cell_type": "code", + "execution_count": 1, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "5" + ] + }, + "execution_count": 1, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "x = 2\n", + "y = 3\n", + "y = x + y\n", + "y" + ] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 3.10.6 64-bit", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.10.6" + }, + "orig_nbformat": 4, + "vscode": { + "interpreter": { + "hash": "916dbcbb3f70747c44a77c7bcd40155683ae19c65e1c03b4aa3499c5328201f1" + } + } + }, + "nbformat": 4, + "nbformat_minor": 2 +} diff --git a/docs/python/04variables/index.mdx b/docs/python/04variables/index.mdx index 50bf93ee8..be8593ba5 100644 --- a/docs/python/04variables/index.mdx +++ b/docs/python/04variables/index.mdx @@ -9,7 +9,7 @@ import Answer from "@site/src/components/Answer"; ## 変数 -前項のようにして、10℃ での音速を求めてみましょう。 +前項のようにして、10℃ での音速を求めてみましょう。$V$ を音速、$t$ を摂氏温度とすると、音速は次のようにして求められるとします。 $$ V=331.5+0.6t @@ -19,12 +19,14 @@ $$ 一応できましたが、 $t$ を変えようとすると、(これぐらいならすぐできますが)いちいちプログラムを全て読み直さないといけません。 -しかし、Python では変数が使えます。変数を使うと、より簡単に記述できます。 +しかし、Python では変数が使えます。変数は数値や文字列を入れられる箱のようなもので、任意の数値や文字列を格納することができます。そのため、変数を使うと、次のようにより簡単に記述できます。 +このようにすれば、例えば 10℃ ではなく 20℃ のときの音速を求めたくなったときに `t = 20` とするだけでよくなり、より簡単にプログラムを変更することができます。 + :::note -Python では、数学とは違い `=` は代入という意味です。 +Python では、数学とは違い `=` は右の結果を左の変数に代入するという意味です。 そのため、次のようなプログラムを実行すると 2 が出力されます。 @@ -34,10 +36,28 @@ Python では、数学とは違い `=` は代入という意味です。 Python では定数は使えないようです。慣習的に定数は大文字のみの変数として表すようです。 ::: -### 問題 +### 練習問題 1 -[式と演算子の項](/docs/python/03expressions/#問題)の問題を変数を使って解いてみましょう。 +[式と演算子の項](/docs/python/03expressions/#問題)の練習問題を変数を使って解いてみましょう。 + +### 練習問題 2 + +次のプログラムを実行すると、どのような数字が出力されるか考えてみてください。 + +```python +x = 2 +y = 3 +y = x + y +y +``` + + + +3 行目では、`x + y` の値が評価されてその結果が `y` に代入されます。そのため、$2+3=5$ が `y` に代入され `5` が出力されます。 + + +