תכנות בעזרת תרשים זרימה
2.1 הקדמה
כדי לפתור בעיות אלגוריתמיות עלינו להבין מה נדרש מאיתנו בבעיות אלה ומהי המטרה. לאחר מכן נתכנן אלגוריתם לפתרון, הנשען על ידיעתנו את הדרישות ואת התוצאות, המתורגמות באמצעות נתונים הנקראים קלט ופלט.
בפרק זה נפתור בעיות בעזרת תרשימי זרימה. כלומר שלבי פתרון הבעיות הם:
- הבנת הבעיה, זיהוי מטרתה וקביעת הקלט והפלט שלה.
- תכנון אלגוריתם או מחשבה על אלגוריתם שמייצג את שלבי הפתרון (כולל הפעולה החשבונית).
- כתיבת הפתרון באמצעות תרשים זרימה.
מהם היסודות להבנת כל בעיה ולפתרונה:
- קביעת הקלט של הבעיה: המידע והנתונים שיש להשיג כדי לדעת את התוצאות.
- קביעת הפלט של הבעיה: התוצאות והמידע שיש להדפיס או להגיע אליהם.
- החישובים (העיבוד Processing): הפעולות החשבוניות שאנו מבצעים בתוכנית על הקלט כדי להגיע לפלט ולתוצאות.
ראוי לציין ולהדגיש:
פתרון בעיות דורש ניסיון ומיומנות שנרכשים מתרגילים ומתרגול, כי זו שפה חדשה לנו.
קלט: מספר שעות העבודה החודשיות = h והשכר שסוכם לשעה = p
פלט: המשכורת החודשית = salary
הפעולה החשבונית: salary = h*p
2.2 תרשימי זרימה
נרצה לכתוב את הפתרונות באמצעות תרשימי זרימה, שהם שרטוט של אלגוריתם הפתרון במקום כתיבת פסאודו-קוד
לתרשימי זרימה יש סמלים מיוחדים:
קלט: הניצב הראשון a, וכן הניצב השני b
פלט (התוצאה): אורך היתר c
הפעולה: c = a2 + b2
תרשים הזרימה הוא:
קלט:
animal = שם בעל החיים
meat = תשובה האם אוכל בשר.
פלט:
kind = סיווג (טורף/לא טורף)
העיבוד:
בעלי החיים ש:
- אינם אוכלים בשר הם לא טורפים
- אוכלים בשר הם טורפים.
קלט: מספר טבעי num
פלט: תכונת המספר (זוגי/אי-זוגי)
הפעולה (%):
תוצאת חילוק המספר ב-2:
- אין לה שארית (0) ⇐ המספר זוגי.
- יש לה שארית (1) ⇐ המספר אי-זוגי.