Сводка бронирований
Часть раздела Основы путешествия по Solidity на Coddy. Урок 53 из 53.
Задание
СложноОпределите структуру Booking с полями uint256 capacity и uint256 reserved. Инициализируйте Booking в памяти, используя первые два входных значения. Используйте вспомогательную функцию internal pure, чтобы определить, помещается ли requested в оставшуюся capacity. Если помещается, добавьте requested к reserved. Выведите решение, итоговое значение reserved и оставшуюся capacity. Начальное значение reserved никогда не превышает capacity.
Тесты передают аргументы в main в следующем порядке: uint256 capacity, uint256 reserved, uint256 requested. Каждый тест начинается с нового состояния контракта.
Используйте console.log для требуемого вывода. Выводите только требуемые значения, по одному в строке, без дополнительных меток, если только задание явно их не указывает.
Попробуйте сами
// SPDX-License-Identifier: MIT
pragma solidity ^0.8.26;
import "forge-std/console.sol";
contract Main {
function main(uint256 capacity, uint256 reserved, uint256 requested) external view {
// Напишите ваше решение здесь.
}
}Все уроки раздела Основы
2Переменные и типы
Беззнаковые целые числаВвод и выводЗнаковые целые числаЛогические значенияСтроки в памятиКарточка профиля5Функции
Параметры функцийВозврат значенийЧистые функцииВызовы вспомогательных функцийПовторно используемые вычисленияПотренируйтесь самостоятельно: Песочница Solidity