Menu
Coddy logo textTech

סיכום - בונה צורות

חלק מהיחידה תכנות מונחה עצמים במסלול ה-Dart של Coddy. שיעור 16 מתוך 110.

challenge icon

אתגר

קל

בואו נבנה מחלקת Rectangle שמאגדת את כל טכניקות הבנאים שלמדת בפרק הזה. תיצור מחלקת צורות גמישה שאפשר ליצור מופעים שלה בכמה דרכים.

תארגן את הקוד שלך בשני קבצים:

  • rectangle.dart: הגדר מחלקת Rectangle עם הפריטים הבאים:
    • שני שדות מסוג final double: width ו-height
    • שני שדות מחושבים מסוג final double: area ו-perimeter
    • בנאי ראשי שמקבל את width ואת height, ומשתמש ברשימת אתחול כדי לחשב את area (רוחב × גובה) ואת perimeter (2 × (רוחב + גובה))
    • בנאי בשם Rectangle.square(double side) שמפנה לבנאי הראשי עם רוחב וגובה שווים
    • בנאי בשם Rectangle.golden(double width) שיוצר מלבן לפי יחס הזהב (גובה = רוחב × 1.618) ומפנה לבנאי הראשי
    • בנאי קבוע Rectangle.unit() שיוצר מלבן בגודל 1×1 (לשם כך תצטרך בנאי const נפרד)
    • מתודה display() שמדפיסה את המידע על המלבן
  • main.dart: ייבא את מחלקת המלבן שלך וצור ארבעה מלבנים:
    • מלבן מותאם אישית ברוחב 4.0 ובגובה 3.0
    • ריבוע שאורך הצלע שלו 5.0
    • מלבן זהב ברוחב 10.0
    • מלבן יחידה באמצעות הבנאי הקבוע (צור אותו כקבוע בזמן הידור)
    קרא למתודה display() עבור כל מלבן לפי הסדר שמופיע למעלה.

המתודה display() צריכה להדפיס בפורמט המדויק הבא:

Rectangle [width]x[height] | Area: [area] | Perimeter: [perimeter]

פלט צפוי:

Rectangle 4.0x3.0 | Area: 12.0 | Perimeter: 14.0
Rectangle 5.0x5.0 | Area: 25.0 | Perimeter: 20.0
Rectangle 10.0x16.18 | Area: 161.8 | Perimeter: 52.36
Rectangle 1.0x1.0 | Area: 1.0 | Perimeter: 4.0

נסו בעצמכם

import 'rectangle.dart';

void main() {
  // TODO: צרו מלבן מותאם אישית ברוחב 4.0 ובגובה 3.0

  // TODO: צרו ריבוע שאורך צלעו 5.0

  // TODO: צרו מלבן זהב ברוחב 10.0

  // TODO: צרו מלבן יחידה באמצעות הבנאי הקבוע
  // (צרו אותו כקבוע בזמן הידור באמצעות 'const')

  // TODO: קראו ל-display() על כל מלבן לפי הסדר המופיע למעלה
}

כל השיעורים ביחידה תכנות מונחה עצמים

תרגלו בעצמכם: קומפיילר Dart אונליין