Skip to content
Open
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
34 changes: 19 additions & 15 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,12 +7,12 @@ SPI対策のために100マス計算を手軽に実施したいと考え、1時
## ✨ 主な機能

* **四則演算に対応**: 足し算、引き算、掛け算、割り算の計算問題を作成できます。
* **桁数の指定**: 1桁、2桁、3桁…と、問題の難易度を自由に調整できます
* **PDF出力**: A4サイズのPDFとして問題が生成されるため、すぐに印刷して使えます。
* **桁数の指定**: 1桁~4桁まで対応し、左側と上側で異なる桁数を指定することもできます
* **PDF出力**: A4サイズのPDFとして問題と解答が生成されるため、すぐに印刷して使えます。

## 🖼️ 出力サンプル

[生成されたPDFのサンプル(整数2桁のたし算)](./sample/hyakumasu_たしざん_2keta.pdf)
[生成されたPDFのサンプル(2桁と1桁のたし算)](./sample/hyakumasu_たしざん_2x1keta.pdf)


## 🚀 使い方
Expand All @@ -23,7 +23,7 @@ SPI対策のために100マス計算を手軽に実施したいと考え、1時

**A) uv を使う場合 (推奨)**
```bash
git clone https://github.com/emi-12d/100math.git)
git clone https://github.com/emi-12d/100math.git
cd 100math
uv venv
source .venv/bin/activate
Expand All @@ -32,7 +32,7 @@ uv pip install -r requirements.txt

**B) venv + pip を使う場合**
```bash
git clone https://github.com/emi-12d/100math.git)
git clone https://github.com/emi-12d/100math.git
cd 100math
python -m venv .venv
source .venv/bin/activate # Windowsの場合は `.venv\Scripts\activate`
Expand All @@ -44,25 +44,29 @@ pip install -r requirements.txt
`main.py` に引数を渡して実行すると、カレントディレクトリにPDFファイルが生成されます。

```bash
python main.py <operator> <digits>
python main.py <operator> <left_digits> <top_digits>
```

**実行例:**
```bash
# 2桁の足し算
python main.py "+" 2
# 2桁と1桁の足し算
python main.py "+" 2 1

# 1桁の掛け算
python main.py "*" 1
# 2桁同士の掛け算
python main.py "*" 2 2

# 3桁と2桁の引き算
python main.py "-" 3 2
```
生成されるファイル名: `hyakumasu_たしざん_2keta.pdf` のように、内容が分かる名前で出力されます
生成されるファイル名: `hyakumasu_たしざん_2x1keta.pdf` のように、内容が分かる名前で問題と解答(`_ans.pdf`付き)が出力されます

## 📝 コマンドライン引数

| 引数 | 説明 | 指定できる値 | 必須 |
| :--------- | :----------------------------- | :----------------------------------------------------- | :--- |
| `operator` | 計算の種類を指定します。 | `+` (足し算), `-` (引き算), `*` (掛け算), `/` (割り算) | ✅ |
| `digits` | 問題の数字の桁数を指定します。 | `1`以上の整数 (例: `1`, `2`, `3`) | ✅ |
| 引数 | 説明 | 指定できる値 | 必須 |
| :------------ | :--------------------------------- | :----------------------------------------------------- | :--- |
| `operator` | 計算の種類を指定します。 | `+` (足し算), `-` (引き算), `*` (掛け算), `/` (割り算) | ✅ |
| `left_digits` | 左側の数字の桁数を指定します。 | `1`~`4`の整数 | ✅ |
| `top_digits` | 上側(ヘッダー)の数字の桁数を指定します。 | `1`~`4`の整数 | ✅ |

## 📄 ライセンス

Expand Down