תנאים נדרשים
חלק מהיחידה יסודות במסלול ה-Solidity של Coddy. שיעור 46 מתוך 53.
השתמשו ב-require(condition, message) כדי לדחות קריאה כאשר תנאי צפוי הוא שקרי. תנאי שמתקיים מאפשר לביצוע להמשיך. דרישה שלא מתקיימת מבטלת את הקריאה ואת שינויי המצב שלה. אמתו קלט לפני השימוש בו בפעולה שתלויה בתנאי הזה.
הפקודות בקטע הזה רצות בתוך הפונקציה main שסופקה.
uint256 quantity = 7;
require(quantity > 0, "Positive quantity required");
console.log(quantity * 3);הערך שבע עובר את בדיקת הכמות החיובית, ולכן החישוב מדפיס עשרים ואחת. אם הכמות הייתה אפס, הקריאה הייתה מתבטלת במקום זאת. ההודעה מסבירה את התנאי שלא התקיים; היא אינה מודפסת במהלך קריאה מוצלחת.
require ממשיכה כאשר התנאי שלה true ומתבטלת כאשר הוא false.
אתגר
קלודאו ש־divisor גדול מאפס באמצעות הודעת שגיאה מועילה. לאחר מכן הדפיסו את total חלקי divisor. בדיקות הפלט הגלוי משתמשות במחלקים חיוביים; הקוד שלכם עדיין חייב לכלול את הבדיקה.
הבדיקות מעבירות ארגומנטים ל־main בסדר הזה: uint256 total, uint256 divisor. כל בדיקה מתחילה במצב חוזה חדש.
השתמשו ב־console.log עבור הפלט המבוקש. הדפיסו רק את הערכים המבוקשים, אחד בכל שורה, ללא תוויות נוספות אלא אם המשימה מציינת אותן.
נסו בעצמכם
// SPDX-License-Identifier: MIT
pragma solidity ^0.8.26;
import "forge-std/console.sol";
contract Main {
function main(uint256 total, uint256 divisor) external view {
// כתבו כאן את הפתרון שלכם.
}
}השיעור הזה כולל חידון קצר. התחילו את השיעור כדי לענות עליו ולעקוב אחרי ההתקדמות.
כל השיעורים ביחידה יסודות
תרגלו בעצמכם: Solidity אונליין