סיכום הזמנות
חלק מהיחידה יסודות במסלול ה-Solidity של Coddy. שיעור 53 מתוך 53.
אתגר
קשההגדירו struct Booking עם uint256 capacity ו־uint256 reserved. אתחלו Booking בזיכרון באמצעות שני הקלטים הראשונים. השתמשו בפונקציית עזר מסוג internal pure כדי להחליט אם requested נכנס בקיבולת שנותרה. אם הוא נכנס, הוסיפו את requested ל־reserved. הדפיסו את ההחלטה, את הערך הסופי של reserved ואת הקיבולת שנותרה. הערך ההתחלתי של reserved לעולם אינו עולה על capacity.
הבדיקות מעבירות ארגומנטים אל main בסדר הזה: uint256 capacity, uint256 reserved, uint256 requested. כל בדיקה מתחילה עם מצב חוזה חדש.
השתמשו ב־console.log עבור הפלט המבוקש. הדפיסו רק את הערכים המבוקשים, אחד בכל שורה, בלי תוויות נוספות אלא אם המשימה מציינת אותן.
נסו בעצמכם
// 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 {
// כתבו כאן את הפתרון שלכם.
}
}כל השיעורים ביחידה יסודות
תרגלו בעצמכם: Solidity אונליין