Садржај
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

5.3. Функције

Да бисмо вам приближили појам функције, хајде да размишљамо на следећи начин:

Када бисмо радили неки већи посао, било би корисно да имамо помоћнике који ће нам урадити неки део посла. Функција би у програму била управо један наш помоћник! Она обично нешто израчуна за нас и врати нам резултате који су нам потребни како би наставили даље, али некада и само уради нешто нпр. нацрта неки део цртежа као што ће то бити у следећем примеру.

Функција има свој назив и своје параметре наведене у заградама који су јој потребни да би могла да изврши задатак.

Наредбе функције куцамо само на једном месту које се назива тело функције, а затим позивамо је у помоћ када год нам то затреба!

Функција за цртање испрекидане линије

Напишимо (дефинишимо) функцију која исцртава испрекидану линију а као параметар прослеђује јој се број цртица које желимо да линија има.

9
 
1
# funkcija za crtanje isprekidane linije
2
# parametar je broj crtica n
3
def isprekidana_linija(n):
4
    for i in range(n):              #    n puta ponovi:
5
        turtle.pendown()            #    spusti olovku
6
        turtle.forward(20)          #    idi napred 20 koraka
7
        turtle.penup()              #    podigni olovku
8
        turtle.forward(20)          #    idi napred 20 koraka
9

(функција_1)

Дефиниција функције започета је кључном речју def, након чега је наведен назив функције (у нашем примеру, то је био isprekidana_linija), а потом параметар функције у заградама (ако их има више раздвајају се зарезима). Након двотачке, наведен је програмски код који чини тело функције, увучен у односу на прву линију (слично као што је и тело наредби for, while и if увек увучено). Тело сачињавају наредбе које се извршавају сваки пут када се функција позове.

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

Нацртајмо испрекидану линију тако што ћемо користиути ту нову наредбу (позваћемо претходну функцију наводећи њен назив а као параметар проследићемо број цртица које желимо да испрекидана линија има).

13
 
1
import turtle
2
3
# funkcija za crtanje isprekidane linije
4
# parametar je broj crtica n
5
def isprekidana_linija(n):
6
    for i in range(n):              #    n puta ponovi:
7
        turtle.pendown()            #    spusti olovku
8
        turtle.forward(20)          #    idi napred 20 koraka
9
        turtle.penup()              #    podigni olovku
10
        turtle.forward(20)          #    idi napred 20 koraka
11
12
isprekidana_linija(5)              #    pozivamo funkciju da iscrta isprekidanu liniju sa 5 crtica
13

(испрекидана_линија_функција)

Функција за цртање многоугла

Приметимо да се цртање многоугла (каже се и полигона) јавило у више различитих програма. Стога је корисно дефинисати функцију за цртање многоугла. Параметри те функције биће број страница полигона и дужина једне странице.

7
 
1
# funkcija za crtanje pravilnog poligona
2
# parametri su broj stranica poligona n i duzina stranice a
3
def poligon(n, a):
4
    for i in range(n):             # n puta ponovi:
5
        turtle.forward(a)          #    idi napred a koraka
6
        turtle.right(360 / n)      #    okreni se za spoljasnji ugao n-tostranog pravilnog poligona
7

(функција)

Након ове дефиниције, квадрат чија је страница дужине 100 пиксела нацртаћемо тако што наведемо poligon(4, 100), а шестоугао димензије 50 тако што наведемо poligon(6, 50). Са функцијом за цртање многоугла на располагању, наш програм за цртање три квадрата различите боје је доста једноставније написати и постаје доста разумљивији.

13
 
1
import turtle
2
3
# definisemo funkciju za crtanje pravilnog poligona
4
# parametri su broj stranica poligona n i duzina stranice a
5
def poligon(n, a):
6
    for i in range(n):             # n puta ponovi:
7
        turtle.forward(a)          #    idi napred a koraka
8
        turtle.right(360 / n)      #    okreni se za spoljasnji ugao n-tostranog pravilnog poligona
9
10
for i in range(3):                 # 3 puta ponovi:
11
    poligon(4, 50)                 #   nacrtaj kvadrat dimenzije 50 koraka
12
    turtle.right(360 / 3)          #   kvadrati su pravilno rasporedjeni duž punog kruga, pa se okreni za 120 stepeni
13

(полигон_функција)

Покушај да измениш претходни програм тако да уместо квадрата црта три шестоугла дужине страница 80 пиксела.

Четири квадрата

Напиши програм у којем корњача црта облик који се састоји од четири квадрата, како је приказано на наредној слици.

https://petljamediastorage.blob.core.windows.net/root/Media/Default/Kursevi/OnlineNastava/kurs-sesti/kornjaca-cetiri-kvadrata.png

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

4
 
1
import turtle
2
n = 100
3
# dopuni resenje
4

(четири_квадрата)

Претходна лекција
Следећа лекција
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.