۰
subtitle
ارسال: #۱
  
سوال از همروندی سیستم عامل
دوستان عزیز به نظر شما پاسخ صحیح کدوم هستش؟!آیا این سوال اشکال نداره؟!
آیا گزینه ۴ ممکن هستش!؟
پیشاپیش مرسی
آیا گزینه ۴ ممکن هستش!؟
پیشاپیش مرسی
۰
ارسال: #۲
  
سوال از همروندی سیستم عامل
Flag3 سراسری نیست متغیر Flag1 هم تغییر نمی کنه در کد برنامه ها، پس حتما هر فرآیند باید حتما ۵۱ بار(یا به اشتباه ،فرض ۵۰ بار) بشه، ساده ترین حالت اجرای ترتیبی فرآیند هاست یعنی اولی کامل اجرا بشه، بعد دومی کامل اجرا بشه، پس اولی خروجی ۵۱ رو چاپ می کنه، و دومی اگر بعد از اجرای دستور چاپ اولی کامل اجرا بشه، مقدار ۱۰۲ رو چاپ می کنه و اگر قبل از چاپ این کارو انجام بده، هم اولی و هم دومی ۱۰۲ رو چاپ می کنن.
پس در هر حالتی باید ۱۰۲ باشه دیگه، به هر حال با هر تیبی مقدار Flag2 به تعداد ۱۰۲ بار افزایش پیدا می کنه(انکریمنت) پس حتما باید یکی از خروجی ها ۱۰۲ باشه.
یکی حداکثر ۵۱ تا اجرا میشه پس اون یکی می تونه به تعداد نامشخصی در بین اجراهای اولی اجرا بشه پس یکی به تعداد ۵۱+k بار اجرا میشه و k تعداد بارهایی است که اون یکی در بین اجراهاش اجرا شده و دومی هم دقیقا تا ۱۰۲ میره جلو.
پس به نظره من هم سوال مشکل داره،
پس در هر حالتی باید ۱۰۲ باشه دیگه، به هر حال با هر تیبی مقدار Flag2 به تعداد ۱۰۲ بار افزایش پیدا می کنه(انکریمنت) پس حتما باید یکی از خروجی ها ۱۰۲ باشه.
یکی حداکثر ۵۱ تا اجرا میشه پس اون یکی می تونه به تعداد نامشخصی در بین اجراهای اولی اجرا بشه پس یکی به تعداد ۵۱+k بار اجرا میشه و k تعداد بارهایی است که اون یکی در بین اجراهاش اجرا شده و دومی هم دقیقا تا ۱۰۲ میره جلو.
پس به نظره من هم سوال مشکل داره،
۰
ارسال: #۳
  
سوال از همروندی سیستم عامل
این سوال شبیه یکی از تست های کنکورهای سال های پیش طراحی شده بود
طراح فکر کرده که هر حلقه ۵۰ بار اجرا میشه (آخه تو تست کنکور ۵۰ بار اجرا میشد) به خاطر همین هیچوقت خروجی ۱۰۱ نمیشه و جواب گزینه دو میشه
ولی هرکدوم از for ها ۵۱ بار اجرا میشند به خاطر همین این تست غلطه! باید طراح بجای ۱۰۱ مثلا ۱۰۳ می نوشت.
طراح فکر کرده که هر حلقه ۵۰ بار اجرا میشه (آخه تو تست کنکور ۵۰ بار اجرا میشد) به خاطر همین هیچوقت خروجی ۱۰۱ نمیشه و جواب گزینه دو میشه
ولی هرکدوم از for ها ۵۱ بار اجرا میشند به خاطر همین این تست غلطه! باید طراح بجای ۱۰۱ مثلا ۱۰۳ می نوشت.
ارسال: #۴
  
RE: سوال از همروندی سیستم عامل
(۳۰ آبان ۱۳۹۱ ۱۲:۰۷ ق.ظ)foranyone نوشته شده توسط: این سوال شبیه یکی از تست های کنکورهای سال های پیش طراحی شده بود
طراح فکر کرده که هر حلقه ۵۰ بار اجرا میشه (آخه تو تست کنکور ۵۰ بار اجرا میشد) به خاطر همین هیچوقت خروجی ۱۰۱ نمیشه و جواب گزینه دو میشه
ولی هرکدوم از for ها ۵۱ بار اجرا میشند به خاطر همین این تست غلطه! باید طراح بجای ۱۰۱ مثلا ۱۰۳ می نوشت.
مرسی دوست عزیز
ولی با فرض غلط بودن سوال ایا باز حالتی امکان داره که گزینه ۴ درست بشه؟!
۰
ارسال: #۵
  
سوال از همروندی سیستم عامل
بسته به زمان وقفه ها ممکنه این کد به طرق مختلف اجرا بشه
به نظر من ، طراح خودش هم نمیدونه که ۵۰ و ۵۰ هم ممکنه یا نه هدف سوال اصلا این نیست
هدف این بوده که بیشتر از مجموع دو حلقه که نمیتونه اجرا بشه؟
طبق گفته آقای طیبی موسوی سازمان سنجش برای این سوال جواب ۸۰ ، ۸۳ رو تعیین کرده بود ولی بعدا به گزینه ای که ۱۰۲
داشت تغییر داده شد.
این سوال زیاد سوال جالبی نیست فقط این نکته رو در نظر بگیر که جواب نمی تونه بیشتر از مجموع حلقه ها باشه.
یک سوال جالب و استانداردی که تو این سبک سوالات هست سوال زیر هست
[tex]x=0; p1:for(i=0; i<3; i ) x ; p2:for(i=0; i<3; i ) x--;[/tex]
حداکثر مقدار x برابر ۶ میشه.
به نظر من ، طراح خودش هم نمیدونه که ۵۰ و ۵۰ هم ممکنه یا نه هدف سوال اصلا این نیست
هدف این بوده که بیشتر از مجموع دو حلقه که نمیتونه اجرا بشه؟
طبق گفته آقای طیبی موسوی سازمان سنجش برای این سوال جواب ۸۰ ، ۸۳ رو تعیین کرده بود ولی بعدا به گزینه ای که ۱۰۲
داشت تغییر داده شد.
این سوال زیاد سوال جالبی نیست فقط این نکته رو در نظر بگیر که جواب نمی تونه بیشتر از مجموع حلقه ها باشه.
یک سوال جالب و استانداردی که تو این سبک سوالات هست سوال زیر هست
[tex]x=0; p1:for(i=0; i<3; i ) x ; p2:for(i=0; i<3; i ) x--;[/tex]
حداکثر مقدار x برابر ۶ میشه.
ارسال: #۶
  
RE: سوال از همروندی سیستم عامل
(۳۰ آبان ۱۳۹۱ ۱۱:۲۵ ق.ظ)foranyone نوشته شده توسط: بسته به زمان وقفه ها ممکنه این کد به طرق مختلف اجرا بشهخیلی ممنون دوست عزیز ...واقعا توضیح مفیدی بود...لطف کردی...
به نظر طراح خودش هم نمیدونه که ۵۰ و ۵۰ هم ممکنه یا نه هدف سوال اصلا این نیست
هدف این بوده که بیشتر از مجموع دو حلقه که نمیتونه اجرا بشه؟
طبق گفته آقای طیبی موسوی سازمان سنجش برای این سوال جواب ۸۰ ، ۸۳ رو تعیین کرده بود ولی بعدا به گزینه ای که ۱۰۲
داشت تغییر داده شد.
این سوال زیاد سوال جالبی نیست فقط این نکته رو در نظر بگیر که جواب نمی تونه بیشتر از مجموع حلقه ها باشه.
یک سوال جالب و استانداردی که تو این سبک سوالات هست سوال زیر هست
[tex]x=0; p1:for(i=0; i<3; i ) x ; p2:for(i=0; i<3; i ) x--;[/tex]
حداکثر مقدار x برابر ۶ میشه.
ولی اینکه بگیم هدف گزینه آخر نیست درست.... ولی اگر فقط و فقط بخوایم روی گزینه آخر اظهار نظر کنیم به نظر من محاله که مقدار هر دو دقیقا ۵۰ -۵۰ بشه!بازم ممنون ....
۰
ارسال: #۷
  
سوال از همروندی سیستم عامل
خواهش میکنم
منم سر جلسه جواب رو زدم ۵۰ - ۵۰ :دی چون دقیقا مثل شما فکر کردم.
منم سر جلسه جواب رو زدم ۵۰ - ۵۰ :دی چون دقیقا مثل شما فکر کردم.
۰
ارسال: #۸
  
سوال از همروندی سیستم عامل
بله کاملا صحیح میفرمایید، من علامت "{" بعد از print ها رو دیده بودم و فکر کردم که مربوط به حلقه هست.
در این صورت هیچ کدام از گزینه ها قابل تولید نیست. چون باید حتما یکی از اعداد تولید شده برابر با ۱۰۲ باشه و اون یکی عدد هر عدد بزرگتر از ۵۱ و کوچتر مساوی ۱۰۲ میتونه باشه. که هیچ کدام از گزینه ها شامل ۱۰۲ نیستند!
در این صورت هیچ کدام از گزینه ها قابل تولید نیست. چون باید حتما یکی از اعداد تولید شده برابر با ۱۰۲ باشه و اون یکی عدد هر عدد بزرگتر از ۵۱ و کوچتر مساوی ۱۰۲ میتونه باشه. که هیچ کدام از گزینه ها شامل ۱۰۲ نیستند!
Can I see some ID?
Feeling left out?
نگران نباش، فقط روی این لینک برای ثبت نام کلیک کن. رمزت رو فراموش کردی؟ اینجا به یادت میاریم! close