すみません。わたくしすっかり誤解していました。
Chat GPT で描画するのではなく「Chat GPT に作成してもらったプログラム (ソースコード) を Visual Studio Code などの実行環境に貼り付けて実行 (描画) する」でした。
なので、基本的な Python の知識は必要ですが、細かいことはいらないでしょう。
ということで、早速 Chat GPT にコードを作成してもらいます。
質問 1:Python で矩形を描くコードを作成してください。
以下全て Chat GPT の回答
Python の標準ライブラリである turtle を使用して、長方形を描くコードを作成することができます。以下は、turtle を使用して長方形を描く Python コードの例です。
import turtle
# turtleの初期設定
t = turtle.Turtle()
t.speed(0)
# 矩形を描く
for i in range(2):
t.forward(100)
t.right(90)
t.forward(50)
t.right(90)
# turtleを終了する
turtle.done()
このコードでは、turtle を使って矩形を描くために、でturtle リクエストを作成し、で描画 turtle.Turtle() 速度 t.speed(0) を最大に設定します。な動作を示します。 長方形の高さは 50、幅は 100 としています。
最後に、turtle.done() で亀を終了して描画を完了させます。
実行画面
- Visual Studio Code を起動
- ソースコードをコピー
- 「.py」形式 (Python 形式) で保存 (私は sample.py)
- 右上の再生ボタン (右三角) で実行
![アラフィフ主婦 ★ Python を勉強して Chat GPT で編み図を書く話 [第2回目:矩形を描く]](https://shara-knitting.com/wp-content/uploads/2023/04/python-02-01.gif)
おぉできました。左上の三角矢印が不明ですが、何にも知らないアラフィフ主婦が Python で矩形を描くことができました。
質問 2:Pythonでこの長方形を使用し、5×3 の表を作成するコードを教えてください。
以下全て Chat GPT の回答
Python で 5×3 の表を作成するには、長方形を描くコードを改良して、for ループをネストすることで縦横の複数の長方形を描きます。 5×3 の表を描画する Python コードの例です。
import turtle
# turtleの初期設定
t = turtle.Turtle()
t.speed(0)
# 表の行数と列数
rows = 3
cols = 5
# 矩形を描画して表を作成する
for i in range(rows):
for j in range(cols):
for k in range(2):
t.forward(50)
t.right(90)
t.forward(25)
t.right(90)
t.penup()
t.forward(60)
t.pendown()
t.penup()
t.backward(cols*60)
t.right(90)
t.forward(50)
t.left(90)
t.pendown()
# turtleを終了する
turtle.done()
このコードでは、まず行数を 3、列数を 5 に設定します。次に、for ループをネストして、表の各行と列をループで処理します。
各矩形は幅が 50、高さが 25 で描画されます。縦横の矩形が描画された後、次の矩形を描画するために 60 だけ移動しています。1 行描画し終わった後は、列数×60 だけ移動して、次の行を描画します。
最後に、turtle.done() で亀を終了して描画を完了させます。
実行画面
![アラフィフ主婦 ★ Python を勉強して Chat GPT で編み図を書く話 [第2回目:矩形を描く]](https://shara-knitting.com/wp-content/uploads/2023/04/python-02-02.gif)
う~ん。ちょっとスペースが開きすぎです。もっと連結させたいです。
質問 3:この表において、長方形同士の距離を 0 に変更してください。
Chat GPT の回答 (コードのみ)
どうやら Chat GPT が疲れてきたようで、意味不明な返答をするようになってきました。一応、コードを作ってくれました。
import turtle
# turtleの初期設定
t = turtle.Turtle()
t.speed(0)
# 表の行数と列数
rows = 3
cols = 5
# 矩形を描画して表を作成する
for i in range(rows):
for j in range(cols):
for k in range(2):
t.forward(50)
t.right(90)
t.forward(25)
t.right(90)
t.penup()
t.backward(50)
t.pendown()
t.penup()
t.backward(cols*50)
t.right(90)
t.forward(25)
t.left(90)
t.pendown()
# turtleを終了する
turtle.done()
実行画面
![アラフィフ主婦 ★ Python を勉強して Chat GPT で編み図を書く話 [第2回目:矩形を描く]](https://shara-knitting.com/wp-content/uploads/2023/04/python-02-03.gif)
やはり列がありません。
無料版だからか、3 回くらいの会話で返答が怪しくなってきます。その場合は結果も思わしくありません。
結論:アラフィフのおばちゃんでも Python で矩形を描くことができた
理想の結果は得られませんでしたが、Python で矩形を描くにはまだまだ勉強が必要だと思っていたので、驚くべき進歩です。
無料版の Chat GPT を使いこなすには「的確な短い質問」「3 回以内に結論に辿り着く」ような聞き方が重要です。
それぞれモジュール毎に質問し、最終的に各モジュールを組み合わせてプログラムを完成させていく方法が良いようです。
- 編み目記号を作成
- 作成した編み目記号を連結 (表)
- 連結した編み目記号 (表) を増目・減目 (マス目の数を増減) する
とりあえず上記ができるように頑張ります。