Description
נושאים: היסרוקר ,מערך חד ידממ.
לקשמ ןויצמ ליגרתה: %10 ךיראת השגה: 082023.05. 23:50
השגה רוחיאב: ניתן להגיש רוחיאב של םוי( בהורדת 10 תודוקנ – ןויצ ילמיסקמ 90) ,יומיים( בהורדת 20 תודוקנ – ןויצ ילמיסקמ 80) או שלושה ימים( בהורדת 30 תודוקנ – ןויצ ילמיסקמ 70) .לאחר מכן לא תתאפשר ההגשה
(דבלמ לםירוחיא םיקדצומ יפל ןונקת הטיסרבינואה.)
תויחנה תויללכ
תולאש עגונב ליגרתל שי םסרפל ןפואב ירוביצ םורופב ידועייה הלטמל אצמנה לדומב.
תושקב הכראהל תוביסמ תוקדצומ( יאולימם ,לידה ,אשפוז וכ׳ו) יש לשלוח למייל tom.ben-dor@biu.ac.il ףוריצב: םש אלמ ,םש שמתשמ תכרעמב השגהה ,רפסמ תדועת תוהז מסמוםיכ ייטנוולרם יפל ךרוצה.
יש דיפקהל דואמ לע תוארוה בוציע טלקה טלפהו ,קוידב לע יפ תואמגודה תופרוצמה .ןיא ףיסוהל וא טימשהל םיחוור וא םיוות םירחא ,ןיאו ףילחהל תויתוא תולודג תונטקב וא ךפיהל .רסוח הדפקה לע םיטרפ ולא לולע רורגל הדרוה תיתועמשמ רתויב ןויצב ליגרתה דע ידכ 0. ואר םכמצע םתרהזוה!
ומיש בל םתאש םיבקוע קיודמב ירחא תויחנהה ךמסמב ה-Style Guide םסרופמה רתאב סרוקה.
םכילע בותכל דוק לע יפ תוארוה ליגרתה אדוולו םתלביקש 100 הקידבב תיטמוטואה שארהונית ,ןכו ליגרתהש לפמקתמ ץרו לע יתרש הקלחמה( planet) אלל תואיגש אללו תורהזא.
ליגרת אלש דמוע םיטרדנטסב םייסיסבה וללה רורגי ,לשב החרטה אוהש רציימ ךילהתב הקידבה ולשתדרוה תודוקנ תיתועמשמ ןויצב ולש.
םריכזהל הדובעה איה תישיא” .הדובע תפתושמ “הניד הקתעהכ .תוקתעה תוקדבנ לע ידי תכרעמ השגהה תיטמוטואה ,ליגרתו קתעוהש רורגי ןיב ראשה ןויצ 0 העיגפו ינויצב לוגרתה םייפוסה לכל םימרוגה םיפתושההקתעהב .םתא םילוכי ןודל תושיגב ןורתפל ליגרתה ןפואב יטרואית ,ךא ןיא ףתשל דוק םושב הרוצ.
חותיפב דוקה ןתינ שמתשהל לכב תביבס הדובע ,רקיעה אוה ועדתש ךיא תחקל תא יצבק דוקה ךותמהביבסה וזה ,קודבל םתוא לע יתרש הטיסרבינואה ,שיגהלו םתוא תועצמאב תכרעמ השגהה.
חותיפב דוקה ןיא הלרזעי םילכב יחנומ תדימל הנוכמ לכמ גוס, לע לכ עטק דוק בתכיהל לע ידי שיגמה/ה דבלב ןפואבו יאמצע.
תמגוד הצרה לש ליגרתה תאצמנ ףוסב ךמסמה .
טירפת
תליחתב תינכותה ספדוי ךסמל טירפתה אבה:
Choose an option:
.0 Exit
.1 Evaluator
.2 Binary sequence
.3 Exciting number
.4 Cool number
.5 Count paths
רחאל ןכמ ,לע יפ תריחב שמתשמה ,עצבתת המישמה תשקובמה.
םויסב עוציב המישמ ,שי סיפדהל שדחמ תא טירפתה לועפלו לע יפ תריחב שמתשמה.
הדימב שמתשמהו שיקמ 0 ,יש לסיים את התוכנית .
הדימב שמתשמהו שיקמ היצפוא הניאש העיפומ טירפתב ,שי סיפדהל Invalid option סיפדהלו שדחמ תא טירפתה.
ניתן חינהל שהמשתמש סינכי תו דדוב (לוכי להיות לכ תו) רחאלו ןכמ ץחלי Enter.
ומיש בל: רחאל תספדה טירפתה שי תדרל הרוש .
תואמגוד הצרה ליגרתל םע טלק טלפו םיפוצמ םיעיפומ ףוסב ךמסמה ןכו םינכדועמ תכרעמב תשגה םיליגרתה.
המישמ 1 – בושיח ךרע לש יוטיב ןנוקמ
רחאל שמתשמהש רחב המישמב 1 – אוה שקבתי סינכהל יוטיב ןפואב אבה:
Enter an expression:
(1+(2*3)+5*8+1)
יוטיב אוה יוטיב יטמתמ טושפ יונבה מםירפסמ ,םירוטרפוא( + ,− ,∗,/) םיירגוסו.
יוטיבה ןנוקמ ,רמולכ אוה בכרומ יתתמ םייוטיב םרותבש םג םיליכמ יתת םייוטיב.
תינכותה בשחת תא ךרע יוטיבה ןפואב אבה:
ןיא תובישח תומידקל םירוטרפוא ,םיבושיח םיעצבתמ לאמשמ ןימיל ,םע תובישח םיירגוסל.
רמולכ רובע טלקה ל״נה ,ךרע יוטיבה בשוחי ךכ:
&’(1 + (2 ⋅ 3)/ + 51 ⋅ 83 + 1 = 97
ויודפס:
The value is 97
הדימב הביסמו יהשלכ יוטיבה וניא יקוח ,יש סיפדהל:
Invalid expression
ולרוזח טירפתל ישארה.
תודוקנ תובושח:
§ ןורתפה בייח תויהל יביסרוקר .זה לא אומר שלולאות אסורות ,אבל מבנה הפתרון צריך להיות רקורסיבי .
היעבה תחסונמ ךכ ןורתפש יביסרוקר אוה ןורתפה יעבטה טושפהו רתויב םושייל .זמר: ךיא םיבשחמ תא ךרע יוטיבה (6 + 4) ⋅ (2 + 1) ?מחשבים תא יכרע יתת םייוטיבה היסרוקרב (המ ךותבש םיירגוסה) מוםיליפכ תא תואצותה .ןיא שמתשהל םיכרעמב.
§ םירפסמה םיעיפומה יוטיבב םה חווטב 9 − 0 ללוכ ,רמולכ הרפס תחא .הז דעונ לקהל לע ןורתפה .
§ יוטיב יקוח דימת ליחתמ רגוסב חתופ ) ונגמר רגוסב רגוס (.
§ ןיא הלבגמ לע ךרוא יוטיבה ,רפסמ יתת םייוטיבה וב וא םייפוא .
§ יוטיבב םילוכי עיפוהל םיחוור הלחתהב ,עצמאב וא ףוסב שיו םלעתהל םהמ.
§ ךרע לכ יוטיב היהי חווטב ןיקתה לש רפסמ int ,אך לא בהכרח חיובי .
המישמ 2 – תאיצמ לכ םיפצרה יראניבהםי ךרואב 𝒏 אלל תודחא םיפוצר
רחאל שמתשמהש רחב המישמב 2 – אוה שקבתי סינכהל רפסמ יעבט ןפואב אבה:
Enter length:
3
תינכותה סיפדת תא לכ םיפצרה םייראניבה (תוזורחמ התובכרומ םיספאמ תודחאו) ךרואב 3 קוידב רשא אל תוליכמ תודחא םיפוצר .
המגודל ,רובע טלקה 3 ,יודפס:
000
001
010
100
101
תודוקנ תובושח:
§ ןורתפה בייח תויהל יביסרוקר ,במשימה וז לולאות אסורות .ניתן לכתוב ״פונקציות עזר״ בתנאי שגם ןה תויביסרוקר וא אלל תואלול .ןיא שמתשהל םיכרעמב.
§ ךרואה סנכומש לע ידי שמתשמה חטבומ תויהל רפסמ םלש לדוגב int ,אך לא בהכרח יבויח. ניתן חינהל תינכותהש ךומתת ךרואב 32 − 1 ללוכ דבלב (ובשח ךיא החנהה וזה תרזוע םכל תביתכב תינכותה) ויש לאכוף את הטווח הזה . הדימב טלקהו אל חווטב ל״נה שי סיפדהל:
Invalid length
םע תדירי הרוש ,רוזחלו טירפתל ישארה.
§ םיפצרה ספדומםי רדסב הלוע ,יפל לדוגה לש רפסמה ותוא ןה תוגציימ ,תטישב unsigned.
המישמ 3 – תקידב רפסמ שגרמ
רחאל שמתשמהש רחב המישמב 3 – אוה שקבתי סינכהל רפסמ יעבט ןפואב אבה:
Enter a natural number:
153
תינכותה קודבת םאה רפסמה אוה רפסמ ״שגרמ״ וא אל.
רפסמ שגרמ רדגומ תויהל רפסמ רשא םוכס ויתורפס ,רשאכ לכ תחא תקזחב רפסמ ויתורפס ,הווש ול .
המגודל:
1! + 5! + 3! = 153
ןכלו 153 אוה רפסמ שגרמ ,והפלט יהיה:
The number is exciting
הדימב רפסמהו סנכוהש וניא שגרמ ,טלפה היהי:
The number is not exciting
תודוקנ תובושח:
§ ןורתפה בייח תויהל יביסרוקר ,המישמב וז תואלול תורוסא. ניתן לכתוב ״פונקציות ״רזע בתנאי םגש ןה תויביסרוקר וא אלל תואלול .ןיא שמתשהל םיכרעמב.
§ חטבומ סנכויש רפסמ שחווטב הנתשמ unsigned int.
המישמ 4 – תקידב רפסמ בינגמ
רחאל שמתשמהש רחב המישמב 4 – אוה שקבתי סינכהל רפסמ יעבט ןפואב אבה:
Enter a natural number:
14
תינכותה קודבת םאה רפסמה אוה רפסמ ״בינגמ״ וא אל.
ידכ ןיבהל והמ רפסמ בינגמ ,לכתסנ לע רפסמה בינגמה 14:
םא רוצינ הרדס הבש םירביאה םינושארה םה תורפס רפסמה:
1,4
רפסמה 14 בכרומ מיתש תורפס ,לכן האיבר הבא בסדרה יהיה הסכום של ינש םירביאה םימדוקה ול:
14,9,5,4,1ןוויכמ רפסמהש 14 עיפומ הרדסב ,אוה רפסמ בינגמ! הפלט יהיה:
The number is cool
תמועל תאז רפסמה 123 אוה אל בינגמ ,לכתסנ לע הרדסה ולש ,הב םימכוס לכ םעפ תא תשולש םירביאה םינורחאה:
… ,145,78,47,20,11,6,3,2,1רורבו ש-123 םלועל אל יופיע בסדרה ,והפלט יהיה:
The number is not cool
תודוקנ תובושח:
§ ןורתפ המישמ וז אל בייח תויהל יביסרוקר .
§ חטבומ סנכויש רפסמ חווטב הנתשמ unsigned int.
§ ןורתפב הלאש וז וכרטצת שמתשהל ךרעמב .םכריכזהל ,לדוג ךרעמה ךירצ עבקיהל ןמזב היצליפמוקה אלו תולתכ הנתשמ דוקב .כלומר נגדיר תליחתב תינכותה
? define ARRAY_SIZE# רשאכ םוקמב ןמיס הלאש עיפוי רפסמ והשלכ ,שמתשנו ב
[ARRAY_SIZE] הצרנשכ רידגהל תא ךרעמה (םא ךרטצנ תוחפ םיאת מ-ARRAY_SIZE, סחייתנ ךרעמל לאכ רצק רתוי הממ אוהש תואיצמב) .עליכם לחשוב לבד מה הערך ךירצש עיפוהל םוקמב ןמיס הלאשה .זמר: שי ךרע דחא אוהש ךרעה בוטה רתויב ,ערך זה ייבדק הקידבב תינדיה( ידכ אלש ורצית המגודל ךרעמ לדוגב 100000 ידכ תויהל םיחוטב אוהש קיפסי דימת).
המישמ 5 – סתריפ םילולסמ
רחאל שמתשמהש רחב המישמב 5 – אוה שקבתי סינכהל ינש םירפסמ ןפואב אבה:
Enter width and height:
4 2
תעכ רידגנ תא היעבה רובע םירטמרפה וסנכוהש:
בלכבל אצמנ הניפב תילאמשה הנוילעה לש הלבט לדוגב 2 × 4 ,הוא מעוניין להגיע לעצם בפינה הימנית הנותחתה ,אוהשכ לגוסמ עונל הנימי וא הטמל דבלב.
םכילע בשחל תא רפסמ םילולסמה םהב לוכי בלבלכה עונל .
הרקמב הז ,ןתינ תוארל תולקב םימייקש ראהעב םילולסמ:
םכילע תחקל ןובשחב םג ץוליא ףסונ: בלבלכה אל לוכי דועצל םילולסמב רשא םיליכמ הדיעצ ותואב ןוויכ ךשמב השולש םידעצ ףצרב .כלומר ךותמ 4 םילולסמה ל״נה ,ינש םילולסמה םיינמיה םילספנ .הפלט צריך תויהל:
The number of paths is 2
תודוקנ תובושח:
§ ןורתפה בייח תויהל יביסרוקר ,המישמב וז תואלול תורוסא .ןתינ בותכל תויצקנופ״ ״רזע יאנתב םגש ןה תויביסרוקר וא אלל תואלול .ןיא שמתשהל םיכרעמב.
§ חטבומ וסנכויש םירפסמ חווטב לש unsigned int.
§ רובע הלבט לדוגב 𝑛 × 0 םימייק 0 םילולסמ ,רובע הלבט לדוגב 1 ×𝑚 םייק לולסמ דיחי.
תוארוה השגה
שי לשיגה תא תינכותה םתבתכש ץבוקב דדוב םשב ex_3.c הצובקל רפסמ 14.
תמגוד הצרה
רומאכ ,המגוד וז איה תיקלח ,עליכם לחשוב על כלל מקרי הקצה האפשריים בתוכנית קודבלו םתוא.
Choose an option:
0. Exit
1. Evaluator
2. Binary strings
3. Exciting number
4. Cool number
5. Count paths
1
Enter an expression:
(1+(2*3)+5*8+1)
The value is 97
Choose an option:
0. Exit
1. Evaluator
2. Binary strings
3. Exciting number
4. Cool number
5. Count paths
1
Enter an expression:
((5)+(1-))1 The value is 5
Choose an option:
0. Exit
1. Evaluator
2. Binary strings
3. Exciting number
4. Cool number
5. Count paths
2
Enter length:
3
000
001
010
100
101
Choose an option:
0. Exit
1. Evaluator
2. Binary strings
3. Exciting number
4. Cool number
5. Count paths
3
Enter a natural number: 153
The number is exciting
Choose an option:
0. Exit
1. Evaluator
2. Binary strings
3. Exciting number
4. Cool number
5. Count paths
3
Enter a natural number: 13
The number is not exciting
Choose an option:
0. Exit
1. Evaluator
2. Binary strings
3. Exciting number
4. Cool number
5. Count paths
4
Enter a natural number: 14
The number is cool
Choose an option:
0. Exit
1. Evaluator
2. Binary strings
3. Exciting number
4. Cool number
5. Count paths
4
Enter a natural number:
123
The number is not cool
Choose an option:
0. Exit
1. Evaluator
2. Binary strings
3. Exciting number
4. Cool number
5. Count paths
5
Enter width and height: 4 2
The number of paths is 2
Choose an option:
0. Exit
1. Evaluator
2. Binary strings
3. Exciting number
4. Cool number
5. Count paths
0




Reviews
There are no reviews yet.