Podsumowanie rezerwacji
Część sekcji Podstawy ścieżki Solidity w Coddy. Lekcja 53 z 53.
Wyzwanie
TrudnyZdefiniuj strukturę Booking z polami uint256 capacity i uint256 reserved. Zainicjalizuj obiekt Booking w pamięci, używając dwóch pierwszych argumentów wejściowych. Użyj pomocniczej funkcji internal pure, aby ustalić, czy requested mieści się w pozostałej pojemności. Jeśli się mieści, dodaj requested do reserved. Wypisz decyzję, końcową wartość reserved i pozostałą pojemność. Początkowa wartość reserved nigdy nie przekracza capacity.
Testy przekazują argumenty do main w tej kolejności: uint256 capacity, uint256 reserved, uint256 requested. Każdy test rozpoczyna się ze świeżym stanem kontraktu.
Użyj console.log dla wymaganego wyniku. Wypisz tylko wymagane wartości, po jednej w wierszu, bez dodatkowych etykiet, chyba że zadanie ich wymaga.
Spróbuj swoich sił
// 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 {
// Napisz tutaj swoje rozwiązanie.
}
}Wszystkie lekcje w sekcji Podstawy
2Zmienne i typy
Liczby całkowite bez znakuWejście i wyjścieLiczby całkowite ze znakiemWartości logiczneŁańcuchy znaków w pamięciKarta profilu5Funkcje
Parametry funkcjiZwracanie wartościFunkcje czysteWywołania pomocniczeWielokrotnego użytku obliczeniaPoćwicz samodzielnie: Edytor online Solidity