Занятие № 8. Оператор ветвления. Блок Если

Упражнение № 1. Игра “Угадай число”

Сделаем игру в которой компьютер будет загадывать случайное число от 1 до 20 а игроку нужно будет за 5 попыток отгадать это число. При этом каждый раз когда игрок вводит свою догадку, компьютер сообщает ему, угадал ли он число, больше ли оно чем загаданное или меньше. Для этого нам понадобится блок если/иначе.

Открой Scratch и выбери спрайт, который будет с тобой играть.

Число которое загадал компьютер лучше всего сохранить в переменной. Перейди в раздел Данные и создай переменную число. Также сними галочку рядом с именем переменной, чтобы её монитор не показывался на сцене. Иначе загаданное число будет сразу видно игроку.

Теперь добавь для спрайта следующую программу:

Нажми на флажок и попробуй угадать число. Это будет трудно сделать, потому что компьютер не сообщает больше ли твой ответ загаданного числа или нет. Поэтому в раздел иначе необходимо добавить скрипт, который будет подсказывать, больше или меньше введённое число чем задуманное. Необходимые блоки добавь в раздел иначе самостоятельно. В качестве подсказки воспользуйся следующей блок-схемой алгоритма:


Дополнительное задание

Подумай, по какому алгоритму быстрее всего можно отыскать задуманное число?

Упражнение № 2. Игра “Камень. Ножницы. Бумага”

Сыграем с компьютером в игру “Камень, ножницы, бумага”.

Открой файл RockPaperScissors-NoCode.sb2. В нем находится пять спрайтов. Спрайты Rock, Paper и Scissors будут кнопками с помощью которых, ты будешь выбирать свой вариант. Спрайт Player будет показывать вариант который ты выбрал, а также сообщать результат игры. Спрайт Computer будет показывать вариант, который выбрал компьютер. Его ход будет определяться случайным образом.

Твой выбор и выбор компьютера будем хранить в переменных. Перейди в раздел Данные и создай там две переменные - выборИгрока и выборКомпьютера. После создания переменных можешь убрать галочки рядом с их именами, чтобы не показывать мониторы переменных.

Каждому возможному варианту хода присвоим свой код:

Вариант Код
Камень 1
Ножницы 2
Бумага 3

Скрипт будет работать следующим образом: после нажатия по одному из вариантов выбранный спрайт задаёт значение для переменной выборИгрока, отправляет сообщение новаяИгра и ждёт, а потом отправляет сообщение результат и ждёт. Спрайты Player и Computer принимают сообщение новаяИгра и отображают с помощью костюмов выбранные варианты хода. После этого спрайт Player получит сообщение результат и определит победителя.

Выбери спрайт Rock и добавь ему следующий скрипт:

Скрипты для спрайтов Paper и Scissors добавь самостоятельно. Не забудь в этих скриптах изменить значение которое присваивается переменной выборИгрока согласно определённому ранее коду который указан в таблице.

Выбери спрайт Computer и добавь ему следующий скрипт:

После получения сообщения спрайт сохраняет в переменной свой вариант хода.

Выбери спрайт Player и добавь ему следующий скрипт:

Теперь ты можешь протестировать игру. Попробуй нажимать на изображение вариантов и проверь, меняются ли костюмы у спрайтов игрока и компьютера. Пока что игра не определяет, кто победил. Для этого в спрайт Player добавь следующий скрипт:

В этом скрипте мы проверяем выбрал ли игрок вариант, который позволит победить компьютер, выиграл ли компьютер или произошла ничья.

Обрати внимание что в последнем скрипте встречаются составные условия:

Упражнение № 3. Калькулятор площади фигур

Создадим программу с помощью которой можно будет посчитать площадь выбранной фигуры. Программа будет спрашивать у пользователя, площадь какой фигуры он хочет посчитать. После этого программа будет вызывать необходимый блок который спросит у пользователя размеры фигуры и выведет на экран площадь выбранной фигуры. В этой программе будут использоваться вложенные блоки если.

Открой файл AreaCalculator_NoCode.sb2. Выбери спрайт Tutor. Перед составление главной программы, создадим все необходимые переменные и блоки.

Перейди в закладку Данные и создай необходимые переменные, показанные на рисунке.

Эти переменные будут хранить введённые пользователем данные и потом подставляться в формулы для вычисления площади фигур.

Теперь перейди в раздел Другие блоки и создай блок Прямоугольник который будет считать площадь прямоугольника по формуле: \[ площадь = длина \cdot высота \] С помощью блока спросить … и ждать мы попросим пользователя ввести необходимые данные, сохраним их в переменные, вычислим площадь и покажем ответ.

Создай блок Треугольник. Для вычисления площади треугольника будем использовать следующую формулу: \[ площадь = \frac{1}{2}\cdot основание \cdot высота \] Блок Треугольник будет выглядеть следующим образом:

Создай блок Круг для вычисления площади круга по формуле: \[ площадь = \pi \cdot радиус ^ 2 \] где \(\pi = 3,14\).

Программа блока Круг выглядит следующим образом:

Перейдем к составлению основной программы. Блок схема работы скрипта показана на рисунке:

В зависимости от того, какое число введёт пользователь, программа вызовет определённый блок для нахождения площади.

Нажми на флажок и проверь работу скрипта. Протестируй работу всех возможных вариантов.