תוכן עניינים 10-3 מבחן בתכנות להנדסת בנין, סמסטר ב', מועד ב', 2019 25-11 מבחן בתכנות להנדסת בנין, סמסטר ב', מועד ב', 2019 34-26 מבחן בתכנות להנדסת בנין, סמסטר ב', מועד א', 2018 46-35 מבחן בתכנות להנדסת בנין, סמסטר ב', מועד ב', 2015 54-47 מבחן בתכנות להנדסת בנין, סמסטר ב', מועד ב', 2015 באדיבות רכזות בנק הבחינות והסיכומים www.bgu4u.co.il
371.1.1681 תכנות להנדסת בנין חוברת מבחנים זו מובאת אליכם באדיבות מדור אקדמיה של האגודה הסטודנטיאלית בעיות אקדמיות? מועד ג'? וועדת משמעת? מילואים? חוברת מבחנים? הפסקת לימודים? סיכומים? מדור אקדמיה פה בשבילך שירותי המדור: סיוע אקדמי ליווי וייצוג בבתי דין משמעתיים מאגר בחינות משנים קודמות מאגר סיכומים של סטודנטים ספריית השאלה במחירים סטודנטיאליים קורסי הכנה תמיכה במשרתי מילואים 2020 www.bgu4u.co.il בית הסטודנט, קומה 1, חדר 161 באדיבות רכזות בנק הבחינות והסיכומים www.bgu4u.co.il
2 מאגר הסיכומים אגודת הסטודנטים, בן-גוריון
3 מאגר הסיכומים אגודת הסטודנטים, בן-גוריון
4 מאגר הסיכומים אגודת הסטודנטים, בן-גוריון
5 מאגר הסיכומים אגודת הסטודנטים, בן-גוריון
6 25 נק' ) שאלה ( 1 i = 4, j = 4, k = 5 9 points i = -3, j = 11, k = 11 9 points i = - 3, j = 5, k = 0 7 points שאלה )25 2 נק' ) - אני ממליץ להוסיף שגודל מחרוזת לא יעלה על 100 תווים ושלא יהיו רווחים במחרוזת )שיוכלו לקלוט ב.)scanf int ispreaty(char* str) int num1,num2,i; for(i=num1=num2=0;str[i];i++) if(str[i]=='@') num1++; else if(str[i]=='&') num2++; return num1==num2; } void arepreaty() char str[100]=0}; int min=0,max=0,count=0; printf("enter strings until string STOP:\n"); scanf("%s",str); while(strcmp(str,"stop")) if(ispreaty(str)) count++; if(count==1) max=min=strlen(str); else if(strlen(str)>max) max=strlen(str); else if(strlen(str)<min) min=strlen(str); } } printf("enter another string (until STOP):\n"); scanf("%s",str); } if(!count) printf("there were no preaty words.\n"); else printf("ther were %d preaty words, the longest had %d chars and the shortest had %d chars.\n",count,max,min); } מאגר הסיכומים אגודת הסטודנטים, בן-גוריון
7 )25 נק'( שאלה 3 א. כאשר התקבל פרמטר = 3 length הפונקציה מחזירה : list -> 5 -> 6 -> 0-> NULL ב. הפונקציה what3 תחזיר את אותה הרשימה אשר אורכן גדול או שווה ל-. length,list כאשר נמחקו ממנה תתי- הסדרות 25 נק' ) שאלה ( 4 כל סעיף 5 נקודות headodd = head;.(1) even -> nex t= head; (2) even = head;.(3) return headeven;.(4) headeven;.(5) MATLAB שאלה 25( 5 נק' ) סעיף א' )10 נק'( מאגר הסיכומים אגודת הסטודנטים, בן-גוריון
8 2 5 10 0 5 8 13 0 10 13 18 0 0 0 0 0 סעיף ב' )15 נק'( function a1 = f5(b1) [b1row, b1col] = size(b1); v = zeros(1,c); if mod(b1col,2) == 0 a1 = zeros(b1row + 2,b1Col + 2); else a1 = ones(b1row + 2,b1Col + 2); a1(2 : b1row + 1,2 : b1col + 1) = b1; end % f5 מאגר הסיכומים אגודת הסטודנטים, בן-גוריון
2 מאגר הסיכומים אגודת הסטודנטים, בן-גוריון
3 מאגר הסיכומים אגודת הסטודנטים, בן-גוריון
4 מאגר הסיכומים אגודת הסטודנטים, בן-גוריון
5 מאגר הסיכומים אגודת הסטודנטים, בן-גוריון
6 מאגר הסיכומים אגודת הסטודנטים, בן-גוריון
7 מאגר הסיכומים אגודת הסטודנטים, בן-גוריון
8 מאגר הסיכומים אגודת הסטודנטים, בן-גוריון
9 מאגר הסיכומים אגודת הסטודנטים, בן-גוריון
10 מאגר הסיכומים אגודת הסטודנטים, בן-גוריון
11 מאגר הסיכומים אגודת הסטודנטים, בן-גוריון
12 מאגר הסיכומים אגודת הסטודנטים, בן-גוריון
371-1-1681. 5,. 100.,. ).(!
2 ( ' 25) 1 :? " מאגר הסיכומים אגודת הסטודנטים, בן-גוריון
3 (' 25) 2 " ". 6 aabxxxbxbbxaxaa :. 6-6 'x'.str int maxnum(char *str) : str (' 25) 3.1 n " " n : " ", 3 2 1 } 2 1 3 } 1 2 3 } 4 3 5 1 2 } 2 7 5 6 3 1 4 } 1,2,2} : " " int test3 (int [ ] arr, int n)." " n arr.0, 1 " ".... int test3 (int [ ] arr, int n) int ans = ; int i, j; for ( i = 0 ; i < n && ; i++) if ((arr[i] > n) )) ans = 0; for ( ; j < n && ans ; j++) if ( ) ans = 0; } // for return ans; } // test3 מאגר הסיכומים אגודת הסטודנטים, בן גוריון
4 (' 25) 4 : typedef struct item int value; struct item *next; } item; void test4( item* list1, item* list2, int num ). num -, num value list1.list2 " num = 7 list2, list1 : list1 2 7 10 7 9 NULL list2 3 4 5 NULL : list1 list1 2 3 4 5 10 3 4 5 9 NULL מאגר הסיכומים אגודת הסטודנטים, בן-גוריון
5 MATLAB ( ' 25) 5 function test5(inm) "YES" inm."no", : inm,1 1 0 0 0 0 2 0 0 0 0 3 0 0 0 0 4."YES" : inm,2 1 0 0 0 0 2 0 0 0 0 3 0 7 0 0 4."NO".( while for ).( ) : מאגר הסיכומים אגודת הסטודנטים, בן גוריון
6 מאגר הסיכומים אגודת הסטודנטים, בן-גוריון
7 מאגר הסיכומים אגודת הסטודנטים, בן גוריון
8 מאגר הסיכומים אגודת הסטודנטים, בן-גוריון
9 מאגר הסיכומים אגודת הסטודנטים, בן גוריון
אוניברסיטת בן גוריון בנגב תאריך המבחן: 2.08.19 שם המרצה: שקולניק אלכסנדר מבחן ב: תכנות להנדסת בניין מס' הקורס : מיועד לתלמידי : 371-1-1681 הנדסת בניין ב' מועד ב' סמ' שנה תשע"ט 3 שעות משך הבחינה : דף פוליו אחד לא מודפס חומר עזר : ולא מצולם. אין להשתמש במחשבון. במבחן זה 5 שאלות. עליך לבחור בארבע שאלות בלבד, המאפשרות לצבור 100 נקודות. במקרה והבחירה לא תצוין ייבדקו ארבע שאלות ראשונות במחברת המבחן. רשמו תשובותיכם במחברת התשובות בלבד מותר להגדיר פונקציות עזר בכל השאלות, אלא אם נאמר אחרת. כתבו קוד קריא והקפידו על אינדנטציה והערות (אפשר בעברית). ב ה צ ל ח ה!
שאלה 25) 1 נק' ( #include<stdio.h> #include<string.h> typedef struct str int x; char y[20]; double z; } str; בהינתן התכנית הבאה: void f1() char* arr1 = "123456789"; printf("%c\n", arr1[ arr1[strlen(arr1)] ]); } // f1 void f2() char* arr2= "abcde"; printf("%c\n", arr2[ arr2[3] - arr2[1] ] ); } // f2 void f3() char* arr3 = "123456"; printf("%c\n", (arr3 + 2)[2] ); } // f3 void f4() struct str b = 0, "abcdef", 6.0}; printf("%c %d\n", (b.y + 2)[3], (b.x-1) ); } // f4 void f5() struct str b = 5, "12345", 6.0}; printf("%c %d\n", (b.y + 2)[0], b.x/3 ); } // f5 void main() f1(); f2(); f3(); f4(); f5(); } // main רשום מה מופיע על המסך לאחר ביצוע הקוד הנ"ל?
שאלה (25 2 נק') שתי מחרוזות נקראות "אחיות" אם הן מכילות את אותן התווים. כתוב פונקציה: ) *str2 int test2( char *str1, char המקבלת 2 מחרוזות str1, str2 ומחזירה את הערך 1 אם המחרוזות אחיות, אחרת 0. ניתן להניח כי המחרוזות מכילות אותיות קטנות באנגלית ורווחים בלבד. שים לב: בסוף הפונקציה יש לשחרר את כל הזיכרון שהוקצה. דוגמה: המחרוזות gurion bigger union, ben אחיות.b,e,g,i,o,n,r,u מכיוון ששתיהן מורכבות מהאותיות o המחרוזות evening good morning good אינן אחיות. v הן אינן מכילות את אותן האותיות, לדוגמה בראשונה יש o בעוד שבשנייה לא. שאלה (25 3 נק') typedef struct item int value; struct item *next; } item; כל איבר ברשימה מקושרת מוגדר באופן הבא: list ערכי הרשימה מרכיבים תתי-סדרות (לא ריקות, כלומר מכילות לפחות ערך אחד), כאשר בסוף כל אחת מהן המספר 0. לדוגמה: 3 8 0 2 8 1 7 0 list הפונקציה length) item *Test3(item *list, int מקבלת כפרמטרים את מצביע list לרשימה, ומספר שלם. length התכנית תחזיר את אותה הרשימה, כאשר נמחקו ממנה תתי- הסדרות אשר אורכן גדול או שווה ל-. length לפלט התכנית עבור הקלט למעלה, כאשר התקבל פרמטר length=3 : 3 8 0 השלימו בדפי התשובה את הקטעים החסרים:
item *Test3(item *list, int length) item *start = list, *finish, *head = list, *aux; int count = 0; while( list ) if(list->value!= 0) count++; list = list->next; } else return head; } // Test3 if(count < length) count = 0; finish = list; start =?? 1??; list = list->next; } else count = 0; list = list->next; if(?? 2?? == start) head =?? 3??; else?? 4?? = list; while(start!=?? 5??) aux =?? 6??; start =?? 7??; free(aux); } }
שאלה (25 4 נק') typedef struct node int code; int count; struct node *next; } node; כל איבר ברשימה מקושרת מוגדר באופן הבא: void Test4(node *head) כתוב פונקציה המקבלת head עוגן של רשימה מקושרת לא ממוינת שכל חוליה ברשימה מכילה שני נתונים: קוד הפריט כמות הפריט - - הפונקציה משנה את הרשימה כך שעבור כל קוד פריט תהיה רק חוליה אחת המכילה את סך כל הכמות עבור אותו פריט. הערות: אין להגדיר מבנה נתונים אחר מלבד הרשימה הנתונה. אין להשתמש בפונקציות נוספות.
MATLAB שאלה ) 5 25 נק' ( כתוב פונקציה ) inm function test5( המקבלת כפרמטר מטריצה מלבנית inm ומדפיסה ווקטור עמודה vm אשר בכל הכניסות של ווקטור העמודה vm מאוחסן הערך המקסימאלי עבור כל השורות של המטריצה המלבנית.inM חובה להדפיס את הווקטור בליווי הודעה מתאימה (אפשר כמו בדוגמה ( inm היא : לדוגמה, אם המטריצה 1 2 3 1 7 0 1 0 3 1 2 0 2 4 5 אז הפונקציה test5 מדפיסה את ווקטור העמודה הבא: Column vectot Vm is : 7 3 5 הערה: אפשר להשתמש רק בלולאה אחת בלבד ) for או while אין להשתמש בקינון לולאות ) לולאה בתוך הלולאה). לפי בחירתך ).
אוניברסיטת בן גוריון בנגב תאריך המבחן: 2.08.19 שם המרצה: שקולניק אלכסנדר מבחן ב: תכנות להנדסת בניין מס' הקורס : מיועד לתלמידי : 371-1-1681 הנדסת בניין ב' מועד ב' סמ' שנה תשע"ט 3 שעות משך הבחינה : דף פוליו אחד לא מודפס חומר עזר : ולא מצולם. אין להשתמש במחשבון. במבחן זה 5 שאלות. עליך לבחור בארבע שאלות בלבד, המאפשרות לצבור 100 נקודות. במקרה והבחירה לא תצוין ייבדקו ארבע שאלות ראשונות במחברת המבחן. רשמו תשובותיכם במחברת התשובות בלבד מותר להגדיר פונקציות עזר בכל השאלות, אלא אם נאמר אחרת. כתבו קוד קריא והקפידו על אינדנטציה והערות (אפשר בעברית). ב ה צ ל ח ה!
שאלה 25) 1 נק' ( #include<stdio.h> #include<string.h> typedef struct str int x; char y[20]; double z; } str; בהינתן התכנית הבאה: void f1() char* arr1 = "123456789"; printf("%c\n", arr1[ arr1[strlen(arr1)] ]); } // f1 void f2() char* arr2= "abcde"; printf("%c\n", arr2[ arr2[3] - arr2[1] ] ); } // f2 void f3() char* arr3 = "123456"; printf("%c\n", (arr3 + 2)[2] ); } // f3 void f4() struct str b = 0, "abcdef", 6.0}; printf("%c %d\n", (b.y + 2)[3], (b.x-1) ); } // f4 void f5() struct str b = 5, "12345", 6.0}; printf("%c %d\n", (b.y + 2)[0], b.x/3 ); } // f5 void main() f1(); f2(); f3(); f4(); f5(); } // main רשום מה מופיע על המסך לאחר ביצוע הקוד הנ"ל?
שאלה (25 2 נק') שתי מחרוזות נקראות "אחיות" אם הן מכילות את אותן התווים. כתוב פונקציה: ) *str2 int test2( char *str1, char המקבלת 2 מחרוזות str1, str2 ומחזירה את הערך 1 אם המחרוזות אחיות, אחרת 0. ניתן להניח כי המחרוזות מכילות אותיות קטנות באנגלית ורווחים בלבד. שים לב: בסוף הפונקציה יש לשחרר את כל הזיכרון שהוקצה. דוגמה: המחרוזות gurion bigger union, ben אחיות.b,e,g,i,o,n,r,u מכיוון ששתיהן מורכבות מהאותיות o המחרוזות evening good morning good אינן אחיות. v הן אינן מכילות את אותן האותיות, לדוגמה בראשונה יש o בעוד שבשנייה לא. שאלה (25 3 נק') typedef struct item int value; struct item *next; } item; כל איבר ברשימה מקושרת מוגדר באופן הבא: list ערכי הרשימה מרכיבים תתי-סדרות (לא ריקות, כלומר מכילות לפחות ערך אחד), כאשר בסוף כל אחת מהן המספר 0. לדוגמה: 3 8 0 2 8 1 7 0 list הפונקציה length) item *Test3(item *list, int מקבלת כפרמטרים את מצביע list לרשימה, ומספר שלם. length התכנית תחזיר את אותה הרשימה, כאשר נמחקו ממנה תתי- הסדרות אשר אורכן גדול או שווה ל-. length לפלט התכנית עבור הקלט למעלה, כאשר התקבל פרמטר length=3 : 3 8 0 השלימו בדפי התשובה את הקטעים החסרים:
item *Test3(item *list, int length) item *start = list, *finish, *head = list, *aux; int count = 0; while( list ) if(list->value!= 0) count++; list = list->next; } else return head; } // Test3 if(count < length) count = 0; finish = list; start =?? 1??; list = list->next; } else count = 0; list = list->next; if(?? 2?? == start) head =?? 3??; else?? 4?? = list; while(start!=?? 5??) aux =?? 6??; start =?? 7??; free(aux); } }
שאלה (25 4 נק') typedef struct node int code; int count; struct node *next; } node; כל איבר ברשימה מקושרת מוגדר באופן הבא: void Test4(node *head) כתוב פונקציה המקבלת head עוגן של רשימה מקושרת לא ממוינת שכל חוליה ברשימה מכילה שני נתונים: קוד הפריט כמות הפריט - - הפונקציה משנה את הרשימה כך שעבור כל קוד פריט תהיה רק חוליה אחת המכילה את סך כל הכמות עבור אותו פריט. הערות: אין להגדיר מבנה נתונים אחר מלבד הרשימה הנתונה. אין להשתמש בפונקציות נוספות.
MATLAB שאלה ) 5 25 נק' ( כתוב פונקציה ) inm function test5( המקבלת כפרמטר מטריצה מלבנית inm ומדפיסה ווקטור עמודה vm אשר בכל הכניסות של ווקטור העמודה vm מאוחסן הערך המקסימאלי עבור כל השורות של המטריצה המלבנית.inM חובה להדפיס את הווקטור בליווי הודעה מתאימה (אפשר כמו בדוגמה ( inm היא : לדוגמה, אם המטריצה 1 2 3 1 7 0 1 0 3 1 2 0 2 4 5 אז הפונקציה test5 מדפיסה את ווקטור העמודה הבא: Column vectot Vm is : 7 3 5 הערה: אפשר להשתמש רק בלולאה אחת בלבד ) for או while אין להשתמש בקינון לולאות ) לולאה בתוך הלולאה). לפי בחירתך ).
באדיבות רכזות בנק הבחינות והסיכומים www.bgu4u.co.il