Dr. Dror Tobi

Introduction to CPP

נושאי השיעור :

  • שפת תכנות עילית

  • עקרונות שפת C

  • משתנים

  • אופרטורים

מצגת שעור ראשון

שאלה 1

כתבו תוכנית המבקשת מהמשתמש שני מספרים שלמים. התוכנית תקרא מספרים אלו והדפיס את תוצאת פעולות הכפל, חילוק, חיבור, חיסור, ומודולi של שני המספרים.

לדוגמא הפלט עבור  5 ו 3 יהיה:

5 * 3 = 15
5 / 3 = 1
5 + 3 = 8
5 – 3 = 2
5 % 3 = 2

שאלה 2

כתבו תוכנית המבקשת מהמשתמש את מקדמי המשוואה הריבועית aX2 + bX +c . התוכנית תקרא מספרים אלו  ותדפיס את שורשי המשוואה.

שאלה 3

כתבו תוכנית הקוראת שלשה מספריםהתוכנית תדפיס את הערך true אם המספרים מסודרים בסדר עולה (מקטן לגדול) , אחרת התוכנית תדפיס את הערך flase .

שאלה 4

פשטו את הביטוי הבא:

( !(a<b) && !(a>b))

שאלה 5

כתבו תוכנית הקוראת זווית במעלות. התוכנית תדפיס את סינוס  (sine)   וקוסינוס (cosine) הזוית.

 

נושאי השיעור :

  • משפט התנאי if

  • לולאת while

  • לולאת for

  • לולאת do-while

  • פקודות continue ו break

מצגת שעור שני

שאלה 1

כתבו תוכנית הקוראת שלשה מספרים מטיפוס int . על התוכנית תדפיס בחזרה מספרים אלו בסדר עולה.

שאלה 2

כתבו תוכנית הקוראת ארבעה מספרים מטיפוס int . על התוכנית להודיע אם כל המספרים שונים אחד מהשני או לא.

שאלה 3

כתבו תוכנית המדפיסה את לוח הכפל  (ראה תמונה למטה)  תוך שימוש שני לולאות while מקוננות.

שאלה 4

כתבו תוכנית המדפיסה את לוח הכפל  (ראה תמונה למעלה)  תוך שימוש שני לולאות for מקוננות.

שאלה 5

כתבו תוכנית המקבלת מספר n מטיפוס int המציירת  מסגרת בגודל זה על ידי שימוש בתו x .

למשל עבור n=6 התוכנית תדפיס את הפלט הבא:

xxxxxx
x    x
x    x
x    x
x    x
xxxxxx

נושאי השיעור :

  • מבנה פונקציות

  • העברת ערך לפונקציה

  • העברת רפרנס לפונקציה

מצגת שיעור שלישי

שאלה 1

כתבו פונקציה המקבלת מספר טבעי (גדול מ 0) הפונקציה תחזיר את הערך true אם המספר ראשוני, אחרת הפונקציה תחזיר את הערך false .

שאלה 2

כתבו פונקציה המקבלת מספר שלם הפונקציה תחזיר את הערך true אם המספר מתחלק ב 3 וגם ב 7 ללא שארית, אחרת הפונקציה תחזיר את הערך false .

שאלה 3

כתבו פונקציה המקבלת שני מספרים ו y . על הפונקציה להחזיר את הערך x .

שאלה 4

כתבו פונקציה המקבלת מספר חיובי כלשהוא. הפונקציה תחזיר את סכום כל המספרים החיוביים הקטנים או שווים ל n  .

נושאי השיעור :

  • מערכים חד ודו-ממדיים

  • מיון וחיפוש במערכים

מצגת שעור רביעי

שאלה 1

כתבו תוכנית בה מוגדר המערך:

 int a[] = {2, 4, 6, 8, -3, 8, 0};

על התוכנית לחשב ולהדפיס את חציון המערך.החציון מוגדר כערך אשר מחצית מהאיברים נימצאים מתחתיו או שווים לו
ומחצית מהאיברים נימצאים מעליו או שווים לו.

שאלה 2

כתבו תוכנית היוצרת את מערך הדו מימדי הבא:

000010000
000020000
000030000
000040000
987654321
000060000
000070000
000080000
000090000

שאלה 3

כתבו תוכנית בה מוגדת המערך הבא:

 int a[] = {2, 4, 6, 8, -3, 8, 2, 7, 2, 4};

על התוכנית למצוא את האיבר המופיע בתדירות הגבוהה ביותר במערך (במקרה שלנו 2).

שאלה 4

כתבו תוכנית בה מוגדרים המערכים הבאים:

int a[] = {2, 4, 6, 8, -3, 8, 2, 7, 2, 4};

int b[] = {1, 4, 6, 8, -3, 9, -14, 7, 0, 3};

על התוכנית לעבור על במערך ולהודיע האם יש במערך איברים המופיעים יותר מפעם אחת (למשל המערך a) או האם כל אברי המערך מופיעים פעם אחת בלבד (למשל המערך  b).

שאלה 5

כתבו תוכנית בה מוגדר המערך הדו מימדי הבא:

int a[][] = { {66, 93, 63, 23},
               {54, 66, 85, 93},
               {64, 55, 85, 68},
               {57, 79, 84, 17},
               {74, 73, 57, 84},
               {61, 59, 67, 54},
               {70, 88, 85, 83} };

 

על התוכנית להדפיס את מספר העמודה בה נמצא האיבר הגדול ביותר של המערך.

שאלה 6

כתבו תוכנית המבקשת מהמשתמש להודיע כמה מספרים הוא רוצה להכניס. לאחר מכן התוכנית תקרא אותם לתוך מערך ותדפיס אותם בסדר הפוך.

שאלה 7

כתבו תוכנית המקבלת מהמשתמש סדרה של מספרים ומציירת אותם היסטוגרמה. לדוגמא עבור הסדרה :

2,  3, 5, 4, 2

התוכנית תצייר את ההיסטוגרמה הבאה:

    X
    X X
  X X X
X X X X X
X X X X X

שאלה 8

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

200010200
030526000
004030931
082040705
987654321
100060000
020070005
040987900
365090054

שאלה 9

כתבו פונקציה המקבלת שתי מערכים מטיפוס integer  . על הפונקציה להחזיר את הערך true אם יש לפחות איבר אחד זהה בין שני המערכים.

שאלה 10

כתבו פונקציה המקבלת שתי מערכים מטיפוס integer  המערך והמערך b . על הפונקציה להחזיר את הערך true אם כל אברי המערך נמצאים ב אחרת הפונקציה תחזיר את הערך false.

שאלה 11

כתבו תוכנית המקבלת מערך מטיפוס integer על הפונקציה להפוך את סדר אברי המערך.

לדוגמא המערך a:

int [] a = {2, 4, 6, 8, -3, 8, 2, 7, 2, 4};

יהפוך ל.

           {4, 2, 7, 2, 8, -3, 8, 6, 4, 2}

כתבו פונקציה המקבלת מערך מטיפוס double  על הפונקציה להחזיר את ערך האיבר הגדול ביותר של המערך.

נושא השיעור:

  • קלט ופלט סטנדרטי

  • קריאה וכתיבה לקבצים

מצגת שיעור חמישי

שאלה 1

כתבו תוכנית הקוראת את הקובץ המספרים exe5_1.txt ומדפיסה למסך את סכומם.

שאלה 2

כתבו תוכנית הקוראת את הקובץ המספרים exe5_1.txt ומדפיסה למסך את המספר המופיע בתדירות הגבוהה ביותר.

שאלה 3

כתבו תוכנית הקוראת את הקובץ salary.txt ומדפיסה את סכום המשכורות.

שאלה 4

כתבו פונקציה המקבלת מערך מטיפוס double ואת גודלו הפונקציה תדפיס את אברי המערך לקובץ בשם numbers.txt .