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