اخبار و اطلاعات مربوط به دروس

در این وبلاگ مباحث مرتبط با دروس تدریسی توسط اینجانب پیگیری می شود.

اخبار و اطلاعات مربوط به دروس

در این وبلاگ مباحث مرتبط با دروس تدریسی توسط اینجانب پیگیری می شود.

هدیه ای از طرف دانشجویان
Mbt925.ir

۴ مطلب در ارديبهشت ۱۳۹۳ ثبت شده است

۲۸
ارديبهشت

تمرین سیزدهم: طراحی واسط کاربری

واسط کاربری زیر را طراحی کنید.
  • همه کدهای مربوط به این پنجره باید در یک کلاس پیاده سازی شده باشد
  • از کلاس JFrame به ارث برده و آن را به صورت نشان داده شده در تصویر طراحی کنید.

       

نکته: تصویر زیر تنها یک طرح کلی است. تفاوت در جزئیات اهمیتی ندارد. برای مثال یک نمونه طراحی واقعی در تصویر دوم نمایش داده شده است.

مهلت ارسال تمرین: شنبه، 3 خرداد 93، ساعت 8

  • بیگلری
۲۱
ارديبهشت

تمرین دوازدهم: ضرب ماتریس ها

برنامه ای بنویسید که ضرب ماتریس ها را به صورت معمولی و موازی پیاده سازی کند.
  • هر خانه از ماتریس هدف توسط یک نخ مجزا محاسبه گردد (ضرب هر سطر در هر ستون توسط یک نخ صورت می گیرد).
  • ابعاد ماتریس و خود ماتریس ها از فایل خوانده شود (برای آزمایش برنامه، ابعاد 3 در 3 و 30 در 30 را تست کنید).
  • نتیجه را در فایل خروجی بنویسید.
  • زمان انجام ضرب ماتریس ها به صورت موازی و غیرموازی را بدست آورده و مقایسه نمایید. نتیجه را تحلیل کنید.

تذکر: برای محاسبه زمان اجرای موازی، باید از اتمام همه نخ ها اطمینان حاصل کنید. از join استفاده نکنید.

مهلت ارسال تمرینشنبه، 27 اردیبهشت 93، ساعت 24

۱۶
ارديبهشت

تمرین یازدهم: بازی با نخ ها

برنامه ای بنویسید که یک آرایه تصادفی به طول صدهزار ایجاد کرده و به صورت زیر عمل کند.
  • یک کلاس نخ ایجاد کنید که در سازنده اش آرایه را تحویل بگیرد و در تابع run مجموع عناصر آرایه را محاسبه کند. در پایان تابع، نام نخ و مجموع محاسبه شده را چاپ نماید
  • در تابع main، آرایه تصادفی ایجاد و پر می شود
  • سپس در یک حلقه (ده تایی)، ده نخ ایجاد شده و آرایه تصادفی از طریق سازنده، برای آنها ارسال می شود.
  • تابع main زمان اجرای هر نخ را محاسبه کرده و پس از پایان اجرای آن نخ، در خروجی چاپ می نماید.
  • در پایان اجرای همه نخ ها، مجموع زمان محاسبه شده برای همه آنها چاپ می گردد

مهلت ارسال تمرینسه شنبه، 23 اردیبهشت 93، ساعت 24

نمونه خروجی (برای سه نخ):

Thread-0: 496605

Time of Thread-0: 2ms

Thread-1: 496605

Time of Thread-1: 1ms

Thread-2: 496605

Time of Thread-2: 1ms

Total time: 5ms

  • بیگلری
۱۲
ارديبهشت

تمرین دهم: مهمانی آسمانی

در یک مهمانی آسمانی، انواع میوه ها از آسمان به زمین می بارد. علی و دوستانش به محض دیدن این صحنه، خود را به محدوده موردنظر رسانده و شروع به جمع آوری میوه ها می کنند. شما باید برنامه ای بنویسید که تعداد میوه های جمع آوری شده توسط هر شخص را شمرده و در نهایت، اشخاص را به ترتیب صعودی اسم هایشان چاپ کند.

ورودی:
  • در خط اول از ورودی، تعداد خطوط (n) آورده می شود
  • سپس در n خط بعدی، در هر خط دو رشته آورده می شود
  1. رشته اول: اسم شخص
  2. رشته دوم: نام میوه
خروجی:
  • اشخاص به ترتیب صعودی اسم ها در خروجی چاپ می شوند
  • در هر خط از خروجی:   نام شخص، تعداد کل میوه ها جمع آورده شده، نام هر میوه (به ترتیب صعودی)، تعداد آن میوه
  
نکات:
  • هیچ دو شخصی دارای اسم یکسان نیستند
  • تعداد و نام دوستان علی مشخص نیست!
  • تعداد میوه ها هم مشخص نیست!
  • برنامه نباید به بزرگی و کوچکی حروف حساس باشد
  • تنها مجاز به استفاده از Collection ها هستید

   

مهلت ارسال تمرین: شنبه، 20 اردیبهشت 93، ساعت 16

نمونه ورودی:

10

ali orange

Ali Orange

Mohammad banana

Sina Watermelon

Tina Apple

Sina Apple

Ali Watermelon

Mohammad BaNana

Sina Orange

ALI Lemon

نمونه خروجی:

ali 4 [lemon 1] [orange 2] [watermelon 1] 

mohammad 2 [banana 2]

sina 3 [apple 1] [orange 1] [watermelon 1]

tina 1 [apple 1]

  • بیگلری