Want to make creations as awesome as this one?

Transcript

Урок 6 И 7

Variable

НОВИ ЗНАНИЯ

Създаване на образователен проект със средствата на изучаван език за блоково програмиране – алгоритми за размяна на стойности и броене на елементи

в този урок

декомпозиране на сценария на програмно изпълними дейности с изучаван блоков език за програмиране;

КАК ДА прилагане на алгоритми за реализация на следнитедейности:– размяна на стойности;– броене на елементи

В този урок ще научите:

Блоковете за работа с променливи са:

Променливата е част от паметта на компютъра, в която се съхраняват данни – текст, числа, логически стойности. Всяка променлива има име и стойност и може да се използва многократно в кода, да участва в различни оператори и команди, да променя стойността си.При създаването на променлива се определя дали да се отнася само за даден герой, или за всички герои.

За осъществяване на диалог между героите или синхронизиране на действията им в средата за визуално блоково програмиране се използват блоковете:Препоръчително е името на съобщение да дава информация за действията или героя, който го изпраща.

Да припомним!

Задача 1

Стартирайте файла Change_juice_1. Проследете как се разменя съдържанието на двете чаши. Рагледайте целия проект.а) Колко са героите? Колко костюма имат героите Glass lemonade, Glass orange и Glass empty?б) Проверете колко и кои променливи са създадени.в) Колко и кои съобщения са използвани за синхронизиране на действията на героите и диалога между тях?г) Разгледайте кода на героя Glass empty.

Change_juice_1.sb3

Change_juice_1

Да стартираме Monkey and bananas.sb3. Това е игра, подходяща за по-малките ни приятели.Да разгледаме елементите на играта. С клавишите със стрелки движим Monkey така, че да събира падащите банани. Движението се управлява от собствения блок move left-right. Скоростта на движение можем да променяме с параметъра speed.Блокът release bananas осигурява появата на падащите банани през интервал от време, определен от параметъра time. Тези банани са клонове на спрайта Bananas. Двата блока са поставени в безкраен цикъл в основния код на програмата.

Броене на елементи.

За нашите проекти могат да ни бъдат полезни някои стандартни алгоритми като например броене на елементи, размяна на стойности на променливи, намиране на най-малка и на най-голяма стойност, подреждане по големина на числови данни и други подобни. В този и следващите уроци ще разгледаме няколко такива алгоритъма.

Monkey and bananas.sb3

Броене на елементи.Размяна на стойности на две променливи

блок-схеми

За описание на алгоритми често се използват блок-схеми. Те могат да съдържат няколко вида блокове, най-важните от които са:

Блок-схеми

Така например блок-схемата на алгоритъма за размяна на стойности с използване на временна променлива е:

Броене на елементи.Размяна на стойности на две променливи

При досегашната ни работа с програмата Scratch сме правили както програми, съдържащи само по няколко блока, така и по-сложни проекти. Когато трябва да направим проект, който може да съдържа десетки блокове, най-напред трябва да го разделим на стъпки

Max.sb3

Броене на елементи.Размяна на стойности на две променливи

Да направим заедно!

Да започнем нова програма, с която ще намираме най-малкото от три числа. Създаваме четири променливи – A, B, C и Min. В началото на кода скриваме Min с блок hide variable Min, а след него поставяме блок, с който героят ни съобщава, че трябва да въведем стойност за променливата A – ask Въведи стойност за A and wait. Полученият отговор се записва в A с set A to answer. По същия начин се въвеждат стойности и за променливите B и C.Да поставим няколко блока, с които ще се определи най-малката стойност. Най-напред с блок set Min to A копираме стойността от A в Min. Следва блок с условие if B < Min then ), в който поставяме set Min to B. Така, ако стойността на B е по-малка от Min, тя ще се запише в Min. Добавяме още един условен блок, с който се сравняват C и Min и ако е нужно, стойността на С се записва в Min . Завършваме програмата с блоковете say Да помисля малко for 2 seconds и show variable Min.

Min.sb3

ДА НАПРАВИМ ЗАЕДНО!

Насоки

Начертайте в тетрадките си блок-схема на алгоритъма за намиране на най-голямото измежду три числа, в който последователно се сравняват две съседни числа и се разменят стойностите им.

Домашна работа

Сравняват се стойностите на В и С. Ако В > С, се разменят стойностите на В и С (С вече ще съдържа най-голямата стойност).

Сравняват се стойностите на А и В. Ако А > В, се разменят стойностите на А и В (В вече ще съдържа по-голяма стойност от А).

Алгоритъмът е следният:

Домашна работа

Разгледайте файла sort. Стартирайте го.а) Тествайте кода с различни стойности за постиженията на роботите.б) Опишете действията на героите на сцената.в) Разгледайте кода на всеки герой. Почетната стълбичка също е герой с име podium. Колко променливи са създадени? Обяснете кои променливи са използвани за всеки герой.г) Разгледайте кода на героя podium и открийте частите от него, които се описват с вече изучени алгоритми.д) Разгледайте кодовете на героите R1, R2 и R3. По какво си приличат и по какво се различават?

Насоки

В кода на задачата са създадени 7 променливи:• 3 за точките на роботите (по 1 за всеки робот – точкиR1, точкиR2 и точкиR3) – началните им стойности се въвеждат от клавиатурата;• 3 за всеки робот – число1, число2 и число3, като първоначал- ните им стойности са равни на броя на въведените от клавиатурата точки на всеки робот;• една помощна променлива за размяна на стойностите на две про- менливи размяна.В кода на героя podium е използван алгоритъмът за размяна на стойностите на две променливи Как да класирате (сортирате) героите по броя на точките им в състезанието? За класирането на героите е приложен методът на „мехурчето“ (bubble sort). Той се състои в следното:Нека са дадени три променливи A, B и C, чиито стойности са числа.1. Намира се най-голямото от трите числа .2. Сравняват се стойностите на другите две променливи и се разменят.3. Стойностите на променливите се подреждат: А < В < С.

Sort.sb3