Садржај
1. Робот Карел - Линијски програми и бројачка петља
1.1. Линијски програми
1.2 Вежбање
1.3. Бројачка петља for
1.4. Квиз
1.5. Вежбање
2. Робот Карел - Условна петља и гранање
2.1. Условне петље
2.2. Вежбање
2.3. Гранање
2.4. Квиз
2.5. Вежбање
3. Робот Карел - Задаци за вежбање
3.1. Робот Карел - задаци за вежбање
4. Корњача графика - Линијски програми и петље
4.1. Наредбе корњаче
4.2. Линијски програми
4.3. Петље
4.4. Квиз
4.5. Вежбање
5. Корњача графика - Гранање, угнежђене петље, функције, торке и листе
5.1. Гранање
5.2. Угнежђене петље
5.3. Функције
5.4. Торке и листе
5.5. Квиз
5.6. Вежбање
6. Корњача графика - Задаци за вежбање
6.1. Корњача графика - задаци вежбање
7. Израчунавања - Изрази, оператори, променљиве
7.1. Основне аритметичке операције и примена
7.2. Променљиве - имена придружена подацима
7.3. Тестирање и дебаговање програма
7.4. Квиз
7.5. Вежбање
7.6. Израчунавања - додатни задаци
8. Израчунавања - Цели и реални бројеви, дељење
8.1. Цели и реални бројеви
8.2. Реално и целобројно дељење
8.3. Позициони запис бројева
8.4. Квиз
8.5. Вежбање
8.6. Цели и реални бројеви, дељење - додатни задци
9. Израчунавања - Коришћење и дефинисање функција
9.1. Коришћење функција
9.2. Дефинисање функција
9.3. Квиз
9.4. Вежбање
10. Израчунавања - Задаци за вежбање
10.1. Израчунавања - задаци за вежбање
11. Гранање
11.1. Гранање
11.2. Комбинација више логичких услова
11.3. Конструкција if-elif-else
11.4. Квиз
11.5. Вежбање
11.6. Гранање - додатни задтак
12. Понављање - петље
12.1. Понављање - петља for
12.2. Понављање - условна петља while
12.3. Угњежђене петље
12.4. Квиз
12.5. Вежбање
12.6. Петље - додатни задтак
13. Контрола тока - Задаци за вежбање
13.1. Контрола тока - задаци вежбање
14. Структуре података
14.1. Торке и листе
14.2. Функције за рад са торкама и листама
14.3. Ниске
14.4. Скупови и речници
14.5. Квиз
14.6. Вежбање
15. Примена петље у структурама података
15.1. Примена петље у торци, листи и ниски
15.2. Учитавање и обрада листе
15.3. Примена петље у речнику
15.4. Квиз
15.5. Вежбање
16. Откривање и исправљање грешака и коришћење дебагера
16.1. Дебаговање на рачунару у програму IDLE

4.1. Наредбе корњаче

Како ово ради?

Можемо веома лепо да цртамо куцањем наредби уз помоћ корњача графикe. Ту се мала корњача креће по екрану и за собом као траг оставља линију у боји. Заправо, корњача је један од ликова које можемо упослити да цртају (ако не изаберемо лик, програм ће цртати помоћу стрелице).

За разлику од робота Карела, који ради само на порталу Петља и којег смо испрограмирали специјално за вас, корњача графика је саставни део језика Python и програме са корњачом можете писати и на свом рачунару, ван портала Петља (на пример, у програму IDLE). Потребно је само да на свом рачунару инсталирате Пајтон 3, чију инсталацију можете преузети са сајта Python.org. Када сте инсталирали Python, покрените IDLE и идите на File, а затим на New file. На овом месту куцате свој програм. Када сте завршили, покрените га на Run, а затим кликните на Run Мodule. Дајте име вашем програму и сачувајте га, а затим гледајте како црта!

Наредбе корњаче

Да бисмо у нашим програмима могли да цртамо уз помоћ корњаче, потребно је да прво укључимо библиотеку за рад са корњачом (то се ради тако што наведемо import turtle). Након тога можемо издавати наредбе нашој корњачи. Свака наредба ће почињати са turtle.???. Основне наредбе корњачи приказаћемо кроз неколико једноставних програма.

Цртање линије

  • Корњача се на почетку налази у центру екрана и окренута је надесно (у смеру истока).

  • Наредбом turtle.forward(100) корњачи говоримо да се помери напред (у смеру у ком је тренутно окренута) 100 корака и тако, пошто наша корњача свакако са собом носи оловку којом црта, постижемо да се на екрану нацрта дуж дужине 100 пиксела.

3
 
1
import turtle
2
turtle.forward(100)
3

(корњача_forward)

  • Да бисмо видели јасније како корњача ради, можемо јој променити брзину кретања. turtle.speed(0) нам даје најбржу корњачу (након покретања програма се одмах види готов цртеж), док turtle.speed(10) даје најспорију корњачу (могуће је навести и било коју целобројну вредност између 0 и 10). Што је број већи, корњача ће бити бржа (осим за случај са 0, који одмах црта готов цртеж).

4
 
1
import turtle
2
turtle.speed(10)
3
turtle.forward(100)
4

(корњача_forward_speed)

  • Осим померања напред, корњача може да се креће и уназад цртајући притом линију. Наредба којом се то постиже је turtle.backward.

3
 
1
import turtle
2
turtle.backward(100)
3

(корњача_backward)

Боја и дебљина линије

Могуће је поставити различите параметре који одређују начин на који се врши исцртавање.

  • Да бисмо видели нашу корњачу (уместо стрелице која се приказује), можемо употребити наредбу turtle.shape("turtle").

  • Помоћу turtle.color можемо променити боју корњаче и њене оловке (и тако променити и боју трага, тј. линија које се исцртавају). Као параметар ове наредбе у заградама под наводницима наводимо име жељене боје на енглеском језику. На пример, наредба turtle.color("red") поставља црвену боју.

  • Помоћу turtle.width постављамо дебљину трага који корњача оставља, при чему се дебљина задаје као параметар. На пример, наредбом turtle.width(5) постижемо да линије које се цртају буду дебеле 5 пиксела.

Да ли можеш да погодиш шта ће се добити покретањем наредног програма? Пробај да погодиш, а онда након тога покрени програм и провери да ли си био у праву.

9
 
1
import turtle
2
turtle.speed(5)
3
turtle.shape("turtle")
4
turtle.width(5)
5
turtle.color("red")
6
turtle.forward(50)
7
turtle.color("green")
8
turtle.forward(50)
9

(корњача_setparams)

Подизање оловке

Корњача током свог кретања оставља траг. Међутим, некада је згодно да корњачу померимо без цртањa.

  • Наредбом turtle.penup() корњача подиже своју оловку и након тога се креће по екрану не остављајући траг све док јој се не изда наредба turtle.pendown(), након чега поново почиње да оставља траг током кретања.

Допуни наредни програм тако да корњача нацрта испрекидану линију која се састоји од три дужи.

8
 
1
import turtle
2
turtle.speed(10)
3
turtle.forward(20)        # idi napred 20 piksela (olovka je podrazumevano spuštena)
4
turtle.penup()            # podigni olovku
5
turtle.forward(20)        # idi napred (pošto je olovka podignuta, kornjača ne ostavlja trag)
6
turtle.pendown()          # spusti olovku
7
turtle.forward(20)        # idi napred 20 piksela
8

(корњача_оловка)

Отисци корњаче

  • Наредбом turtle.stamp() корњача може да остави свој отисак на месту на ком се тренутно налази.

Покушај да погодиш који ће се облик добити покретањем наредног програма.

9
 
1
import turtle
2
turtle.speed(10)
3
turtle.penup()          # podigni olovku
4
turtle.stamp()          # ostavi trag
5
turtle.forward(20)      # idi napred 20 koraka
6
turtle.stamp()          # ostavi trag
7
turtle.forward(20)      # idi napred 20 koraka
8
turtle.stamp()          # ostavi trag
9

(корњача_stamp)

Окретање корњаче

  • Корњача може мењати свој смер кретања тако што се окреће налево (у смеру супротном смеру кретања казаљке на сату) или надесно (у смеру кретања казаљке на сату) за одређени број степени, за шта се користе наредбе turtle.left(n) и turtle.right(n), a n je број степени.

Покушај да погодиш који ће се облик добити покретањем наредног програма.

8
 
1
import turtle
2
turtle.speed(10)
3
turtle.forward(50)    # idi napred 50 koraka
4
turtle.left(60)       # okreni se levo 60 stepeni
5
turtle.forward(50)    # idi napred 50 koraka
6
turtle.right(60)      # okreni se desno 60 stepeni
7
turtle.forward(50)
8

(корњача_rotate)

Резимирајмо све наредбе корњачи које смо до сада поменули.

turtle.forward(n)

корњача се помера напред за n корака, где је n неки цео број

turtle.backward(n)

корњача се помера назад за n корака, где је n неки цео број

turtle.left(n)

корњача се окреће налево за n степени, где је n неки цео број

turtle.right(n)

корњача се окреће надесно за n степени, где је n неки цео број

turtle.penup()

корњача подиже оловку

turtle.pendown()

корњача спушта оловку

turtle.color(c)

боја оловке се поставља на боју c, (назив боје је на енглеском језику, нпр. уместо c може се ставити "green")

turtle.width(n)

дебљина оловке у тачкицама (пикселима) се поставља на вредност n, где је n неки цео број

turtle.stamp()

корњача оставља свој отисак

turtle.shape(s)

корњача мења свој облик (нпр. уместо s може се ставити "turtle")

turtle.speed(n)

корњача мења своју брзину кретања од 1 (најспорије) до 10 (најбрже). Ако брзина има вредност 0, корњача тренутно црта линију без анимације.

Комплетан списак свих наредби корњачи може се наћи у званичној документацији језика Python 3.

Скраћени запис

Наредбе могу да се запишу и краће.

Ако се уместо import turtle библиотека за рад са корњачом увезе помоћу import turtle as t, тада уместо turtle.???, можемо писати само t.???. На пример, уместо turtle.color("red"), можемо писати само t.color("red").

Додатно, неке наредбе имају скраћени облик. На пример, померање напред n пиксела можемо постићи помоћу t.fd(n), померање назад помоћу t.bk(), окрет налево за n степени помоћу t.lt(n), надесно помоћу t.rt(n) и слично. Скраћени облици наредби су увек на располагању, без обзира како смо библиотеку за рад са корњачом увезли.

На пример, цртеж можемо нацртати и на следећи начин:

6
 
1
import turtle as t
2
t.color("red")
3
t.fd(100)
4
t.lt(90)
5
t.fd(150)
6

(корњача_скраћени_запис)

Претходна лекција
Следећа лекција
A- A+
Тема
Темa

Prijavi problem


Obeleži sve kategorije koje odgovaraju problemu

Još detalja - opišite nam problem


Uspešno ste prijavili problem!
Status problema i sve dodatne informacije možete pratiti klikom na link.
Nažalost nismo trenutno u mogućnosti da obradimo vaš zahtev.
Molimo vas da pokušate kasnije.