
23-09-2006, 17:49
|
 |
|
|
חבר מתאריך: 22.09.06
הודעות: 83
|
|
ציטוט:
|
במקור נכתב על ידי דורהמיפה
function memuza(a,b:integer):integer;
var
avg:real;
sum:integer;
begin
sum:=a+b;
avg:=sum/2
end;
הבנתי תודה
עכשיו זה בסדר?
אבל לא הבנתי כל כך למה שמתי את a וb בתור הפרמטרים\ זה אולי בכלל שאחרי שאני אכתוב את התוכנית זה יראה ככה ההמשך
begin
var
num1 num2:integer;
avg:=memuza(a,b)
writeln(avg,הממוצע ביניהם)
end.
|
וואו.. כל כך החזרת אותי לימים של התיכון עם זה 
כן, כתבת עכשיו פונקציה שמקבלת שני מספרים שלמים כפרמטרים ומחזירה את הממוצע ביניםה, עכשיו תוכל לקרוא לה בשביל לעשות את הפעולה הזאת מכל מקום בתוכנית (מבלי שתצטרך לשכתב את אותו הקוד עוד פעם ועוד פעם..)
אבל עדיין יש כמו תיקונים שתצטרך לעשות,
הפונקציה שלך צריכה להחזיר את הממוצע של שני המספרים, בגלל זה תצטרך לעשות משהו כמו
return avg
או איך שזה לא עובד בפסקל..
שים לב שהגדרת את הפונקציה בתור אחת שמקבלת שני מספרים שלמים ומחזירה integer , אבל כמו שאתה זוכר, עדכנת אותה ועכשיו הממוצע שאתה מקבל הוא לא מטיפוס integer, אלא real. ובגלל זה אתה צריך להגדיר אותה מחדש שהיא תחזיר real ולא integer
_____________________________________
|