מבוא לתכנות ב- JAVA תרגול 11

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

מבוא למדעי המחשב

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

מבוא למדעי המחשב

מבוא למדעי המחשב

מבוא לתכנות ב- JAVA תרגול 7

Slide 1

מבוא למדעי המחשב

תרגול 1

תרגול 1

מבוא למדעי המחשב - חובלים

תרגול 1

Slide 1

PowerPoint Presentation

מבוא למדעי המחשב

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

מהוא לתכנות ב- JAVA מעבדה 3

PowerPoint Presentation

מבחן 7002 פרטים כלליים מועד הבחינה: בכל זמן מספר השאלון: 1 משך הבחינה: 3 שעות חומר עזר בשימוש: הכל )ספרים ומחברות( המלצות: קרא המלצות לפני הבחינה ובדי

PowerPoint Presentation

מספר זהות: סמסטר ב' מועד א' תאריך: 11102/4// שעה: 9:22 משך הבחינה: 3 שעות חומר עזר: אין מותר השימוש במחשבון פשוט בחינה בקורס: מבני נתונים מרצה: הדר בי

תרגול מס' 4: המתרגם שימוש במחלקות קיימות מחרוזות, קבצים, וקבלת קלט מהמשתמש

Slide 1

מבוא למדעי המחשב - חובלים

Microsoft Word B

Microsoft Word - c_SimA_MoedB2005.doc

Slide 1

הגשה תוך שבוע בשעת התרגול

מבוא למדעי המחשב

Microsoft Word - pitaron222Java_2007.doc

Microsoft PowerPoint - rec3.ppt

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

תרגול 1

PowerPoint Presentation

PowerPoint Presentation

תרגול 3 - מערכים

מבוא למדעי המחשב

שאלהIgal : מערכים דו מימדיים רקורסיה:

שאלהIgal : מערכים דו מימדיים רקורסיה:

Tutorial 11

שאלהIgal : מערכים דו מימדיים רקורסיה:

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

PowerPoint Presentation

פתרון מוצע לבחינת מה"ט ב_שפת c מועד ב אביב תשע"ט, אפריל 2019 מחברת: גב' זהבה לביא, מכללת אורט רחובות שאלה מספר 1 מוגדרת מחרוזת המורכבת מהספרות 0 עד 9.

Slide 1

PowerPoint Presentation

מספר מחברת: עמוד 1 מתוך 11 ת"ז: תשע"א מועד ב סמסטר א' תאריך: 00:11 שעה: 0 שעות הבחינה: משך כל חומר עזר אסור בשימוש בחינה בקורס: מבוא למדעי ה

PowerPoint Presentation

אוניברסיטת חיפה החוג למדעי המחשב מרצה: שולי וינטנר מתרגלים: נעמה טוויטו, מחמוד שריף מבוא למדעי המחשב סמסטר א' תשע"ב בחינת סיום, מועד א', הנחי

אוניברסיטת חיפה החוג למדעי המחשב.5.6 מבוא למדעי המחשב סמסטר א' תשע"ז בחינה סופית מועד א', מרצה: שולי וינטנר מתרגלים: סמאח אידריס, ראמי עילבו

תכנות מונחה עצמים א' – תש"ע

אוניברסיטת חיפה החוג למדעי המחשב מרצה: שולי וינטנר מתרגלים: נעמה טוויטו, מחמוד שריף מבוא למדעי המחשב סמסטר א' תשע"ב בחינת סיום, מועד א', הנחי

PowerPoint Presentation

PRESENTATION NAME

תוכן העניינים

תוכן העניינים

תורת הקומפילציה

איטרטורים: 1 תוכנה 1 סתיו תשע"ג תרגיל מספר 9 הנחיות כלליות: קראו בעיון את קובץ נהלי הגשת התרגילים אשר נמצא באתר הקורס. הגשת התרגיל תעשה במערכת ה moodl

תורת החישוביות תרגול הכנה לוגיקה ותורת הקבוצות מה יש כאן? בקורס תורת החישוביות נניח ידע בסיסי בתורת הקבוצות ובלוגיקה, והכרות עם מושגים בסיסיים כמו א"ב

מקביליות

מס' סידורי: ת.ז.: עמוד 1 מתוך 20 בחינה בתוכנה 1 סמסטר ב', מועד א',תשס"ט 5/7/2009 וולף, ליאור ליאור שפירא, נעמה מאיר, מתי שמרת הוראות )נא לקרוא!( משך ה

PowerPoint Presentation

PowerPoint Presentation

מקביליות

Microsoft PowerPoint - 10_threads.ppt

יוםראשון, 02 ליולי 2014 סמסטר סוף מבחן )236703( עצמים מונחה תכנות - א' מועד 2014, אביב סמסטר קמחי יחיאל ד"ר מרצה: מסינג מיטל עבדאלקאדר, כרם גלעד, ערן

מבחן סוף סמסטר מועד א 15/02/08 מרצה אחראית: דר שירלי הלוי גינסברג מתרגלים: גלעד קותיאל, דניאל גנקין הוראות: א. בטופס המבחן 7 עמודים ו 4 דפי נוסחאות. ב

תרגול מס' 7: תרגילים מתקדמים ברקורסיה

מבוא למדעי המחשב, סמסטר א', תשס"ח תרגול מס' 2

Programming

Microsoft PowerPoint - rec1.ppt

Slide 1

סדנת תכנות ב C/C++

מתכונת עיצוב 3013

הגשה תוך שבוע בשעת התרגול

שעור 6

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

תרגול מס' 7 – חזרה על MST ואלגוריתם Dijkstra

עבודת בית מספר 5: מבני נתונים מבוא למדעי המחשב, סמסטר א' תשע"ט מבוא למדעי המחשב סמסטר א' תשע"ט צוות העבודה: מרצה אחראי: יוחאי טוויטו מתרגלים אחראים: א

Slide 1

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

תוכנה 1 תרגול מספר 12: GUI כתיבת מחלקות גנריות בית הספר למדעי המחשב אוניברסיטת תל אביב 1

Microsoft Word - c_SimA_MoedA2006.doc

Slide 1

Data Structure Assignment no.3 תאריך הגשה: p.m. 11/09/16, 23:59 את העבודה יש להגיש בזוגות במערכת ההגשות.submission system על העבודה להיות מוגשות כקובץ

Algorithms Tirgul 1

Slide 1

Slide 1

פתרון 2000 א. טבלת מעקב אחר ביצוע האלגוריתם הנתון עבור הערכים : פלט num = 37, sif = 7 r האם ספרת האחדות של sif שווה ל- num num 37 sif 7 שורה (1)-(2) (

Microsoft PowerPoint - 07_tdd.ppt

Microsoft PowerPoint - lec10.ppt

מבחן סוף סמסטר מועד ב 28/10/08 מרצה אחראית: דר שירלי הלוי גינסברג מתרגלים: גלעד קותיאל, גדי אלכסנדרוביץ הוראות: א. בטופס המבחן 6 עמודים (כולל דף זה) ו

מועד: א בחינה סופית במתמטיקה דיסקרטית משך הבחינה: 2 1 שעות מרצה: פרופ' תאופיק מנסור תאריך: סמסטר: א תשע"ח m 2 הוראות לנבחן: )1( הבחינה מו

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

Microsoft Word - דוגמאות ב

תמליל:

מבוא לתכנות ב- JAVA תרגול 11

רשימה מקושרת אוסף סדור של איברים מאותו טיפוס. קודקוד ברשימה )Node( מכיל את המידע + הצבעה לקודקוד הבא ברשימה data next first רשימה :)List( מיוצגת ע"י מצביע לאיבר הראשון ברשימה data next data next data next Object1 Object2 Object3 null

מערך לעומת רשימה מקושרת מערך גודל קבוע מראש רשימה מקושרת גודל משתנה בכל הכנסה ומחיקת איבר ברשימה גישה "מהירה" לכל מקום במערך גישה "לא מהירה" למיקום ספציפי הכנסת איבר חדש דורשת השקעה הכנסת איבר חדש בצורה מהירה )addfirst( קל לשימוש מסובך יותר ממערך 3

המחלקה Node public class Node <T>{ private T data; private Node<T> nextnode; public Node(T data){ this.data = data; // class Node<T> constructor1 public Node(T data, Node<T> nextnode){ this.data = data; this.nextnode = nextnode; // class Node<T> constructor2

המחלקה Node )המשך( public void setdata(t data){ this.data =data; public T getdata() { return this.data; public void setnext(node<t> nextnode){ this.nextnode = nextnode; public Node<T> getnext(){ return this.nextnode; { public String tostring() { return " " + this.data;

תיאור השיטות במחלקה Node מטרה שיטה T getdata() void setdata(t data) מחזיר את ה- data Getter - Setter משנה את הערך של השדה data להיות this.data void setnext(node<t> nextnode) Node<T> getnext() - Setter משנה את הערך של השדה nextnode להיות this.nextnode nextnode מחזיר את הערך של Getter

Simple Usage public static void main(string[] args) { Node<Character> bob = new Node<Character>('a', null); Node<Character> joe = new Node<Character>('b', bob); Node<Character> tom = new Node<Character>('c', joe); System.out.println(tom.getData()); System.out.println(tom.getNext().getData());

המחלקה List public class List<T> { private Node<T> first; // class List attribute public List() { this.first = null; // class List constructor public Node<T> getfirst() { return this.first; // getfirst public boolean isempty() { return this.first == null; // isempty

בהמשך נראה את המימוש של הכנסת איבר, כעת נבין שהפונקציה מקבלת מיקום נוכחי וערך עבור יצירת צומת חדשה עוקבת לנוכחית ברשימה )ודוחפת את השאר "ימינה" אם צריך( Simple Usage public static void main(string[] args) { List<Integer> l = new List<Integer>(); l.insert(null, 5); l.insert(null, 6); l.insert(l.getfirst(), 7); System.out.println(l.getFirst().getData()); System.out.println(l.getFirst().getNext().getData()); System.out.println(l.getFirst().getNext().getNext().getData()); 6 7 5

תרגיל: חישוב אורך רשימה נוסיף למחלקה List שיטה לחישוב אורך הרשימה. נשלים את השיטה length כך שהערך המוחזר יהיה אורך הרשימה. public int length(){ int ans = 0; Compute length return ans;

תרגיל: חישוב אורך רשימה נוסיף למחלקה List שיטה לחישוב אורך הרשימה. נשלים את השיטה length כך שהערך המוחזר יהיה אורך הרשימה. public int length(){ int ans = 0; for (Node<T> p = getfirst(); p!= null; p = p.getnext()){ ans++; return ans;

המחלקה List הכנסת איבר לרשימה public Node<T> insert(node<t> pos, T x) { Node<T> q = new Node<T>(x); // creating new node if( pos == null ) { q.setnext(this.first); this.first = q; // first element in the list else { q.setnext(pos.getnext()); pos.setnext(q); return q; // insert

המחלקה List מחיקת איבר מהרשימה pos public Node<T> remove(node<t> pos) { if( this.first == pos ) { this.first = pos.getnext(); // remove first node return this.first; else { Node<T> prev = this.first; while(prev.getnext()!= pos) // searching pos reference prev = prev.getnext(); prev.setnext(pos.getnext()); return prev.getnext(); // remove

תיאור השיטות במחלקה List מטרה מחזירה את הקודקוד הראשון ברשימה מחזירה true אם הרשימה ריקה ו false אחרת מכניסה קודקוד חדש לרשימה שה data שלו הוא x אחרי הקודקוד pos ומחזירה את הקודקוד החדש שהוכנס מוחק את הקודקוד pos מהרשימה והקודקוד העוקב ל pos מוחזר. שיטה Node<T> getfirst() boolean isempty() Node<T> insert(node<t> pos, T x) public Node<T> remove(node<t> pos)

תרגיל: שרשור רשימות ממשו את הפונקציה append שמקבלת שתי רשימות של מספרים עם ls2 ומחזירה רשימה חדשה שהיא השרשור של ls1 ls1,ls2 public static List<Integer> append(list<integer> ls1, List<Integer> ls2){

נגדיר ראשית פונקציית עזר copy בהינתן רשימה עותק של ls נגדיר צומת עזר שיוכנס לרשימה החדשה עם הערך של המקורית ls מחזירה רשימה חדשה שהיא public static List<Integer> copy(list<integer> ls){ List<Integer> ans = new List<Integer>(); if (ls == null){ return null; Node<Integer> pos = null; for(node<integer> p = ls.getfirst(); p!= null; p = p.getnext()){ pos = ans.insert(pos, p.getdata()); return ans;

תרגיל: שרשור רשימות פתרון public static List<Integer> append(list<integer> ls1, List<Integer> ls2){ if (ls1 == null ls1.isempty()){ return copy(ls2); if (ls2 == null ls2.isempty()){ return copy(ls1); List<Integer> ls3 = copy(ls1); Node<Integer> p = ls3.getfirst(); while (p.getnext()!= null){ p = p.getnext(); p.setnext(copy(ls2).getfirst()); return ls3;

מבחן 2015, סמסטר ב, מועד א. 25 ( שאלה 5 לפניך מחלקה :Point כל נקודה במחלקה Point מוגדרת ע"י שתי קואורדינטות שמוגדרים ע"י המילים 'BLUE','RED ו.'GREEN' ) נק' xו- y ואחד משלושה צבעים - אדום,כחול וירוק public class Point { private double x, y; private String color; // Point points) public static List<Point> colorpointsort(point[ ] כתוב פעולה ומחזירה רשימה של כל הנקודות כך שהן מסודרות ברשימה לפי points אשר מקבלת כפרמטר מערך של נקודות הצבעים. והשלישי.'BLUE' למעט סידור זה על כל הנקודות לשמור על הסדר שהיה GREEN RED, השני הצבע הראשון במערך המקורי. הערה: אפשר להשתמש בכל הפעולות של מחלקות List<T> String,Node<T>, וגם בפעולות של מחלקה Point )פעולה בונה, פעולות SET ו - GET ) בלי לממש אותן. רעיון? נבנה 3 רשימות ונשרשר?...

פתרון public static List<Point> colorpointsort(point[] points) { List<Point> reds = new List<Point>(); List<Point> blues = new List<Point>(); List<Point> greens = new List<Point>(); Node<Point> redpos = reds.getfirst(); Node<Point> bluepos = blues.getfirst(); Node<Point> greenpos = greens.getfirst(); for (int i = 0; i < points.length; i++) { if (points[i].color.equals("red")) { redpos = reds.insert(redpos, points[i]); else if (points[i].color.equals("blue")) { bluepos = blues.insert(bluepos, points[i]); else/*if (points[i].color.equals("green")) */{ greenpos = greens.insert(greenpos, points[i]); redpos.setnext(greens.getfirst()); greenpos.setnext(blues.getfirst()); return reds;