Променљиве и оператори¶
Програме стварамо са намером да себи и другим људима олакшамо решавање одређених задатака или обављање појединих послова. Стварамо их и са намером да себе и друге забавимо, те повежемо људе једне са другима. Верујемо да разумеш да исти програм може да користи више људи и да то разумевање потиче из твог личног искуства.
Када користимо програме, ми радимо са подацима. Чињеница да исти програм може да кристи више људи, уносећи своје податке и добијајући одговарајуће резултате, говори да програми управљају коришћењем меморије рачунара.
Замисли меморију дигиталног уређаја као огромну, али заиста огромну, скоро бескрајну просторију у којој се налазе непрегледни низови полица. Замисли да у сваку преграду сваке од полица можеш да сместиш податке. И, на крају, замисли да сваку од тих преграда можеш да назовеш како желиш и да ти, чим позовеш њено име, подаци који се на њој налазе постају одмах доступни.
Те „преграде” у меморији рачунара називамо променљиве (варијабле). У једном тренутку, променљива може да садржи само један податак (број, стринг, вредност тачно или нетачно…).
Питај и чекај¶
У оквиру категорије Осећаји постоји блок .
Овај блок омогућава интеракцију корисника и програма. Његовим извршавањем постижемо да лик постави неки захтев пред корисника програма и омогући му да на тај захтев одговори. Корисник уноси тражени податак (број, стринг) у поље , а затим свој унос потврђује кликом на дугме или притиском на тастер Ентер. Након потврде, одговор корисника смешта се у променљиву , а програм наставља да се извршава.
Најбоље је да одмах употребимо овај блок. Направићемо програм у коме маца пита корисника како се зове, а затим понови корисниково име и изговори да је оно веома лепо.
Програм покрећемо кликом на зелену заставицу. Након наредбе , извршавање програма се зауставља, у очекивању да корисник унесе свој одговор у поље и притисне дугме или тастер Ентер. У том тренутку, садржај променљиве не постоји .
Када корисник унесе одговор (нпр. Ксенија) и притисне дугме или тастер Ентер, садржај променљиве постаје .
Сада наша маца може да изговори стринг који смо направили помоћу блока за спајање стрингова из категорије Оператори (у поље јабука поставили смо променљиву , а у поље банана унели стринг ” је веома лепо име!”).
На доњој слици приказано је извршавање нашег програма.
Креирање променљивих¶
Размотримо ситуацију у којој корисник уноси 4 броја која наш програм затим сабира и приказује збир. Истина је да блок Питај и чекај омогућава да корисник унесе неку вредност и да се она, затим, смешта у променљиву . Али, шта се дешава када су нам потребна 4 одговора?
- 50
- Променљива садржи само један податак (број, стринг, вредност тачно или нетачно...) Размисли још једном и означи тачан одговор.
- 30
- Променљива садржи само један податак (број, стринг, вредност тачно или нетачно...) Размисли још једном и означи тачан одговор.
- 20
- Променљива садржи само један податак (број, стринг, вредност тачно или нетачно...) Размисли још једном и означи тачан одговор.
- 80
- У праву си, браво! У променљивој одговор налази се само последњи одговор корисника, а то је број 20. Лик ће изговорити 80 (20+20+20+20).
Q-11: Корисник редом уноси следеће бројеве: 5, 10, 15 i 20. Када се програм приказан на слици изврши, лик ће изговорити:
Одговарајући на претходно питање уочили смо да нам је потребно више од једне променљиве како би програм могао да прикаже тачан збир 4 броја које уноси корисник.
Променљиве креирамо у оквиру категорије Променљиве, кликом на дугме Направи променљиву. Отвориће се прозор у коме треба да упишемо име променљиве, а затим означимо да ли ће она бити доступна свим ликовима или само лику који је активан у тренутку када променљиву креирамо. Кликом на дугме У реду креирамо променљиву.
На доњој слици приказани су блокови који нам постају доступни након креирања променљиве. Помоћу првог постављамо почетну вредност променљиве, други користимо када желимо да увећамо или умањимо њену вредност, док су трећи и четврти блок намењени осигуравању да променљива буде видљива, односно невидљива.
Верујемо да сада можеш да направиш програм који ће израчунати тачан збир 4 броја која корисник уноси.
Могуће решење
Оператори
У овој лекцији, креирали смо програме у оквиру којих смо користили блокове из категорије Оператори.
Најчешће коришћени су:
аритметички оператори;
логички оператори;
оператори поређења.
У категорији Оператори налазe се и блокови помоћу којих можемо да спајамо стрингове, издвајамо знакове из стринга, проверавамо да ли стринг садржи одређено слово или знак, те да добијемо податак о дужини стринга.
На располагању имамо још 3 врло корисна блока. Први нам омогућава да наш програм насумично бира број из опсега који му задамо, други нам враћа вредност остатка при целобројном дељењу, а трећи заокружује децимални на цео број (имај на уму да за запис децималног броја Скреч користи децималну тачку, а не децимални зарез).
Пред тобом је прави изазов. Треба да направиш програм који омогућава да корисник унесе двоцифрени број, након чега га програм обавештава која је цифра десетице, а која јединице.
Другим речима, ако корисник унесе број 73, програм га обавештава да је цифра десетице 7, а цифра јединице 3.
Савет: Анализирај резултат извршавања блока приказан на доњој слици и примени закључке при креирању програма.
Могуће решење
Од Скреча ка Пајтону
Програмирање у Пајтону можда не делује атрактивно као у Скречу, али дефинитивно има својих предности.
Анализирај програме који приказују збир 4 унета броја, а креирани су у Скречу и Пајтону. Покушај да повежеш нарадбе које имају исти резултат извршавања, а написане су у различитим програмским језицима.