Menu
Coddy logo textTech

מערכים מדורגים

חלק מהיחידה לוגיקה וזרימת תוכנית במסלול ה-Java של Coddy. שיעור 6 מתוך 59.

מערך משונן הוא סוג מיוחד של מערך דו־ממדי שבו בכל שורה יכול להיות מספר שונה של עמודות. במילים אחרות, זהו מערך של מערכים, וכל מערך "פנימי" יכול להיות באורך שונה. זה שונה ממערך דו־ממדי רגיל, שבו בכל השורות יש אותו מספר עמודות, כך שנוצרת צורה מלבנית.

מערכים משוננים שימושיים כשצריך לאחסן נתונים שאינם מתאימים בצורה מסודרת לרשת מלבנית. לדוגמה, אפשר להשתמש במערך משונן כדי לאחסן את המילים בכל משפט בפסקה, כאשר בכל משפט יש מספר שונה של מילים.

כך מצהירים על מערך משונן ומאתחלים אותו ב-Java:

data_type[][] array_name = new data_type[number_of_rows][];

// אתחלו כל שורה עם מספר שונה של עמודות
array_name[0] = new data_type[number_of_columns_in_row_0];
array_name[1] = new data_type[number_of_columns_in_row_1];
// ... וכן הלאה

שימו לב שכאשר מצהירים על המערך לראשונה, מציינים רק את מספר השורות. לאחר מכן מאתחלים כל שורה בנפרד, תוך ציון מספר העמודות באותה שורה.

challenge icon

אתגר

קל

צרו מתודה בשם createJaggedArray שמקבלת מספר שלם n כקלט ומחזירה מערך משונן של מספרים שלמים. המבנה של המערך המשונן צריך להיות כך:

  1. בשורה הראשונה צריך להיות איבר אחד.
  2. בשורה השנייה צריכים להיות 2 איברים.
  3. בשורה השלישית צריכים להיות 3 איברים.
  4. וכן הלאה, עד לשורה ה־n, שבה צריכים להיות n איברים.

אתחלו כל איבר במערך במכפלה של אינדקס השורה שלו באינדקס העמודה שלו (החל מ־1). לדוגמה, הערך של האיבר בשורה השנייה ובעמודה הראשונה צריך להיות 2 * 1 = 2.

נסו בעצמכם

// כתבו את הקוד שלכם רק בתוך המחלקה. אל תכתבו main() או קוד כלשהו מחוץ למחלקה זו.
class CreateJaggedArray {
    public static int[][] createJaggedArray(int n) {
        // כתבו כאן את הקוד שלכם
    }
}
quiz iconבחנו את עצמכם

השיעור הזה כולל חידון קצר. התחילו את השיעור כדי לענות עליו ולעקוב אחרי ההתקדמות.

כל השיעורים ביחידה לוגיקה וזרימת תוכנית

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