האם להפריד את ספרת הביקורת משאר הספרות באמצעות מקף, או פשוט לתת מספר אחד ארוך בלי הפרדה?
יש שני חלקים לשאלה - אני רק רוצה לוודא אם אפשר פשוט להגיש את התוכנית שנכתבה בסעיף ב’ כי היא מכילה את הקוד של סעיף א’.
יש לי שתי בעיות טכניות למרות שהקוד עצמו עובד:
א. לפעמים יש שורות ריקות. הוא לא מדלג על מספרים אבל הוא מוציא X מספרים ואז שורה ריקה ואז שוב X מספרים. ראיתי שהשורות הריקות האלה נוצרות במקומות שונים אם אני מריצה את הקוד בדפדפנים שונים, כך שנראה לי שזה לא קשור לקוד עצמו אלא יותר לדרך הצגה או לדפדפן עצמו. אני רק רוצה לוודא שזה תקין. שוב, לא מתפספסים מספרי זהות.
המחברת נתקעת הרבה לפני שהו רץ עד הסוף. ממש ברמה שצריך לצאת מהגופיטר. אני לא חושבת שזה נובע מחוסר יעילות קוד, או לפחות לא בחלקו הגדול, כי זה מוציא הרבה מספרים ממש מהר ואז במספר מסויים נתקע וגם הוא נתקע כל פע במספרים קצת שונים (אם כי קרובים). זה בוודאות לא הבעיה לחשב את ספרת הביקורת כי בדקתי את החישוב עם מספרים מלאים של ת.ז ויצא בסדר ומהר. המחשב שלי פשוט מאד חלש לדעתי זאת הבעיה העיקרית (הוא גםמתחמם מאד במהלך העשר דקות - רבע שעה שאני נותנת לזה לרוץ). האם תקין להגיש קוד כזה?
תודה!
orpazf
לא צריך
אם אפשר להוסיף בתחתית הקוד שלך קריאה לפונקציה של סעיף א’ שתעבוד - זה בסדר ואפשר להגיש ככה.
נשמע מוזר, כדאי לבדוק ב-python tutor אם זו בעיה בקוד. אם זה אחרי הרבה שורות אז אולי זו בעיה של ג’ופיטר בכלל.
נשמע מאוד הגיוני - ג’ופיטר והדפסות גדולות לא מתמודדים היטב, ואמורים לבדוק פה המוןןןן מספרים. אל תשכחי לעשות clear cell output לפני הגשה - ומומלץ גם לפני שאת סוגרת את המחברת
hadas.nevenzal
בקשר ל3 והשורות הריקות- בדקתי כמובן בטיוטר זה לא קורה לי, אבל שם אני יכולה להריץ עם הקוד שלי גג 23 דוגמאות.
אז זה אומר שאם הוא רץ בלי בעיה על שני מליון מספרי תעודת זהות פחות או יותר, הקוד שלי בטוח נחשב תקין להגשה? גם אם הוא לא מצליח לרוץ עד הסוף?
orpazf
זה לא שהוא לא מצליח, זה שג’ופיטר לא מצליחה לעמוד בזה. אם את רוצה להיות בטוחה את יכולה לחלק את הקריאה למקטעים - כל פעם לרוץ על למשל חצי מיליון ת"ז, ואז לעבור לחצי מיליון הבאים
לייק 1
hadas.nevenzal
כן בשביל לעשות את זה אצלי אני אצטרך ממש לערוך את הקוד.
תודה רבה אורפז על העזרה שלך
האם איש סגל יכול להגיב על זה? מה קורה אם הגופיטר שלי לא מצליח להריץ את הקוד עד לסוף כל המקרים ? זה תקין? תודה!
aviadamar
אם הקוד שלך עובד נכון על חצי קוד (נניח) אז הוא הוא אמור לעבוד על הקוד (בגדול)
כמובן שאת יכולה לבדוק אותו על מקטעים כמו שהוצע לך ואם הוא עובד עבור כל מקטע בנפרד אין סיבה שלא יעבוד על הכל.
הקוד שאת מעלה למערכת הוא הקוד הגנרי שעובר על הכל ולכן זה לא משנה אם ספציפית אצלך הוא לא עובד
כל עוד הוא נכון.
גם אם תעלי את הקוד ובו יראו שהוא מתייחס לחלק מהקוד (בגלל שכך אצלך זה עבר) לא מאמין שיהיה בעיה כי הלוגיקה של העבודה עם הטקסט לא משנה עבור האורך היא אמורה להופיע בשני המקרים.
devorack
סליחה שאני פה בתפקיד הפרטי-פופר, אבל הפואנטה של התרגיל הזה היא בדיוק להריץ את זה במקטעים, לא?
זה לא צריך לדעתי לשנות את כל הקוד, לכל היותר את שורת הקריאה (אלא אם כן בכלל לא הבנתי נכון את התרגיל)
aviadamar
הרעיון הוא להחזיר את זה עם גנרייטור (כל פעם שורה)
אבל בגלל שיש הרבה מידע יש מחשבים שלא “צולחים” את זה
אז בגדול אפשר פשוט לבדוק לכמה מקטעי מספרים טיפוסיים כדי לראות שזה אכן עובד טוב במצב כזה שהמחשב לא סוחבב את הבדיקה שלמה
נשמע שעשית מעולה !
כמובן שגם יש שתי גישות של גנרייטורים שאחת בבסיס שלה היא על “טווח” מספרים. אבל גם בה אם מריצים על טווח גדול יש מחשבים שקורסים
לייק 1
Yam
אין לי בעיה שיוגשו תשובות שיקח להן הרבה מאוד זמן (או שחלק מהמחשבים לא יצליחו). זה בסדר, העיקר שהפתרון נכון