שיעורי הבית

שיעורי בית עיוניים

הוראות כלליות

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

השיעורים

סטטוס פתרון הערות תאריך הגשה מטלה
הוחזר ראשון In Question 2: "Delete-Next" should be "Delete-After" 11/03/10 ראשונה
הוחזר שני 08/04/10 שניה
הוחזר שלישי 22/04/10 שלישית
הוחזר רביעי 29/04/10 רביעית
הוחזר חמישי לבקשת סטודנטים, המטלה קצרה מהרגיל 11/05/10 חמישית
הוחזר שישי 25/05/10 שישית
הוחזר שביעי 03/06/10 שביעית
הוחזר שמיני 17/06/10 שמינית

מקרא:

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

שיעורי בית מעשיים

הערות בדיקות תאריך הגשה קובץ שלד הוראות
דרישת הסיבוכיות מתייחסת לפעולת המילון (הכנסה, מחיקה, חיפוש, מינ ומקס) בלבד הקובץ של הבודק 1 הקובץ של הבודק 2 3/05/2010 RBTree.java 1
הקובץ של הבודק 10/06/2010 LazyHeap.java 2

הוראות כלליות

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

קוד

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

מסמך

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

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

מה להגיש

שיעורי הבית יוגשו בשתי דרכים - בתיקיית הבית ובעותק מודפס.

הגשה אלקטרונית


שני בני הזוג חייבים להחזיק עותקים זהים של התרגיל בתיקיות הבית שלהם.
בתוך תיקיית הבית שלכם שבשרתי בית הספר צרו תיקיה בשם
ds10b
תרגיל 1 יוגש בתיקיה
~/ds10b/ex1
תרגיל 2 יוגש בתיקיה
~/ds10b/ex2
כאשר ~ (גל) מסמן את תיקיית הבית שלכם.
בתוך התיקייה יהיו שני קבצים בלבד - קובץ הג'אווה וקובץ המסמך שהוגש.
קובץ הג'אווה יתבסס עץ קובץ השלד שניתן לכם כחלק מהתרגיל, וישמור על השם המקורי שלו (שימו לב לרווחים ולאותיות רישיות)
קובץ המסמך יהיה באחד הפורמטים הבאים:
txt, doc, rtf, odf, ps, pdf
לקבצים יהיו הרשאות גישה כמפורט בהמשך.
תאריך השינוי של הקובץ ישמש כעדות להגשה בזמן, אסור לשנות את הקובץ אחרי מועד ההגשה.

הגשה מודפסת

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

הציון

הציון מורכב מנכונות המימוש, יעילות המימוש, איכות ובהירות התיעוד, ביצוע המדידות נכונה.
שימו לב -
קוד שעובד הוא לא ערובה לציון גבוה.
אין תשובה "נכונה" למדידות, יש ביצוע נכון.

עבודה על מחשבי בית הספר

ניתן לעבוד מהבית על שרתי בית הספר.
ראו הוראות כאן

הרשאות

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

The permissions of the entire path from your home directory down to the exercise files themselves should be 755, to enable reading by the checkers. You may use the following commands, which should be used from a linux terminal window, either in the lab or remotely from home (using Putty, for example):

chmod 711 ~
chmod -R 755 ~/ds10b

It is very important to submit the project with correct file permissions. A project without the right access permission cannot be check and would not be graded.

To make sure that you have the right permissions, do the following:
A. Run:

ls -lR ~/ds10b

The result should be something like that:
/a/home/cc/students/cs/student/ds10b/:
total 4
drwxr-xr-x 2 student student 4096 2009-10-29 20:14 ex1

/tmp/ds10b/ex1:
total 0
-rwxr-xr-x 1 student student 0 2009-10-29 20:14 example.java

Where the line of each directory should start with drwxr-xr-x, and the line of each file should start with -rwxr-xr-x

In case of problems with file, you can contact the helpdesk.

Unless otherwise stated, the content of this page is licensed under Creative Commons Attribution-ShareAlike 3.0 License