Решение задачи на Leo. Функция
Привет! Сегодня мы по практикуемся в языке программирования Leo и решим следующую задачу:
Напоминаю, что Leo - это язык программирования от проекта Aleo, созданный на основе Rust. С помощью него можно взаимодействовать с блокчейном Aleo и писать полностью приватные и децентрализованные приложения.
Обновление
Первым делом давайте обновим Leo на нашем компьютере. Это нужно сделать, так как этот язык постоянно дорабатывается и обновляется, фиксятся баги. Для этого в git bash вводим команду
leo update
Если у вас не установлен язык программирования Leo, то можете изучить мою статью по этой теме в этом teletype профиле.
Создание проекта
В git bash вводим leo new [название программы]. В моем случае
leo new test_num
Теперь откроем наш проект в sublime text. Открываем главный файл (main.leo) и файл со входными данными.
Входные данные мы оставляем, как есть, потому что мы в функцию должны поступить 2 переменные a и b. Они должны быть типа u32, как и выходная переменная.
Теперь мы должны значение целочисленного деления a на b. Поскольку тип u32 подразумевает, что число будет целочисленным, мы просто делим a на b и записываем это значение в новую переменную. Для этого вводим:
Теперь создадим вторую переменную, которая находит удвоенный остаток от деления a на b. Мы найдем остаток с помощью оператора rem, а потом умножим его на 2. У нас получается:
Теперь находим разность переменной n_1 и переменной n_2. Запишем её в переменную c.
Функция готова. Давайте проверим её правильность на предложенных в задаче данных. Для этого во входных данных вводим:
Запускаем нашу программу с помощью
leo run main
И получаем следующий результат:
Да, всё правильно. Давайте проверим на второй паре входных данных.
И снова мы получили правильный результат, так что функция работает корректно. На этом всё. До встречи!