100% Guaranteed Results


DS – מעבדה 1. נושא: עבודה עם מערכים Solved
$ 20.99
Category:

Description

5/5 – (1 vote)

מבוא:
מערך הוא מבנה נתונים בסיסי השומר את הנתונים ומאפשר גישה מהירה אל האיברים שבו.
במעבדה זו נציע שימוש במערך לצורך החזקת נקודות במישור (בעלות שתי קואורדינטות).
מטרות:
1) מימוש רשימות של נקודות בעזרת מערך, כולל פעולות המאפשרות לנוע במערך זה (חלק א’).
2) שימוש בJava tokenizer , לצורך קריאת רצפים של תווים מהקלט (חלק ב’).
חלק א׳
תיאור:
1. נגדיר רשימה סדורה של נקודות: נקודה במישור מאופיינת ע”י שתי קואורדינטות:
P = (x,y)
2. שימוש בקואורדינטות הינו רב-תחומי: בגרפיקה ממוחשבת, מודלים חישוביים להצגת קווים, עקומות וכו.’
3. הממשק מאפשר הוספת נקודות, שאילתות שונות לגבי מצב המבנה, ותזוזה בתוך המבנה.
4. לצורך התזוזה בתוך המבנה נגדיר סמן (cursor)
5. להלן הגדרת הממשקPointList :
5.1 איברי הרשימה:
כל איבר יהיה מסוג נקודהPoint (מחלקה המוגדרת בספריהjava.awt שמגיעה עםJava ) המתארת נקודה במישור עםקואורדינטות (x,y).
5.2 מבנה הרשימה:
– ברשימה לא ריקה, בכל רגע נתון נקודה אחת תהיה מסומנת ע”י הסמן.
– עליכם “לטייל” ברשימה ולשנות את מיקום הסמן.
5.3 שיטות:
השיטות מוגדרות ומתוארות בממשקPointList , כפי שניתן לראות גם בתמונה הבאה.

5.4 בנאים:
– בנאי ברירת מחדל היוצר מערך בגודלMAX_SIZE
– בנאי עם פרמטר יחיד היוצר מערך שגודלו כערך הפרמטר.
דרישות המעבדה – חלק א:’
1. ממשו את הממשקPointList במחלקה בשםArrayPointList תוך שימוש במערך לצורך שמירת רשימת הנקודות
2. בדקו את המחלקה שכתבתם בעזרת מחלקת הבדיקהPointListTest שנכתבה בJUnit .
חלק ב’
תיאור:
בחלק זה נכירtokenizer שלJava המשמש לניתוח קלטים.
להלן דוגמה של קטע קוד העושה שימוש ב-tokenizer.
קטע הקוד בדוגמה קורא את הנתונים מהקלט התקני ומשתמש בממשקPointList .
המילים מופרדות ע”י הרווחים.
שימו לב, השיטהtokens.nextToken קוראת את רצף הסימנים הבא. רצף זה יכול להיות מילה (TT_WORD) אומספר (TT_NUMBER). אם הרצף הוא מילה, הוא יישמר בsval ואם הוא מספר הוא יישמר בnval . התוכניתממשיכה לקרוא את המספרים עד שתופיעה מילה (למשלabc ).
שימו לב, כי קטע קוד זה הוא רק דוגמה לשימוש ב-tokenizer.
ההוראות למה שאתם נדרשים לבצע בחלק זה של התרגיל מופיעות אחריו.

דרישות המעבדה – חלק ב:’
כתבו מחלקה בשםPointListCommandLine התומכת בפקודות הבאות:
פעולה פקודה
מוסיף נקודה לסוף הרשימה add x y
מראה את הנקודה המוצבעת ע”י הסמן curr
מזיז את הסמן לנקודה הבאה next
מזיז את הסמן לנקודה הקודמת prev
מזיז את הסמן לתחילת הרשימה start
מזיז את הסמן לסוף הרשימה end
שאילתא: האם הרשימה ריקה? empty
שאילתא: האם הרשימה מלאה? full
מחק את כל הרשימה clear
סיים את התוכנית quit
כך ש(לדוגמה) עבור הקלט הבא:
add 1 2 add 2 3
start curr next curr quit :יתקבל הפלט
true (2 ,1) true (3 ,2)
סדר העבודה ופרטים טכניים
● הורידו לתוךEclipse מתוךGitHub את הפרויקט היחיד ב
https://github.com/ykanizo/DSLab2022-2023Public
.Eclipse בתוך התפריט שלFile->Import->Git->CloneURI השתמשו ב○
○ אם אתם עובדים בVDI , מומלץ לשנות את המיקום המוצע לפרויקט בתיקייה כלשהי בכונן
.H
פורמט קובץ ההגשה ובדיקתו:
בשםZIP פורמט : יש להגיש קובץ43_lab01_123456789_987654321.zip
(כמובן, יש להחליף את המספרים עם מספרי ת.ז. של המגישים)
על הקובץ להכיל את כל קבצי הJAVA שכתבתם. שימו לב: הקובץ לא יכיל את התיקיה שבה הקבציםנמצאים, רק את הקבצים עצמם (אם לא ברור מה ההבדל, ראו סרטון הדגמה מטה).
ניתן ליצור את הקובץ בשרת המכללה ע”י הפקודה הבאה:
zip ~/43_lab01_123456789_987654321.zip *.java
שיש לתת כאשר אתם נמצאים בתיקייהsrc של הפרויקט. הקובץ יווצר בתיקיית הבית שלכם.
בדיקה: בדקו את הקובץ שיצרתם בתוכנת הבדיקה בקישור:
https://csweb.telhai.ac.il/
ראו סרטון הדגמה של השימוש בתוכנת הבדיקה.
חשוב !!!
בדיקת ההגשות תבוצע ברובה ע”י תוכנית הבדיקה האוטומטית הנ”ל. תוצאת הבדיקה תהייהבעיקרון זהה לתוצאת הבדיקה הנ”ל שאתם אמורים לערוך בעצמכם . כלומר, אם ביצעתם אתהבדיקה באתר החוג, לא תקבלו הפתעות בדיעבד. אחרת, ייתכן שתרגיל שעבדתם עליו קשה ייפסלבגלל פורמט הגשה שגוי וכו’. דבר שהיה ניתן לתקנו בקלות אם הייתם מבצעים את הבדיקה. היותואין הפתעות בדיעבד, לא תינתן אפשרות של תיקונים, הגשות חוזרות וכד’.
הגשה שלא מגיעה לשלב הקומפילציה תקבל ציון 0.
הגשה שלא מתקמפלת תקבל ציון נמוך מ- 40 לפי סוג הבעיה.
הגשה שמתקמפלת תקבל ציון 40 ומעלה בהתאם לתוצאות הריצה, ותוצאת הבדיקה הידנית שלהקוד (חוץ ממקרה של העתקה).
תכנית הבדיקה האוטומטים מכילה תוכנה חכמה המגלה העתקות. מקרים של העתקות יטופלובחומרה.

Reviews

There are no reviews yet.

Be the first to review “DS – מעבדה 1. נושא: עבודה עם מערכים Solved”

Your email address will not be published. Required fields are marked *

Related products