C Programming chapter 1
Transcript of C Programming chapter 1
Shayke Bilu PhD SCE-Chapter-1-Introduction
ר שייקה בילו"ד
יועץ ומרצה בכיר למדעי המחשב וטכנולוגית מידע
אקדמיות ומנהליות, מומחה למערכות מידע חינוכיות
1פרק
Cמבוא לתכנות מחשבים ושפת
Cקורס יסודות התכנות בשפת
1
מטרות הקורס
SCE-Chapter-1-Introduction
היכרות בסיסית עם מבנה המחשב ויכולותיו
שפת : הכרת שפת תכנותC
שימוש בתכנות בשפה עילית לפתרון בעיות
חקר תכונות מתקדמות של תכנות
קבצים ומבני נתונים נוספים, כתובות, הכרה עם ניהול זיכרון
להגיע לשליטה ברמה סבירה של פתרון בעיה באמצעות מציאת
שימוש בכלי ניתוח בעיות ומימוש הפתרון באמצעות , פתרון לוגי
Cתכנות בשפת
2
Shayke Bilu PhD
תרגולים ותרגילים
Shayke Bilu PhD SCE-Chapter-1-Introduction
מחשבים-התרגולים נערכים בכיתת
מטרת התרגול היא מימוש מעשי של החומר שנלמד
.ללא התרגולים ההצלחה בקורס אינה מובטחת, בהרצאות
בנוסף:
חזרה על עיקרי החומר של ההרצאה
מעשיות נוספות בתכנות דוגמאות
בהרצאהשנלמד פירוט נוסף למה
3
?מהו המחשב
Shayke Bilu PhD SCE-Chapter-1-Introduction
כלומר על , תוכניתהמעבדת נתונים לפי מכונהמחשב הוא
.נתון וידוע מראש פקודותפי רצף
תעבוד ותבצע פעולות חישוב ( המחשב)כדי שהמכונה
:כמחשב היא צריכה לעמוד בשני תנאים
o וסדור למערכת פקודות מסוימת היטב-מוגדרלהגיב באופן.
o סדרת פקודות שנכתבה מראש -תוכנית עצמאילבצע באופן.
6
?מהו המחשב
Shayke Bilu PhD SCE-Chapter-1-Introduction
מורכבת מאוסף מרובה של רכיבים, המחשב, המכונה:
חומרההרכיבים האלקטרוניים המותקנים במכונה נקראים 1.
(hardware).
תוכנה -המותקנות במכונה נקראות ( (programsהתוכניות 2.
(software)
לחבר ולקשר בין , בתפקידה לתאם( system)מערכת הפעלה 3.
.רכיבי החומרה לתוכניות הביצוע
7
תכונות המחשב
Shayke Bilu PhD SCE-Chapter-1-Introduction
המחשב כמכונה אלקטרונית מסוגל לבצע:
קליטת נתונים1.
עיבוד נתונים2.
פלט תוצאות3.
הנתונים וההוראות למחשב נשמרים בזיכרון המחשב כל
.עוד הוא פועל
לצורך שמירת נתונים היסטורית יש צורך באמצעי אחסון
.בדרך כלל חיצוניים, נוספים
8
פלט/התקני קלט
Shayke Bilu PhD SCE-Chapter-1-Introduction
אמצעי הקלט(input) מקלדת
עכבר
סורק
מסךtouch-pad
מיקרופון
אמצעי פלט(output) מסך
מדפסת
רמקולים/אוזניות
9
יחידת העיבוד המרכזית
Shayke Bilu PhD SCE-Chapter-1-Introduction
CPU -יחידת העיבוד המרכזיתCentral Processing Unit - CPU
:היחידה מורכבת משלוש יחידות עיקריות
יחידה אריתמטית לוגית המבצעת את החישובים במעבד1.
המאחסנים נתונים שעליהם מתבצע ( רגיסטרים)אוגרים 2.
יחידת הזיכרון המרכזי –החישוב
יחידת הבקרה מפקחת על ביצוע הפקודות והעברת המידע3.
10
יחידת העיבוד המרכזית
Shayke Bilu PhD SCE-Chapter-1-Introduction
11
יחידה אריתמטית לוגית
Arithmetic-logic unit
קלטINPUT
פלטOUTPUT
CONTROL UNIT יחידת בקרה
Memory Unit יחידת הזיכרון
צובר
ניהול עיבוד הנתונים
Shayke Bilu PhD SCE-Chapter-1-Introduction
המנהלת מערכת ההפעלהגורם נוסף השותף בהרצה היא
.את מערכת הקבצים ואת הזיכרון הראשי, את החומרה
12
13
תפקיד מערכת ההפעלה
מאפשרת להריץ אפליקציות
מבטיחה נכונות המידע
שומרת על גבולות זיכרון
מתפעלת סדר עדיפויות
שומרת על מצב יציב
מספקת למשתמש נוחות וגישה להפעלת יישומים
מאפשרת הסתרת פרטים
תוכנה חומרה וציוד קלט פלט, מאפשרת תיאום בין יישומים
הפעלה למערכת קבצים-קריאות מערכת מיצרת
Shayke Bilu PhD SCE-Chapter-1-Introduction
?מהי מערכת הפעלה
תוכנות ממספר ומורכבת (יחסית) גדולה תוכנה חבילת
.יחד המשולבות שונות
בסיסיים עקרונות שני בעלת התוכנה:
הדמיה י”ע ,והחומרה המשתמש בין כמישק משמשת .1
.למשתמש וירטואלית מכונה של
המחשב משאבי כלל של יעיל ניהול מאפשרת .2
.יחד גם וחיצונים פנימיים ,המשתמש שברשות
14
Shayke Bilu PhD SCE-Chapter-1-Introduction
מקשי תווים רווחים ומספרים18
Shayke Bilu PhD SCE-Chapter-1-Introduction
אותיות ספרות רווחים
Blank –מקש הרווח space
קטנות אותיות 9...0 הספרות
:באנגלית
a..z
tab -מקש ה
הרוחבי והאנכי
אותיות גדולות
:באנגלית
A…Z
New line -ה מקש
Cמקשי תווים מיוחדים לתכנות בשפת 19
Shayke Bilu PhD SCE-Chapter-1-Introduction
מקש שם מקש שם
& סימן הוגם . נקודה
| קו אנכי , פסיק
^ גג ; נקודה ופסיק
* כוכבית : נקודתיים
- מינוס ' גרש
+ פלוס " גרשיים
% אחוזים # סולמית
Cמקשי תווים מיוחדים לתכנות בשפת 20
Shayke Bilu PhD SCE-Chapter-1-Introduction
מקש שם מקש שם
( ) סוגריים עגולים < קטן
] [ סוגריים מרובעים > גדול
} { סוגריים מסולסלים / (חילוק)קו נטוי
= שווה \ קו נטוי הפוך
@ כרוכית $ דולר
_ קן תחתון ? סימן שאלה
~ גל ! סימן קריאה
Cשימוש במקשים בתכנות בשפת 21
Shayke Bilu PhD SCE-Chapter-1-Introduction
מקש הסבר
( ) ונתוני פונקציות מיועדים לסימון קטעים של ערכי
] [ מיועדים לסימון תחום הגדרת מערכים
} { מיועד לסימון התחלת וסוף מקטע של פקודות
: מיועד לשימוש לכותרות
# מיועדת לסמן את פקודות הקדם מעבד
, משתנים מיועדת להפריד בין
; לסמן סוף פקודת ביצוע מיועדים
Cמילים שמורות בשפת 22
Shayke Bilu PhD SCE-Chapter-1-Introduction
פקודה הסבר פקודה הסבר
auto משתנה מקומי double טיפס משתנה ממשי
break פעולה מפסיק else בבדיקת תנאי אחרת
בעל רשימת ערכים טיפוס
קבועים
enum בורר בקרת זרימה case
char מגדיר משתנה תווי extern משתנה מוגדר במקום אחר
const מגדיר קבוע float מגדיר משתנה ממשי
continue הבא קופץ לסיבוב for בעבור פקודת לולאת
default מחדל בבורר ברירת goto בתוכנית מכוון לכתובת
do פקודת לולאת עשה if פקודת תנאי
Cמילים שמורות בשפת 23
Shayke Bilu PhD SCE-Chapter-1-Introduction
פקודה הסבר פקודה הסבר
int משתנה שלם struct מבנה נתונים
long משתנה ארוך switch בורר בבקרת זרימה
register אוגר typedef הגדרת אופי המשתנה
אחוד של מבנה
משתנים
union פקודת חזרה return
short משתנה קצר unsigned ללא סימן
signed סימן void טיפוס ריק
sizeof גודל מקסימלי בבתים volatile משתנה נדיף
static ערך קבוע ברקורסיה while לולאת עד שה
?מהו אלגוריתם
Shayke Bilu PhD SCE-Chapter-1-Introduction
אלגוריתם הוא ִסדרה סופית של הוראות חד - הגדרה
. פלט רצויכל קלט חוקי יתקבל עבור . לביצועמשמעיות
אחרת , או פלט/הליך אלגוריתמי צריך שיהיה קלט ולכל
.הוא חסר משמעות ומיותר
מתאר בדרך מילולית את הנתונים הבאים:
המצב ההתחלתי לפני ביצוע המשימה
רשימת הצעדים הדרושים לפתרון הבעיה
המצב הסופי לאחר ביצוע המשימה
25
תכונות האלגוריתם
Shayke Bilu PhD SCE-Chapter-1-Introduction
מורכב מהוראות הידועות ומובנות למבצע המשימה
הוא כולל פעולות ביצוע ברמה הבסיסית
מכיל הוראות חד משמעיות וחד ערכיות
כולל סדר ביצוע של הוראות המוגדר מראש
כולל הוראות ישימות לכל סוג של קלט
לכל קלט, מכיל מספר הוראות סופי
בעל מסגרת פעילות קבועה וסדורה:
התחלה
ביצוע
סיום
27
דוגמאות לאלגוריתמים
Shayke Bilu PhD SCE-Chapter-1-Introduction
(דוגמה משחק קוביות)שלבי פתרון של חידה מתמטית
('תנאים וכו, מענקים, מדרגות מס)חישוב מס הכנסה
(י נוסחה או כל אמצעי אחר"ע)חישוב מתמטי מורכב
(ניווט)הוראות הגעה מנקודת מקור לנקודת יעד
(מ"כטב, חללית, מטוס)הנחיות הפעלה של ציוד מורכב
תכנות פעולת רובוט
28
פעולות בסיסיות באלגוריתם
Shayke Bilu PhD SCE-Chapter-1-Introduction
קלט
פלט
השמה
העברה
מחיקה
פעולות חשבון בסיסיות
פעולות השוואה
פעולות לוגיות
29
פעולת הקלט
Shayke Bilu PhD SCE-Chapter-1-Introduction
קליטת נתונים מתבצעת מאמצעי הקלט אל זיכרון
.המחשב
תא בזיכרון יכול לקבל שם שמזוהה חד ערכית.
כל פניה לתא תעשה באמצעות שמו וכתובתו.
מוחקת ומבטלת את הערך , כתיבה של ערך לתא דורסת
.הקודם שלו
משתנההוא נקרא , כיוון שערכו של תא יכול להשתנות.
30
פעולות נוספות
Shayke Bilu PhD SCE-Chapter-1-Introduction
הוצאת ערך של משתנה או של הודעת טקסט ידועה - פלט
.מראש למסך או לאמצעי פלט אחר
הצבת ערך לתוך משתנה שהוגדר מראש - השמה.
לדוגמה = י הסימן "תסומן עnum = 5 נכנס לתא ( 5)כלומר הערך מימין , מימין לשמאלתבוצע תמיד
(num)המצוין משמאל
העברת ערכו של משתנה למשתנה אחר - העברה.
מחיקת התוכן של תא בזיכרון - מחיקה.
31
מתמטיות -פעולות נוספות
Shayke Bilu PhD SCE-Chapter-1-Introduction
פעולות חשבון בסיסיות :
(.וחילוק , )*( כפל , ( -)חיסור , )+( חיבור/(
מחזירה את תוצאת החלוקה כמספר שלם –פעולת חילוק שלם
מחזירה -( % מודולו)פעולת חלוקה עם הצגת השארית בלבד
.את שארית החלוקה כמספר שלם
ביטוי אריתמטי הוא ביטוי המורכב ממספרים שלמים או
.ממשיים ואופרטורים ותוצאתו ערך מספרי שלם או ממשי
32
)/(פעולת חילוק שלם
Shayke Bilu PhD SCE-Chapter-1-Introduction
הפעולה רלבנטית רק בחילוק שלמים בשלמים.
הפעולה תחשב את תוצאת השלם בחלוקת שני המספרים שלמים.
דוגמאות שימוש:
אבל בחילוק מספרים , 9.5התוצאה היא 19/2עבור החלוקה
(.הסבר מפורט יינתן בהמשך) 9תוצאת השלם היא , שלמים
אבל בחילוק מספרים , 1.5התוצאה היא 6/4עבור החלוקה
(.הסבר מפורט יינתן בהמשך) 1שלמים התוצאה היא
אבל בחילוק מספרים , 8.9התוצאה היא 89/10עבור החלוקה
(.הסבר מפורט יינתן בהמשך) 8שלמים התוצאה היא
33
)%(פעולת המודולו
Shayke Bilu PhD SCE-Chapter-1-Introduction
והיא מחשבת את רק בחילוק מספרים שלמים הפעולה רלבנטית
כאשר תוצאת פעולה המודולו היא , השארית במנה של החילוק
!!!תמיד מספר שלם
למיםש 8= 17/2: נקבל 2 -ב 17לדוגמה עבור חלוקת
1שארית = 17%2נקבל מודולואולם בביצוע עם
שלמים 3= 6/2: נקבל 2 -ב 6לדוגמה עבור החלוקה
0שארית = 6%2נקבל מודולואולם בביצוע עם
שלמים 7= 79/10: נקבל 10 -ב 79לדוגמה עבור החלוקה
9שארית = 79%10נקבל מודולואולם בביצוע עם
מיוחד או שימושי בדוגמא האחרונה, שימו לב מה שונה?
34
תרגילים
Shayke Bilu PhD SCE-Chapter-1-Introduction
הסבר בקצרה? מה מבצעות הפקודות הבאות.
x = x + 1 x = 1 / x
x = a – b x = x / 2
x = x + y % 2 / 4 x = 8
y = x / 2 a = x % 3
b = a / 4 x = b – a * y
36
תרגילים
Shayke Bilu PhD SCE-Chapter-1-Introduction
מה יהיו ערכי המשתנהx לאחר ביצוע הפעולות הבאות?
(1x=3
(2y=2 (x - 1)
(3x=y / 2 * x
(4x=(x + y) % 3 / 2
37
?מהו תרשים זרימה
Shayke Bilu PhD SCE-Chapter-1-Introduction
תרשים זרימה הוא תיאור גראפי של אלגוריתם בעזרת
ברורות ומוסכמות מראש, צורות גרפיות ידועות
משמעות תרשים
התחלה וסוף של תרשים
פלט/ קלט
(חישוב, השמה)לביצוע פקודה
לא כן הוראת תנאי
38
תכונות תרשים זרימה
Shayke Bilu PhD SCE-Chapter-1-Introduction
מלמעלה למטה, תרשים זרימה תמיד יזרום
לכל הפקודות בתרשים הזרימה יכנס חץ מלמעלה ויצא
(סיום/למעט התחלה)חץ מלמטה
לכל תרשים זרימה חייבת להיות פקודת התחלה אחת
!!!ופקודת יציאה אחת בלבד
התחלה
בצע חישוב
הדפס
תוצאה
If(condition)
סוף
קלוט
נתונים
השמהבצע
39
סוף תרשים/התחלה
Shayke Bilu PhD SCE-Chapter-1-Introduction
י הסימן אליפסה"התחלה או סוף של תרשים מסומנים ע.
התחלה /בתוך הסימן יופיע מלל המציין האם זהו סוף
(start/end).
לכל אלגוריתם נקודת התחלה ונקודת סיום אחת.
ניתן להשתמש בסימן דומה לסימון סיום דף ומעבר לדף
.בא לידי שימוש בתרשימים ארוכים במיוחד, הבא
בסוף הדף ובתחילת הדף הבא יופיע אותו סימן מזהה.
סיום/התחלה
A
40
פלט/פקודות קלט
Shayke Bilu PhD SCE-Chapter-1-Introduction
י צורת מקבילית"פלט מסומנות ע/פקודות קלט:
בתוך המקבילית יש לציין:
( פלט/קלט)מילה מזהה בהתאם לפעולה הנדרשת
(י פסיק"ריבוי משתנים מחייב הפרדה ע)את שמות המשתנים בשימוש
כ לפני כל פקודת קלט תהיה פקודת פלט להורות "בד
.למשתמש אילו נתונים נדרשים ממנו
לדוגמה ניתן להדפיס פלט המשולב ממחרוזת וביטוי משתנה.
פלט/קלט
:פלט
"הקלד גיל משתמש"
קלט
age
פלט “age is: “, age
41
הצבה/ פקודת השמה
Shayke Bilu PhD SCE-Chapter-1-Introduction
פקודת השמה מאפשרת להכניס ערך רצוי לתוך משתנה.
י מלבן"מיוצגת ע:
בצד ימין ייכתב הביטוי אותו רוצים להכניס למשתנה ,
שמופיע בצד ימין חייב שיהיה בעל ( אופרנד)כל ביטוי
.ערך כדי שיועבר לצד שמאל
בצד שמאל יצוין שם המשתנה אליו יועבר הערך מימין.
תהליך העבודה הוא קודם כל חישוב הערך מימין ורק
.כ השמתו לתוך המשתנה שמשמאל"אח
משתנה= ביטוי
42
דוגמאות
Shayke Bilu PhD SCE-Chapter-1-Introduction
זרימה לחישוב היקף של עיגולתרשים •
45
התחלה
R
H=2*PI*R
H
R<=0
סוף
טעות
לא כן
דוגמאות
Shayke Bilu PhD SCE-Chapter-1-Introduction
46
תרשים זרימה לחישוב שטח של ריבוע•
התחלה
A
S=A*A
S
A<=0 סוף
טעות
לא כן
דוגמאות
Shayke Bilu PhD SCE-Chapter-1-Introduction
47
תרשים זרימה לחישוב מינימום בין שני מספרים•
התחלה
mis1 ,mis2
mis1
mis1==mis2
סוף
טעות
לא כן
mis1>mis2
mis2
לא כן
תרגילים
Shayke Bilu PhD SCE-Chapter-1-Introduction
רשמו תרשימי זרימה עבור הבעיות הבאות:
. קלטו שני מספרים והדפיסו אותם1)
התוכן של המשתנה האחד יהיה בשני , החליפו את תוכנם
שתי הוראות ההדפסה זהות , והדפיסו שוב , ולהפך
.לחלוטין
ניתן ומומלץ : רמז, ל אך בלי שימוש במשתנה עזר"כנ2)
.להיעזר בחוקי המתמטיקה
49
1תרגיל –פתרון לדוגמה
Shayke Bilu PhD SCE-Chapter-1-Introduction
סימן התחלת התרשים
קלט שני ערכים לשני משתנים
הדפסת ערכי שני המשתנים כפי
שנקלטו
החלפת הערכים בין שני המשתנים
הדפסת ערכי המשתנים לאחר
ההחלפה
סימן סיום התרשים
התחלה
mis1=3; mis2 =5
mis1; mis2;
ezer = mis1; mis1 = mis2; mis2 = ezer;
סוף
mis1; mis2;
50
תרגילים
Shayke Bilu PhD SCE-Chapter-1-Introduction
רשמו תרשימי זרימה עבור הבעיות הבאות:
.שלהםמספרים והדפיסו את הממוצע 4קלטו 3)
מספרים חשבו והדפיסו שטח והיקף מלבן שאורכי 2קלטו 4)
.10-ו 5צלעותיו
קלטו עבור עובד את מספר השעות שלו בחודש ואת השכר 5)
הדפיסו את הנתונים שקלטתם בצירוף הודעות . לשעה
.וכן את שכרו החודשי, מתאימות
.קלטו מרחק כקילומטרים והדפיסו אותו במטרים6)
51
3תרגיל –פתרון לדוגמה
Shayke Bilu PhD SCE-Chapter-1-Introduction
סימן התחלת התרשים
קלט ארבעה ערכים לארבעה
משתנים שונים
ביצוע חישוב ממוצע
הדפסת הממוצע
סימן סיום התרשים
התחלה
mis1=3; mis2 =5; mis3=6; mis4=7;
avg = (mis1+mis2+mis3+mis4)/4;
סוף
avg
52
תרגילים
Shayke Bilu PhD SCE-Chapter-1-Introduction
צייר תרשים זרימה עבור הבעיות הבאות:
צייר תרשים זרימה לתוכנית הקולטת מספר כלשהו בעל שתי 7)
.על התוכנית להדפיס את ספרת האחדות, ספרות
על , ספרתי-צייר תרשים זרימה לתוכנית הקולטת מספר תלת8)
.התוכנית להדפיס את ספרת המאות
:במשוואה xצייר תרשים זרימה לתוכנית המדפיסה את 9)
ax + b = 0
53
7תרגיל –פתרון לדוגמה
Shayke Bilu PhD SCE-Chapter-1-Introduction
סימן התחלת התרשים
קלט מספר דו ספרתי למשתנה
ביצוע חישוב הפרדת ספרת האחדות
מהמספר
הדפסת ספרת האחדות
סימן סיום התרשים
התחלה
mis1=83;
hachadot =mis1%10;
סוף
hachadot
54
תרגילים
Shayke Bilu PhD SCE-Chapter-1-Introduction
צייר תרשים זרימה עבור הבעיות הבאות:
. נהג מונית שרות יוצא לדרכו רק אם כל המושבים תפוסים10)
כתוב תוכנית שתקלוט את מספר הנוסעים הממתינים בתחנה
ותמצא את מספר המוניות שניתן , ומספר המושבים במונית
הנח כי לכל .)ומספר הנוסעים שיוותרו בתחנה, למלא במלואן
(המוניות בתחנה מספר מושבים זהה
55
סיכום ביניים -מבנה המחשב
Shayke Bilu PhD SCE-Chapter-1-Introduction
:דיברנו היום על
המחשב מבנה ותכונות
אלגוריתם ותרשימי זרימה
תרגלנו שימוש באלגוריתם מילולי ותרשימי זרימה
בשיעורים הקרובים נבין טוב יותר מה עומד מאחורי
ואת היישומים Cאת שפת ונכיר , הדוגמאות שראינו
.שניתן לפתח באמצעותה
56
הוראות תנאי
Shayke Bilu PhD SCE-Chapter-1-Introduction
הוא ביטוי המורכב משני ביטויים אריתמטיים ( תנאי)ביטוי לוגי
:אופרטורים המייצגים יחס הם, וביניהם אופרטור יחס
משמעות אופרטור
באגף שמאל הביטוי באגף ימין קטן מהביטוי <
קטן או שווה לביטוי באגף שמאל הביטוי באגף ימין >=
באגף ימין גדול מהביטוי באגף שמאל הביטוי >
הביטוי באגף ימין גדול או שווה לביטוי באגף שמאל <=
הביטוי באגף ימין שווה לביטוי באגף שמאל ==
מהביטוי באגף שמאל שונהבאגף ימין הביטוי =!
59
דוגמאות להוראות תנאי
Shayke Bilu PhD SCE-Chapter-1-Introduction
(110 < 4
(215 == 8
(350 != 20
(?האם ביטוי זה נכון) 20 = 410)
(520 <= 40
(620 >= 20
(7x >= 15
(8x + 3 < y - 2
60
דוגמה להוראת תנאי
Shayke Bilu PhD SCE-Chapter-1-Introduction
י המבנה הבא"ביטוי תנאי מיוצג ע:
ביטוי
תנאי
מה יקרה כאשר
התנאי מתקיים
מה יקרה כאשר התנאי
לא מתקיים
סיום
תהליך
Y N
61
כללים בכתיבת תנאים
Shayke Bilu PhD SCE-Chapter-1-Introduction
לכל תנאי יש כניסה אחת ויציאה אחת.
חלקו הימני של התנאי יבוצע אם התנאי יתקיים.
חלקו השמאלי של התנאי יבוצע אם התנאי לא יתקיים.
חובה לכתוב לפחות פקודה אחת בחלקו הימני של
(.המציין אמת לוגית TRUE-צד ה)התנאי
צד )אין חובה לכתוב פקודות בצד השמאלי של התנאי
(.המציין שקר לוגי FALSE -ה
62
תרגילים
Shayke Bilu PhD SCE-Chapter-1-Introduction
ציירו תרשימי זרימה עבור הבעיות הבאות:
השתמשו )קלטו מספר והדפיסו אם הוא זוגי או לא 1) (.במודולו
.קלטו שני מספרים ובדקו האם הם זהים2)
.קלטו מספר והדפיסו את ערכו המוחלט3)
קלוט גיל עובד והדפס אם . 67עובד יוצא לפנסיה בגיל 4)אם הוא עדיין עובד הדפיסו כמה . הוא בפנסיה או לא
.שנים נותרו לו עד הפנסיה
65
תרגילים
Shayke Bilu PhD SCE-Chapter-1-Introduction
ציירו תרשימי זרימה עבור הבעיות הבאות:
קלטו מספר שיחות טלפון שבוצעו ועלות לשיחה 5)-אם הסכום גדול מ. הדפיסו את הסכום לתשלום. אחת .ובנוסף את הסכום לתשלום" פטפטן"הדפיסו 500
( מובטח שהוא שלם וחיובי)קלטו מספר דו ספרתי 6) .מופיעה בו 6ובדקו האם הספרה
קלטו שני מספרים והדפיסו אם המספר השני הינו 7) .המחלק של המספר הראשון
66
תרגיל דוגמה
Shayke Bilu PhD SCE-Chapter-1-Introduction
קלוט מספר והדפיסו אם הוא דו ספרתי או לא.
עבור קליטת המספרים הוראת קלט ידועה.
עבור הדפסת מספר הוראת פלט ידועה.
איזו בדיקה נדרשת?
9-האם מספיקה בדיקה שהמספר גדול מ: רמז?
100-האם מספיקה בדיקה שהמספר קטן מ: רמז?
67
תנאי מקונן
Shayke Bilu PhD SCE-Chapter-1-Introduction
בתוך הוראת התנאי ניתן לשבץ הוראת תנאי נוספת.
מאפשר לחבר בדיקות תנאים מורכבות יותר.
לכל תנאי עדיין תהיה כניסה אחת ויציאה אחת.
תנאי שנפתח אחרון נסגר ראשון.
אין אפשרות לחבר זרועות של תנאים שונים.
עד שישה 4-מומלץ לא להגיע לרמת קינון של יותר מ
.כדי לשמור על פשטות הפתרון ותחזוקתו, תנאים
70
תרגילים
Shayke Bilu PhD SCE-Chapter-1-Introduction
ציירו תרשימי זרימה עבור הבעיות הבאות:
קלטו מספר והדפיסו אם הוא חיובי שלילי או אפס1)
מספרים והדפיסו מי הכי גדול 3קלטו 2)
והדפיסו , קלטו את מספר הפעימות של מונה טלפון לצרכן3) :לפי ההנחיות הבאות, את התשלום שעליו לשלם
לפעימה' אג 20ישלם , פעימות 100עד.
לפעימה' אג 15ישלם , פעימות 100מעל.
מ"יש להוסיף מע, לכל סכום שעליו לשלם.
שקלים 25בנוסף יש לשלם דמי שימוש קבועים בסך.
71
תרגיל לדוגמה
Shayke Bilu PhD SCE-Chapter-1-Introduction
האם קיימת דרך אחרת לענות על התרגיל הקודם?
10-99מספר דו ספרתי הוא מספר בתחום.
100-וגם קטן מ 9-מספר דו ספרתי הוא גם גדול מ.
היינו מעדיפים לנסח משפט שאלה יחיד.
72
ביטוי לוגי מורכב
Shayke Bilu PhD SCE-Chapter-1-Introduction
ביטוי לוגי מורכב הוא ביטוי לוגי פשוט או מספר ביטויים
י אופרטורים לוגיים"לוגיים פשוטים המחוברים ע
רשימת האופרטורים הלוגיים:
פירוט משמעות אופרטור
כדי ( שקר)לא יתקיים מספיק שאחד הביטויים (and) וגם &&
(שקר)שכל הביטוי לא יתקיים
כדי ( ערכו אמת)יתקיים מספיק שאחד הביטויים (or) או ||
(וערכו יהיה אמת)שכל הביטוי יתקיים
הופך מצב מאמת לשקר ולהיפך (not) לא !
74
טבלת אמת –ביטוי לוגי מורכב
Shayke Bilu PhD SCE-Chapter-1-Introduction
שלילה
(not)
או
(or)
וגם
(and)
תנאי
1מספר
תנאי
2מספר
1 0 0 0 0
0 1 0 1 0
0 1 0 0 1
0 1 1 1 1
75
דוגמאות
Shayke Bilu PhD SCE-Chapter-1-Introduction
90אם אלמד למבחן אקבל מעל.
אם אלמד למבחן וגם אכין את כל שיעורי הבית אקבל
100.
אעבור את המבחן, אם אלמד למבחן או אעתיק מיוסף.
אכשל , אם לא אלמד למבחן וגם לא אעתיק מיוסף
.במבחן
אם אלמד למבחן וגם אכין את כל שיעורי הבית או
.במבחן 100אקבל , אעתיק מיוסי
76
תרגילים
Shayke Bilu PhD SCE-Chapter-1-Introduction
כתבו את המשפטים הבאים כביטויים לוגיים:
.50-וקטן מ 0-גדול מ Xערכו של המשתנה 1)
.'Z'ואינו ' A'אינו התו letterערכו של המשתנה 2)
חיובי או ערכו של המשתנה Xערכו של המשתנה 3)
Y שלילי.
.5 -ל 1הוא בין Bערכו של המשתנה 4)
ללא שארית או 3-מתחלק ב Xערך המשתנה 5)
.ללא שארית 5-מתחלק ב
77
תרגילים
Shayke Bilu PhD SCE-Chapter-1-Introduction
ציירו תרשימי זרימה עבור הבעיות הבאות: . 65 - 17אדם רשאי להנפיק רישיון נהיגה רק בין הגילאים 1)
כתוב תכנית הקולטת גילו של אדם ומדפיסה הודעה
.אם רשאי או לא רשאי, מתאימה
. המעבר בה היה צר מאד, בטיול שנתי הגיע הכיתה למערה2)
מ "ס 160 -יכולים לעבור במערה רק אנשים שגובהם קטן מ
. מ"ס 65 -והיקפם קטן מ,
כתוב תכנית המקבלת כקלט את הגובה וההיקף של הילד 3)
.ומודיע לו אם יוכל לעבור במנהרה
הדפיסו . קלטו מספר דו ספרתי ובדקו אם כל ספרותיו זוגיות4)
.הודעה מתאימה
78
סיכום
Shayke Bilu PhD SCE-Chapter-1-Introduction
:דיברנו היום על
תנאיהוראות
קינון תנאים
לוגיים מורכבים ביטויים
בשיעורים הבאים נכיר טוב יותר מה עומד מאחורי
ונכיר דברים נוספים שניתן לעשות , הדוגמאות שראינו
.Cי שימוש בתנאים ובקינון תנאים בשפת "ע
79