Wymagane warunki
Część sekcji Podstawy ścieżki Solidity w Coddy. Lekcja 46 z 53.
Użyj require(condition, message), aby odrzucić wywołanie, gdy oczekiwany warunek jest fałszywy. Spełnienie warunku pozwala kontynuować wykonywanie. Niespełnienie wymagania cofa wywołanie i jego zmiany stanu. Sprawdź dane wejściowe, zanim użyjesz ich w operacji zależnej od tego warunku.
Instrukcje w tym fragmencie są wykonywane wewnątrz udostępnionej funkcji main.
uint256 quantity = 7;
require(quantity > 0, "Positive quantity required");
console.log(quantity * 3);Wartość siedem przechodzi sprawdzenie dodatniej ilości, więc obliczenie wypisuje dwadzieścia jeden. Gdyby quantity wynosiło zero, wywołanie zamiast tego zostałoby cofnięte. Komunikat wyjaśnia niespełniony warunek; nie jest wypisywany podczas pomyślnego wywołania.
require kontynuuje działanie, gdy jego warunek jest prawdziwy, i cofa działanie, gdy jest fałszywy.
Wyzwanie
ŁatwyWymagaj, aby divisor było większe od zera, i podaj przydatny komunikat o błędzie. Następnie wypisz total podzielone przez divisor. Testy widocznego wyniku używają dodatnich dzielników; Twój kod nadal musi zawierać to zabezpieczenie.
Testy przekazują argumenty do main w tej kolejności: uint256 total, uint256 divisor. Każdy test rozpoczyna się ze świeżym stanem kontraktu.
Użyj console.log do wyświetlenia żądanego wyniku. Wypisz tylko żądane wartości, po jednej w każdym wierszu, bez dodatkowych etykiet, chyba że zadanie określa inaczej.
Spróbuj swoich sił
// SPDX-License-Identifier: MIT
pragma solidity ^0.8.26;
import "forge-std/console.sol";
contract Main {
function main(uint256 total, uint256 divisor) external view {
// Napisz tutaj swoje rozwiązanie.
}
}Ta lekcja zawiera krótki quiz. Zacznij lekcję, żeby na niego odpowiedzieć i śledzić swoje postępy.
Wszystkie lekcje w sekcji Podstawy
10Reguły kontraktów
Wymagane warunkiJawne cofnięciaZdarzeniaWidoczność i prywatnośćAktualizacje z kontrolą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