תכנות, רקורסיה, מערכים, מחרוזות, עצים בינאריים ורשימות מקושרות
difference המקבלת מערך ממוין של מספרים array ומספר חיובי נוסף diff. אם קיימים שני מספרים שונים במערך שההפרש בינהם שווה ל-diff הפונקציה מחזירה ערך true, אחרת היא מחזירה ערך false.true.false.array או להגדיר (או ליצור) משתנים מורכבים (כגון מערך וכדומה).array1 = {1, 3, 6, 7, 8, 10}array2 = {8, 10, 1, 3, 6, 7}array3 = {3, 6, 7, 8, 10, 1}findMinIndex(int[] array) המקבלת מערך לא ריק וממויין בעל איברים יחודיים שעבר הזזה מעגלית ומחזירה את האינדקס של האיבר הקטן ביותר במערך.array1 הפונקציה תחזיר את הערך 0.array2 הפונקציה תחזיר את הערך 2.array3 הפונקציה תחזיר את הערך 5.malloc ו- free הוא .malloc ו- free הוא .printf הוא .arr המכיל מספרים שלמים חיוביים ושליליים (ללא אפסים). השיטה צריכה לבדוק אם אחד מהערכים במערך מחלק את כל שאר הערכים במערך. אם כן, השיטה צריכה להחזיר את הערך הזה, אם לא, השיטה תחזיר -1. אם יש יותר מערך אחד כזה במערך, השיטה תחזיר את הראשון מהם במערך.arr המכיל מספרים שלמים חיוביים ממש בלבד, ומספר שלם חיובי num. השיטה צריכה לבדוק אם יש איבר במערך שהוא מחלק את הסכום של האיברים בתת-מערך שהוא נמצא באמצעו ומשמאלו ומימינו יש num איברים בכל צד. אם כן, השיטה צריכה להחזיר כמה איברים כאלו יש, אם אין, השיטה תחזיר 0.arr הואarr[1]. סכום התת-מערך שהוא באמצעו ומשמאלו ומימינו יש איבר אחד בכל צד הוא .arr[2]. סכום התת-מערך שהוא באמצעו ומשמאלו ומימינו יש איבר אחד בכל צד הוא .arr[3]. סכום התת-מערך שהוא באמצעו ומשמאלו ומימינו יש איבר אחד בכל צד הוא .arr[2]. סכום התת-מערך שהוא באמצעו ומשמאלו ומימינו יש שני איברים בכל צד הוא .arr הואarr[3]=2. סכום = . ואמנם, 2 מחלק 10.arr[5]=6. סכום = . ואמנם, 6 מחלק 18.arr[6]=7. סכום = . ואמנם, 7 מחלק 21.arr[7]=8. סכום = . ואמנם, 8 מחלק 24.arr[8]=9. סכום = . ואמנם, 9 מחלק 27.arr[6]=7. סכום = . ואמנם, 7 מחלק 35.arr[7]=8. סכום = . ואמנם, 8 מחלק 40.arr[4]=5. סכום = . ואמנם, 5 מחלק 40.arr[7]=8. סכום = . ואמנם, 8 מחלק 48.what, המקבלת כפרמטר מערך חד-ממדי המלא במספרים שלמים.what באופן כללי כשהיא מקבלת מערך a כלשהו המלא במספרים שלמים? הסבירו בקצרה מה השיטה עושה ולא כיצד היא מבצעת זאת. שימו לב, עליכם לתת תיאור ממצה של מה עושה השיטה באופן כללי, ולא תיאור של מה עושה כל שורה בשיטה, או איך היא מבצעת זאת. עליכם לכתוב מה המשמעות של הערך המוחזר מהשיטה. שימו לב למקרי הקצה.what. נמקו את תשובתכם.whatEff שתבצע את מה שביצעה השיטה what אבל בצורה יעילה יותר.whatEff שכתבתם. נמקו את תשובתכם.int func(int A[], int size) אשר מקבלת מערך A של מספרים שלמים ואת גודלו של המערך, ומדפיסה את המספרים הגדולים ביותר במערך זה. סדר ההדפסה לא חשוב. למען הפשטות ניתן להניח כי הינו מספר שלם.func([3,2,4,55,1,2,2,33,12], 9) תדפיס 55, 33, 12 כי מערך מכיל n=9 ערכים, ולכן הערכים הגדולים ביותר הם 55, 33, ו-12.smallestDiffPair תחזיר את הערך 1 ותדפיס את האיברים 2---3 או את 6---7.biggestDiffPair תחזיר את הערך 10 ותדפיס את האיברים -2---8.Q5 נתונה השיטה הסטטית הבאה, הפועלת על מערך דו-ממדי ממוין-יורד:find בעקבות הקריאה find(m), בהינתן לה כפרמטר המערך שלעיל?find אם נפעיל אותה עם הפרמטר שהוא המערך ? הסבירו בקצרה מה השיטה עושה ולא כיצד היא מבצעת זאת.find. התייחסו למקרי קצה.find1 שתקבל את המערך כפרמטר ותבצע בדיוק את מה שעושה השיטה find. כלומר, המשמעות של הערך המוחזר מ- find תהיה אותה משמעות של הערך המוחזר מ- find1.find?find ולשנות אותה, ולא לכתוב שיטה מחדש.שאלות תרגול במבוא למדעי המחשב בנושא יעילות ממבחנים של האוניברסיטה הפתוחה, אוניברסיטת תל אביב, אוניברסיטת בר-אילן, הטכניון. השאלות ממוינות לפי רמת קושי, עם פתרונות לבדיקה עצמית - כך שניתן ללמוד מטעויות ולהבין את דרך הפתרון לפני הבחינה. ניתן לאתר שאלות חוזרות ולהריץ מבחני סימולציה ממוקדים בנושא יעילות.