שאלות מהותיות במיוחד על מחברת 3

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

ולשאלה השנייה ואולי אף המהותית ביותר:
בתא עם הטקסט לדוגמא בתרגיל “חתול ארוך הוא ארוך” מבוצע יבוא למודול string.
על שום מה?

בנוגע לשאלה הראשונה, אכן אם לא מכניסים עיגול זה עובר. אפשר להכניס את הround בתור flag לפונקציה כל שיכנס ערך True או Flase (בדיפולט) על ידי המשתמש ללעגל או לא.

בכל מקרה להשאיר גם בלי העיגול זה לגמרי לגיטימי.

בנוגע לstring אני אישית גם לא השתמשתי בזה אבל יש סיכוי שהוא שם כדי לאפשר רמז לדרך מהירה יותר
בכל מקרה הבודק לא יחזיר לך הערה אם הוא לא שם

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

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

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

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

אני חושבת שחשוב לנסות להבין את ההיגיון פה - ראשית, מבחינה מתמטית יש שיקולים בעד ונגד עיגול מספרים, ולכן לדעתי יש לכבד את דרישות התרגיל בנושא (שוב, גם אם נעשה עיגול כדאי בכל מקרה לעשות אותו מחוץ לפונקציה ולהשאיר את הפונקציה נקייה עד כמה שניתן)
שנית, וכנראה חשוב יותר - אני משערת שיש איזה תנאי בבודק שמשווה להוצאת שורש בעצמו. הבודק האוטומטי לא יכול לנחש לכמה ספרות אחרי הנקודה התחשק לך לעגל - כי זה נתון לשיקול דעתו של הכותב, ובין 10 פותרים בטח יהיו לפחות 3 אפשרויות שונות, מה שיהפוך את התנאים שצריך להציב בבודק להרבה יותר מסובכים, ולכן, כדאי שהפונקציה עצמה לא תעגל.

לייק 1