جستجو: ست

اردوی انتخابی برنامه نویسی مرحله دوم المپیاد کامپیوتر

دیدگاه دیدگاه‌ها برای اردوی انتخابی برنامه نویسی مرحله دوم المپیاد کامپیوتر بسته هستند
نوشته شده توسط , ۲۲ خرداد ۱۳۸۹

اردوی انتخابی برنامه­نویسی مرحله ۲ المپیاد کامپیوتر، شامل ۲ امتحان برنامه­نویسی می­باشد که در ۲ روز پشت سر هم برگزارمی­شود. هر امتحان، شامل تعدادی سوال برنامه­نویسی می­باشد که در ابتدای مسابقه به شرکت­کنندگان داده می­شود. شرکت­کنندگان در زمان تعیین شده فرصت دارند تا به جواب این سوالات برسند.

شرکت کنندگان

شرکت­کنندگان در این دوره حدود ۶۰ نفر برتر آزمون تستی/تشریحی مرحله‌ی دوم می­باشند. در پایان آزمون از این تعداد، منتخبین شرکت در دوره تابستان المپیاد کامپیوتر برگزیده خواهند شد.

مشخصات سیستم

برای پاسخ­گویی به سوالات در طول امتحان یک کامپیوتر به هر فرد داده می­شود که دارای ویژگی­های زیر می­باشد:

سوالات آزمون

سؤالات این آزمون غالباً نیاز به دانستن الگوریتم خاصی ندارند و بر پایه‌ی محاسبات ریاضی یا ایده‌های خلاقانه هستند. در هر سؤال از شرکت‌کننده یک عدد نهایی خواسته می‌شود و شرکت‌کننده با استفاده از رایانه‌ای که در اختیار دارد می‌بایست عدد خواسته شده را محاسبه کند.

یک نمونه‌ی ساده از چنین سؤالی، باقی‌مانده‌ی عدد ۲۰۰۹ به‌توان ۱۳۸۹ بر ۴۹۹۹۹ است. این کار با استفاده از روش‌های دستی و بدون از رایانه، عملاً کاری وقت‌گیر است. اما با دانستن زبان C++ و توانایی نوشتن یک برنامه‌ی ساده، جواب را می‌توان در چند دقیقه محاسبه کرد. یک سؤال مشابه دیگر، تعداد اعداد اوّل ۷ رقمی است.

دقت کنید که در این آزمون از شما متن برنامه خواسته نمی‌شود و تنها باید برای هر سؤال یک عدد را (به هر روش مُجاز ای با استفاده از برنامه‌نویسی و محاسبه) ‌به‌دست بیاورید.

نمونه سوالات آزمون آزمایشی

۶ سؤال نمونه برای این آزمون در فایل final_bahman.pdf قرار دارند. این آزمون در تاریخ ۲۹ بهمن‌ماه ۱۳۸۸ با شرکت منتخبین سال گذشته به ‌صورت آزمایشی برگزار شد و در آن به هر یک از شرکت‌کنندگان یک عدد  (دلتا)ی منحصر بفرد داده می‌شد که معمولاً یک عدد اوّل ۳ یا ۴ رقمی بود.

یک نمونه از کدهایی که می‌توانستند جواب سؤالات را به‌دست بیاورند در فایل solution_bahman.pdf قرار دارد. لازم به‌ذکر است که جواب‌های این فایل تنها یکی از چندین روش نوشتن برنامه برای مسائل بوده‌اند و به‌هیچ‌وجه بهترین یا زیباترین یا سریع‌ترین جواب ممکن نیستند. جواب‌های بهتری با استفاده از دستورات و ساختارهای دیگر زبان C++ ممکن است وجود داشته باشد.

نکات برای آزمون

شرکت‌کنندگان در این دوره باید قادر باشند به‌راحتی در زبان C++ برنامه‌های ساده بنویسند. مفاهیمی نظیر تعریف متغیر، دانستن محدود متغیرها (حداکثر int و long long)، تعریف آرایه، شرط، حلقه و خواندن و نوشتن ورودی و خروجی از حداقل توانایی‌های لازم برای برنامه‌نویسی به شمار می‌روند.

توصیه می‌شود که شرکت‌کنندگان با مفاهیمی نظیر آرایه چند بعدی، توابع، توابع بازگشتی، رشته‌های C++ (تایپ string)، اعداد اعشاری در C++، توابع ساده‌ی STL نظیر sort نیز آشنا باشند.

تمرین کار با تسهیلات C++ نظیر کلاس‌ها، داده‌ساختارهای STL نظیر map و set، توابع C و C++ نظیر rand() و نیز تکنیک‌هایی نظیر استفاده از stringstreamها یا کار با bitset بالطبع می‌توانند تسلّط برنامه‌نویس را بالا برده و زمان صرف شده برای نوشتن کد را کاهش دهند. هیچ یک از این موارد به هیچ وجه برای قبول شدن در این آزمون الزامی نیستند و تنها احتمال رسیدن سریع‌تر و دقیق‌تر به جواب را ممکن‌ است افزایش بدهند.

توجه شود که هیچ یک از موارد گفته شده الزامی نیستند، چرا که از شرکت‌کنندگان کد یا الگوریتم خاصی درخواست نمی‌شود، بلکه شرکت‌کننده باید بتواند در زمان مقرّر، به پاسخ (عدد نهایی) حداکثر تعداد سؤالات برسد.

مراجع مفید برای آزمون

تلاش برای پیاده‌سازی برخی مسائل مرحله اوّل یا دوم سال‌های گذشته‌ی المپیاد کامپیوتر با رایانه، می‌تواند تمرین خوبی باشد.

همچنین وب‌سایت http://projecteuler.net حدود ۳۰۰ مسئله شبیه به مسائلی که این آزمون دارد را در بر می‌گیرد که جواب هر مسئله، مشابه این آزمون یک عدد تنها است و از شما متن برنامه یا نحوه نگارش برنامه به هیچ وجه خواسته نمی‌شود.

مراجع مفید برای برنامه نویسی

سایت http://www.cplusplus.com راهنمای جامعی برای زبان C++ است.

کتاب‌های «How to Program in C++, by Deitel and Deitel» و یا ترجمه‌ی آن موسوم به «C++ تألیف دایتل و دایتل» یکی از شناخته‌شده‌ترین مراجع آموزش برنامه‌نویسی است. هم‌چنین کتاب‌های «آموزش برنامه‌نویسی C++ در ۲۱ روز» و کتاب «برنامه‌نویسی به‌زبان C++» مهندس جعفرنژاد قمی و کتاب «چگونه با C++ برنامه بنویسیم» ترجمه‌ی مهندس ابراهیم‌زاده‌ی قلزم کتاب‌های مفیدی برای یادگیری زبان C++ هستند.

با آرزوی موفقیت،

مسئولین علمی و اجرایی دوره

خرداد ۸۹

مقررات المپیاد کامپیوتر

دیدگاه دیدگاه‌ها برای مقررات المپیاد کامپیوتر بسته هستند
نوشته شده توسط , ۸ آبان ۱۳۸۸

برای مشاهده ی چارت المپیاد کامپیوتر به اینجا مراجعه و فایل مربوطه را دانلود کنید و آن را به دقت بخوانید. این فایل حاوی جزییات برنامه‌ی جدید است.
چند نکته‌ی فوری:
۱- کلاس‌های سومی از امسال می‌توانند در مرحله‌ی اول شرکت کنند. مرحله‌ی اول امسال ساده تر از سال‌های پیش است و حدود ۱۰۰۰ نفر از شرکت کنندگان سال اول تا سوم انتخاب می‌شوند تا در مرحله‌ی دوم شرکت کنند.
۲- مرحله‌ی دوم در دو روز برگزار می‌شود. دانش‌پژوهانی که در دوره‌ی تابستان ۸۸ برنز نگرفته اند از شرکت در مرحله‌ی اول و دوم معافند. اما برنزی ها مانند دانش‌پژوهان جدید باید شرکت کنند.
۳- از مرحله‌ی دوم کلا ۶۰ نفر انتخاب می‌شوند تا در آزمون برنامه نویسی ای که درست قبل از تابستان برگزار می‌شود شرکت کنند. تا بر اساس این نمره‌ی این آزمون و نمرات آزمون‌های مرحله‌ی اول و دوم، ۳۰ نفر برای دوره‌ی تابستان ۸۹ انتخاب شوند.
۴- حدس زده می‌شود که برخی از بچه‌های نقره‌ای تابستان ۸۸ که هم اکنون سال سوم هستند ترجیح می‌دهند که به دنبال کنکور بروند. اما اگر بخواهند می‌توانند بدون شرکت در مرحله‌ی اول و دوم و نیز آزمون برنامه نویسی در دوره‌ی تابستان ۸۹ شرکت کنند. البته این دانش‌پژوهان دیگر مجاز به شرکت در کلاس‌های درس تابستان نیستند ولی باید فقط در آزمون‌های آن شرکت نمایند.

موفق باشید

اعضای کمیته‌ی ملی

دیدگاه دیدگاه‌ها برای اعضای کمیته‌ی ملی بسته هستند
نوشته شده توسط , ۱۹ مهر ۱۳۸۸

دکتر محمد قدسی عضو هیئت علمی – دانشکده‌ی مهندسی کامپیوتر – دانشگاه صنعتی شریف

دکتر حمید ضرابی‌ زاده عضو هیئت علمی – دانشکده‌ی مهندسی کامپیوتر – دانشگاه صنعتی شریف

دکتر محمدعلی آبام عضو هیئت علمی – دانشکده‌ی مهندسی کامپیوتر – دانشگاه صنعتی شریف

مهندس کامران باور فارغ‌التحصیل کارشناسی ارشد – دانشکده‌ی مهندسی کامپیوتر – دانشگاه صنعتی شریف

دکتر کیان میرجلالی فارغ‌التحصیل دکتری – دانشکده‌ی مهندسی کامپیوتر – دانشگاه صنعتی شریف

دکتر مهدی صفرنژاد بروجنی فارغ‌التحصیل دکتری – دانشکده‌ی مهندسی کامپیوتر – دانشگاه صنعتی شریف

دکتر افروز جبل عاملی فارغ‌التحصیل دکتری – دانشکده‌ی مهندسی کامپیوتر – دانشگاه صنعتی شریف

دکتر مرتضی ثقفیان فارغ‌التحصیل دکتری – دانشکده‌ی علوم ریاضی – دانشگاه صنعتی شریف

محمدمهدی شکری فارغ‌التحصیل کارشناسی ارشد – دانشکده‌ی مهندسی کامپیوتر – دانشگاه صنعتی شریف

علی اسدی فارغ‌التحصیل کارشناسی ارشد – دانشکده‌ی مهندسی کامپیوتر – دانشگاه صنعتی شریف

فهرست کامل اعضای کمیته‌ی ملی در این صفحه آمده است.


(کمیته‌ی ملی المپیاد کامپیوتر ایران تنها مسئولیت علمی برگزاری آزمون‌های انتخابی المپیاد و دوره‌های آموزشی را برای منتخبین، طبق چارچوب تعیین‌شده بر عهده دارد.)

Panorama Theme by Themocracy