PracticU

מה הבדל בין כל סוגי הלולאות

בלי כתוביותעם כתוביות
PracticU › קורס יסודות התכנות - שפת JAVA - קורס ג'אווה למתחילים › מה הבדל בין כל סוגי הלולאות
מה הבדל בין כל סוגי הלולאות
אחרי שלמדנו את שלוש הלולאות, השאלה היא מתי לבחור בכל אחת מהן. כל אלגוריתם אפשר לכתוב בכל אחת, אבל לעיתים אחת מתאימה יותר, והקוד נקי יותר. בחירה פחות מתאימה מסרבלת את הקוד, ובמקרים חריגים גם פוגעת בביצועים.
השלבים העיקריים
1. כלל הכניסה ללולאה: אם ברגע הכניסה ללולאה ידוע כמה פעמים לרוץ, בוחרים for. אם לא ידוע, בוחרים while או do-while.
2. דוגמה - 100 כוכביות: מספר ההדפסות ידוע, ולכן for.
3. דוגמה - הצגת n כוכביות: המשתמש כבר הכניס את n לפני הלולאה, ולכן ברגע הכניסה ידוע כמה פעמים לרוץ. לכן for.
4. דוגמה - קליטת ציון חוקי: לא ידוע כמה פעמים המשתמש יטעה, ולכן while או do-while.
5. כלל החזרה הראשונה: אם החזרה הראשונה מכילה קוד שונה משאר החזרות, בוחרים while. אם כל החזרות זהות, בוחרים do-while.
6. דוגמה - חזקה עד 0: אם צריך להציג חזקה רק למספרים שלא 0, מתאימה while. אם צריך להציג גם את ה-0 הסופי, מתאימה do-while.
שימו לב
מומלץ להתחיל מההתחלה לבחור את הלולאה לפי הכללים האלה, כי כך עובדים המקצוענים בתחום.
השיעור הבא בקורס: לולאות מקוננות - Nested Loops
מילון מושגים:
לולאה – מבנה בקרה שחוזר על קטע קוד שוב ושוב כל עוד תנאי מתקיים או עבור כל פריט באוסף.
אלגוריתם – רצף מוגדר של צעדים לפתרון בעיה או לביצוע משימה, שאפשר לממש בקוד.
דומיין – תחום ניהולי משותף של מחשבים ומשתמשים ברשת ארגונית, המנוהל מרכזית; גם שם ייחודי של אתר באינטרנט.

פרקי ההרצאה: מה הבדל בין כל סוגי הלולאות

  1. 00:00

    השוואה בין while, do while ו-for

  2. 01:14

    כלל האצבע: האם יודעים כמה פעמים לרוץ

  3. 02:13

    דוגמה: הדפסת 100 כוכביות בלולאת for

  4. 03:13

    הבדיקה ברגע הכניסה ללולאה

  5. 04:26

    קליטת ציון חוקי בלולאת while

  6. 05:42

    קליטת מספרים עד אפס ובחירת הלולאה

  7. 06:35

    מתי do while מתאימה יותר מ-while

תמלול ההרצאה: מה הבדל בין כל סוגי הלולאות

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

  1. 00:02

    אחרי שראינו את שלושת הלולאות הנפוצות while, do-while ו-for אנחנו הולכים להבין מתי נכון להשתמש בכל אחת מהלולאות האלה. האם נכון באלגוריתם להשתמש ב-while, האם נכון להשתמש ב-do-while או האם נכון להשתמש ב-for.

  2. 00:21

    אז בואו נראה מה בעצם החוקים לגבי זה. דבר ראשון אנחנו צריכים להבין שכל לולאה ניתנת להחלפה בלולאה אחרת. הכוונה לולאות כאלה, בין while, do while ו-for.

  3. 00:36

    אנחנו יכולים עבור כל אלגוריתם שאנחנו צריכים לבחור או while או do while או for, אבל עבור כל אלגוריתם יש את הלולאה המתאימה יותר עבורו.

  4. 00:50

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

  5. 01:08

    יש כללי אצבע לגבי איזו לולאה נכון לבחור עבור כל אחד מהמצבים ועבור כל אלגוריתם. כלל האצבע הראשון מאפשר לדעת האם לבחור בלולאת while, do while, או בלולאת for, זאת אומרת האם אנחנו הולכים לכיוון של הוויילים או האם אנחנו צריכים לקחת את 4. בואו נראה

  6. 01:35

    האם אנחנו צריכים אחת מהוויילים או 4. מה בעצם הכלל אומר? והכלל אומר את הדבר הבא אנחנו צריכים להסתכל על רגע הכניסה ללולאה אם ברגע הכניסה ללולאה אנחנו יודעים והמחשב כמובן יודע כמה פעמים עלינו לרוץ הלולאה הנכונה לבחירה תהיה לולאת 4.

  7. 01:58

    אם ברגע הכניסה ללולאה אנחנו או המחשב לא יודעים כמה פעמים לרוץ, למעשה זה המחשב ליתר דיוק, לא יודע כמה פעמים לרוץ, הלולאה הנכונה היא לא for אלא או while או do while תלוי בהמשך האלגוריתם, את זה אנחנו כבר נראה.

  8. 02:19

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

  9. 02:37

    דוגמה נוספת אנחנו צריכים להדפיס את כל המספרים הזוגיים מ-100 עד 100+ ברגע הכניסה ללולא אנחנו יודעים שאנחנו צריכים להתחיל מ-100 ולסיים ב-100+ איזה לולא לבחור כמובן לולאת 4. והנה אנחנו רואים כאן את הקוד אנחנו רוצים לקבל מהמשתמש מספר n ולהציג על המסך n כוכביות האם ברגע הכניסה הלולאה אנחנו יודעים כמה פעמים לרוץ

  10. 03:09

    אם כן אנחנו בוחרים for אם לא אנחנו בוחרים ב while או do while והתשובה היא שכן אנחנו יודעים כמה לרוץ שימו לב לנקודה המעניינת אנחנו לא שואלים האם אנחנו יודעים כמה לרוץ בתחילת התוכנית לפני שהיוזר הכניס את המספר אלא האם אנחנו יודעים כמה לרוץ ברגע הכניסה ללולאה.

  11. 03:34

    ברגע הכניסה ללולאה היוזר כבר נתן לנו את המספר n ולכן אנחנו ברגע הכניסה ללולאה יודעים שאנחנו צריכים לרוץ n פעמים ולהדפיס n stars. אז כמובן שהלולאה שלנו היא לולאת 4 והנה אנחנו רואים כאן את הקוד.

  12. 03:50

    שוב אנחנו יכולים לעשות את זה גם עם while וגם עם do while אבל 4 במקרה הזה תהיה יותר מתאימה בגלל הכלל הזה שאנחנו כרגע לומדים בואו נראה את הדוגמה הבאה אנחנו צריכים לקלוט מהמשתמש שני מספרים a ו-b ואנחנו רוצים להדפיס את כל המספרים ביניהם בסדר עולה לא משנה מה הסדר של a ו-b אנחנו רוצים להדפיס את כולם בסדר עולה איזה לולה לבחור האם ברגע הכניסה ללולה אנחנו יודעים

  13. 04:18

    כמה לרוץ המחשב ליתר דיוק יודע כמה לרוץ תשובה כן הוא כבר קיבל את a ו-b לכן הלולאה המתאימה היא לולאת for והנה אנחנו רואים כאן את הקוד והנה לולאת for שפותרת את זה בצורה הכי אלגנטית.

  14. 04:34

    אנחנו רוצים לקלוט מהיוזר ציון אבל אם הציון הוא לא חוקי כלומר לא בין 0 ל-100 כולל קצוות אנחנו רוצים לבקש מהיוזר שוב פעם להכניס את הציון.

  15. 04:47

    אז איזה לולאה אנחנו רוצים לבצע כאן? ברגע הכניסה ללולאה אנחנו לא יודעים כמה פעמים היוזר הולך לטעות ולהכניס לנו שוב פעם ושוב פעם ושוב פעם ציון שגוי. הוא יכול על ההתחלה להכניס לנו ציון חוקי והוא יכול 17 פעם להכניס לנו ציון שגוי ורק בפעם ה-18 ציון חוקי והוא יכול רק 3 פעמים לטעות אנחנו לא יודעים כמה ולכן איזה לולאה אנחנו נבחור תשובה או

  16. 05:17

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

  17. 05:45

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

  18. 06:01

    איזה לולה הכי מתאימה? אז אנחנו לא יודעים כמה מספרים היוזר הולך להכניס שהם לא יהיו 0 ולכן אנחנו לא יודעים כמה פעמים לרוץ. במקרה הזה או while או do while היא מתאימה ולא לולאת 4. שוב למרות שהיינו יכולים לעשות את זה בלולאת 4 זה פחות מתאים ולכן אנחנו בוחרים או while או do while.

  19. 06:21

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

  20. 06:50

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

  21. 07:18

    הראשון של הלולאה מכיל קוד שונה מבין שאר השלבים של הלולאה.

לקורס המלא: קורס ג'אווה למתחילים אונליין

ההרצאה הקודמת: פקודת Continue בתוך לולאה

ההרצאה הבאה: לולאות מקוננות - Nested Loops

הרצאות קשורות מקורסים אחרים

  • דיסקים - הבדל בין RAID 5, 6, 10, 50, 60
  • סוגי בדיקות
  • סוגי משתנים
  • סוגי קבוצות

קורסים נוספים במסלול

  • קורס מבוא ל-QA - מידע חשוב לבודק תוכנה
  • קורס פוסטמן - Postman - בדיקות לאתרי אינטרנט - API
  • קורס Robot Framework - בדיקות QA ממשק גרפי
  • קורס סלניום בסיסי - בדיקות אוטומטיות - Selenium
  • קורס סלניום מתקדם - CI/CD - Continues Integration
  • קורס מייבן - Maven