ترجمه سوال یک - acm 2016

مقدار مالیات اعمال شده بر هر مالیات دهنده به میزان درامدش بستگی دارد
برای کمتر یا مساوی با درامد 1000000مالیت 10 درصد از درامد است برای درامد بیش 5000000مالیات 20درصد در نظر گرفته شده
شما باید برنامه ای بنویسید درامد خالص هر کارمند پس از کسر مالیات را محاسبه کند برای درامد های بیشتر یا مساوی1000000 و کمتر یا مساوی 5000000
.
.
.
ورودی =
در ورودی درامد کارمند پس از کسر مالیات است که نباید کمتر از 1000 و بیشتر از 10000000 باشد
اگر ورودی عدد صفر باشد چیزی پردازش نشود
.
.
.
خروجی=
در یک خط درامد کارمند پس از کسر مالیات

۱۱ دی ۹۷ ، ۰۱:۲۰ ۱ نظر موافقین ۰ مخالفین ۰
انجمن مسابقات برنامه نویسی

اتفاقی جالب برای خالق ویندوز ;بیل گیتس

شاید باور آن برای شما دشوار باشد که زمانی بیل گیتس بنیان‌گذار شرکت مایکروسافت و یکی از ثروتمندترین مردان جهان تا ساعت ۴ صبح در کمدی بیدار مانده تا یک گیم بسیار ساده و ابتدایی را کد بزند. اما این داستان حقیقت دارد که در ادامه شرح کامل این داستان آورده شده است.

داستان از این قرار است که در دههٔ ۱۹۸۰ میلادی، کمپانی IBM از Microsoft خواست تا برای کامپیوترهای شخصی خود -که جزو اولین کامپیوترهای شخصی در آن زمان بودند- یک گیم (بازی) طراحی کند. در نتیجه بیل گیتس خود شخصاً این کار را بر عهده گرفت و منجر به این شد که تا دیروقت بیدار ماند تا اولین بازی کامپیوتری برای رایانه‌های شخصی را تولید کند.

گیمی که بیل گیتس و کمپانی آی‌بی‌ام روی آن اجماع کرده بودند، گیمی بسیار ساده به نام DONKEY.BAS بود که در آن باید سعی می‌کردید با خودروی خود از برخورد با الاغ‌ها در جاده‌ای اجتناب کنید.

البته نوشتن یک بازی برای کامپیوترهای شخصی IBM بخشی از قراردادی بود که Microsoft با IBM بسته بود. در واقع، یکی از افسانه‌های سیلیکون ولی این است که در سال ۱۹۸۰ میلادی،‌ بیل گیتس جوان شرکت IBM را متقاعد می‌کند که استارتاپ کوچک او -یعنی مایکروسافت- بهترین گزینه برای تهیه کردن سیستم‌عامل کامپیوترهای شخصی IBM است؛ اما مشکل اینجا بود که مایکروسافت در واقع سیستم‌عاملی نداشت که به این شرکت بفروشد! بنابراین بیل گیتس سعی کرد که این سیستم‌عامل را از یک استارتاپ کوچک که در حال تهیهٔ سیستم‌عاملی به نام 86-DOS بود خریداری کند (DOS مخفف واژگان Disk Operating System است). گیتس این سیستم‌عامل را پس از اینکه به PC DOS تغییر نام داد، به قیمت کل ۴۳۰۰۰ دلار به IBM فروخت.

در چارچوب این قرارداد،‌ آی‌بی‌ام از مایکروسافت خواست تا نسخه‌ای از BASIC که زبان برنامه‌نویسی برای مبتدیان بود را نیز به همراه چند نمونه بازی ساده برای نمایش این زبان برنامه‌نویسی تهیه کند. گیمی که بیل گیتس پس از تفکر به آن رسید، همان بازی DONKEY.BAS بود که از دید بسیاری از گیمرهای حرفه‌ای امروزه مسخره‌ است که در آن کاربر باید با خودرویی که در یک جاده در حرکت بود از برخورد با الاغ‌های داخل مسیر اجتناب کند.

جالب است که این بازی به‌ طور اتفاقی اولین بازی برای کامپیوترهای شخصی محسوب می‌شود. بیل گیتس روند ساخت بازی DONKEY.BAS را در یادداشتی در سال ۲۰۰۱ میلادی به‌ صورت زیر تشریح می‌کند:

در واقع من و Neil Konzen تا ۴ صبح در پشت نمونهٔ اولیه‌ای از کامپیوتر شخصی IBM در یک اتاق کوچک نشستیم تا این بازی رو بنویسیم. IBM اصرار داشت که ما برنامه‌نویسی این کار رو در پشت درهای بسته انجام بدیم و ما در خانه‌ٔمان تنها یک کمد داشتیم که قفل داشت! در نتیجه مجبور شدیم که در داخل این کمد که دمای آن بسیار بالا بود بنشینیم تا یک برنامه‌ای بنویسیم که نشان دهد زبان برنامه‌نویسی بیسیک روی کامپیوترهای شخصی IBM چه کاری می‌تواند انجام دهد. حاصل این کار DONKEY.BAS بود که در زمان خود بازی هیجان‌انگیزی محسوب می‌شد.

هنگامی که مسئولان اپل اولین بار به این بازی که مختص کامپیوترهای شخصی IBM طراحی شده بود نگاه کردند، DONKEY.BAS را بازی شرم‌آور و مسخره‌ای دانستند به گونه‌ای که به هیچ وجه باور نمی‌کردند که بیل گیتس خود را خالق این بازی بداند و نام خود را روی آن گذاشته باشد.

Andy Hertzfeld که از اولین کارمندان اپل بود به خوبی از زمانی که تیم مکینتاش اولین کامپیوتر شخصی IBM را دید یاد می‌کند و می‌گوید که بازی‌های روی آن چندان جالب و تأثیرگذار نبودند. به‌ طور خاص او می‌گوید که بازی DONKEY.BAS یکی از شرم‌آورترین بازی‌ها است؛ از این جهت که هم مفهوم بازی و هم گرافیک به کار رفته در آن غیرحرفه‌ای و خام بود. Andy Hertzfeld می‌گوید:

وقتی فهمیدیم که این بازی افتضاح توسط گیتس ساخته شده، بسیار تعجب کردیم. ما شگفت‌زده شدیم که متنی در بالای این بازی با افتخار ذکر می‌کند که برنامه‌نویسان این بازی بیل گیتس و نیل کونزن هستند. نیل یک هکر نوجوان باهوش بود که من او رو از زمان کار روی Apple II می‌شناختم اما ذکر نام بیل گیتس به عنوان هم‌بنیان‌گذار مایکروسافت در بالای این بازی بسیار جای شگفتی داشت. ضمن اینکه حقوق معنوی این بازی نیز در قسمت کامنت‌های بازی به نام او ثبت شده بود.

در سال ۲۰۰۱،‌ مایکروسافت به جهت اینکه نشان دهد که چه راهی را تا رسیدن به این مرحله طی کرده است، نسخه‌ای سه‌بعدی از این بازی به نام DONKEY.NET را ساخت با این تفاوت که در این بازی هدف زیر کردن الاغ‌ها با یک ماشین بود! شما می‌توانید با دانلود بازی DONKEY.NET آن را تست کنید؛ البته لازم به ذکر است که ممکن است برخی از سیستم‌های کامپیوتری جدید در اجرای این بازی با مشکل مواجه شوند.

اما اگر مشتاق به مشاهده یا بازی کردن نسخهٔ اصلی بازی نوشته شده توسط بیل گیتس هستید،‌ دانشگاه MIT یک نسخهٔ تحت وب بازی DONKEY.BAS را در محیط زبان برنامه‌نویسی اسکرچ تهیه کرده است. جالب اینکه یک برنامه‌نویس نیز به طور خودجوش نسخه‌هایی از این بازی را برای آیفون و اپل واچ طراحی کرده است که می‌توانید آن را با قیمت ۹۹ سنت خریداری کنید. 

بیل گیتس طرفدار بازی کلاسیک دیگری از مایکروسافت نیز می‌باشد که Minesweeper‌ نام دارد اما نکتهٔ جالب اینجا است که زمانی بیل گیتس مجبور شد تا این بازی را از روی کامپیوتر خود حذف کند تا بتواند بهتر از کامپیوتر خود استفاده کند اما به گفتهٔ خودش، بعضی مواقع یواشکی به اتاق همکاران خود می‌رفت تا این بازی را روی سیستم‌های آن‌ها بازی کند!

۱۱ دی ۹۷ ، ۰۰:۴۵ ۰ نظر موافقین ۰ مخالفین ۰
انجمن مسابقات برنامه نویسی

ترجمه سوال 2 مسابقات acm سال 96

کافه بازار , معروفترین فروشگاه نرم افزار اندرید در ایران است .
کافه بازار به دنبال توسعه دهندگان خلاق نرم افزار است . یک گروه در این مصاحبه شرکت میکنند . کافه بازار میخواهد سریعترین توسعه دهنده را انتخاب نماید . کسی که بتواند قوانین  را سریع و به درستی کد نویسی کند .
به عنوان یک ازمون همه متقاضیان باید به سرعت یک تایید کننده کارت بانکی ایجاد کنند که تعیین کند شماره کارت وارد شده صحیح میباشد یا خیر .
تمام شماره کارت ها 16 رقمی میباشند .6رقم سمت چپ نشان دهنده شماره شناسایی منحصر به فرد برای بانک صادرکننده است. دو رقم بعدی (رقم 7 و 8)نوع کارت را تعیین میکند .رقم9 تا 15 شماره سریال کارت است  و اخرین رقم به عنوان کنترلی برای معتبر بودن یا نبودن کارت است
از این رو اگر کسی به درستی شماره کارتی را وارد کند شانس زیادی وجود دارد که یک نرم افزار پرداخت بتواند به راحتی تعیین کند که معتبر است یا خیر .
برای یک شماره کارت معتبر  اخرین رقم به گونه ای انتخاب میشود که از الگوریتم زیر عبور کند :
1-برچسب همه ارقام از چپ به راست از یک تا 16 است
2- مقدار اعدادی که برچسب ان ها فرد است دو برابر شود
3-اگر نتیجه از 9 بیشتر بود 9را از ان کم کنید
4-نتیجه گام پیشین را جمع کنید و مجومع تمام ارقام را بدست اورید
5-اگر مجموع ارقام مضربی از ده باشد کارت معتبر است در غیر این صورت معتبر نیست
شما باید یک شماره کارت بگیرید و تعیین کنید که ایا این شماره کارت معتبر است یا خیر .
.
.
.
.
ورودی =
شما در یک خط به صورت رشته یک شماره کارت را میخوانید
اگر تمام ارقام این شماره صفر بود هیچ عملیاتی انجلم نمیگیرد

.
.
.
.
خروج =
شما در یک خط مشخص و چاپ میکنید که کارت معتبر است یا خیر .
اگر معتبر است چاپ کنید "YES"
اگر نامعتبر بود چاپ کند "NO"

۰۹ دی ۹۷ ، ۱۵:۰۱ ۰ نظر موافقین ۰ مخالفین ۰
انجمن مسابقات برنامه نویسی

سوال اول مسابقات acm_2017




سه اوپراتور تلفن همراه در ابران وجود دارد .هر اوپراتور قیمت های متفاوتی برای مکالمه و استفاده از اینترنت دارد.تمام قیمت ها بر حسب ریال است
1-pacTel    ----->  call = 30  & data = 40
2-parsCell  ----->  call = 35  & data = 30
3-parsPhone ----->  call = 40  & data = 20
 برخی از دانشجویان خارجی برای شرکت در مسابقات ای . سی . ام به ایران امده اند
ان ها از قبل میدانستند که چند دیقه تماس برقرار خواهند کرد و چقدر اینترنت استفاده خواهند کرد
شما میخواهید به ان ها اوپراتوری را پیشنهاد کنید که هزینه نهایی کمترین هزینه را برای ان ها دربرداشته باشد
.
.
.
.
ورودی =
هر خط ورودی شامل اطلاعات هر دانشجو است .برای هر دانش اموز دو عدد برای تعداد دقایق مکالمه و مقدار اینترنت مصرف شده بر حسب مگابایت داریم
که این دو عدد هر دو بین صفر تا صد هستند
اگر این دو عدد صفر باشد هیچ عملیاتی انجام نمیشود
.
.
.
خروجی =
در یک خط چاپ کنید کمترین مقدار هزینه برای دانش اموز چقدر است .
.
.
.سوال

۰۸ دی ۹۷ ، ۲۲:۳۱ ۰ نظر موافقین ۰ مخالفین ۰
انجمن مسابقات برنامه نویسی

کارگاه آشنایی با مسابقات ای سی ام

این کارگاه در روز پنجشنبه ۲۰ اردیبهشت ما از ساعت ۱۱:۰۰ الی ۱۳:۰۰ با حضور دانشجویان در محل کلاس ۵۰۴ برگزار شد. در این رویداد به معرفی و آموزش کلی این مسابقه پرداخته شد.

کارگاه ای سی ام

۰۱ خرداد ۹۷ ، ۰۰:۱۵ ۰ نظر موافقین ۱ مخالفین ۰
انجمن مسابقات برنامه نویسی