Menu
Coddy logo textTech

条件の要求

CoddyのSolidityジャーニー「基礎」セクションの一部。レッスン 46/53。

期待される条件が false の場合に呼び出しを拒否するには、require(condition, message) を使用します。条件が成立すると、実行は続行されます。要件に失敗すると、呼び出しとその状態変更が取り消されます。その条件に依存する操作で入力を使用する前に、入力を検証してください。

この抜粋の文は、提供された main 関数内で実行されます。

uint256 quantity = 7;
require(quantity > 0, "Positive quantity required");
console.log(quantity * 3);

値の seven は正の数量チェックに合格するため、計算結果として twenty-one が出力されます。quantity がゼロの場合は、代わりに呼び出しがリバートします。メッセージは失敗した要件を説明するものであり、呼び出しが成功した際には出力されません。

require は条件が真の場合は処理を続行し、偽の場合はリバートします。

challenge icon

チャレンジ

簡単

divisor がゼロより大きいことを、わかりやすいエラーメッセージとともに要求します。次に、total を divisor で割った結果を出力します。表示される出力テストでは正の divisor が使用されますが、コードにはガードを含める必要があります。

テストは、次の順序で引数を main に渡します:uint256 totaluint256 divisor。各テストは、新しいコントラクト状態から開始します。

要求された出力には console.log を使用します。要求された値のみを、1 行に 1 つずつ出力してください。タスクで指定されていない限り、余分なラベルは付けないでください。

REQUIRED OUTPUT FORMAT: [翻訳した内容]

自分で試してみよう

// SPDX-License-Identifier: MIT
pragma solidity ^0.8.26;
import "forge-std/console.sol";
contract Main {
    function main(uint256 total, uint256 divisor) external view {
        // ここに解答を書いてください。
    }
}
quiz icon腕試し

このレッスンには短いクイズがあります。レッスンを始めて解答し、進捗を記録しましょう。

基礎のすべてのレッスン

自分で練習してみよう: Solidityプレイグラウンド