פתרון אחר (אבל קצת סותר?) לדוגמא מחברת 2

הפתרון שלי לדוגמא של העותקים היתה פחות טובה כנראה כי לא הגדרתי משתנים אבל לא השתמשתי בand ולכל ערך יצא לי התשובה הנכונה… איך זה קורה?

בעולם התכנות יש הרבה דרכים לפתור בעיות, אין רק דרך אחת נכונה.
הקוד שלך מעט פחות יעיל בגלל השימוש רק ב-if ולא ב-elif.
בנוסף, הוא פחות קריא כחלק מקוד גדול בשל השימוש במספרים שאינם אומרים דבר - בניגוד למשתנים כפי שהם הגדירו, שברור מיד מה משמעות המשתנה ומאיפה הוא הגיע, ובמקרה של שינוי הקריטריונים לאלבום זהב/פלטינה וכו’ יהיה יותר קשה לשנות את הקוד שלך כי יהיה צריך לחפש מה כל דבר אומר.
הקוד שלך אכן נראה עובד - אם כי לא התעמקתי - אבל כדאי לשים לב לכל הדגשים הקטנים בקוד שלהם, שמדגים איך לכתוב קוד נכון - לא רק עובד אלא גם קריא ויעיל יותר :slight_smile:

2 לייקים

בגלל שהשתמשת רק בifים כל אחד מהם נבדק, כלומר אחרי הבדיקה האם אני עונה על התנאי של 100000 אלבומים תתבצע בדקה גם על התנאי של 500000 וכן הלאה. מכיוון והסדר בו כתבת אותם עולה וכל הifים משנים את התוכן של אותה משתנה, הם למעשה מוחקים את התוכן הקודם שהכנסת אליו ומכתיבים אחד חדש. אם הם לא עונים על התנאי התוכן לא ישתנה וישאר מה שנקבע בתנאי הקודם (אבל הם עדיין יבדקו אם הם עונים על התנאי הבא) . בסופו של דבר תקבל את מה שהתנאי האחרון עליו המספר ענה ציווה לרשום.

2 לייקים