課題 2-1 @ 正方形 !pip install ColabTurtlePlus #Claboratory用タートルグラフィックスモジュールの読み込み from ColabTurtlePlus.Turtle import * #最初の2行は1つのノートブックで最初に1回実行すればよい clearscreen() #表示画面の初期化 800×600 背景白 ペン黒 位置原点 方向右 speed(8) #描画速度8 shape("turtle2") #タートル形状亀2 face(90) #初期状態の向きを上方向にする bgcolor("white") #背景白色 color("black") #描画色黒色 pensize(3) #ペン太さ3 for _ in range(4): #以下の命令を4回繰り返す(変数は使わないので設定してない) forward(100) #100前進する left(90) #左に90度回転する A 五角形 !pip install ColabTurtlePlus #Claboratory用タートルグラフィックスモジュールの読み込み from ColabTurtlePlus.Turtle import * #最初の2行は1つのノートブックで最初に1回実行すればよい clearscreen() #表示画面の初期化 800×600 背景白 ペン黒 位置原点 方向右 speed(8) #描画速度8 shape("turtle2") #タートル形状亀2 face(90) #初期状態の向きを上方向にする bgcolor("white") #背景白色 color("blue") #描画色青色 pensize(3) #ペン太さ3 for _ in range(5): #以下の命令を5回繰り返す(変数は使わないので設定してない) forward(100) #100前進する left(72) #左に72度回転する B 正六角形 !pip install ColabTurtlePlus #Claboratory用タートルグラフィックスモジュールの読み込み from ColabTurtlePlus.Turtle import * #最初の2行は1つのノートブックで最初に1回実行すればよい clearscreen() #表示画面の初期化 800×600 背景白 ペン黒 位置原点 方向右 speed(8) #描画速度8 shape("turtle2") #タートル形状亀2 face(90) #初期状態の向きを上方向にする bgcolor("white") #背景白色 color("green") #描画色緑色 pensize(3) #ペン太さ3 for _ in range(6): #以下の命令を6回繰り返す(変数は使わないので設定してない) forward(100) #100前進する left(60) #左に60度回転する C 星 !pip install ColabTurtlePlus #Claboratory用タートルグラフィックスモジュールの読み込み from ColabTurtlePlus.Turtle import * #最初の2行は1つのノートブックで最初に1回実行すればよい clearscreen() #表示画面の初期化 800×600 背景白 ペン黒 位置原点 方向右 speed(8) #描画速度8 shape("turtle2") #タートル形状亀2 face(90) #初期状態の向きを上方向にする bgcolor("white") #背景白色 color("orange") #描画色緑色 pensize(3) #ペン太さ3 for _ in range(5): #以下の命令を5回繰り返す(変数は使わないので設定してない) forward(200) #200前進する left(144) #左に144度回転する 課題 2-2 正10角形 !pip install ColabTurtlePlus #Claboratory用タートルグラフィックスモジュールの読み込み from ColabTurtlePlus.Turtle import * #最初の2行は1つのノートブックで最初に1回実行すればよい clearscreen() #描画エリアの初期化 speed(8) #描画速度の指定 shape("turtle2") #タートル形 face(90) #初期状態の向きを上方向にする bgcolor("white") #背景白色 color("black") #描画色灰色 pensize(3) #ペン太さ3 bgcolor("white") #背景色の指定 color("orange") #線の色指定 for j in range(10): #36°ずつ回転した正10角形の描画を10回繰り返す for i in range(10): #線の描画を10回繰り返して正10角形を描く forward(50) #50進む left(36) # 左に36°回転 left(36) #描画開始の方向を36°回転 正20角形 !pip install ColabTurtlePlus #Claboratory用タートルグラフィックスモジュールの読み込み from ColabTurtlePlus.Turtle import * #最初の2行は1つのノートブックで最初に1回実行すればよい clearscreen() #描画エリアの初期化 speed(8) #描画速度の指定 shape("turtle2") #タートル形 face(90) #初期状態の向きを上方向にする bgcolor("white") #背景白色 color("black") #描画色灰色 pensize(3) #ペン太さ3 bgcolor("white") #背景色の指定 color("blue") #線の色指定 for j in range(20): #18°ずつ回転した正20角形の描画を20回繰り返す for i in range(20): #線の描画を20回繰り返して正20角形を描く forward(20) #200進む left(18) # 左に18°回転 left(18) #描画開始の方向を18°回転 課題 3-1 ### 市松模様 ### !pip install ColabTurtlePlus #Claboratory用タートルグラフィックスモジュールの読み込み from ColabTurtlePlus.Turtle import * #最初の2行は、1つのノートブックで最初に1回実行すればよい def 正方形(a): #関数の定義 引数aは一片の長さ@ begin_fill() #塗のはじめ for _ in range(4): #4回繰り返し forward(a) #距離a前進 left(90) #90°左回転 end_fill() #ここまでの図形を塗る #初期設定 clearscreen() #ペン位置:中央 向き:左 speed(0) #速度10 最高速はspeed(0) 最後にdone() shape("turtle2") #ペン形状 bgcolor("black") #背景黒色 color("green") #柄色みどり pensize(3) #ペン太さ3 開始X座標=-400 #初期ペンX座標-400 開始Y座標=200 #初期ペンY座標 200 辺長さ=100 #一辺の長さ 100 列数=5 #文様列数 (緑正方形 黒正方形)×5  行数=6 #文様行数 6 pu();goto(開始X座標,開始Y座標);pd()#初期座標へ移動 #単位文様を繰り返し描画 for j in range(行数): #行の繰り返し for i in range(列数): #列の繰り返し 正方形(辺長さ) #正方形の描画 pu();fd(辺長さ*2);pd() #ペンアップ;次の描画開始位置へ辺の2倍水平移動;ペンダウンA #次の行への移動 pu() #ペンアップ setx(開始X座標) #開始X座標へ移動B rt(90) #下へ向く fd(辺長さ) #下へa垂直移動C lt(90) #左へ向く fd(辺長さ*((j+1)%2)) #jが0,2,4‥偶数のときa水平移動D pd() #ペンダウン done() #speed(0)の時#を取ってdone()にする 課題 4-1 ### 鱗模様 ### !pip install ColabTurtlePlus #Claboratory用タートルグラフィックスモジュールの読み込み from ColabTurtlePlus.Turtle import * #最初の2行は、1つのノートブックで最初に1回実行すればよい #単位文様(正三角形)の関数 def 三角形(a): #関数の定義 引数aは一片の長さ@ begin_fill() #塗のはじめ for _ in range(3): #3回繰り返し forward(a) #距離a前進 left(120) #120°左回転 end_fill() #ここまでの図形を塗る #初期設定 clearscreen() #ペン位置:中央 向き:左 speed(0) #速度10 最高速はspeed(0) 最後にdone() shape("turtle2") #ペン形状 bgcolor("yellow") #背景黄色 color("white") #柄白色 pensize(3) #ペン太さ3 開始X座標=-400 #初期ペンX座標-400 開始Y座標=200 #初期ペンY座標 200 辺長さ=100 #一辺の長さ 100 列数=10 #文様列数 (正三角形)×10 行数=8 #文様行数 6 pu();goto(開始X座標,開始Y座標);pd() #初期座標へ移動 #単位文様を繰り返し描画 for j in range(行数): #行の繰り返し for i in range(列数): #列の繰り返し 三角形(辺長さ) #正三角形の描画 pu();fd(辺長さ);pd() #ペンアップ;次の描画開始位置へ一辺長さ水平移動;ペンダウンA pu() #ペンアップ setx(開始X座標) #開始X座標へ移動B rt(60) #60°右斜め下へ向く fd(辺長さ) #斜め下へa移動C lt(60) #60°左回転して左を向く bk(辺長さ/2*((j)%2)) #jが1,3,5‥奇数のときa/2水平にバック移動D pd() #ペンダウン done() #speed(0)の時#を取ってdone()にする 課題 5-1 ### 毘沙門亀甲文様 ### !pip install ColabTurtlePlus #Claboratory用タートルグラフィックスモジュールの読み込み from ColabTurtlePlus.Turtle import * #最初の2行は、1つのノートブックで最初に1回実行すればよい #単位文様(立方体)の関数 def 立方体(a): #関数の定義 引数aは一片の長さ for _ in range(3): #部品の描画3回繰り返し fd(a) #一辺直進@ lt(60) #60°左回転 fd(a) #一辺直進A lt(120) #120°左回転 fd(a) #一辺直進B lt(180) #180°回転 fd(a) #一辺直進C lt(120) #120°左回転 #初期設定 clearscreen() #ペン位置:中央 向き:左 speed(0) #速度10 最高速はspeed(0) 最後にdone() face(30) #亀の向き30° shape("turtle2") #ペン形状 bgcolor("orange") #背景オレンジ色 color("green") #柄緑色 pensize(3) #ペン太さ3 開始X座標=-400 #初期ペンX座標-400 開始Y座標=200 #初期ペンY座標 200 辺長さ=60 #一辺の長さ 60 列数=8 #文様列数 8 行数=4 #文様行数 2×4 pu();goto(開始X座標,開始Y座標);pd() #初期座標へ移動 #単位文様を繰り返し描画 for j in range(行数): #行の繰り返し for i in range(列数): #列の繰り返し(奇数行) 立方体(辺長さ) #立方体の描画 pu();fd(辺長さ);rt(60);fd(辺長さ);lt(60);pd() #次へ移動D pu() #ペンアップ setx(開始X座標) #開始X座標へ移動E rt(120) #下を向く fd(辺長さ) #一辺分直進F lt(60) #60°斜め方向 fd(辺長さ) #一辺分直進G lt(60) #60°斜め上方向 pd() #ペンダウン 2行目開始点 for i in range(列数): #列の繰り返し(偶数行) 立方体(辺長さ) #立方体の描画 pu();fd(辺長さ);rt(60);fd(辺長さ);lt(60);pd() #次へ移動D pu() #ペンアップ rt(60) #60°斜め下方向 fd(辺長さ*3) #3つ分の辺の長さ直進H lt(60) #60°回転して左を向くI setx(開始X座標) #開始X座標へ移動J pd() #ペンダウン 3行目開始点 done() #speed(0)の時#を取ってdone()にする 課題 6-1 ### 麻の葉文様 ### !pip install ColabTurtlePlus #Claboratory用タートルグラフィックスモジュールの読み込み from ColabTurtlePlus.Turtle import * #最初の2行は、1つのノートブックで最初に1回実行すればよい import math #数学ライブラリのインポート(三角関数を使うため) pi = math.pi #πを変数piに入れる #単位文様(麻葉)の関数 def 麻葉(a): #関数の定義 引数aは一片の長さ b=(a/2)/math.cos(pi/6) #小さい三角形の辺の長さb=一片の長さ/2×COS(π/6) for _ in range(3): #部品の描画3回繰り返し fd(a) #一辺直進@ lt(150) #150°左回転 fd(b) #短辺直進A lt(180) #180°左回転 fd(b) #短辺直進B lt(150) #150°左回転 #初期設定 clearscreen() #ペン位置:中央 向き:左 speed(0) #速度10 最高速はspeed(0) 最後にdone() shape("turtle2") #ペン形状 bgcolor("red") #背景赤色 color("white") #柄白色 pensize(2) #ペン太さ2 開始X座標=-500 #初期ペンX座標-500 開始Y座標=300 #初期ペンY座標 200 辺長さ=100 #一辺の長さ 100 列数=10 #文様列数 10 行数=10 #文様行数 2×10 pu();goto(開始X座標,開始Y座標);pd() #初期座標へ移動 #単位文様を繰り返し描画 for j in range(行数): #行の繰り返し for i in range(列数): #列の繰り返し face(0) #ペンの方向0°(右向き)C 麻葉(辺長さ) #上向き麻葉の描画 pu();fd(辺長さ);pd() #次の始点へ移動D face(60) #ペン方向60°(1時方向)E 麻葉(辺長さ) #下向き麻葉の描画 face(0) #ペン方向0°(右向き)F pu() #ペンアップ setx(開始X座標) #開始X座標へ移動G pd() #ペンダウン 2行目開始点 for i in range(列数): #列の繰り返し face(-60) #ペン方向-60°(5時方向)H 麻葉(辺長さ) #下向き麻葉の描画 face(0) #ペンの方向0°(右向き)I pu();fd(辺長さ);pd() #次の始点へ移動J face(-120) #ペン方向-120°(7時方向)K 麻葉(辺長さ) #上向き麻葉の描画 face(0) #ペンの方向0°(右向き)L pu() #ペンアップ face(-60) #ペン方向-60°(5時方向)M fd(辺長さ*2) #辺の長さ×2直進N face(0) #ペンの方向0°(右向き)O setx(開始X座標) #開始X座標へ移動P pd() #ペンダウン 3行目開始点 done() #speed(0)の時#を取ってdone()にする 課題 7-1 ### 青海波文様 ### !pip install ColabTurtlePlus #Claboratory用タートルグラフィックスモジュールの読み込み from ColabTurtlePlus.Turtle import * #最初の2行は、1つのノートブックで最初に1回実行すればよい #単位文様(波)の関数 def 波(a): #関数の定義 引数aは波の半径 begin_fill() #塗りの開始 color("white","white") #線と塗りの色は白色 circle(a) #半径aの円を描く end_fill() #塗終わり  白い塗円が描ける@ color("LightBlue") #線の色をライトブルーにする pensize(int(a/6)) #ペンサイズを半径の6分の1にする circle(a) #ライトブルーの円を描くA face(90) #上を向く pu();fd(0.3*a);pd() #半径×0.3 円の中心に進む face(0) #右を向くB circle(a*0.7) #半径×0.7 で2番目の円を描くC face(90) #上を向く pu();fd(0.3*a);pd() #半径×0.3 円の中心に進む face(0) #右を向くD circle(a*0.4) #半径×0.4 で3番目の円を描くE face(-90) #下を向く pu();fd(a*0.6);pd() #半径×0.6 円の外側に進む face(0) #右を向く #初期設定 clearscreen() #ペン位置:中央 向き:左 speed(0) #速度10 最高速はspeed(0) 最後にdone() shape("turtle2") #ペン形状 bgcolor("gray") #背景ア灰色 color("white") #柄白色 pensize(10) #ペン太さ10 開始X座標=-400 #初期ペンX座標-400 開始Y座標=250 #初期ペンY座標 250 半径=60 #半径60 列数=7 #文様列数 7 行数=22 #文様行数 22 pu();goto(開始X座標,開始Y座標);pd() #初期座標へ移動 #単位文様を繰り返し描画 for j in range(行数): #行の繰り返し for i in range(列数): #列の繰り返し face(0) #右向を向く 波(半径) #波の描画 pu();fd(半径*2.2);pd() #半径×2.2右に進むF setx(開始X座標) #開始X座標へ戻るG face(-90) #下を向くH fd(半径/2) #半径/2 進むI face(0) #右を向くJ fd(半径*1.1*((j+1)%2)) #Jが0,2,4・・・の時(j+1)%2の値が1になり、半径×1.1右に進むK pd() #ペンダウン done() #speed(0)の時#を取ってdone()にする