![]() |
تست سال ۸۶ - نسخهی قابل چاپ |
تست سال ۸۶ - - rasool - - 03 تیر ۱۳۹۰ ۰۴:۱۵ ب.ظ
خسته نباشید لطف کنید و این سوال و کلا سوالهای این سبکی رو بفرمایید چطوری حل می شوند. سپاس |
RE: تست سال ۸۶ - mfXpert - 04 تیر ۱۳۹۰ ۱۲:۰۶ ق.ظ
راه اصولیش اینه که اول کدهای سه آدرسه این دستورات رو بنویسید و بعد بااستفاده از اصول بهینه سازی تعداد متغیرهای موقت رو به حداقل برسونید.اما مشکل این روش اینه که خیلی وقت گیره. راه ساده و کنکوریش اینه که اولویت عملگرها رو در نظر بگیرید و حداقل تعداد متغیرها رو حساب کنید.یه مثال ساده می زنم: فرض کنید قصد داریم حداقل تعداد متغیرهای موقت در محاسبه عبارت [tex]a-b*(c d)[/tex] رو حساب کنیم.اول باید حاصل عبارت داخل پرانتز رو به دست بیاریم و در متغیر فرضا t1 قرار بدیم. بعد حاصل ضرب b در حاصل پرانتز یا همون t1 رو به دست بیاریم و در t1 قرار می دیم و در نهایت t1 رو از a کم می کنیم و نتیجه رو در متغیر t1 قرار می دیم.کدش به صورت زیر هستش: t1=c+d
t1=b*t1
t1=a-t1
پس برای محاسبه عبارت [tex]a-b*(c d)[/tex] به تنها یک متغیر کمکی احتیاج داریم.در ضمن جواب تست هم ۳ هست یعنی حداقل۳ تا متغیر کمکی نیاز داریم |
RE: تست سال ۸۶ - zahra2012 - 13 بهمن ۱۳۹۲ ۱۱:۰۰ ب.ظ
(۰۴ تیر ۱۳۹۰ ۱۲:۰۶ ق.ظ)mfXpert نوشته شده توسط: راه اصولیش اینه که اول کدهای سه آدرسه این دستورات رو بنویسید و بعد بااستفاده از اصول بهینه سازی تعداد متغیرهای موقت رو به حداقل برسونید.اما مشکل این روش اینه که خیلی وقت گیره.به نظرتون با دو تا متغیر کمکی نمیشه حلش کرد اگه نمیشه چرا سه تا می خواد؟ |
RE: تست سال ۸۶ - ریحان - ۱۵ آذر ۱۳۹۳ ۱۰:۰۶ ب.ظ
این سوالاو بوران زده با ۳ تا اما مدرسان زده با ۲ تا.... |