if-else — икона Вопрос
Ru | En
Икона Вопрос в языке Дракон — аналог конструкции if-else.
Спроектируем функцию printNumber. Эта функция будет принимать число и выдавать текстовое представление числа. Начинаем использовать функцию printNumber, как если бы она уже существовала.
Теперь давайте создадим функцию printNumber. Функция будет принимать один аргумент — number.
Добавим икону Вопрос. Если number равно 10, печатаем "ten". Мы также выводим number, чтобы себя проверить. Сгенерируем код для модуля и запустим приложение.
Откроем консоль и проверим вывод.
10 "ten"
Наша функция printNumber обрабатывает только число 10. Надо добавить поддержку всех остальных значений. Если number не равно 10, выводим "some other value."
Сгенерируем код для модуля и запустим приложение ещё раз. Теперь в консоле 3 строки.
10 "ten" 20 "some other value" 30 "some other value"
При помощи иконы Вопрос можно строить сложные деревья принятия решений. Добавим ещё одну икону Вопрос. Если number равно 20, выводим "twenty".
Сейчас мы должны получить более разнообразные результаты. Генерируем код, перезагружаем страницу с приложением и проверяем консоль.
10 "ten" 20 "twenty" 30 "some other value"
Обратите внимание, что можно поменять местами выходы "Да" и "Нет" на иконе Вопрос. Щёлкните правой кнопкой мыши и выберите "Поменять местами Да и Нет".
Чтобы сохранить логику алгоритма, нам надо поменять пути на блок-схеме. Для этих целей я широко использую функцию копировать-вставить.
Также надо переключить несколько линий. Для этого надо кликнуть на линии (или на её конце). Затем надо выбрать новое положение линии — кликнуть на одном из жёлтых кружков.
Построим модуль и запустим приложение после этой перестановки. Как и ожидалось, суть алгоритма не изменилась.
10 "ten" 20 "twenty" 30 "some other value"