Menu
Coddy logo textTech

לולאות מקוננות

חלק מהיחידה יסודות במסלול ה-GO של Coddy. שיעור 49 מתוך 109.

לולאות מקוננות הן לולאות שממוקמות בתוך לולאה אחרת. הלולאה הפנימית רצה במלואה בכל איטרציה של הלולאה החיצונית.

בואו ניצור לוח כפל למספרים 1-3 באמצעות לולאות מקוננות:

for i := 1; i <= 3; i++ {
    for j := 1; j <= 3; j++ {
        fmt.Printf("%d×%d=%d\t", i, j, i*j)
    }
    fmt.Println()
}

לאחר הרצת הקוד הזה, נקבל טבלת כפל שבה כל שורה מייצגת ערך אחד של משתנה הלולאה החיצונית (i) כפול כל הערכים של משתנה הלולאה הפנימית (j). הפלט יוצג על המסך:

1×1=1   1×2=2   1×3=3   
2×1=2   2×2=4   2×3=6   
3×1=3   3×2=6   3×3=9   

בואו נבין איך זה עובד, שלב אחר שלב:

ראשית, הלולאה החיצונית מגדירה את i=1 והלולאה הפנימית רצה עד סופה:

i=1, j=1: prints "1×1=1"
i=1, j=2: prints "1×2=2"
i=1, j=3: prints "1×3=3"

לאחר שהלולאה הפנימית מסתיימת, אנחנו מדפיסים שורה חדשה באמצעות fmt.Println().

לאחר מכן הלולאה החיצונית מגדירה את i=2 והלולאה הפנימית רצה שוב:

i=2, j=1: prints "2×1=2"
i=2, j=2: prints "2×2=4"
i=2, j=3: prints "2×3=6"

לבסוף, הלולאה החיצונית מגדירה את i=3 והלולאה הפנימית רצה פעם אחרונה:

i=3, j=1: prints "3×1=3"
i=3, j=2: prints "3×2=6"
i=3, j=3: prints "3×3=9"

התבנית הזאת של לולאות בתוך לולאות שימושית מאוד לעבודה עם טבלאות נתונים או ליצירת מבנים דמויי רשת.

challenge icon

אתגר

מתחילים

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

השלימו את הלולאות המקוננות כדי להדפיס רשת בגודל 3x3 של כוכביות (*). אחרי כל כוכבית חייב להופיע רווח, כך שכל שורה תיראה כך: * * * (עם רווח בסוף). הפלט הצפוי הוא:

* * * 
* * * 
* * * 

נסו בעצמכם

package main

import "fmt"

func main() {
	// מספר השורות והעמודות ברשת שלנו
	rows := 3
	columns := 3
	
	// TODO: צרו לולאה מקוננת להדפסת רשת של כוכביות (*)
	// הלולאה החיצונית צריכה לעבור על השורות
	// הלולאה הפנימית צריכה לעבור על העמודות
	for i := 0; i < rows; i++ {
		// הוסיפו כאן את הלולאה הפנימית כדי להדפיס כוכביות בכל עמודה
		
		// פעולה זו מדפיסה שורה חדשה אחרי כל שורה
		fmt.Println()
	}
}
quiz iconבחנו את עצמכם

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

כל השיעורים ביחידה יסודות

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