ה ו ר ש ה( י ר ו ש ה מ ת ק ד מ ת "" Java ת ו כ נ ה 1 ב ש פ ת ש י ע ו ר מ ס פ ר : 11 (III בית הספר למדעי המחשב אוניברסיטת תל אביב

גודל: px
התחל להופיע מהדף:

Download "ה ו ר ש ה( י ר ו ש ה מ ת ק ד מ ת "" Java ת ו כ נ ה 1 ב ש פ ת ש י ע ו ר מ ס פ ר : 11 (III בית הספר למדעי המחשב אוניברסיטת תל אביב"

תמליל

1 ה ו ר ש ה( י ר ו ש ה מ ת ק ד מ ת "" Java ת ו כ נ ה 1 ב ש פ ת ש י ע ו ר מ ס פ ר : 11 (III בית הספר למדעי המחשב

2 ב ש י ע ו ר ה י ו ם א ו ס פ י ם ג נ ר י י ם ע ו ד ע ל Geerics ה ה ע מ ס ו י ר ו ש ה ב ח י נ ה 2

3 א ו ס פ י ם ג נ ר י י ם ת ו כ נ ה 1 בשפת 3 Java

4 HashSet class Poit{ it x; it y; public Poit(it x, it y) { this.x = x; this.y = y; Set<Poit> poits = ew HashSet<>(); Poit p1 = ew Poit(1,2); Poit p2 = ew Poit(1,2); poits.add(p1); poits.add(p2); System.out.pritl(poits.size()); Output: 2 ת ו כ נ ה 1 בשפת Java 4

5 HashSet?HashSet א י ך עובדת הכנסה ל Poit: 9,3? Poit: 1,4 Poit: 9,3 Poit: 3,0 Poit: 2,5 Poit: 3,9 Poit: 5,2 ת ו כ נ ה 1 בשפת Java 5

6 HashSet? HashSet א י ך עובדת הכנסה ל Poit: 9,3 hashcode Poit: 1,4 Poit: 9,3 Poit: 3,0 Poit: 2,5 Poit: 3,9 Poit: 5,2 ת ו כ נ ה 1 בשפת Java 6

7 HashSet?HashSet א י ך עובדת הכנסה ל equals Poit: 9, Poit: 1,4 Poit: 9,3 Poit: 3,0 Poit: 2,5 Poit: 3,9 Poit: 5,2 ת ו כ נ ה 1 בשפת Java 7

8 HashSet דרישות מהמימוש של :hashcode עבור אותו האובייקט, hashcode צ ר י כ ה להחזיר את אותו הערך ב כ ל ק ר י א ה. אם שני אובייקטים x ו y מקיימים x.equals(y), הפונקציה hashcode צ ר י כ ה להחזיר את אותו הערך עבור שניהם כ ד א י ל י י צ ר ערכים שונים עבור אובייקטים x ו y שאינם מ ק י י מ י ם x.equals(y) ע ל מ נ ת ל ש פ ר ב י צ ו ע י ם. י י צ ו ר ע ר כ י ם ז ה י ם י פ ג ע ר ק ב ב י צ ו ע י ם, ל א ב נ כ ו נ ו ת. ת ו כ נ ה 1 בשפת Java 8

9 HashSet כ ד א י ל ת ת ל eclipse ל ח ו ל ל ל ב ד א ת ה מ י מ ו ש ש ל.equals ב י ח ד ע ם ה מ י מ ו ש ש ל, hashcode צ ר י ך לוודא שמעדכנים את שני המימושים כ א ש ר י ש ש י נ ו י ב א ו ב י י ק ט י ם ) למשל, מתווספים או מוסרים ש ד ו ת (. HashMap ע ו ב ד ב ד י ו ק באותו האופן. ת ו כ נ ה 1 בשפת Java 9

10 TreeSet Set<Poit> poits = ew TreeSet<>( (a,b)->iteger.compare(a.x, b.x)); Poit p1 = ew Poit(1,2); Poit p2 = ew Poit(1,2); poits.add(p1); poits.add(p2); System.out.pritl(poits.size()); Output: 1 ח י י ב י ם ל ש ל ו ח Comparator Poit אינה Comparable כ י ו ו ן ש ת ו כ נ ה 1 בשפת Java 10

11 TreeSet Set<Poit> poits = ew TreeSet<>( (a,b)->iteger.compare(a.x, b.x)); Poit p1 = ew Poit(1,2); Poit p2 = ew Poit(1,2); Poit p3 = ew Poit(1,3); poits.add(p1); poits.add(p2); poits.add(p3); System.out.pritl(poits.size()); Output: 1 ת ו כ נ ה 1 בשפת Java 11

12 ז ה ק צ ת מ פ ת י ע (.( ה ג י ו נ י,( תלוי אם( TreeSet hashcode אינו ע ו ב ד עם TreeSet ז ה י ש ( HashSet. equals אינו ע ו ב ד ע ם TreeSet של המימוש compare/compareto האלמנטים הם Comparable או שמשתמשים.equals ב) ח י י ל ה י ו ת ע ק ב י ע ם Comparator ב ש ב י ל ב א ח ר ת נ ו כ ל לגלות ששני אובייקטים שאינם equals נ ח ש ב י ם כ ז ה י ם ע " י ה.TreeSet ת ו כ נ ה 1 בשפת Java 12

13 Geerics ד ו ע ל ע

14 ע ו ש י ם מ ה ל ל א מ ח ל ק ו ת ג נ ר י ו ת אחת הדוגמאות השכיחות ל ש י מ ו ש בהמרת טיפוסים ב Java היא השימוש ב מ ב נ י נ ת ו נ י ם לפני 1.5 Java מכיוון שעד ל ג ר ס ה 1.5 ל א ניתן היה ל ה ש ת מ ש ב ט י פ ו ס י ם מ ו כ ל ל י ם geerics) (, נ א ל צ ו כותבי הספריות להניח שהאברים הם מהמחלקה הכללית ב י ו ת ר, כ ל ו מ ר Object נ נ י ח כ י ר ו צ י ם לכתוב מנשק ו / או מחלקה עבור מחסנית, ש ת א פ ש ר ליצור מחסנית של שלמים, מחסנית של מחרוזות, ל ל א ש י מ ו ש ב Geerics ו כ ו ' בדוגמא מנשק ל מ ח ס נ י ת, ומחלקה מממשת (ללא החוזה ( 14

15 מ נ ש ק מ ח ס נ י ת iterface Stack { public Object top (); public void push(object t); public void pop(); public boolea empty(); public boolea full(); 15

16 מ י מ ו ש מ ח ס נ י ת פ ש ו ט public class FixedCapacityStack implemets Stack{ private Object [] cotet; private it capacity; private it topidex; public FixedCapacityStack(it capacity){ cotet = ew Object[capacity]; this.capacity = capacity; topidex = -1; public Object top () { retur cotet[topidex]; 16

17 מ י מ ו ש מ ח ס נ י ת פ ש ו ט public void push(object t) { cotet[++topidex] = t; public void pop() { topidex--; public boolea empty() { retur (topidex < 0); public boolea full() { retur (topidex >= capacity - 1) ; 17

18 נ ש ת מ ש א י ך ב מ ח ס נ י ת? נניח שרוצים מחסנית של מחרוזות : Stack s = ew FixedCapacityStack(5); s.push("hello"); Strig t1 = s.top(); // compilatio error Strig t2 = (Strig) s.top(); //ok ב א ח ר י ו ת המתכנתת לוודא שכל האברים המוכנסים ט י פ ו ס ) כאן מחרוזות (, אחרת ה Castig י י כ ש ל. למחסנית הם מאותו Stack s = ew FixedCapacityStack(5); s.push("hello"); s.push(ew Iteger(4)); s.push(ew PolarPoit(3,2)); Strig t2 = (Strig) s.top(); //compilatio ok. Rutime Error! 18

19 ב ט י ח ו ת ט י פ ו ס י ם מכיוון שבדיקת ההמרה בטיחות טיפוסים ב ז מ ן נ ע ש י ת ריצה אנחנו מאבדים ז ה ו דבר שאינו רצוי אנו מעוניינים ה נ י ת ן לזמן קומפילציה ל ה ע ב י ר כ כ ל ר ב ו ת ב ד י ק ו ת מ ד ו ע? שכפול פתרון אחר : מנשק / מחלקה ק ו ד! נ פ ר ד ת לכל טיפוס איבר הוספת הטיפוסים המוכללים לשפה פותרת ג ם א ת ב ע י י ת בטיחות הטיפוסים ו ג ם א ת ב ע י י ת ש כ פ ו ל ה ק ו ד 19

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

21 ע ו ב ד? ז ה א י ך הקומפיילר ממפה את כל המחלקות המוכללות FCStack<Somethig> למחלקה אחת ר ג י ל ה ) לא מוכללת ( שהיא ב ע צ ם FCStack<Object> בקוד שמשתמש במחלקה מוכללת, הקומפיילר מוסיף לקוד המרות מ נ ת לבצע השמות מ- Object לטיפוס הספיציפי, ל מ ש ל Strig ע ל הקומפיילר מוודא שההמרה תמיד תצליח ו ל ע ו ל ם לא תודיע ע ל :ClassCastError Strig t = (Strig) s.top(); כלומר, הטיפוס המוכלל (T ( נ מ ח ק מהקוד שהקומפיילר מייצר ; הוא שימושי ר ק לבדיקות תקינות טיפוסים בזמן קומפילציה ; התהליך נקרא מחיקה (erasure) 21

22 ב ט י ח ו ת ט י פ ו ס י ם þ ý þ Stack <Strig> ss = ew FCStack <Strig> (5); ss.push("the letter A"); ss.push(ew Iteger(3)); Strig t = ss.top(); // same as:(strig)ss.top(); מכיוון שרק מחרוזות י כ ו ל ו ת להיות מוכלות במחסנית אין ב ה מ ר ה צ ו ר ך ע ו ד Stack <Rectagle> sr = ew FCStack <Rectagle>(5); Rectagle rr = ew Rectagle(...) Rectagle rc = ew ColoredRectagle(...) ColoredRectagle cc = ew ColoredRectagle(...) þ þþ sr.push(rr); sr.push(rc); sr.push(cc); 22

23 ה כ ל ל ה ו י ח ס is-a ý? þ ý þ Stack <Strig> ts = ew FCStack <Strig> (5); Stack <Object> to = ew FCStack <Object> (5); to = ts; ts.push("the letter A"); ts.push(ew Iteger(3)); to.push(ew Iteger(3)); מסקנה : FCStack<Strig> אינו סוג של FCStack<Object> ז ה לא אינטואיטיבי אבל נ כ ו ן. 23

24 י ח ס is-a ב מ ע ר כ י ם האם מתקיים י ח ס is-a בין מערך של מחרוזות למערך של אובייקטים? Strig [] strarr = ew Strig[5]; Object [] objarr = strarr; ה ש מ ה זו חוקית מבחינה תחבירית ב ל ב ד. objarr מ צ ב י ע למערך של מ ח ר ו ז ו ת, ולכן שימוש שגוי ב ו י ג ר ו ם ל ש ג י א ת ז מ ן ר י צ ה. objarr[0] = ew Iteger(); // throws ArrayStoreExceptio ההשמה הבאה ג ם ה י א מ ת ק מ פ ל ת, א ך ג ו ר מ ת ר י צ ה : ז מ ן ל ש ג י א ת Object[] objarry = ew Object[1]; Strig[] strarr = (Strig[]) objarry; // throws ClassCastExceptio Java ה ש י מ ו ש בטיפוסים מוכללים סותם פ ר צ ה ז ו בתחביר המקורי של שפת ומונעת מקרים כ א ל ה כ ב ר בשלב הקומפילציה. ת ו כ נ ה 1 בשפת Java 24

25 מ ע ר כ י ם מ ו כ ל ל י ם ל א ר י צ ה : Java מאפשרת ל נ ו להגדיר מערך עם טיפוס גנרי, אבל מ א פ ש ר לייצר מערך כ ז ה, בגלל מחיקת הטיפוסים ב ז מ ן public class Test<T>{ T[] arr; þ ý public Test(){ arr = ew T[10]; טיפוסים מוכללים " לא מסתדרים " עם מערכים ב. Java ב ד " כ מ ו מ ל ץ להימנע משימוש במערכים מוכללים, ו ל ע ב ו ד עם אוספים מ ו כ ל ל י ם ב מ ק ו ם ז א ת. ת ו כ נ ה 1 בשפת Java 25

26 ט י פ ו ס י ם types) (raw נ א י ם מנגנון ההכללה נ ו ס ף לג ' אווה מאוחר, ולכן היה צ ו ר ך ב מ ח ל ק ו ת פ ר מ ט ר י ו ת גם מקוד ישן שאין בו הכללות לאפשר שימוש class FCStack <T> implemets Stack <T> {... Stack <Strig> vs = ew FCStack <Strig>(); Stack raw = ew FCStack(); //What about T? raw = vs; vs = raw; // ok //"uckecked" compiler warig ב ש י מ ו ש (Object נ א, ב ט י פ ו ס פרמטר הטיפוס מוחלף ב " גבול העליון " כ ל ל ) ב ד ר ך 26

27 ה ג ב ו ל ה ו א ה ש מ י י ם ג ב ו ל ע ל י ו ן ה ו א ש ם ש ל ה מ ח ל ק ה א ו ה מ נ ש ק ש מ מ נ ה יורש הטיפוס הפרמטרי כאשר הגבול העליון הוא Object ל א נ י ת ן ל ב צ ע כ ל פ ע ו ל ה ע ל ע צ מ י ם מהטיפוס הגנרי ע ל כ ן, בהגדרת טיפוס ג נ ר י נ י ת ן ל ס פ ק ג ב ו ל עליון אחר הדבר מאפשר ג ב ו ל ע ל י ו ן ל ל א ל ה ש ת מ ש בגוף המחלקה הגנרית צ ו ר ך ב ה מ ר ה בשירותים המוגדרים ב א ו ת ו public class SortedSetImplemetatio<T exteds Comparable> { T elem1 = T elem2 = elem1.compareto( elem2)... expectcomparable(elem1); //elem1 is ideed Comparable 27

28 Comparable ג נ ר י ש י מ ו ש ב Comparable ש ה ו א raw ה ו א ב ע י י ת י Comparable א ב ל ה ם א י נ ם Comparable יתכנו שני ע צ מ י ם ש כ ל א ח ד מ ה ם ז ה ל ז ה, ל מ ש ל : Strig ו- Iteger א נ ח נ ו נעדיף את הגירסה הגנרית : public class MyClass implemets Comparable{ public it compareto(object other) {... public class MyClass implemets Comparable<MyClass> { public it compareto(myclass other) {... ב צ ו ר ה זאת מגדירים מחלקה שעצמיה ברי השוואה ל ע צ מ ם, ומספקים שרות שמבצע את ההשוואה א ם רוצים אפשרות השוואה ל מ ח ל ק ה כ ל ל י ת י ו ת ר, ז ה נ ע ש ה יותר מסובך ) ל א נ ע ס ו ק ב ז ה ב ק ו ר ס ( 28

29 ע ל ה מ ר ו ת ש ל, מ ו ז ר ו י ו ת בגלל שבג ' אווה הכללה ממומשת ז כ ר לפרמטר הטיפוס ב א מ צ ע ו ת מנגנון המחיקה, ריצה אין ב ז מ ן כ ל ו מ ר, ב ז מ ן ר י צ ה א י א פ ש ר ל ה ב ח י ן ב י ן עצם מטיפוס, FCStack<Iteger> ו ב י ן עצם מטיפוס FCStack<Strig> ו ב פ ר ט, ב ז מ ן ר י צ ה נראה ששניהם מאותה מחלקה זה משפיע ע ל בדיקת שייכות ל מ ח ל ק ה istaceof) ( עצמים מוכללים, ועל שדות המסומנים static וזה מונע אפשרות ל ק ר ו א ל ב נ א י ע ל פי פרמטר טיפוס, כ ל ו מ ר : <T> void m(t x) { T y = ew T();... // illegal ו י ש ע ו ד ה ר ב ה מ ז ה... 29

30 ל מ ש ל... ר צ י נ ו ל ש ל ב א ת ה ק ו ד ה ב א ) ש מ צ א נ ו ב ג ר ס ה ישנה של המוצר ( ב מ ו צ ר ה ח ד ש : public static void pritlist(list list) { for(it i=0, =list.size(); i < ; i++) { if (i % 2 == 0) { System.out.pritl(list.get(i)); כ ד י להימנע מאזהרות ק ו מ פ י ל צ י ה נשנה את List לטיפוס מוכלל : public static void pritlist(list<object> list) { for(it i=0, =list.size(); i < ; i++) { if (i % 2 == 0) { System.out.pritl(list.get(i)); לא טוב, ל א נ י ת ן ל ה ע ב י ר ל ש ר ו ת List<Strig> 30

31 ג ' ו ק ר י ם נ ש ת מ ש ב ג ' ו ק ר ) סימן שאלה -? ( public static void pritlist(list<?> list) { for(it i=0, =list.size(); i < ; i++) { if (i % 2 == 0) { Object obj = list.get(i); System.out.pritl(obj); 31

32 ג ' ו ק ר י ם כדי שנוכל לבצע פעולות על אברי הרשימה ל ס פ ק חסם י ש ב ש ר ו ת : כ מ ו ע ל י ו ן, public static double sumperimiters(list<? exteds IShape> list) { double total = 0.0; for(ishape : list) total +=.perimeter(); retur total;, IShape הוא טיפוס המרחיב את list משמעות ההגדרה : הטיפוס הגנרי של כולל IShape ע צ מ ו כ מ ו ב ן. ש י מ ו ל ב ל ש י מ ו ש ב exteds ג ם עבור מנשקים. זהו תחביר מיוחד ל ה ר ח ב ו ת. List<IShape> shapes =... ש י מ ו ש ב ש י ר ו ת : List<Circle> circles =... List<Triagle> triagles =... double shapesperimetersum = sumperimiters(shapes); double circlesperimetersum = sumperimiters(circles); double triaglesperimetersum =sumperimiters(triagles); 32

33 ג ' ו ק ר י ם י ש גם חסמים תחתונים : public static boolea additem(list<? super ColoredRectagle> lst, ColoredRectagle item) { retur lst.add(item); המשמעות : הטיפוס הגנרי של הרשימה list הוא ColoredRectagle או טיפוס שאותו ColoredRectagle מרחיב. List<ColoredRectagle> crectagles=...; List<Rectagle> rectagles=...; List<Object> objects=...; ColoredRectagle crect=...; additem(crectagles, crect); additem(rectagles, crect); additem(objects, crect); ש י מ ו ש ב ש י ר ו ת : 33

34 super vs. exteds List<T super MyClass> MyClass List<T exteds MyClass> ת ו כ נ ה 1 בשפת Java 34

35 ש י ר ו ת י ם מ ו כ ל ל י ם 35 נ י ת ן להגדיר טיפוס ל מ ח ל ק ה. ה ש י ר ו ת getfirstitem מכיל פ ר מ ט ר גנרי <T>. ג נ ר י עבור שירות ת ו כ נ ה 1 בשפת Java ר ק ו ל א ב ו ד ד, public class Test{ public static void mai(strig[] args){ List<Iteger> itlst = Arrays.asList(1,2,3); List<Strig> strlst = Arrays.asList("a", "b", "c"); it firstit = getfirstitem(itlst); Strig firststr = getfirstitem(strlst); ערכו של הפרמטר הגנרי י ק ב ע בזמן הקריאה ל ש י ר ו ת. ל מ ש ל, כ א ש ר נ ש ל ח List<Strig> /* כ פ ר מ ט ר, ערכו של T י ק ב ע ל list.size() > 0.Strig */ public static <T> T getfirstitem(list<t> list){ retur list.get(0);

36 ו ב ה ק ש ר ש ל מ ח ל ק ו ת פ נ י מ י ו ת... public class MyType<E>{ class Ier{ static class Nested{ public static void mai(strig[] args) { MyType mt; //warig: MyType is a raw type MyType.Ier i; //warig: MyType.Ier is a raw type MyType.Nested est; //o warig, ot a parametrized type MyType<Object> mt1; //o warig MyType<?> mt2; //o warig,? is OK for a type ת ו כ נ ה 1 בשפת Java 36

37 ל מ ה ט ו ב ש ה ק ו מ פ י י ל ר ש ו מ ר? List ames = ew ArrayList(); //warig: raw type ames.add("kyle"); ames.add("eric"); ames.add(boolea.false); for (Object o : ames){ Strig s = (Strig)o; גילוי השגיאה System.out.pritl(s.toUpperCase()); ב ז מ ן ק ו מ פ י ל צ י ה ו ל א ב ז מ ן ר י צ ה! //throws ClassCastExceptio // java.lag.boolea caot be cast to java.lag.strig List<Strig> ames = ew ArrayList<>(); ames.add("kyle"); ames.add("eric"); ames.add(boolea.false); //compilatio error! ת ו כ נ ה 1 בשפת Java 37

38 <Object> ש ו נ ה מ Raw public static void mai(strig[] args){ List<Strig> strlst = ew ArrayList<>(); appednewobject(strlst); //compilatio error! public static void appednewobject(list<object> lst){ lst.add(ew Object()); מ ה ה י ה קורה אם הפונקציה appednewobject היתה מ ק ב ל ת List נ א? ת ו כ נ ה 1 בשפת Java 38

39 (wildcard) Raw ש ו נ ה מ >? < public static void mai(strig[] args){ List<Strig> strlst = ew ArrayList<>(); appednewobject(strlst); //this is fie public static void appednewobject(list<?> lst){ lst.add(ew Object()); //compilatio error! כמובן שזה לא הגיוני שיהיה נ י ת ן ל ה ו ס י ף עצם מטיפוס Object ל ר ש י מ ה של מחרוזות, ל כ ן, צ ר י ך למנוע את ז ה כ ב ר בשלב הקומפילציה. ת ו כ נ ה 1 בשפת Java 39

40 כ מ ח ל ק ת >? < ב ס י ס public static void pritcollectio(collectio<?> c){ for (Object o: c){ System.out.pritl(o); c נ י ת ן ל ש ל ו ח ל פ ו נ ק צ י ה pritcollectio כל אוסף. ב ת ו ך pritcollectio נ י ת ן ל ג ש ת לאלמנטים מתוך ו ל ש י י ך להם את הטיפוס הסטטי.Object Collectio<?> c = ew ArrayList<>(); c.add(ew Object()); // Compile time error ת ו כ נ ה 1 בשפת Java 40

41 ס י כ ו ם geerics מנגנון ההכללה מאפשר להימנע מהמרות ב ל י לשכפל קוד קוד שאין בו המרות מפורשות ו ש א י ן בו טיפוסים נ א י ם ) ל י ת ר דיוק, אם ה ק ו מ פ י י ל ר לא הזהיר לגבי השימוש ב ט י פ ו ס י ם נאים ( הוא בטוח מבחינת ט י פ ו ס י ם safe) (type ק ו ד כ ז ה ל א י כ ש ל בביצוע המרה ב ז מ ן ריצה : הבדיקות מועברות ל ז מ ן ה ק ו מ פ י ל צ י ה ה ש י מ ו ש בהכללה מסבך הצהרות על טיפוסים בגלל האינטראקציה הלא א י נ ט ו א י ט י ב י ת בין טיפוסים מוכללים ו ב י ן יחס ה- is-a המימוש של הכללות ב ג ' א ו ו ה כולל מספר מוזרויות ) ו ע ו ד ל א ד י ב ר נ ו ע ל כ ו ל ן... ( דיון מקיף ) מ ע נ י י ן, ו ב ר ו ר ( ב נ ו ש א נ י ת ן ל מ צ ו א בפרק 4.1 של : Java i a Nutshell, 5th Editio By David Flaaga 41

42 ה ע מ ס ה ו ה ו ר ש ה ת ו כ נ ה 1 בשפת 42 Java

43 ה ע מ ס ה ו ה ו ר ש ה במקרים של העמסה הקומפיילר מחליט איזו גרסה תרוץ ) י ו ת ר נכון : איזו ג ר ס ה לא תרוץ ( ) הפרוצדורות מתוך ( java.lag.strig : static Strig valueof(double d) { static Strig valueof(boolea b) { נראה סביר ז ה overloaded(rectagle x) { overloaded(coloredrectagle x) { ז ה? ע ם א ב ל מ ה ל א נורא, הקומפיילר ל ה ח ל י ט, י כ ו ל Rectagle r = ew ColoredRectagle (); ColoredRectagle cr = ew ColoredRectagle (); overloaded(r); // we must use the more geeral method overloaded(cr); // The more specific method applies 43

44 א ב ל ש ל א י ז ה) ה ע מ ס ה ו ה ו ר ש ה ז ה א ב ל כבר מוגזם : overthetop(rectagle x, ColoredRectagle y) { overthetop(coloredrectagle x, Rectagle y) { ColoredRectagle a = ew ColoredRectagle (); ColoredRectagle b = ew ColoredRectagle (); overthetop(a, b); b? א ו a ברור שנדרשת המרה castig) א י ן ד ר ך להחליט ; הפעלת השגרה לא חוקית פ ר מ ט ר? ב ג ' א ו ו ה 44

45 ה ע מ ס ה ו ה ו ר ש ה - ש ב ר י ר י ו ת overthetop(rectagle x, ColoredRectagle y) { overthetop(coloredrectagle x, Rectagle y) { ColoredRectagle a = ew ColoredRectagle (); ColoredRectagle b = ew ColoredRectagle (); overthetop(a, b); אם הייתה רק הגרסה הירוקה, הקריאה לשגרה הייתה חוקית כאשר מוסיפים את הגרסה הסגולה, הקריאה נ ה פ כ ת ללא חוקית ; אבל ה ק ו מ פ י י ל ר ל א יגלה את ז ה א ם ז ה בקובץ אחר, והתוכנית תמשיך ל ע ב ו ד, לגרסה הירוקה ו ל ק ר ו א לא טוב שקומפילציה זה מצב שברירי ר ק ש ל ק ו ב ץ ש ל א ה ש ת נ ה ת ש נ ה א ת ה ת נ ה ג ו ת ה ת ו כ נ י ת ; 45

46 ה ע מ ס ה ו ה ו ר ש ה - ש ב ר י ר י ו ת א ם נוציא את הקוד ב A מ ה ה ע ר ה ו נ ק מ פ ל ר ק א ת C, A ת מ ש י ך ל ר ו ץ ע ם ה ג י ר ס א ש ל.B ת ו כ נ ה 1 בשפת Java 46

47 ה ע מ ס ה - ו ה ו ר ש ה ג ר ו ע י ו ת ר class B { overloaded(rectagle x) { class S exteds B { overloaded(rectagle x) { // override overloaded(coloredrectagle x) { // overload but o override! S o = ew S(); ColoredRectagle cr =... o.overloaded( cr ); // ivoke the purple ((B) o).overloaded( cr ) // What to ivoke? 47

48 class B { overloaded(rectagle x) { class S exteds B { overloaded(rectagle x) { // override overloaded(coloredrectagle x) { // overload but o override! S o = ew S(); ColoredRectagle cr =... o.overloaded( cr ); // ivoke the purple ((B) o).overloaded( cr ) // What to ivoke? מנגנון ההעמסה הוא סטטי : ב ו ח ר א ת ה ח ת י מ ה ש ל ה ש ר ו ת וסוג הפרמטרים (, א ב ל ע ד י י ן ל א ק ו ב ע איזה שירות י י ק ר א. ) ט י פ ו ס העצם, שם השרות, מספר ע ב ו ר ה ק ר י א ה( (B)) o).overloaded( cr ת י ב ח ר ) ב ז מ ן קומפילציה ( החתימה : B.overloaded(Rectagle) ב ג ל ל ש י ע ד ה ק ר י א ה ה ו א מ ט י פ ו ס B ה ש ר ו ת ה י ח י ד ה ר ל ב נ ט י ה ו א ה א ד ו ם! ב ז מ ן ריצה מופעל מנגנון השיגור הדינמי, שבוחר בין השרותים בעלי חתימה ז א ת, את המתאים ב י ו ת ר, לטיפוס הדינמי של יעד הקריאה. הטיפוס הדינמי הוא, S ל כ ן נבחר השרות הירוק. B b = ew S(); b.overloaded( cr ) 48 כנ " ל אם הקריאה היא :

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

50 ב ח י נ ה ר ה ח ו מ ל ב ח י נ ה כל החומר, כולל תרגולים ו ת ר ג י ל י ב י ת 50 נ ק ע ל ח ל ק פ ת ו ח ו 55 נק שאלות אמריקאיות ב ח י נ ו ת ק ו ד מ ו ת נ י ת ן ל מ צ ו א באתר הקורס פורום שאלות מבחינות קודמות אופן המענה על הבחינה ת ו כ נ ה 1 בשפת Java 50

PowerPoint Presentation

PowerPoint Presentation תוכנה 1 Generics תרגול - 1 תכנות גנרי תמיכה בתכנות גנרי נוספה בגרסה 5 ניתן להגדיר מחלקות ושירותים גנריים מונע שכפול קוד )מוכללים( ניתן לכתוב תוכניות שאינן תלויות בטיפוסי המשתנים מאפשר בטיחות טיפוסים מנגנון

קרא עוד

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

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

קרא עוד

PowerPoint Presentation

PowerPoint Presentation תוכנה 1 תרגול 1: סביבת העבודה ומבוא ל- Java אלכסיי זגלסקי ויעל אמסטרדמר 1 בירוקרטיה אלכסיי זגלסקי שעת קבלה: שני 13:00-14:00, בתיאום מראש משרד: בניין הנדסת תוכנה, חדר 209 יעל אמסטרדמר שעת קבלה: חמישי 15:00-16:00,

קרא עוד

PowerPoint Presentation

PowerPoint Presentation תוכנה 1 תרגול 1: סביבת העבודה ומבוא ל- Java 1 מנהלות אתר הקורס: http://courses.cs.tau.ac.il/software1/1516b/ מתרגלים: ברית יונגמן )שעת קבלה: שלישי ב- 8:00 בתיאום מראש( לנה דנקין )שעת קבלה: שלישי ב- 17:00,

קרא עוד

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

מבוא למדעי המחשב מבוא למדעי המחשב המחלקה Object תוכן עניינים Object הורשה והמחלקה ערך שם טיפוס DynamicIntArray da data size incrementsize DynamicArray תזכורת - Object[] data; int size; int incrementsize; DynamicArray זה

קרא עוד

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

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

קרא עוד

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

מבוא למדעי המחשב מבוא למדעי המחשב תכנות מונחה אובייקטים תוכן עניינים טיפוסי נתונים מורכבים המחלקה String תזכורת לשימוש שעשינו במחלקה String str = new String( Hello ); s.o.p(str.tostring()); s.o.p(str.charat(4)); s.o.p(str.equals(

קרא עוד

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

מהוא לתכנות ב- JAVA מעבדה 3 מבוא לתכנות ב- JAVA מעבדה 3 נושאי התרגול לולאות ניפוי שגיאות לולאות - הקדמה כיצד הייתם כותבים תוכנית שתדפיס את המספרים השלמים בין 1 ל- 100 בעזרת הכלים שלמדתם עד עתה? חייבת להיות דרך אחרת מאשר לכתוב 100

קרא עוד

PowerPoint Presentation

PowerPoint Presentation תוכנה תרגול 7 :מנשקים, פולימורפיזם ועוד * לא בהכרח בסדר הזה == vs equals Point p = new Point(,2) Point p2 = new Point(,2) p == p2 p.equals(p2) מתי נכון להשתמש בכל אחד מהם? שימו לב, במחלקה שכתבתם בעצמכם

קרא עוד

Slide 1

Slide 1 1 אובייקטים היום בתרגול: 2.)objects מחלקות )classes( ואובייקטים )מופעים, )fields( שדות המחלקה שיטות הכמסה )methods של מחלקה. ( class מחלקה - עד עכשיו השתמשנו בעיקר בטיפוסים מובנים ופונקציות המבצעות חישובים

קרא עוד

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

מבוא למדעי המחשב מבוא למדעי המחשב מחרוזות, חתימה של פונקציה ומעטפות תוכן עניינים טיפוסים מורכבים טיפוסים מורכבים ערך שם טיפוס 12 m int undef. x boolean true y boolean arr int[] כאלה שעשויים להכיל יותר מערך פרימיטיבי אחד

קרא עוד

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

מבוא למדעי המחשב מבוא למדעי המחשב שימוש במחסנית - מחשבון תוכן עניינים prefix כתיבת ביטויים ב-,infix ו- postfix postfix prefix,infix ביטויים ב- כתיבת ו- infix נוסח כתיבה ב- (operator אנו רגילים לכתוב ביטויים חשבוניים כדוגמת

קרא עוד

Slide 1

Slide 1 מבוא למדעי המחשב משפחות של מחלקות ומחלקות מופשטות תזכורת בשיעור הקודם ראינו מחלקה של Student והרחבה שלה למחלקה של Milgae למעשה Student יכול לעמוד בראש היררכיה שלמה של מחלקות שונות של סטודנטים למשל, בנוסף

קרא עוד

PowerPoint Presentation

PowerPoint Presentation == vs equals תוכנה תרגול 7 :מנשקים, פולימורפיזם ועוד Point p = new Point(,) Point p = new Point(,) p == p p.equals(p) מתי נכון להשתמש בכל אחד מהם? שימו לב, במחלקה שכתבתם בעצמכם יש לכתוב מתודת equals על

קרא עוד

PowerPoint Presentation

PowerPoint Presentation 1 תוכנה 1 תרגול 1: מנהלות, סביבת העבודה ומבוא ל- Java 1 2 מנהלות I מתרגלים: יעל אמסטרדמר )שעת קבלה: חמישי ב- 12, בתיאום מראש( דביר נתנאלי )שעת קבלה: רביעי ב- 17, בתיאום מראש( http://courses.cs.tau.ac.il/software1/1415a

קרא עוד

Microsoft PowerPoint - rec3.ppt

Microsoft PowerPoint - rec3.ppt תכנו ת מונח ה עצ מים משתני מחלקה, עצמים מוכלים ועצמים מוצבעים א וה ד ברז יל י א ונ יברס י ט ת תל אביב משתנ י מח ל קה Static Members משתני מחלקה members) (static משתנים סטטיים מוגדרי ם בתוך מח לקה ואולם

קרא עוד

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

סדנת תכנות ב   C/C++ פקולטה: מדעי הטבע מחלקה: מדעי המחשב שם הקורס: מבוא למחשבים ושפת C קוד הקורס: 2-7028510 תאריך בחינה: 15.2.2017 משך הבחינה: שעתיים שם המרצה: ד"ר אופיר פלא חומר עזר: פתוח שימוש במחשבון: לא הוראות כלליות:

קרא עוד

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

תוכנה 1 תרגול מספר 12: GUI כתיבת מחלקות גנריות בית הספר למדעי המחשב אוניברסיטת תל אביב 1 תוכנה 1 תרגול מספר 12: GUI כתיבת מחלקות גנריות בית הספר למדעי המחשב אוניברסיטת תל אביב 1 2 SWT בנויה על העיקרון של publish/subscribe אלמנטים בסיסיים )Widgets( מייצרים מאזינים )Listener( אירועים )Events(

קרא עוד

PowerPoint Presentation

PowerPoint Presentation תוכנה 1 3 תרגול מס' מתודות ותיכון לפי חוזים חוזה בין ספק ללקוח חוזה בין ספק ללקוח מגדיר עבור כל שרות: תנאי ללקוח - "תנאי קדם" precondition - - תנאי לספק "תנאי אחר".postcondition לקוח ספק 2 תנאי קדם )preconditions(

קרא עוד

PowerPoint Presentation

PowerPoint Presentation תכנות מתקדם בשפת Java אוניברסיטת תל אביב 1 תוכנה 1 תרגול 3: עבודה עם מחרוזות )Strings( מתודות )Methods( 1 תכנות מתקדם בשפת Java אוניברסיטת תל אביב 2 מחרוזות )STRINGS( 3 מחרוזות String s = Hello ; מחרוזות

קרא עוד

Microsoft PowerPoint - lec9.ppt

Microsoft PowerPoint - lec9.ppt ת כנ ות מונ ח ה עצמי ם בשפת + +C ירוש ה אוהד ברזילי אונ יברסיטת תל אביב ירוש ה המצגת מכילה קטעים מתוך מצגת של פרופ' עמירם יהודאי ע"פ הספר: Object-Oriented Software Construction, 2nd edition, by Bertrand

קרא עוד

Microsoft PowerPoint - rec8.ppt

Microsoft PowerPoint - rec8.ppt על טיפ ו סי ם וירו שה תרגול אוהד ברזילי אונ יברסיטת תל אביב תנ אי ק ד ם מופ שט תנאי קדם מופשט ראינו שבקבלנות משנה החוזה של המחלקה היורשת חייב לקיים 3 עקרונות: תנאי קדם יכולים להיות חלשים תנאי בתר יכולים

קרא עוד

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

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

קרא עוד

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

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

קרא עוד

תרגול 1

תרגול 1 מבוא למדעי המחשב 2019 תרגול 5 מחרוזות, חתימות ורקורסיה מחרוזות רצף של תווים רקורסיה קריאה של מתודה לעצמה באופן ישיר או עקיף ראינו בהרצאה מחרוזות: תווים, חתימות: העמסה- String,הצהרה, overloading אתחול רקורסיה:

קרא עוד

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

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

קרא עוד

Microsoft PowerPoint - lec9.ppt

Microsoft PowerPoint - lec9.ppt תכ נות מונח ה עצמים בשפת ++C ירו שה אוה ד ברזילי אוני ברסיטת תל אביב ירו שה המצגת מכילה קטעים מתוך מצגת של פרופ' עמירם יהודאי ע"פ הספר: Object-Oriented Software Construction, 2nd edition, by Bertrand Meyer

קרא עוד

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

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

קרא עוד

Slide 1

Slide 1 בית הספר למדעי המחשב אוניברסיטת תל אביב תוכנה 1- תרגול הורשה מחלקות אבסטרקטיות חריגים 2 ירושה ממחלקות קיימות ראינו בהרצאה שתי דרכים לשימוש חוזר בקוד של מחלקה קיימת: הכלה + האצלה הכלה )aggregation( במחלקה

קרא עוד

Microsoft PowerPoint - lec10.ppt

Microsoft PowerPoint - lec10.ppt תכנו ת מ ונחה ע צמ י ם בשפת ++C אוהד ברזילי אוניברסיטת תל אביב ירו ש ה מרו בה המצגת מכילה קטעים מתוך מצגת של פרופ' עמירם יהודאי ע"פ הספר: Object-Oriented Software Construction, 2nd edition, by Bertrand

קרא עוד

תוכנה 1 אביב תשע"ח תרגיל מספר 8 אוספים גנריים ו- framework collection הנחיות כלליות: קראו בעיון את קובץ נהלי הגשת התרגילים אשר נמצא באתר הקורס. הגשת ה

תוכנה 1 אביב תשעח תרגיל מספר 8 אוספים גנריים ו- framework collection הנחיות כלליות: קראו בעיון את קובץ נהלי הגשת התרגילים אשר נמצא באתר הקורס. הגשת ה תוכנה 1 אביב תשע"ח תרגיל מספר 8 אוספים גנריים ו- framework collection הנחיות כלליות: קראו בעיון את קובץ נהלי הגשת התרגילים אשר נמצא באתר הקורס. הגשת התרגיל תיעשה במערכת ה- moodle בלבד.(http://moodle.tau.ac.il/)

קרא עוד

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

מבוא לתכנות ב- JAVA  תרגול 7 מבוא לתכנות ב- JAVA תרגול 8 תזכורת - מבנה של פונקציה רקורסיבית.2 פונקציה רקורסיבית מורכבת משני חלקים עיקריים 1. תנאי עצירה: מקרה/מקרים פשוטים בהם התוצאה לא מצריכה קריאה רקורסיבית לחישוב צעד רקורסיבי: קריאה

קרא עוד

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

מתכונת עיצוב 3013 מדעי המחשב פרק ראשון Java שאלה 1 שאלה 1 נכתב ע"י ראמי ג'באלי C# Java 2 א. שאלה ב. הערה: במבחן כתוב שיש שלשה אחת בלבד של פנסים כאלו. ולמרות זאת נשאיר את המשתנה הבוליאני כך שאם נמצאו הפנסים בתחילת המערך

קרא עוד

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

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

קרא עוד

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

תורת הקומפילציה תורת הקומפילציה תרגיל בית 2 הוראות לתרגיל 2 בשפת MINI-PASCAL הפרוייקט המצורף הינו קוד שלד של מהדר לשפת mini-pascal עליכם לממש בסביבת (Eclipse (Java את הפונקציות המתאימות לפי החומר שנלמד בהרצאה ע"מ שהמהדר

קרא עוד

Microsoft PowerPoint - lec2.ppt

Microsoft PowerPoint - lec2.ppt מרחב הש מות (namespace) אוהד ברזילי אוניברסיטת תל אביב מה בתו כנית? לקוח וס פק במערכת תוכנה ממשקים הכרת מרחב השמות מניעת תלות פוטנציאלית בין רכיבים במערכת ע"י עיצוב חלופי של מבנה הממשקים 2 א ונ י ב רס

קרא עוד

PowerPoint Presentation

PowerPoint Presentation מבוא למדעי המחשב תירגול 6: כתובות ומצביעים 1 תוכנייה מצביעים מצביעים ומערכים, אריתמטיקה של מצביעים 2 3 מצביעים תזכורת- כתובות זיכרון הזיכרון כתובת התא #1000 #1004 #1008 ערך השמור בתא תא 10-4 לא מאותחל

קרא עוד

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

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

קרא עוד

Slide 1

Slide 1 מבוא למדעי המחשב תירגול 4: משתנים בוליאניים ופונקציות מבוא למדעי המחשב מ' - תירגול 4 1 משתנים בוליאניים מבוא למדעי המחשב מ' - תירגול 4 2 ערכי אמת מבחינים בין שני ערכי אמת: true ו- false לכל מספר שלם ניתן

קרא עוד

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

שאלהIgal : מערכים דו מימדיים רקורסיה: אוניברסיטת בן גוריון בנגב מספר נבחן : תאריך המבחן: כ"ג מנ' אב תשע"ז 15.08.17 שמות המורים: ציון סיקסיק א' ב- C תכנות מבחן ב: 202-1-9011 מס' הקורס : הנדסה מיועד לתלמידי : ב' מועד סמ' ב' שנה תשע"ז 3 שעות

קרא עוד

Slide 1

Slide 1 מבוא למדעי המחשב תירגול 7: פונקציות 1 מה היה שבוע שעבר? לולאות מערכים מערכים דו-ממדיים 2 תוכנייה )call by value( פונקציות העברת פרמטרים ע"י ערך תחום הגדרה של משתנה מחסנית הקריאות 3 פונקציות 4 הגדרה של

קרא עוד

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

יום שלישי, 14 ליולי 2015 מבחן סוף סמסטר - תכנות מונחה עצמים )236703( סמסטר אביב 2015, מועד א' מרצה: ערן גלעד מתרגלים: נורית מושקוביץ', הלאל עאסי, אליר יום שלישי, 14 ליולי 2015 מבחן סוף סמסטר - תכנות מונחה עצמים )236703( סמסטר, מועד א' מרצה: ערן גלעד מתרגלים: נורית מושקוביץ', הלאל עאסי, אלירן וייס הנחיות: 1. במבחן 5 שאלות שוות משקל. עליכם לענות על כל

קרא עוד

Slide 1

Slide 1 מבוא לתכנות ב- JAVA תרגול 5 מה בתרגול מחרוזות מערכים דו ממדיים מחרוזות (Strings) מחרוזת היא רצף של תווים. immutable על מנת ליצור ולטפל במחרוזות נשתמש במחלקה String למחלקה String מתודות שונות שמאפשרות פעולות

קרא עוד

Microsoft PowerPoint - rec1.ppt

Microsoft PowerPoint - rec1.ppt תכנות מונחה עצמים בשפת ++C תר גול מ ספר 1 אוהד ב ר זילי אוניברסיטת תל א ביב חדש חדיש ומחודש תוספות של + +C לשפ ת C 1 #include Hello World using namespace std; int main() cout

קרא עוד

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

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

קרא עוד

2013/14 אוניברסיטת חיפה מבוא למדעי מחשב, מעבדה מטרת המעבדה: לתרגל את המעבר מאלגוריתם לקוד C כמה שיותר. הוראות:.1.2 ניתן לעבוד ביחידים או בזוגות. (יש מ

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

קרא עוד

לנץ קרן מרצה: תכנותמונחהעצמים) ( יוםשישי 15 אוקטובר 0202 ב מועד 0202, אביב סמסטר סמסטר סוף מבחן גוטמן אייל רביב, אריאל משנה, אלון מתרגלים: הנחי

לנץ קרן מרצה: תכנותמונחהעצמים) ( יוםשישי 15 אוקטובר 0202 ב מועד 0202, אביב סמסטר סמסטר סוף מבחן גוטמן אייל רביב, אריאל משנה, אלון מתרגלים: הנחי לנץ קרן מרצה: תכנותמונחהעצמים) 027622 ( יוםשישי 15 אוקטובר 0202 ב מועד 0202, אביב סמסטר סמסטר סוף מבחן גוטמן אייל רביב, אריאל משנה, אלון מתרגלים: הנחיות:.1.2.3.4.5.6.7 השאלות. כל על לענות עליכם משקל. שוות

קרא עוד

מבוא לאסמבלי

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

קרא עוד

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

מבוא למדעי המחשב מבוא למדעי המחשב הממשקים Iterable,Set ו- Iterator תוכן עניינים מבנה נתונים מבנה נתונים מבנה נתונים הוא container של עצמים שמוגדרות עליו מספר פעולות למשל קבוצה של עצמים (אוסף ללא חזרות) עם הפעולות: הוספת

קרא עוד

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

תוכן העניינים הוצאת חושבים קדימה הילה קדמן חלק ב יעוץ מקצועי: חיים אברבוך מותאם לתכנית הלימודים החדשה בבתי הספר התיכוניים מהדורה חמישית הוצאת חושבים קדימה ת.ד. 1293 רעות 71908 www.kadman.net הילה קדמן 0522 525527 kadman11@gmail.com

קרא עוד

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

איטרטורים: 1 תוכנה 1 סתיו תשעג תרגיל מספר 9 הנחיות כלליות: קראו בעיון את קובץ נהלי הגשת התרגילים אשר נמצא באתר הקורס. הגשת התרגיל תעשה במערכת ה moodl איטרטורים: 1 תוכנה 1 סתיו תשע"ג תרגיל מספר 9 הנחיות כלליות: קראו בעיון את קובץ נהלי הגשת התרגילים אשר נמצא באתר הקורס. הגשת התרגיל תעשה במערכת ה moodle בלבד.(http://moodle.tau.ac.il/) יש להגיש קובץ zip

קרא עוד

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

תוכן העניינים הוצאת חושבים קדימה הילה קדמן # חלק ב יעוץ מקצועי: חיים אברבוך מותאם לתכנית הלימודים החדשה בבתי הספר התיכוניים מהדורה חמישית הוצאת חושבים קדימה ת.ד. 1293 רעות 71908 www.kadman.net הילה קדמן 0522 525527

קרא עוד

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

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

קרא עוד

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

מבוא למדעי המחשב, סמסטר א', תשסח תרגול מס' 2 מבוא למדעי המחשב תרגול מס' 2 נושאים משתנים טיפוסים אופרטורים פונקציות מתמטיות מהמחלקה Math המרת טיפוסים תנאים ולולאות 1 2 תזכורת משיעור קודם תזכורת... תכנית מחשב נכתבת כטקסט בקובץ. הטקסט כתוב בשפת תכנות

קרא עוד

PowerPoint Presentation

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

קרא עוד

תרגול 1

תרגול 1 מבוא למדעי המחשב 2019 תרגול 12 מחסנית )Stack( memoization ראינו בהרצאה מחסנית Infix/Postfix Notations בתרגול היום מחסנית בדיקת איזון סוגריים בביטוי אריתמטי מימוש תור באמצעות מחסנית memoization דוגמאות

קרא עוד

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

אוניברסיטת חיפה החוג למדעי המחשב.5.6 מבוא למדעי המחשב סמסטר א' תשעז בחינה סופית מועד א', מרצה: שולי וינטנר מתרגלים: סמאח אידריס, ראמי עילבו אוניברסיטת חיפה החוג למדעי המחשב.5.6 מבוא למדעי המחשב סמסטר א' תשע"ז בחינה סופית מועד א', 31.1.2017 מרצה: שולי וינטנר מתרגלים: סמאח אידריס, ראמי עילבוני, דולב שרון הנחיות: 1. משך הבחינה: 120 דקות. 2. היציאה

קרא עוד

Slide 1

Slide 1 בית הספר למדעי המחשב אוניברסיטת תל אביב תוכנה 1 תרגול מספר 9: הורשה מחלקות אבסטרקטיות ואתחול עצמים 2 ירושה ממחלקות קיימות ראינו בהרצאה שתי דרכים לשימוש חוזר בקוד של מחלקה קיימת: הכלה + האצלה הכלה כאשר

קרא עוד

1

1 מבחן סיכום לקורס " עקרונות תכנות מונחה עצמים " תאריך הבחינה: 23.07.2017 4 שמות המרצים: ד"ר עזאם מרעי שם הקורס: עקרונות תכנות מונחה עצמים מספר הקורס: 202-15181 שנה: 2017 סמסטר: ב' מועד: ב' משך הבחינה: שלוש

קרא עוד

Slide 1

Slide 1 מבוא לשפת C תירגול 3: טיפוסים והמרות 1 מה היה שבוע שעבר? משתנים קלט/פלט scanf( ו- printf ( Redirection The Input Buffer 2 תוכנייה טיפוסי משתנים קלט/פלט מעוצב המרה בין טיפוסים קבועים 3 חישוב ממוצע בין שני

קרא עוד

מקביליות

מקביליות תכונות שמורה Invariant Properties גרא וייס המחלקה למדעי המחשב אוניברסיטת בן-גוריון 2 בדיקות מודל Checking( )Model מערכת דרישות מידול פירמול בדיקות מודל )Model Checking( מודל של המערכת תכונות פורמליות סימולציה

קרא עוד

Tutorial 11

Tutorial 11 מבוא לשפת C תרגול 8: מערכים רב-ממדיים תרגילים בנושא מערכים ורקורסיה מבוסס על השקפים שחוברו ע"י שי ארצי, גיתית רוקנשטיין, איתן אביאור וסאהר אסמיר עבור הקורס "מבוא למדעי המחשב" נכתב ע"י טל כהן, עודכן ע"י

קרא עוד

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

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

קרא עוד

Microsoft PowerPoint - 10_threads.ppt

Microsoft PowerPoint - 10_threads.ppt נוש אים מתקדמים ב Java תכ נות מ ר ובה חו ט י ם אוהד ברזילי אוניברסיטת תל אביב מק בי ל יות ריבוי מעבדים processors) (multi זמן עיבוד slicing) (time ל עו מת חלוק ת רמת התהליך (multithreading) ההפעלה processes)

קרא עוד

מקביליות

מקביליות תכונות בטיחות Safety Properties גרא וייס המחלקה למדעי המחשב אוניברסיטת בן-גוריון 2 תזכורת: תכונות זמן ליניארי Linear Time Properties תכונות זמן-ליניארי מתארות קבוצת עקבות שהמערכת צריכה לייצר מכוונים ללוגיקה

קרא עוד

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

תוכנה 1 1 אביב תשעג תרגיל מספר 5 מערכים, מחרוזות, עיבוד טקסט ומבני בקרה הנחיות כלליות: קראו בעיון את קובץ נהלי הגשת התרגילים אשר נמצא באתר הקורס. הגש תוכנה 1 1 אביב תשע"ג תרגיל מספר 5 מערכים, מחרוזות, עיבוד טקסט ומבני בקרה הנחיות כלליות: קראו בעיון את קובץ נהלי הגשת התרגילים אשר נמצא באתר הקורס. הגשת התרגיל תיעשה במערכת ה- mdle בלבד.(http://mdle.tau.ac.il/)

קרא עוד

מבחן בפיתוח מערכות תוכנה בשפת Java ( )

מבחן בפיתוח מערכות תוכנה בשפת Java ( ) עמוד 1 מתוך 10 )0368-3056( מבחן בפיתוח מערכות תוכנה בשפת Java בית הספר למדעי המחשב אוניברסיטת תל אביב סמסטר ב' תשס"ח, מועד ב' תאריך הבחינה: 24.09.2008 מרצה: אוהד ברזילי חומר עזר מותר בשימוש: אין משך הבחינה:

קרא עוד

Microsoft PowerPoint - T-10.ppt [Compatibility Mode]

Microsoft PowerPoint - T-10.ppt [Compatibility Mode] מבוא למחשב בשפת Matlab לולאות בלוקי try-catch :10 תרגול מבוסס על השקפים שחוברו ע"י שי ארצי, גיתית רוקשטיין, איתן אביאור, סאהר אסמיר וטל כהן עבור הקורס "מבוא למדעי המחשב" נכתב על-ידי רמי כהן,אולג רוכלנקו,

קרא עוד

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

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

קרא עוד

PowerPoint Presentation

PowerPoint Presentation תרגול מס' 3: המתרגם שימוש במחלקות קיימות מחרוזות, קבצים, וקבלת קלט מהמשתמש שלבי הפיתוח - חזרה קצרה ישנם שני שלבים נפרדים: שלב פיתוח התוכנית בשלב זה אנו משתמשים במהדר )קומפיילר( כדי להמיר קבצי.java )קבצי

קרא עוד

Microsoft Word B

Microsoft Word B מרצה: שולי וינטנר. מתרגל: שלמה יונה מבוא למדעי המחשב מועד ב', סמסטר א' תשס"ג, 17/2/03 משך המבחן: שעתיים וחצי. חומר עזר: מותר כל חומר עזר, מלבד מחשב. הנחיות: 1. ודאו כי בטופס שבידיכם 8 עמודים. יש לכתוב

קרא עוד

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

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

קרא עוד

BIG DATA תיאור הקורס המונח Big Data הולך וצובר תאוצה בשנים האחרונות, הוא הופך למגמה רווחת בתעשייה. המשמעות הפרקטית של המונח Big Data הינה טכנולוגיות נ

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

קרא עוד

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

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

קרא עוד

Microsoft Word - Ass1Bgu2019b_java docx

Microsoft Word - Ass1Bgu2019b_java docx ת ר ג י ל 1 ב ק ו ר ס מ ב ו א לתכנות 202.1.9031 JAVA סמסטר ב, ת נ א י ם ו ל ו ל א ו ת תאריך אחרון להגשה בציון מלא : 02.04.19 עד שעה : 23:55, כ ל יום איחור ל א מ א ו ש ר א ו ח ל ק ממנו מודריד 10 נקודות

קרא עוד

PowerPoint Presentation

PowerPoint Presentation תוכנה 1 אוניברסיטת תל אביב INTERFACES תרגול מס' 7: מנשקים, פולימורפיזם ועוד * לא בהכרח בסדר הזה מנשקים )Interfaces( 2 מנשקים מנשק )interface( הוא מבנה תחבירי ב- Java המאפשר לחסוך בקוד לקוח. מנשק מכיל כותרות

קרא עוד

Slide 1

Slide 1 בעיית התוכנית הגדולה C תוכנית גדולה המבצעת פעולות רבות, יכולה להפוך לקשה מאוד לניהול אם נשתמש רק בכלים שלמדנו עד כה: 1. קשה לכתוב ולנפות את התוכנית,. קשה להבין אותה, 3. קשה לתחזק ולתקן אותה, 4. קשה להוסיף

קרא עוד

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

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

קרא עוד

שבוע 4 סינטקס של HACK ASSEMBLY ניתן להשתמש בשלושה אוגרים בלבד:,A,D,M כולם בעלי 16 ביטים. M אינו אוגר ישיר- הוא מסמן את האוגר של ה RAM שאנחנו מצביעים ע

שבוע 4 סינטקס של HACK ASSEMBLY ניתן להשתמש בשלושה אוגרים בלבד:,A,D,M כולם בעלי 16 ביטים. M אינו אוגר ישיר- הוא מסמן את האוגר של ה RAM שאנחנו מצביעים ע שבוע 4 סינטקס של HACK ASSEMBLY ניתן להשתמש בשלושה אוגרים בלבד:,A,D,M כולם בעלי 16 ביטים. M אינו אוגר ישיר- הוא מסמן את האוגר של ה RAM שאנחנו מצביעים עליו כרגע )A מצביע עליו(. יש שני סוגי פקודות, פקודת

קרא עוד

תרגול 1

תרגול 1 מבוא למדעי המחשב 2019 תרגול 9 חזרה על תכנות מונחה עצמים Part II ראינו בהרצאה ממשקים Set Iterable Iterator בתרגול היום חזרה על: ממשקים Iterator Iterable )iterator נראה: )set ממשק )מימוש SetAsLinkedList

קרא עוד

PowerPoint Presentation

PowerPoint Presentation פרוטאוס הדרכה לפיתוח פרויקט מבוסס ארדואינו 1 הוראות הפעלה תוכנת פרוטאוס מכילה כמות גדולה מאוד של כלי עזר להבנת דרך ההפעלה של התוכנה. שני מקורות מידע עיקריים עומדים לרשות המשתמש מחוץ לתוכנה: o באתר האינטרנט

קרא עוד

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

תשעדד אביב תוכנה 1 תרגיל מספר 4 עיבוד מחרוזות וקריאה מקבצים הנחיות כלליות: קראו בעיון את קובץ נהלי הגשת התרגילים אשר נמצא באתר הקורס..( תשע"דד אביב תוכנה 1 תרגיל מספר 4 עיבוד מחרוזות וקריאה מקבצים הנחיות כלליות: קראו בעיון את קובץ נהלי הגשת התרגילים אשר נמצא באתר הקורס..(http://mdle.tau.ac.il/) בלבד הגשת התרגיל תעשה במערכת ה- mdle aviv

קרא עוד

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

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

קרא עוד

תרגול 1

תרגול 1 מבוא למדעי המחשב 2019 תרגול 9 חזרה על תכנות מונחה עצמים Part II ראינו בהרצאה ממשקים Set Iterable Iterator בתרגול היום חזרה על: ממשקים Iterator Iterable )iterator נראה: )set ממשק )מימוש SetAsLinkedList

קרא עוד

מערכות הפעלה

מערכות הפעלה מערכות הפעלה תרגול 2 קריאות מערכת ב- Linux תוכן התרגול קריאה לפונקציות ב- Linux קריאה לשירותי מערכת ב- Linux 2 תזכורת - תכנית Linux ראשונה hello.c #include int main() { char *str= Hello ; printf)

קרא עוד

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

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

קרא עוד

Microsoft PowerPoint - Lecture1

Microsoft PowerPoint - Lecture1 Computer Organization and Programming ארגון ותכנו ת המחשב - את"מ הרצאה מבוא 2 שפה עילית מול שפ ת מ כונה שפה עילית language) (High level שפת מכונה Language) (Machine תכנית בשפ ה עיל ית (C, Pascal, ) תכנית

קרא עוד

פייתון

פייתון שיעור 12: מילונים ברק גונן 1 או מילון, :hash table או,dictionary זוגות של מפתחות keys וערכים values מילון מוגדר על ידי סוגריים מסולסלים { } לדוגמה: מילון שמכיל ציונים, המפתח הוא מספר ת.ז ערך מפתח הגדרה

קרא עוד

Slide 1

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

קרא עוד

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

לנץ קרן מרצה: תכנותמונחהעצמים) ( א' מועד 2012, חורף סמסטר סמסטר סוף מבחן קרבי אלעד רביב, אריאל מושקוביץ, אייל מתרגלים: הנחיות: הש לנץ קרן מרצה: תכנותמונחהעצמים) 236703 ( א' מועד 2012, חורף סמסטר סמסטר סוף מבחן קרבי אלעד רביב, אריאל מושקוביץ, אייל מתרגלים: הנחיות:.1.2.3.4.5.6.7 השאלות. כל על לענות עליכם משקל. שוות שאלות 5 במבחן יוםשני

קרא עוד

Slide 1

Slide 1 מבוא לשפת C תירגול 10: מצביעים, מערכים ומחרוזות שבוע שעבר... מצביעים Call by reference 2 תוכנייה קשר מצביע-מערך )אריתמטיקה של מצביעים( העברת מערכים לפונקציה מחרוזות דוגמה 3 קשר מצביע-מערך 4 תזכורת: תמונת

קרא עוד

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

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

קרא עוד

PowerPoint Presentation

PowerPoint Presentation שיעור מספר 11: חידושים ב Java 8 בית הספר למדעי המחשב היום בשיעור תכנות פונקציונלי זרמים from: https://medium.com/@cscalfani/so-you-want-to-be-a-functional-programmer-part-1-1f15e387e536 2 מנשקים פונקציונליים

קרא עוד

Microsoft Word - c_SimA_MoedB2005.doc

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

קרא עוד