לוגו אתר Fresh          
 
 
  אפשרות תפריט  ראשי     אפשרות תפריט  צ'אט     אפשרות תפריט  מבזקים     אפשרות תפריט  צור קשר     חץ שמאלה ‎print ‎"Hello World!"; if‎ ‎not rules.‎know ‎then rules.‎read(); חץ ימינה  

לך אחורה   לובי הפורומים > מחשבים > תכנות ובניית אתרים
שמור לעצמך קישור לדף זה באתרי שמירת קישורים חברתיים
תגובה
 
כלי אשכול חפש באשכול זה



  #1  
ישן 09-05-2007, 21:12
  DonJenove DonJenove אינו מחובר  
 
חבר מתאריך: 28.03.07
הודעות: 354
עזרה בפסקל - פונקציות ופרוצדורות.

מחר יש לי בגרות, [3 יחידות] בשפת פסקל.
הכל טוב ויפה, חוץ מבעיה אחת, קטנה, ומוזרה-
שאלתי כבר את המורה אלפי פעמים, שאלתי תלמידים אחרים, ואני פשוט לא מצליח להבין, איך בדיוק בתוכנית שאני בונה, אני יכול לדעת אם לבנות תת-תוכנית בתור פרוצדורה או פונקציה? אני פשוט לא רואה אף הבדל בתת תוכנית עצמה מלבד בכותרת.
[בזימון ברוך השם אני רואה את ההבדל].
אז אוקיי הבנתי את ההגדרה המילולית -
פרוצדורה = מחזירה יותר מערך אחד, או לא מחזירה ערך בכלל.
פונקציה = מחזירה ערך אחד.

אולי אני פשוט לא מבין מה זה החזרת ערך?
x:=y יש בשניהם. [הוראות].
writeln ו-readln יש בשניהם. [קלט-פלט].

בחיי שאני לא מצליח להבחין, וזה מוזר, כי בזמן שהשאר מסתבכים בבניית תוכניות גדולות וחישוב הבנייה, אני נתקע על הפרט הקטן הזה.. אני בונה תוכניות בהצלחה בד"כ ,אבל כמעט תמיד כשאני מציג את זה למורה היא מתקנת לי את התתי-תוכניות, אני מבלבל בין פרוצדורה לפונקציה כמעט באופן קבוע.

יש ישועה? חח אני מקווה לקבל תשובה עוד הערב, אחר כך כבר לא ממש יעזור לי לצערי =[
תגובה ללא ציטוט תגובה עם ציטוט חזרה לפורום
  #3  
ישן 09-05-2007, 21:57
  shaiy shaiy אינו מחובר  
 
חבר מתאריך: 09.05.07
הודעות: 15
שלח הודעה דרך ICQ אל shaiy
בתגובה להודעה מספר 1 שנכתבה על ידי DonJenove שמתחילה ב "עזרה בפסקל - פונקציות ופרוצדורות."

אם הבנתי נכון (בהנחה שאתה יודע את ההבדל בין המבנה של כל אחד מהם):
כאשר אתה בונה פונקציה עליך לשים לב לכך שהתת-תוכנית מובנת למטרה אחת בלבד.
לדוג':
1) כאשר עליך לחשב ממוצע.
2) כאשר עליך לקבל מס' גבוה מבין מערך.
3)כאשר עליך לבדוק ניצחון במשחק כלשהו.
4)וכו'

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




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


מקווה מאוד שעזרתי
בהצלחה בבגרות מחר (גם אני נבחן אבל אני נבחן על C#)
תגובה ללא ציטוט תגובה עם ציטוט חזרה לפורום
  #6  
ישן 21-05-2007, 00:52
צלמית המשתמש של devileye
  devileye devileye אינו מחובר  
 
חבר מתאריך: 20.05.07
הודעות: 26
שלח הודעה דרך ICQ אל devileye שלח הודעה דרך MSN אל devileye
בתגובה להודעה מספר 5 שנכתבה על ידי amir705 שמתחילה ב "פשוט מאוד"

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

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

אך פרוצדורה היא השיגרה שבעזרת אתה מדפיס, בעצם השגרה אשר אחראית על הסיום של התוכנית (אם אתה משתמש באחת כמובן) והיא גם יכולה "להחזיר ערך" אבל היא פשוט משנה את הערך שהכנסת. למשל:
קוד:
procedure name (var x:string); begin writeln("enter new name:"); readln(x); end;

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

מקווה שעזרתי (ולמי ששואל - או שלא - סיימתי 5 יח' במגמת מחשב בפסקל!!)
_____________________________________

[התמונה הבאה מגיעה מקישור שלא מתחיל ב https ולכן לא הוטמעה בדף כדי לשמור על https תקין: http://www.geocities.com/arkadilu/DevilEye/images/dragon.jpg]

קוד:
מעצב מקצוען!!.. רוצים עיצוב, כנסו: http://showme.co.il/devileye

תגובה ללא ציטוט תגובה עם ציטוט חזרה לפורום
תגובה

כלי אשכול חפש באשכול זה
חפש באשכול זה:

חיפוש מתקדם
מצבי תצוגה דרג אשכול זה
דרג אשכול זה:

מזער את תיבת המידע אפשרויות משלוח הודעות
אתה לא יכול לפתוח אשכולות חדשים
אתה לא יכול להגיב לאשכולות
אתה לא יכול לצרף קבצים
אתה לא יכול לערוך את ההודעות שלך

קוד vB פעיל
קוד [IMG] פעיל
קוד HTML כבוי
מעבר לפורום



כל הזמנים המוצגים בדף זה הם לפי איזור זמן GMT +2. השעה כעת היא 01:41

הדף נוצר ב 0.04 שניות עם 11 שאילתות

הפורום מבוסס על vBulletin, גירסא 3.0.6
כל הזכויות לתוכנת הפורומים שמורות © 2026 - 2000 לחברת Jelsoft Enterprises.
כל הזכויות שמורות ל Fresh.co.il ©

צור קשר | תקנון האתר