۰
subtitle
ارسال: #۱
  
تست از سمافور - آزاد ۸۳
سلام
به سوالی که پیوست کردم توجه بفرمائید:
گفته کدام خروجی اصلا رخ نمیده؟
پاسخنامه جواب رو گزینه ۲ معرفی کرده و استدلال اش هم درسته، ولی به نظرم گزینه ی ۳ و ۴ هم نمیتونه توی خروجی بیاد، استدلال من اینه که اگر بخواهیم Bچاپ بشه چون سمافور B مقدار اولیه ۰ داره قبلش باید P3 اجرا بشه و یک C چاپ کنه که سمافور B یک بشه بنابراین اصلا نمیشه که اول رشته B چاپ بشه!
نظر شما چیه؟
به سوالی که پیوست کردم توجه بفرمائید:
گفته کدام خروجی اصلا رخ نمیده؟
پاسخنامه جواب رو گزینه ۲ معرفی کرده و استدلال اش هم درسته، ولی به نظرم گزینه ی ۳ و ۴ هم نمیتونه توی خروجی بیاد، استدلال من اینه که اگر بخواهیم Bچاپ بشه چون سمافور B مقدار اولیه ۰ داره قبلش باید P3 اجرا بشه و یک C چاپ کنه که سمافور B یک بشه بنابراین اصلا نمیشه که اول رشته B چاپ بشه!
نظر شما چیه؟
۰
ارسال: #۲
  
RE: تست از سمافور - آزاد ۸۳
سلام.
در گزینه ۲ (که جواب سوال هم هست)، ۳تا حرف C وجود دارد.
برای اینکه ۳تا حرف C چاپ شود باید فقط پردازه سوم یا P3 اجرا شود (توجه کنید که Print C تنها در پردازه P3 انجام میشود).
برای اینکه به غلط بودن گزینه سوم برسیم باید ببینیم که اون ترتیب انجام میشه یا نه؛ برای اون ترتیب باید ابتدا ۲بار پردازه P3 اجرا شود.(به طور کامل). در این صورت دوبار signal B باعث میشود که مقدار اولیه سمافور B از ۰ به ۳ تبدیل شود. همچنین باید بدونیم که با دوبار اجرای P3 مقدار سمافور C برابر ۰ میشه (بدلیل دوتا Wait B که انجام میشه).
از اینجا به بعد یه نکته بسیار ریز وجود داره. """ برای اینکه C سومی (یا همون اخری اجرا بشه باید یک بار signal C داده بشه تا مقدار اولیه اون ۱ بشه و بتونه P3 رو اجرا کنه و C رو چاپ""" اما در تمام کدها تنها جایی که Signal C استفاده شده، P1 هست اما توجه کنید که قبل از P1 نوشته Print A پس این یعنی اشتباه.
اینطور راحت تر بگم خدمتت هاتف جان، هروقت دوتا C پشت سرهم بیان در این سوال مقدار سمافور C برابر با ۰ میشه. و وقتی ۰ بشه دیگه نمتونه C دیگه ای رو چاپ کنه تا زمانی که از یه جایی Signal C زده بشه و دوباره بشه C رو چاپ کرد، اما مشکل اینجاست که قبل از Signal C عبارت Print A اومده، این یعنی که بعد از هر دوتا C چاپ شده برای اینکه بشه C دیگه ای رو هم چاپ کرد "حتما" باید یک A هم باشه در غیر اینصورت امکان وجود یک C دیگه نداره. اما در گزینه دوم همینطور که میبینیم هیچ A یی نیست پس گزینه دوم در هیچ حالتی چاپ نمیشه.
توضیح بیشتر خواست در خدمتم.
در گزینه ۲ (که جواب سوال هم هست)، ۳تا حرف C وجود دارد.
برای اینکه ۳تا حرف C چاپ شود باید فقط پردازه سوم یا P3 اجرا شود (توجه کنید که Print C تنها در پردازه P3 انجام میشود).
برای اینکه به غلط بودن گزینه سوم برسیم باید ببینیم که اون ترتیب انجام میشه یا نه؛ برای اون ترتیب باید ابتدا ۲بار پردازه P3 اجرا شود.(به طور کامل). در این صورت دوبار signal B باعث میشود که مقدار اولیه سمافور B از ۰ به ۳ تبدیل شود. همچنین باید بدونیم که با دوبار اجرای P3 مقدار سمافور C برابر ۰ میشه (بدلیل دوتا Wait B که انجام میشه).
از اینجا به بعد یه نکته بسیار ریز وجود داره. """ برای اینکه C سومی (یا همون اخری اجرا بشه باید یک بار signal C داده بشه تا مقدار اولیه اون ۱ بشه و بتونه P3 رو اجرا کنه و C رو چاپ""" اما در تمام کدها تنها جایی که Signal C استفاده شده، P1 هست اما توجه کنید که قبل از P1 نوشته Print A پس این یعنی اشتباه.
اینطور راحت تر بگم خدمتت هاتف جان، هروقت دوتا C پشت سرهم بیان در این سوال مقدار سمافور C برابر با ۰ میشه. و وقتی ۰ بشه دیگه نمتونه C دیگه ای رو چاپ کنه تا زمانی که از یه جایی Signal C زده بشه و دوباره بشه C رو چاپ کرد، اما مشکل اینجاست که قبل از Signal C عبارت Print A اومده، این یعنی که بعد از هر دوتا C چاپ شده برای اینکه بشه C دیگه ای رو هم چاپ کرد "حتما" باید یک A هم باشه در غیر اینصورت امکان وجود یک C دیگه نداره. اما در گزینه دوم همینطور که میبینیم هیچ A یی نیست پس گزینه دوم در هیچ حالتی چاپ نمیشه.
توضیح بیشتر خواست در خدمتم.
ارسال: #۳
  
RE: تست از سمافور - آزاد ۸۳
(۲۹ آبان ۱۳۹۲ ۰۹:۵۰ ب.ظ)azad_ahmadi نوشته شده توسط: سلام.سلام
در گزینه ۲ (که جواب سوال هم هست)، ۳تا حرف C وجود دارد.....
....
اما در گزینه دوم همینطور که میبینیم هیچ A یی نیست پس گزینه دوم در هیچ حالتی چاپ نمیشه.
ممنون از توضیحات مفصل ات ولی این سوال من نبود!
من عرض کردم که در غلط بودن گزینه دوم شکی نیست، ولی علاوه بر اون به نظرم گزینه های ۳ و ۴ هم غلط اند، یعنی سوال ۳ جواب صحیح داره!
۰
ارسال: #۴
  
RE: تست از سمافور - آزاد ۸۳
صورت سوال نوشته شده ترتیب C . B . A هست. و مقدار هم به همین ترتیب ۰ ۱ ۲ . ترتیب در صورت سوالی که پیوست شده اشتباه است.
موضوعهای مرتبط با این موضوع... |
|||||
موضوع: | نویسنده | پاسخ: | بازدید: | آخرین ارسال | |
سوال از سمافور | mary1234 | ۱ | ۲,۴۹۸ |
۰۶ آذر ۱۳۹۷ ۰۷:۳۱ ب.ظ آخرین ارسال: fatemehshiravani1998 |
|
۸۳۸ نرم افزار- محل قبولی؟ | عشقم هوش مصنوعی | ۰ | ۱,۸۵۶ |
۱۰ خرداد ۱۳۹۷ ۱۱:۱۵ ق.ظ آخرین ارسال: عشقم هوش مصنوعی |
|
تحلیل کدنویسی(سمافور) | diiimah | ۰ | ۱,۵۸۴ |
۱۵ اردیبهشت ۱۳۹۷ ۰۱:۱۳ ب.ظ آخرین ارسال: diiimah |
|
دانشگه های مجاز با رتبه ۸۳۸۴ هوش و رتبه ۸۷۳۲ ای تی(شبکه) | roshi65 | ۲ | ۳,۰۵۳ |
۱۶ خرداد ۱۳۹۶ ۰۱:۵۸ ب.ظ آخرین ارسال: roshi65 |
|
سمافور IT94 | Hopegod | ۴ | ۳,۴۴۱ |
۰۳ اردیبهشت ۱۳۹۶ ۱۱:۵۷ ب.ظ آخرین ارسال: *tarannom* |
|
سمافور | *tarannom* | ۷ | ۴,۹۲۷ |
۱۸ فروردین ۱۳۹۶ ۰۲:۲۴ ب.ظ آخرین ارسال: *tarannom* |
|
تعریف کلی سمافور | alireza01 | ۳ | ۴,۷۷۴ |
۰۳ بهمن ۱۳۹۵ ۰۲:۳۴ ب.ظ آخرین ارسال: Saman |
|
سمافور ، کارشناسی ارشد کامپیوتر سراسری ۷۶ | joyebright | ۴ | ۳,۷۴۶ |
۰۳ آبان ۱۳۹۴ ۱۱:۳۱ ب.ظ آخرین ارسال: محمد رعیت |
|
۸۳۶ شبکه ۹۸۰ تجارت | betty_m | ۰ | ۱,۱۷۴ |
۲۳ اردیبهشت ۱۳۹۴ ۱۱:۴۲ ق.ظ آخرین ارسال: betty_m |
|
نمونه سوال های مفهومی از مبحث سمافور | Emadsmart | ۴ | ۶,۹۳۲ |
۳۰ فروردین ۱۳۹۴ ۰۲:۵۴ ب.ظ آخرین ارسال: Sadi_gh |
Can I see some ID?
Feeling left out?
نگران نباش، فقط روی این لینک برای ثبت نام کلیک کن. رمزت رو فراموش کردی؟ اینجا به یادت میاریم! close