IfとElse
CoddyのSolidityジャーニー「基礎」セクションの一部。レッスン 18/53。
if文は、条件がtrueの場合にのみそのブロックを実行します。代替の経路を用意するにはelseを追加します。条件は括弧内に記述し、各分岐では波括弧を使用します。この組み合わせのうち、実行される分岐は1つだけです。
この抜粋内の文は、提供されたmain関数の内部で実行されます。
uint256 stock = 8;
if (stock > 0) {
console.log("available");
} else {
console.log("empty");
}在庫は正なので、最初の分岐では available が出力されます。在庫がゼロなら、else 分岐では empty が出力されます。分岐によって、真偽値による判断を異なるアクションに変換できます。
if/else の組み合わせでは、ちょうど1つの分岐だけが実行されます。
チャレンジ
簡単remaining が 0 より大きい場合は open を出力し、それ以外の場合は full を出力してください。
テストはこの順序で main に引数を渡します:uint256 remaining。各テストは新しいコントラクト状態から開始します。
要求された出力には console.log を使用してください。要求された値のみを、1 行に 1 つずつ出力し、タスクで指定されていない限り余分なラベルは付けないでください。
自分で試してみよう
// SPDX-License-Identifier: MIT
pragma solidity ^0.8.26;
import "forge-std/console.sol";
contract Main {
function main(uint256 remaining) external view {
// ここに解答を書いてください。
}
}このレッスンには短いクイズがあります。レッスンを始めて解答し、進捗を記録しましょう。
基礎のすべてのレッスン
自分で練習してみよう: Solidityプレイグラウンド