ת ר ג י ל 1 ב ק ו ר ס מ ב ו א לתכנות 202.1.9031 JAVA סמסטר ב, ת נ א י ם ו ל ו ל א ו ת תאריך אחרון להגשה בציון מלא : 02.04.19 עד שעה : 23:55, כ ל יום איחור ל א מ א ו ש ר א ו ח ל ק ממנו מודריד 10 נקודות מציון העבודה. מתרגל אחראי : אבישי קריף. שעות קבלה: יתעדכנו בתחילת כל שבוע בהודעה באתר הקורס. א ב ק ש לתאם הגעה מראש ב מ י י ל. krifh@bgu.ac.il ב נ י י ן 30 ח ד ר. 212 ב נ ו ס ף, ב כ ל ב ע י ה נ י ת ן לשאול שאלות בפורום המטלה. ש י מ ו ל ב ב ק ו ב ץ ז ה 6 ע מ ו ד י ם. תיאור המטלה : מ ט ל ה זו מורכבת משני סעיפים תחת תפריט בחירה אחד למשתמש. הסעיפים בלתי תלויים. ע ל ה ד ר י ש ו ת ו ה פ ל ט י ם ל ה י ו ת ז ה י ם ב ד י ו ק ל מ ו פ י ע ב ד ו ג מ א ו ת ו ב ה ס ב ר י ם וכל סטייה מכך תגרור הורדת צ י ו ן. הצגת התפריט למשתמש בכל הרצה : בתחילת התוכנית ובכל סיום הרצת סעיף בהצלחה או עקב שגיאה, י ו צ ג למשתמש התפריט הבא : כאמור, התפריט יוצג מחדש ל א ח ר כ ל פ ע ו ל ה ע ל ידי שימוש ב ל ו ל א ה ע ד ל ל ח י צ ה ע ל 0. כ ל ה ק ל ד ה ש ל מ ס פ ר א ח ר ש א י נ ו ב י ן 0 ל-, 2 י ו ב י ל להודעת שגיאה Wrong menu input ולאחר מכן יוצג התפריט שוב. ל ה ל ן ד ו ג מ א ל ה ק ל ד ה לא חוקית : א פ ש ר ו ת ר א ש ו נ ה 0 ב ת פ ר י ט : ב ע ת ל ח י צ ה ע ל 0 ולאחר מכן Enter תסתיים, התוכנית 12 Wrong menu input ב ה ו ד ע ה : Program. End ל ה ל ן ד ו ג מ א : 0 End Program
כ ו ל ל )( כולל (, תציג התוכנית את( א פ ש ר ו ת ש נ י ה 1 ב ת פ ר י ט : ר ק ע : מ ס פ ר א ר ש ד ה ו א מ ס פ ר ש מ ת ח ל ק בסכום ספרותיו. ל ד ו ג מ א : ה מ ס פ ר 81 ה ו א מ ס פ ר א ר ש ד כ י ו ו ן שסכום ספרותיו הוא 9 ו- 81 מתחלק ב-. 9 כ ך ג ם 48, 36, 100 ו ע ו ד. ב ע ת ל ח י צ ה ע ל 1 ולאחר מכן, Enter יתבקש המשתמש ל ה כ נ י ס מ ס פ ר ש ל ם ח י ו ב י ה ג ד ו ל מ מ ש מ- 9 וקטן ממש מ- 100 אם הוכנס. ב ש ל ב זה מספר ל א נכון, תצא הודעה error! Input number ו ה ת פ ר י ט ה ר א ש י י ו צ א מ ח ד ש. א ם ה ו כ נ ס מ ס פ ר ת ק י ן, יתבקש המשתמש להכניס מספר נוסף הגדול ממש מהמספר הראשון שהכניס ו ק ט ן מ מ ש מ- 1001 מספר. אם הכניס error! Input number והתפריט הראשי יוצג מחדש. ה י ה והקליד המשתמש מספרים חוקיים : כ ל ו מ ר ב י ן 10 ל א נ כ ו ן ב ש ל ב ז ה, ש ו ב ת צ א ה ו ד ע ה ל- 1000 כ ל מספרי הארשד ב ט ו ו ח ו ב נ י ה ם ר ו ו ח ב ו ד ד ולבסוף תציין ב ש ו ר ה נ פ ר ד ת כמה מספרים הוצגו ב ד י ו ק ע ל פ י הדוגמא שתוצג בהמשך. אם ל א נמצאו מספרים ב ט ו ו ח זה, תציג התוכנית הודעה למשתמש שאין מספרי ארשד בטווח שהקליד ב ד י ו ק ע ל פי הדוגמא שתוצג ב ה מ ש ך. ל ה ל ן ד ו ג מ א ל ה ק ל ד ה ל א תק י נ ה ש ל ה מ ס פ ר ה ר א ש ו ן ב ט ו ו ח : 1 9 Input error! נ י ת ן לראות שהמשתמש שהתבקש להכניס מספר ר א ש ו ן ב י ן 10 ל- 99 הקליד מספר שלא ב ט ו ו ח ו ל כ ן התפריט הוצג שוב. ל ה ל ן ד ו ג מ א ל ה ק ל ד ה נכונה של המספר הראשון בטווח אך הקלדה ל א נכונה של המספר השני ב ט ו ו ח : 1 18 Please enter positive number >:18 and <=1000: 17 Input error! נ י ת ן לראות שהמשתמש הקליד מספר ראשון חוקי, התוכנית הציגה את הבקשה להקלדת המספר ה ש נ י ת ו ך ה צ ג ת ה ט ו ו ח ה מ ב ו ק ש א ך ה מ ש ת מ ש ה ק ל י ד מ ס פ ר לא חוקי. ) ק ט ן מ- 18 (.
ל ה ל ן ד ו ג מ א לקלט טווחים תקינים שמציגים את המספרים שבטווח ולבסוף את סיכום כמות המספרים ש ה ו צ ג ו. ) הערה : אל דאגה אם המספרים חורגים את רוחב המסך ויורדים מטה לשורה חדשה, התעלמו מכך ( : 1 18 Please enter positive number >:18 and <=1000: 98 18 20 21 24 27 30 36 40 42 45 48 50 54 60 63 70 72 80 81 84 90 Total Arshad numbers is: 21 נ י ת ן לראות שהמשתמש הקליד טווח חוקי ולכן התוכנית הציגה את כל מספרי הארשד שבטווח ו ל ב ס ו ף א ת כמות המספרים. ל ה ל ן ד ו ג מ א ל ט ו ו ח ב ו א י ן מ ס פ ר י א ר ש ד והפלט הנדרש : 1 64 Please enter positive number >:64 and <=1000: 69 No Arshad numbers between 64 to 69 נ י ת ן ל ר א ו ת ש ה ט ו ו ח א מ נ ם ח ו ק י א ך א י ן מ ס פ ר י א ר ש ד ב ט ו ו ח ז ה ו ל כ ן יצאה הודעה מתאימה. ש י מ ו ל ב! ע ל י כ ם לכתוב פלטים בדיוק מוחלט לפלטים שמוצגים לכם בדוגמאות אלו!! כתיבת הודעות אחרות ל מ ש ת מ ש א ו ט י פ ו ל א ח ר ב ק ל ט לא חוקי תגרור הורדת צ י ו ן משמעותית ביותר ל ע ב ו ד ה!!! הקוד שמפרק את המספר לספרות חייב להתבצע באמצעות לולאה. אי מימוש ב א מ צ ע ו ת לולאה תגרור הורדת ציון 60% מהסעיף..1.2
מ ס פ ר( אפשרות שלישית 2 בתפריט: ב ל ח י צ ה ע ל 2 ולאחר מכן, Enter על המשתמש ל ה ק ל י ד מ ס פ ר ש ל ם ח י ו ב י ה ג ד ו ל מ- 1. א ם ה ו ק ל ד מ ס פ ר ל א בטווח תופיע הודעת השגיאה ע ל פי הדוגמא הבאה : -3 Input error! ב ה ק ל ד ת ערך חוקי, תציג התוכנית את כל המספרים הראשוניים מופרדים ב ר ו ו ח ב ו ד ד ה ח ל מ- 2 ראשוני הוא מספר שלם המתחלק בעצמו ו ב- 1 ב ל ב ד (. ע ד ו כ ו ל ל המספר שהוקלד ) ב ה נ ח ה ש ה ו א ר א ש ו נ י בעצמו או שיוצג הראשוני הכי גדול שקטן ממנו (. ל ה ל ן ד ו ג מ א ו ת : 13 2 3 5 7 11 13 קלט : 13 ק ל ט : 2 2 2
קלט : 24 24 2 3 5 7 11 13 17 19 23 ב ס ע י ף זה, חובה להשתמש בלולאה / לולאות. אי שימוש כ נ ד ר ש יגרור הורדת נ י ק ו ד כלל הסעיף. קראו היטב את ההערות בדף הבא
ה ע ר ו ת: ל א ל ה י ל ח ץ. ה ע ב ו ד ו ת י ו ג ש ו ב י ח י ד י ם ב ל ב ד. כ ל י ו ם א י ח ו ר א ו ח ל ק מ מ נ ו י ה י ה במחיר 10 נ ק ו ד ו ת, לדוגמא איחור ב 27 ש ע ו ת י ק נ ה צ י ו ן מקסימאלי של 80 ל ע ב ו ד ה. י ש להגיש קובץ zip בשם <id>.zip כ א ש ר <id> ה ו א מ ס פ ר ת ע ו ד ת ה ז ה ו ת ש ל כ ם. ב ת ו ך הקובץ הנ " ל יהיה קובץ java ב ו ד ד ) ללא תיקיות ( בשם Assignment1.java ב ד י ו ק. נ י ת ן להניח שבסוף הזנת הקלט המשתמש י ק ל י ד enter ו ל א כ ל כפתור אחר. נ י ת ן להניח שהקלט תמיד י ה י ה מ ס פ ר ש ל ם א ו מ מ ש י ב ה ת א ם ל ש א ל ה. כ ל ו מ ר ע ל י כ ם ל ה ש ת מ ש ב nextint() בשביל קלט שלם מ ה מ ש ת מ ש. ) ת ז כ ו ר ת https://docs.oracle.com/javase/7/docs/api/java/util/scanner.: (html.1.2.3.4.5.6 ב מ ט ל ה ז ו נ י ת ן ל ה ש ת מ ש אך ורק בלולאות ומשפטי תנאי. אין ל ה ש ת מ ש בפונקציות, מערכים א ו כל מבנה נתונים אחר ו כ ל נושא שטרם נ ל מ ד. ) מ ל ב ד Math.abs שהוזכרה קודם ל כ ן (. ה ע ב ו ד ה צ ר י כ ה להיות מוכלת ב ח ב י ל ת ברירת המחדל. כ ל ו מ ר בתחילת הקובץ שלכם ל א אמור להופיע המשפט <name>; package ב א ח ר י ו ת כל סטודנט ל ה ת ע ד כ ן ב ש י נ ו י י ם / ע ד כ ו נ י ם באתר הקורס. י ש ל ש מ ו ר על הקוד במקום שנגיש אך ו ר ק לכם, סיבות כגון מחשב שניזוק או דיסק און ק י ש נ ש ר ף ל א י ת ק ב ל ו כסיבות מוצדקות ל ה ג ש ת ע ב ו ד ה ב א י ח ו ר. לעבודה אסור ל ה כ י ל ולו warning אחד מלבד זה השייך לשורת ה-.scanner י ש לתת שמות משמעותיים ל מ ש ת נ י ם, י ש להעיר הערות ב ר ו ר ו ת ו מ ב א ר ו ת על העבודה, מרכיבים אלו הינם חלק מהניקוד על העבודה. על ההערות ל ה י ו ת כ ת ו ב ו ת ב א נ ג ל י ת בלבד מתומצתות ו ב ש י ק ו ל ד ע ת. י ש להקפיד שהעבודה תהיה קריאה. אין לכתוב שורות קוד ארוכות מאוד ו י ש ל ה ק פ י ד ע ל ה ז ח ה ) א י נ ד נ ט צ י ה) : על קטעי הקוד הנמצאים ב ת ו ך ל ו ל א ה א ו if ל ה י ו ת מ ו ז ז י ם י מ י נ ה בtab. ל מ י ד ע נ ו ס ף על אינדנטציה ר א ה ע ר ך https://en.wikipedia.org/wiki/indent_style א י ן ל ה ש ת מ ש בחומר שאינו נ ל מ ד ב כ י ת ה ע ד ר ג ע פרסום התרגיל. בפרט אין ל ה ש ת מ ש ב כ ל ס פ ר י ה, פונקציה, או כ ל ק ט ע ק ו ד א ח ר ש ל א ה ו ע ב ר ב ש י ע ו ר / תרגול ע ד לרגע הפרסום. מ ו מ ל ץ ל א לכתוב את כל הקוד ו ר ק א ז ל ק מ פ ל ולדבג, אלא לכתוב חלק אחד ו ר ק לאחר שחלק זה מקומפל ומדובג היטב להמשיך הלאה. מ ו מ ל ץ ל א ל ח כ ו ת לרגע האחרון ולהתחיל את העבודה בהקדם האפשרי. שאלות בנוגע ל ע ב ו ד ה י ש לפרסם בפורום העבודה הנמצא באתר הקורס. לפני פרסום ש א ל ה, י ש ל ע ב ו ר על השאלות שכבר נענו בפורום ולוודא שהשאלה ל א נ ש א ל ה כ ב ר וקיבלה מענה. שאלות שיישלחו למיילים של צוות הקורס או שאלות חוזרות ל א י ק ב ל ו מ ע נ ה. כ מ ו כן, אין לשאול שאלות בנוגע לעבודה במהלך התרגול או בהפסקות. נ א ל ש מ ו ר על הגינות אקדמית..7.8.9.10.11.12.13.14.15.16.17.18.19