Час 6 - Корњача графика - вежбање¶
Након неколико часова на којима смо уводили нове концепте, време је да направимо малу паузу и искористимо време да проверимо колико смо до сада научили (твој наставник може да ти да контролни задатак или петнаестоминутну проверу знања из области програмирања Карела и корњаче). Спремили смо неколико задатака за вежбу из области корњача-графике који ће ти помоћи да провериш своје знање. Додатне задатке за вежбу можеш пронаћи овде.
Задаци за вежбу¶
Линијски програми¶
Слово M¶
Напиши програм у којем корњача црта слово М.
import turtle
turtle.left(90)
turtle.forward(150)
turtle.right(150)
turtle.forward(100)
# dovrši program tako da slovo M bude simetrično
(корњача_слово_M)
Дијамант¶
Напиши програм у којем корњача исцртава облик дијаманта (облик се добије спајањем два једнакостранична троугла по заједничкој хоризонталној ивици).
import turtle
# dovrši program
(корњача_дијамант)
Петље¶
Квадратни сигнал¶
Напиши програм у којем корњача црта облик квадратног сигнала, као на следећој слици.

Основни корак у решавању задатка је да се овај сложени облик разложи на низ једноставнијих облика који се понављају. Покушај прво да размислиш како то може да се уради, а онда погледај наредну слику.
Дакле, облик се састоји од пет понављања основног облика, који се може добити тако што корњача иде напред, затим се окрене налево, иде напред, окрене се надесно, иде напред, опет се окрене надесно, иде напред и окрене се налево (увек се окреће за по 90 степени).
import turtle
# dopuni program
(квадратни_сигнал)
За вежбу прилагоди програм тако да се димензије облика лако мењају (уведи променљиве које представљају дужину и ширину основног облика).
Тестерица¶
Напиши програм којим корњача црта тестерицу са 10 зубаца. Угао при врху сваког зупца треба да буде 45 степени, а размак између два суседна зупца 25 корака (покушај да на основу тога одредиш дужину косих линија које се цртају).
import turtle
# dopuni program
(тестерица)
Насумично кретање¶
Напиши програм којим се корњача насумично креће по екрану. У сваком кораку иде напред између 20 и 40 пиксела, а затим се окреће насумично налево између 0 и 360 степени.
Насумично одабран број из интервала [a,b] можеш добити помоћу random.randint(a, b).
import turtle, random
turtle.speed(0)
for i in range(100):
turtle.forward(random.randint(0, 0)) # ispravi ovaj red
turtle.left(0) # ispravi ovaj red
(корњача_насумично)
Насумично кретање - окрети у оба смера¶
Исправи претходни програм тако да се корњача и налево и надесно (никада више од 180 степени).
import turtle, random
turtle.speed(0)
for i in range(100):
turtle.forward(random.randint(20, 40))
ugao = random.randint(0, 360)
if True: # ispravi ovaj red
turtle.left(0) # ispravi ovaj red
else:
turtle.right(0) # ispravi ovaj red
(корњача_насумично_конвексни)
Плус¶
Напиши програм којим корњача исцртава плус (сваки од четири крака плуса је дугачак 50 корака).
У сваком кораку корњача може да оде напред 50 пиксела, да се се врати назад 50 пиксела и да се окрене за 90 степени.
import turtle
# dovrši program
(корњача_плус)
Осмокрака звезда¶
Модификуј претходни програм тако да се црта звездица која има 8 кракова дужине од по 50 корака.
import turtle
# dovrši program
(корњача_осмокраки_плус)
n-токрака звезда¶
Напиши програм на основу којег корњача црта звездицу која се састоји од n кракова дужине 50 корака, равномерно распоређених у круг (сваки крак креће из центра).
import turtle
# dovrši program
(корњача_n-токраки_плус)
Парни и непарни кракови различите дужине¶
Модификуј претходни програм тако да је сваки други крак краћи (дугачак 30 корака).
import turtle
# dovrši program
(корњача_n-токраки_пахуља)
Слободно цртање¶
На крају, остављамо ти празан простор да нацрташ шта год желиш.
import turtle
(празно_платно)