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

آزمون آزمایشی مدرسان شریف - ali.majed.ha - 21 اسفند ۱۳۹۵ ۰۶:۱۷ ب.ظ

با عرض سلام

دوستان این سوال از کنکور آزمایشی مدرسان هست. می شه لطفا راهنمایی کنید.

RE: آزمون آزمایشی مدرسان شریف - msour44 - 22 اسفند ۱۳۹۵ ۰۵:۰۲ ب.ظ

سلام
Bیک متغیر سراسری است. که مقدار اولیه ۱۰ دارد بعد رویه TEST با پارامتر B فراخوانی میشود.
در فراخوانی با مقدار , مقدار پارامتر واقعی (B) در پارامتر مجازی(A) کپی می شود. یعنی مقدار اولیه A برابر ۱۰ میشود بعد با جرای دستور B=B+10 مقدار B برابر ۲۰ و با اجرای دستور A=A+20 مقدار A برابر ۳۰ می شود بعد مقدار B که ۲۰ است چاپ می شود و از رویه خارج و دوباره دستور چاپ بعد فراخونی رویه اجرا و دوباره ۲۰ چاپ می شود یعنی تغیر پارامتر مجازی روی پارامتر واقعی تاثیری ندارد
در فراخوانی با ارجاع هردو پارامتر واقعی و مجازی به یک محل اشاره می کنند و هر تغیری روی پارامتر مجازی روی پارمتر واقعی اعمال می شود پس A, B هر دو به یک محل که مقدار اولیه ۱۰ دارد اشاره می کنند دستور اول رویه مقدار ان محل را برابر ۲۰ و دستور دوم مقدار ۴۰ را در ان محل قرار می دهد پس رویه چاپ داخل رویه با پارامتر B که الان ۴۰ است اجرا می شود بعد از خروج از رویه هم مقدار B همچنان ۴۰ باقی می ماند پس یک ۴۰ دیگر هم چاپ می شود.
در فراخوانی با مقدار نتیجه: مقدار پارامتر واقعی در مجازی کپی می شود و در هنگام خروج از رویه مقدار پارامتر مجازی در واقعی کپی می شود پس ابتدا َA
مقدار اولیه ۱۰ دارد دستور اول B را برابر ۲۰ می کند و دستور دوم A را برابر ۳۰ بعد B که ۲۰ است چاپ می شود واز رویه خارج و در این حین مقدار پارامتر مجازی یعنی A که ۳۰ است در پارامتر واقعی کپی می شود یعنی B مقدار ۳۰ دارد که در نهایت این ۳۰ چاپ می شود. گزینه ۱/

RE: آزمون آزمایشی مدرسان شریف - ali.majed.ha - 22 اسفند ۱۳۹۵ ۰۶:۵۶ ب.ظ

سلام دوست عزیز
بسیار سپاسگزارم از کمک های شما