תכנות, רקורסיה, מערכים, מחרוזות, עצים בינאריים ורשימות מקושרות
Q5 נתונה השיטה הסטטית secret הבאה, המקבלת כפרמטרים מערך חד-ממדי a המלא במספרים שלמים, ושני מספרים שלמים ו- .a:secret בעקבות הקריאה secret(a, 6, 2)?secret בעקבות הקריאה secret(a, 2, 6)?secret עם הפרמטרים a (המערך לעיל), ו- , השיטה תחזיר את הערך 1?secret עם הפרמטרים a (המערך לעיל), ו- , השיטה תחזיר את הערך 9?secret עם הפרמטרים a (המערך לעיל), ו- , השיטה תחזיר את הערך 2?secret שונתה קצת, והיא נקראת secret1. כל השינויים מודגשים בתוך הקוד להלן:secret1 בעקבות הקריאה secret1(a, 1, 6)?secret באופן כללי, כאשר היא מקבלת כפרמטרים מערך חד-ממדי a מלא במספרים שלמים, ושני מספרים שלמים ו-.Math.sqrt , Math.min , Math.max מהמחלקה Math וכן בקבועים Integer.MAX_VALUE, Integer.MIN_VALUE מהמחלקה Integer.Overloading)"ab", "ce", "acd", "d", "abcde", "" (the empty string)"ba", "cf", "edcba", "g"st1 = "ABCBDAB", st2 = "BDCABA", st3 = "BADACB"st1 = "ABCBDAB", st2 = "BDCABA", st3 = "BADACB"st1 = "ABCBDAB", st2 = "XYZ", st3 = "DC"String ו- Math בהן (ורק בהן) מותר להשתמש בפתרון שאלה זו:public char charAt(int i) - המחזירה את התו במקום ה- במחרוזת (עליה היא מופעלת)public int length() - המחזירה את אורך המחרוזת עליה היא מופעלת.public String substring(int i) - המחזירה את התת-מחרוזת המתחילה במקום ה- במחרוזת עליה היא מופעלת עד לסוף המחרוזת.public String substring(int i, int j) - המחזירה את התת-מחרוזת המתחילה במקום ה- במחרוזת עליה היא מופעלת עד למקום ה- (לא כולל).public int max (int x, int y) – המחזירה את המספר הגדול מבין ו- .public int min (int x, int y) – המחזירה את המספר הקטן מבין ו- .Integer.MAX_VALUE מייצג את המספר השלם הגדול ביותר האפשריInteger.MIN_VALUE מייצג את המספר השלם הקטן ביותר האפשריIntNode הבאה, המייצגת איבר ברשימה מקושרת חד-סטרית המכילה מספרים שלמים:IntList שמכילה את השיטה what הכתובה להלן. אפשר להניח שיש שיטות נוספות במחלקה.list: תסומן כך: what על הרשימה list הבאה:System.out.println (list.what(4));list1 הבאה: length() המחזירה את אורך הרשימה עליה היא מופעלת.list2 בת 7 איברים לפחות, כאשר לפחות 4 מתוכם שונים זה מזה.what באופן כללי, כאשר היא פועלת על רשימה list1 כלשהי, ומקבלת כפרמטר מספר שלם כלשהו?A, B, C, D, E.f() בשתי מחלקות.f().Driver נכתב קטע הקוד הבא בשיטה main אשר יוצר את העצמים הבאים, והוא תקין.Driver נכתב הקטע הבא, ולידו כתוב מה קרה בעקבות כל פקודה:B יורשת ישירות מהמחלקה A, ציירו זאת כך:A, B, C, D ו- E. (חתימות בלבד!)f().f() בכל המחלקות שציינתם בסעיף ג.a4 = o1;o2 = o1;((A)o1).toString();a4.toString();((A)o2).toString();Node שלהלן מממשת צומת בעץ בינרי.BinaryTree מאגדת בתוכה שיטות סטטיות לטיפול בעץ בינרי.find1, find2 ו- find3 הבאות:root: 8
/ \
11 6
/ \ \
4 2 13
/ / \
10 3 25
|
19
find1 בעקבות הקריאה BinaryTree.find1(root, 10)?find1 באופן כללי כשהיא מקבלת כפרמטרים: שורש של עץ בינרי root, שכל הערכים בצמתיו שונים זה מזה, ומספר שלם num כלשהו? שימו לב, עליכם לתת תיאור ממצה של מה עושה השיטה באופן כללי, ולא תיאור של מה עושה כל שורה בשיטה, או איך היא מבצעת זאת. כלומר, לכתוב בקצרה מה משמעות הערך שהשיטה מחזירה. התייחסו למקרי קצה.find2 בעקבות הקריאה BinaryTree.find2(root, 3, 2)?find2 באופן כללי כשהיא מקבלת כפרמטרים: שורש של עץ בינרי root, שכל הערכים בצמתיו שונים זה מזה, ושני מספרים שלמים ו-? שימו לב, עליכם לתת תיאור ממצה של מה עושה השיטה באופן כללי, ולא תיאור של מה עושה כל שורה בשיטה, או איך היא מבצעת זאת. כלומר, לכתוב בקצרה מה משמעות הערך שהשיטה מחזירה. התייחסו למקרי קצה.find3 בעקבות הקריאה BinaryTree.find3(root, 3, 13)?find3 באופן כללי כשהיא מקבלת כפרמטרים: שורש של עץ בינרי root, שכל הערכים בצמתיו שונים זה מזה, ושני מספרים שלמים ו-? שימו לב, עליכם לתת תיאור ממצה של מה עושה השיטה באופן כללי, ולא תיאור של מה עושה כל שורה בשיטה, או איך היא מבצעת זאת. כלומר, לכתוב בקצרה מה משמעות הערך שהשיטה מחזירה. התייחסו למקרי קצה.arr המכיל מספרים שלמים חיוביים ושליליים (ללא אפסים). השיטה צריכה לבדוק אם אחד מהערכים במערך מחלק את כל שאר הערכים במערך. אם כן, השיטה צריכה להחזיר את הערך הזה, אם לא, השיטה תחזיר -1. אם יש יותר מערך אחד כזה במערך, השיטה תחזיר את הראשון מהם במערך.E, F, K, L, N, Pf() בשלוש מחלקות והשיטה g() במחלקה אחת בלבד.equals לא מומשה באף אחת מהמחלקות.f() ו g(). (הערך המוחזר של שתי השיטות הוא מטיפוס String)Driver נכתב קטע הקוד הבא בשיטה main אשר יוצר את העצמים הבאים, והוא תקין.Driver בהמשך השיטה main נכתבו פקודות נוספות (כל פקודה לא תלויה בפקודות האחרות), בהערה בסוף כל שורה, כתוב מה קרה בעקבות הוספת פקודה זו:f().f().main במחלקה Driver נכתבו הפקודות הבאות, והן תקינות.arr[3] = lf;lf = arr[3];System.out.println(o2 instanceof Object);System.out.println(o2 instanceof E);System.out.println(e2.equals(o2));System.out.println(((E)o1).equals(e2));Node שלהלן מממשת צומת בעץ בינרי.BinaryTree מאגדת בתוכה שיטות סטטיות לטיפול בעץ בינרי.something ו- what הכתובות בעמודים הבאים:root: 100
/ \
50 6
/ \ \
120 2 13
/ \ \
10 3 25
\
19
something בעקבות הקריאה BinaryTree.something(root)?something באופן כללי כשהיא מקבלת כפרמטר שורש של עץ בינרי root? שימו לב, עליכם לתת תיאור ממצה של מה עושה השיטה באופן כללי, ולא תיאור של מה עושה כל שורה בשיטה, או איך היא מבצעת זאת. כלומר, לכתוב בקצרה מה משמעות הערך שהשיטה מחזירה. התייחסו למקרי קצה.what בעקבות הפעלת שתי הפקודות להלן:what באופן כללי כשהיא מקבלת כפרמטר שורש של עץ בינרי root ומספר שלם num כלשהו? שימו לב, עליכם לתת תיאור ממצה של מה עושה השיטה באופן כללי, ולא תיאור של מה עושה כל שורה בשיטה, או איך היא מבצעת זאת. כלומר, לכתוב בקצרה השיטה מדפיסה. התייחסו למקרי קצה.Q5 נתונה השיטה הסטטית secret הבאה, המקבלת כפרמטרים מערך חד-ממדי a המלא במספרים שלמים 1 ו- 0 בלבד, ומספר שלם אי-שלילי k.a הבא:secret בעקבות הקריאה secret(a, 0)? נמקו את תשובתכם.secret(a, k) תחזיר את הערך הכי גדול (מתוך כל הערכים שיוחזרו מקריאה לשיטה עם כל ערכי ה- האפשריים)? נמקו את תשובתכם.secret(a, k) יהיה שווה ל- .secret(a, k) יהיה זהה.secret באופן כללי, כאשר היא מקבלת כפרמטרים מערך חד-ממדי a מלא באחדים (1) ובאפסים (0), ומספר שלם .מאגר מבחנים במבוא למדעי המחשב מהאוניברסיטה הפתוחה (אופ) - 969 שאלות ממוינות לפי נושא ורמת קושי, עם פתרונות מלאים לבדיקה עצמית. השאלות מכסות מועדים לאורך השנים, כולל מבחנים מ-2023, 2024, 2025 ו-2026. נושאים מרכזיים: רקורסיה, מערכים, מחרוזות, יעילות, עצים בינאריים. ניתן לסנן שאלות חוזרות, להתאמן על נושא ספציפי או להריץ סימולציית מבחן לפני הבחינה. הכנה למבוא למדעי המחשב מתמקדת בתרגול רקורסיה, מערכים ועצים בינאריים - הנושאים הנפוצים ביותר במבחנים. לימוד עצמי עם שאלות ממבחנים, בדגש על מעקב אחר קוד, מכין ביעילות לבחינה.