تالار گفتمان مانشت
انتقال پارامتر - دسترسی به متغییر سراسری - - نسخه‌ی قابل چاپ

انتقال پارامتر - دسترسی به متغییر سراسری - - e.shrm - 23 آذر ۱۳۹۲ ۰۵:۱۱ ب.ظ

سلام
مثال زیر از کتاب پورانه. جوابش رو نمی فهمم. ممنون میشم کمکم کنید.
program Sample
var x,y,j:integer
procedure test(y,z:integer)
begin
z:=z-6
Y:=y+6
x=x-y
end;
begin
x:=4
y:=5
test(x,y)
write(x,y)
end;

برای فراخوانی با مقدار گفته میشه x=4 و y=5 . چون فراخوانی با مقداره تاثیری در نتیجه نداره.
سوال من اینه ، الان مگه x سراسری محسوب نمیشه؟ پس چرا تغییراتش تاثیر گذار نیست؟
و کلا در همه ی انواع فراخوانی ها ، تغییر متغییر سراسری حکمش چیه؟

برای فراخوانی با ارجاع هم گفته میشه :
[tex]z=5-6=-1[/tex]
[tex]y=4 6=10[/tex]
[tex]x=4-10=-6[/tex]


چرا در فراخوانی با ارجاع برای محاسبه x ، همون x قبلی رو در نظر گرفتیم ؟ مگه y و x نباید یکی باشند ؟

RE: انتقال پارامتر - دسترسی به متغییر سراسری - - AEM4949 - 24 آذر ۱۳۹۲ ۱۲:۲۲ ق.ظ

سلام دوست عزیز

زیاد سخت نگیر.نکته این سوال چیزی نیست ، جز یک اشکال تایپیه دیگه.Big Grin

این ی مثاله ک مولف نوشته.به تست های کنکور هم چندان اطمینانی نیست چه برسه به تست های تالیفیShy