تاریخ انتشار: یکشنبه 1395/11/24 - 01:04
کد خبر: 226513

همزمان با بیست‌ودومین کنفرانس ملی کامپیوتر ایران

مسابقه کدنویسی مبهم در دانشگاه صنعتی شریف

مسابقه کدنویسی مبهم در دانشگاه صنعتی شریف

انجمن کامپیوتر ایران، مرکز راهکارهای اطلاعاتی هوشمند و پژوهشکده فناوری اطلاعات و ارتباطات پیشرفته دانشگاه صنعتی شریف، بیست‌ودومین کنفرانس ملی سالانه کامپیوتر را با هدف رشد و توسعه دانش و فناوری کامپیوتر برگزارمی‌کند. کارگاه آموزشی با عناوین مختلف و مسابقه کدنویسی مبهم، از دیگر برنامه‌هایی است که همزمان با کنفرانس برگزار خواهد شد.

خبرنامه دانشجویان ایران: انجمن کامپیوتر ایران، مرکز راهکارهای اطلاعاتی هوشمند و پژوهشکده فناوری اطلاعات و ارتباطات پیشرفته دانشگاه صنعتی شریف، بیست‌ودومین کنفرانس ملی سالانه کامپیوتر را با هدف رشد و توسعه دانش و فناوری کامپیوتر برگزارمی‌کند. کارگاه آموزشی با عناوین مختلف و مسابقه کدنویسی مبهم، از دیگر برنامه‌هایی است که همزمان با کنفرانس برگزار خواهد شد.

به گزارش خبرنگار فناوری اطلاعات «خبرنامه دانشجویان ایران»؛ در طول تاریخ برنامه نویسی، سبک های مختلفی برای برنامه نویسی ابداع شدند. روشهای برنامه نویسی ساخت یافته، پیمانه ای و شی گرا از معروفترین سبک های برنامه نویسی بشمار می آیند. اما پیش از همه آنها نخستین سبک برنامه نویسی، برنامه نویسی اسپاگتی نامیده می شد. دورانی که دستور Go to رواج داشت و برنامه ها به شدت ناخوانا بودند. زیرا ترتیب اجرای سطرهای برنامه، به دلیل استفاده مکرر از دستور Go to همچون رشته های اسپاگتی تو درتو و سردرگم بود. به همین دلیل برنامه ها عموما کم حجم و پر از خطا بودند. هنگامی که برنامه نویسان برای نجات از این وضع، دستور Go to را منع کردند و سعی کردند بجای آن از حلقه های for و while و متغیرهای منطقی( Boolean) استفاده کنند دوران این سبک برنامه نویسی به پایان رسید و سبک برنامهن ویسی ساخت یافته آغاز گشت. اما این مسابقه. هدف از آن، تخمین مهارت شرکت کنندگان در نوشتن کدهای ناخوانا یا در اصطلاح برنامه نویسان همان کد کثیف ( Dirty Code) است. یک برنامه را هنگامی ناخوانا می نامیم که اگر کد برنامه در اختیار برنامه- نویس دیگر قرار دهیم و او معنای تک تک دستورات برنامه را بداند، شیوه کنار هم چیده شدن دستورات و پرش های تو در توی میان آنها بحدی پیچیده و گیج کننده باشد که برنامه نویس بدون اجرای این برنامه، نتواند سردر آورد که خروجی برنامه چیست؟

مقدمه
هر تیم برای شرکت در مسابقه باید به ناخواناترین شکل ممکن، برنامه ای به زبان ++c بنویسد که با هر بار اجرا شدن، رشتهای معین به طول حداقل یک و حداکثر سه کاراکتر را روی صفحه نمایش چاپ کند. توجه: این رشته می بایست همواره ثابت باشد، نه آنکه در هر بار اجرا رشته ای متفاوت چاپ کند، و یا اینکه با انتقال به کامپیوتری دیگر، خروجی متفاوتی بدهد.

روند اجرایی
تیم ها آخرین نسخه برنامه هایشان را باید تا پایان وقت اداری تاریخ اعلام شده به داوران تحویل دهند. تیمها می توانند در طول مدت پیاده سازی کد، برنامه ها را به داوران ارائه دهند و توضیحات لازم را دریافت کنند اما پس از اتمام مهلت ارسال کد، این برنامه ها از نظر داوران غیراستاندارد باشند تیم از دور مسابقه حذف میشود. مسابقه طی دو مرحله در صبح و عصر برگزار میشود.

مرحله مقدماتی
در مرحله نخست، کلیه تیم های شرکت کننده با قرعه کشی در چند گروه تقسیم میشوند. در این مرحله هر تیم، برنامه سایر تیم های هم گروهش را در اختیار می گیرد تا در فرصت مسابقه، خروجی این برنامه ها را حدس بزند. در پایان این مرحله، تیمی که خروجی برنامه اش توسط تیم های کمتری کشف شود تیم برنده گروه است. در بین تیم هایی که برنامه هایشان از این نظر امتیاز مساوی دارند تیمی برنده است که تعداد کد بیشتری را شکافته باشد! و در صورت مساوی بودن تعداد مسائل حل شده، تیمی برنده است که مجموع زمان حل مسائلش کمتر باشد. در مدت مسابقه، هر تیمی که خروجی یک برنامه را حدس بزند باید حدسش را با داور گروه در میان بگذارد تا داور درستی یا نادرستی حدس را اعلام کند. در پایان مرحله نخست مسابقه، تیمهای دارای بیشترین امتیاز از هر گروه به مرحله نهایی راه می یابند. به همین دلیل تیم ها بهتر است در هنگام اعلام خروجی یک برنامه دقت کنند زیرا به ازای هر حدس نادرست، مجموع زمان حل مسائلشان ده دقیقه افزوده میشود! پس از پایان زمان یک ساعته صرف غذا، نتایج مسابقات صبح اعلام می شود و تیم های برگزیده هر گروه برای شرکت در دور نهایی مسابقه به سالن مسابقه باز میگردند.

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

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

مسابقه کدنویسی مبهم (Spaghetti Contest)
هدف از مسابقه کدنویسی مبهم، تخمین مهارت شرکت‌کنندگان در نوشتن کدهای ناخوانا یا در اصطلاح برنامه‌نویسان همان کد کثیف (Dirty Code) است. یک برنامه را هنگامی ناخوانا می‌نامیم که اگر کد برنامه در اختیار برنامه‌نویس دیگر قرار دهیم و او معنای تک‌تک دستورات برنامه را بداند، شیوه کنار هم چیده شدن دستورات و پرش‌های تودرتوی میان آنها به‌حدی پیچیده و گیج‌کننده باشد که برنامه‌نویس بدون اجرای این برنامه، نتواند سردر آورد که خروجی برنامه چیست.

بیست‌ودومین کنفرانس ملی کامپیوتر ایران 21 لغایت 23 اسفندماه جاری در دانشگاه صنعتی شریف برگزار می‌شود. علاقمندان می‌توانند جهت کسب اطلاعات بیشتر و ثبت‌نام، به سایت رسمی کنفرانس به نشانی http://csicc2017.ir مراجعه و یا با دبیرخانه این کنفرانس به شماره تلفن 16-66083015 تماس حاصل کنند.

مرتبط ها
نظرات
حداکثر تعداد کاراکتر نظر 200 ميياشد
نظراتی که حاوی توهین یا افترا به اشخاص، قومیت‌ها، عقاید دیگران باشد و یا با قوانین جمهوری اسلامی ایران و آموزه‌های دینی مغایرت داشته باشد منتشر نخواهد شد - لطفاً نظرات خود را با حروف فارسی تایپ کنید
تورهای مسافرتی آفری
بازگشت دوباره به استقلال؟
تکلیف حضور گل محمدی و فرهاد مجیدی در تراکتورسازی مشخص شد
سرمربی پرسپولیس پیشنهاد جدید دریافت کرد
درحمله به پایگاه نظامی عراق شرکت نکردیم
کرایه‌های حمل و نقل عمومی افزایش یافت
نخستین واکنش آمریکا به انفجار بزرگ در پایگاه حشدالشعبی عراق
زمان شارژ سهمیه بنزین اردیبهشت مشخص شد
آمریکا موشک‌های پدافندی اسرائیل را شارژ کرد
شایع‌ترین نشانه‌های وسواس
سامانه بارشی جدید در راه کشور
ریچارد هاس: ایران می‌تواند تنگه هرمز را ببندد
روایت چتم‌هاوس از موفقیت راهبردی ایران در حمله به اسرائیل
معاریو: ایران، روز قیامت را به اسرائیل نشان داد
قتل زن میانسال به دست دختر ۱۱ ساله
یک عادت مهم برای کاهش استرس و سلامت قلب
گفت و شنود/ به تو مربوط نیست!
صفحه نخست روزنامه‌های اول اردیبهشت
خانه سست عنکبوت/ فعالان دانشجویی در خصوص پیامدهای عملیات «وعده صادق» چه می‌گویند؟
وعده صادق ابرقدرت
بعضی القاب، صفات انحصاری صهیونیست‌هاست
لیبرمن: در مسیر پیروزی نیستیم
نظرسنجی
بنظر شما باتوجه به حوادث اخیر فلسطین چقدر احتمال فروپاشی رژیم صهیونیستی وجود دارد؟




مشاهده نتایج
go to top