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

מסמכים קשורים
מבוא למדעי המחשב - חובלים

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

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

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

Microsoft Word - c_SimA_MoedB2005.doc

Microsoft Word B

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

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

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

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

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

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

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

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

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

תרגול 1

Microsoft Word - c_SimA_MoedA2006.doc

Slide 1

PRESENTATION NAME

Slide 1

PowerPoint Presentation

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

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

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

Tutorial 11

234114

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

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

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

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

Slide 1

Slide 1

Slide 1

ex1-bash

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

Programming

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

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

שיעור 1

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

Slide 1

Microsoft Word - tutorial Dynamic Programming _Jun_-05.doc

Microsoft Word - ExamA_Final_Solution.docx

Microsoft PowerPoint - rec1.ppt

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

Slide 1

PowerPoint Presentation

תכנות דינמי פרק 6, סעיפים 1-6, ב- Kleinberg/Tardos סכום חלקי מרחק עריכה הרעיון: במקום להרחיב פתרון חלקי יחיד בכל צעד, נרחיב כמה פתרונות אפשריים וניקח

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

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

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

Slide 1

Microsoft PowerPoint - rec3.ppt

Slide 1

Microsoft Word - דוגמאות ב

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

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

תרגיל בית מספר 1#

PowerPoint Presentation

Microsoft Word - review-sol-Prog123.doc

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

תוכן העניינים: פרק צמצומים ומימושים של פונקציות בוליאניות... 2 צמצומים של פונקציות באמצעות מפת קרנו:...2 שאלות:... 2 תשובות סופיות:... 4 צמצום

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

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

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

תכנון אלגוריתמים, אביב 1021, תרגול מס' 4 תכנון דינאמי תכנון דינאמי בתרגול זה נדון בבעיית הכפלת סדרת מטריצות (16.1.(CLR ראשית נראה דוגמא: דוגמא: תהינה

תרגול 1

מטלת מנחה (ממ"ן) 11 הקורס: חשבון אינפיניטסימלי II חומר הלימוד למטלה: יחידות 2,1 4 מספר השאלות: 7 משקל המטלה: נקודות סמסטר: ב 2007 מו

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

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

תרגיל בית מספר 1#

שעור 6

תרגיל 9 מבוא ללוגיקה ותורת הקבוצות, סתיו תשע"ד 1. תהי L השפה בעלת סימן פונקצייה דו מקומי G, סימן פונקציה חד מקומי T, סימן יחס תלת מקומי.c, d וקבועים L

תכנון אלגוריתמים עבודת בית 4: תכנון אלגוריתמים תאריך הגשה: 02: , בצהריים,תא מספר 66 בקומת כניסה של בניין 003 מתרגל אחראי: אורי 0

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

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

Microsoft Word - pitaron222Java_2007.doc

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

Slide 1

2019 שאלות מומלצות לתרגול מס' דיפרנציאביליות של פונקציה סקלרית )המשך(. כלל השרשרת. S = ( x, y, z) z = x + 3y על המשטח מצאו נקודה בה מישור משיק

פתרון מבחן במיקרו בקרים תשעו

PowerPoint Presentation

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

תרגול מס' 1

Microsoft PowerPoint - lec2.ppt

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

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

Microsoft Word - Ass1Bgu2019b_java docx

פייתון

Homework Dry 3

Slide 1

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

PowerPoint Presentation

PowerPoint Presentation

______________________________

תמליל:

אוניברסיטת חיפה החוג למדעי המחשב מבוא למדעי המחשב סמסטר ב' תשע"ב בחינת סיום, מועד ב',.02..9.7 מרצה: אורן וימן מתרגלים: נעמה טוויטו ועדו ניסנבוים מדריכי מעבדה: מחמוד שריף ומיקה עמית משך המבחן: שעתיים חומר עזר: אסור הנחיות: 1. עליכם לכתוב את התשובות על הטופס ולהגיש את כל הטופס ואת הטופס בלבד. 2. היציאה מהכיתה במהלך הבחינה אסורה. 3. קראו היטב כל שאלה וודאו שאתם מבינים אותה לפני שתתחילו לענות עליה. אם יש שאלות, פנו למרצה או למתרגלים. 4. כתבו בכתב יד ברור וקריא. ניתן לכתוב בעיפרון. 5. ניתן לכתוב הערות בעברית, גם בגוף פונקציות C. בהצלחה!!! שאלה 2. 3 4 סה"כ ציון /10 /30 /25 /35 /111

שאלה )20 2 נק'( א. נתונים המערכים/משתנים הבאים בזיכרון המחשב: int a[] = {6,5,4,3,2,1; char *b[] = {"Moed", "Bet", "is", "even", "more", "fun", "than", "Aleph"; char* d[] = {*(b+a[2]), *(b+a[1]); int e[3][3] = { {0,3,4, {1,2,7, {2,4,7 ; int f[] = { b[3][3] - b[4][0], a[2]+a[4], e[1][2] - e[0][1]; כתבו מה יודפס ע"י הפקודות הבאות: printf("%d", e[1][1] - a[e[1][1]] ); printf("%d", f[1] + *(f+2) ); printf("%c", *(*(d+1)+2)); printf("%d", (**(b+1) - 'A')); printf("%d", *((int *)e+4) ); -2 10 n 1 2

שאלה. )30 נק'( בשאלה זו, המערך a מכיל מספרים שלמים, כך שכל מספר מופיע פעם אחת לכל היותר: void func1(int a[], int x) int i = 0; while(x>0) if( x%2 == 1 ) printf(" %d ",a[i]); x /=2; i++; int func2(int n, int x) int temp; if(x == 0) return 1; temp = func2(n,x/2); if( x%2 ) return n*temp*temp; return temp*temp; void func3(int a[], int n) int x = 0,y; y = func2(2,n); while( x<y ) printf("{"); func1(a, x); printf("\n"); x++; 1. הסבירו בשורה או שתיים מה עושה כל אחת מהפונקציות: יש 1 במיקום ה- i x כך שבייצוג הבינארי של a[i] מדפיסה את כל האיברים :func1 x n מחשבת את :func2 מדפיסה את כל תתי הקבוצות של איברים ב- a. :func3

2. מה סיבוכיות הזמן של כל אחת מהפונקציות: O(logx) :func1 O(logx) :func2 O(n2 n ) :func3 3. כתבו פונקציה func4 שהיא לא רקורסיבית וחתימתה (x int func4 (int,n int אשר הקריאה אליה תגרום לתוצאה זהה לזו המתקבלת מקריאה ל- func2. int func4(int n, int x) int i,res = 1; for(i=0 ; i<x ; i++) res *= n; return res; {

שאלה )25 3 נק'( בהינתן מערך ממוין, הסטה מעגלית שלו תוגדר כהזזת כל איבר במערך תא אחד ימינה, כאשר האיבר האחרון במערך מועבר לתא הראשון. לדוגמא: מערך ממוין שהופעלו עליו מספר שלם כלשהו של הסטות מעגליות )1 הסטות או יותר( ייקרא מערך ממוין בהסטה. לדוגמה, המערכים הבאים ממוינים בהסטה: )הופעלו 2 הסטות( )הופעלו 4 הסטות( )הופעלו 1 הסטות( 1. עליכם לממש פונקציה רקורסיבית שחתימתה )n iscirc)int,[]a int המקבלת מערך a באורך n. הפונקציה מחזירה 1 אם המערך ממוין בהסטה )שימו לב שגודל ההסטה אינו ידוע( ו- 1 אחרת. על הפונקציה לעבוד בזמן.O(n) שימו לב: בסעיף זה אסור בכלל להשתמש בלולאות! כלומר, אסור להשתמש ב- while.for,while,do כמו כן, אסור להשתמש בפונקציות עזר נוספות. יש לכתוב פונקציה אחת בלבד עם החתימה הנתונה. עם זאת, מותר להשתמש במשתנים חיצוניים. int flag=0; int firstval; int iscirc(int a[], int n) { if(!flag){ flag++; firstval=*a; if(n==1){ if(*a > firstval) flag++; return (flag<3); if(*a > *(a+1)) flag++; if(flag==3) return 0; return iscirc(a+1,n-1);

2. בסעיף זה, עליכם לממש את הפונקציה )x findcirc)int,[]a int,n int שמקבלת מערך a שהוא ממוין בהסטה )שימו לב שגודל ההסטה אינו ידוע( את גודלו n וערך x, ומחפשת בו את הערך x. הפונקציה מחזירה את האינדקס במערך a שבו x נמצא, או )1-( אם x אינו נמצא במערך. בסעיף זה ניתן להניח כי כל אברי המערך שונים זה מזה. שימו לב: בסעיף זה מותר לכתוב עוד פונקציות עזר ומותר להשתמש בלולאות. שימו לב כי קיים פתרון בסיבוכיות זמן,O(logn( פתרון בסיבוכיות זמן גבוהה מזו לא יזכה בנקודות. int findcirc(int a[], int n, int x) { int low=0, high=n-1, mid; while (high >= low) { mid = (low+high)/2; if (a[mid] == x) return mid; if (a[high] > a[low]) { if (a[mid]>x) high=mid-1; else low=mid+1; else if (a[mid] > a[high]) { if (x>=a[low] && x<=a[mid]) high=mid-1; else low=mid+1; else { if (x>=a[mid] && x<=a[high]) low=mid+1; else high=mid-1; return -1;

שאלה )33 4 נק'( נתונה ההגדרה הבאה של צמתים בעץ בינארי: typedef struct node { int data; /* the number in the node */ struct node *left, *right; /* left and right children */ Node; עץ בינארי יקרה עץ שיקוף עם לכל מסלול בעץ, אם נחליף את בחירת הבן בכל הסתעפות יתקיים א. ב. המסלול יהיה תקין כלומר יגיע לצומת בעץ. הערך שבצומת הזה יהיה זהה לערך שבצומת אליו הגענו במסלול המקורי. כך למשל בעץ הבא: 1 2 2 4 5 המסלול >L,L< )כלומר Left ואז שוב )Left יוביל ל- 4 ואילו המסלול ההופכי >R,R< )כלומר Right ואז שוב )Right יוביל ל- 5 ולכן זהו אינו עץ שיקוף. העץ הבא לעומת זאת הוא כן עץ שיקוף: 1 2 2 4 3 3 4 זאת מפני שכל המסלולים ישמרו עם היפוך הבחירות: 1. המסלול >L,L< יוביל ל- 4 וגם המסלול ההופכי >R,R< יוביל ל- 4

2. המסלול >L,R< יוביל ל- 3 וגם המסלול ההופכי >R,L< יוביל ל- 3 3. המסלול >L< יוביל ל- 2 וגם המסלול ההופכי >R< יוביל ל- 2 1 בעץ הבא: 2 2 4 למסלול >L,L< בכלל לא קיים מסלול שיקוף >R,R< ולכן העץ אינו עץ שיקוף. עליכם לכתוב פונקציה שחתימתה ;(p int IsMirror(Node* הפונקציה מקבלת שורש של עץ ומחזירה 1 אם העץ הוא עץ שיקוף ו- 1 אחרת. הבהרות: 1. ניתן להוסיף שדות ל- node struct המוגדר לעיל. 2. ניתן להוסיף פונקציות עזר. 3. בעץ בינארי לכל צומת לכל היותר שני בנים )אך אולי פחות(. בן שאינו קיים מסומן ע"י,NULL כך שלמשל לעלה בעץ יש שני בנים ושניהם.NULL 4. לא ניתן להשתמש במשתנים חיצוניים או סטטיים. int IsMirror(Node* p) { if(p==null) return 1; return IsMirrorTwo(p->left, p->right); int IsMirrorTwo(Node* p, Node* q) { if(p==null && q==null) return 1; if((p==null && q!=null) (p!=null && q==null) (p->data!= q->data)) return 0; return (IsMirrorTwo(p->left, q->right) && IsMirrorTwo(p->right, q->left));