Java/שיטות/תרגילים

מתוך ויקיספר, אוסף הספרים והמדריכים החופשי
קפיצה לניווט קפיצה לחיפוש

שיטות פשוטות[עריכה]

כתבו את השיטה printName(String name) המקבלת מחרוזת שמכילה שם, ומדפיסה את השם שהתקבל בצירוף הודעה מתאימה. כתבו גם main מתאים, כך שהתוכנית תוכל לרוץ.


כתבו שיטה נוספת, connectName(String first, String last) המקבלת שם פרטי ושם משפחה, ומחזירה את השם מחובר (כלומר, מחרוזת שמורכבת מהשם הפרטי ושם המשפחה, מופרדים ברווח). שנו את השיטה printName כך שתקבל שם פרטי ושם משפחה, והשתמשו בשיטה החדשה שכתבתם כדי לחבר את השם למחרוזת אחת ולהדפיסו. שנו גם את ה-main בהתאם. התוכנית לא זקוקה ל-main בן יותר משורה אחת כדי לעבוד.


משחק הניחושים[עריכה]

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

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

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

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

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


אתגר:

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