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

1- شناسنامه درس:

1-1- مدرس:

دکتر علی کمندی

2-1- مقطع درس:

کارشناسی

1-1- رایانامه مدرس:

kamandi@ut.ac.ir

2- مشخصات درس:

1-2- تعداد واحد:

3 واحد

2-2- پیش‌نیاز:

ندارد

3-2- اهداف آموزشی درس:

هدف از این درس آشنایی دانشجویان با روش های حل مساله و نحوه طراحی الگوریتم های کامپیوتری و نیز نحوه برنامه نویسی با زبان C++ است.

4-2- مراجع درس:

برنامه نویسی به زبان C++، تالیف دکتر علی کمندی و دکتر علی معینی، 1399. نسخه آنلاین این کتاب را می توانید از این آدرس مشاهده نمایید.

5-2- سایر مراجع:

Paul Deitel and Harvey Deitel, C++ How to Program, 10th ed., Pearson, 2017

3- نمره‌بندی درس:

عنوان بخش درصد نمره
تکالیف 50%
امتحانک‌ها 50%
امتحان میان‌ترم 0% (به دلیل شرایط کرونایی)
امتحان میان‌ترم 0% (به دلیل شرایط کرونایی)
پروژه 0% (به دلیل شرایط کرونایی)

 

4- محتوای درس:

  سرفصل محتوا مرجع پیوندها
حل مسئله و برنامه نویسی آشنایی با روشهای حل مسئله، آَشنایی با کلیات زبان C++، آشنایی با فرایند کامپایل برنامه، آشنایی با انواع خطا فصل 1 کتاب -
دستورات پایه و شرطی آشنایی با متغیرها، عبارات ریاضی و مقایسه ای، دستور جایگزینی و دستور شرطی if فصل 2 کتاب -
حلقه های تکرار آشنایی با حلقه تکرار while، آشنایی با ترکیب حلقه ها و دستورات شرطی، حلقه های تودرتو، حلقه for فصل 3 کتاب -
تابع آشنایی با طراحی بالا به پایین و مفهوم تابع، تمایز بین پارامترهای مقداری و عطفی، استفاده مجدد از تابع، متغیرهای محلی فصل 4 کتاب -
آرایه های یک بعدی نحوه تعریف و دریافت عناصر یک آرایه، نحوه دسترسی به یک عنصر، توانایی ارسال آرایه به عنوان پارامتر تابع فصل 5 کتاب -
توابع بازگشتی (خودفراخوان)  آشنایی با شیوه حل مسئله به کمک رابطه بازگشتی، آشنایی با توابع خودفراخوان، شناخت حالت پایه و بازگشتی فصل 6 کتاب -
مباحث تکمیلی دامنه متغیرها، محدوده مجاز اعداد، عملگرهای تکمیلی C++، نوع داده شمارشی، رکورد، دستور switch، حلقه do-while  و دستورات break و continue فصل 7 کتاب -
آرایه دوبعدی تعریف آرایه دو بعدی، دسترسی به عناصر آرایه دو بعدی، مقداردهی اولیه به عناصر، پردازش سطری و ستونی عناصر آرایه دو بعدی، ارسال آرایه دو بعدی به توابع فصل 8 کتاب -
فایل ها آشنایی با فایل های متنی، نحوه نوشتن اطلاعات در فایل متنی، خواندن اطلاعات از فایل متنی فصل 9 کتاب -
10  کلاس و شئ گرایی آشنایی با مفهوم مدلسازی، آَشنایی با مدلسازی شئ گرا، آشنایی با نحوه تعریف کلاس در ++C، آشنایی با تعریف مشخصه ها و توابع عضو کلاس، سازمان دهی کد یک کلاس در دو فایل توصیف و پیاده سازی  فصل 10 کتاب -
11  اشاره گرها تعریف متغیر از نوع اشاره گر، دسترسی به متغیرها از طریق اشاره­گر، ایجاد داده های پویا و دسترسی به آن ها، حذف داده پویا فصل 11 کتاب -

 

5- تقویم درس:

هفته شنبه یکشنبه دوشنبه سه‌شنبه چهارشنبه
1 -   - درس 1 -
2 - جشن ورودی‌های جدید - درس 2 -
3 تحویل تکلیف سری 1 درس 2 - درس 3 امتحانک 1
4 تحویل تکلیف سری 2 درس 3 - درس 3 -
5 تحویل تکلیف سری 3 درس 4 - درس 4 امتحانک 2
6 تحویل تکلیف سری 4 درس 5 - درس 5 -
7 تحویل تکلیف سری 5 درس 6 - درس 6 امتحانک 3
8 تحویل تکلیف سری 6 درس 7 - درس 7 -
9 تحویل تکلیف سری 7 درس 8 - درس 8 امتحانک 4
10 تحویل تکلیف سری 8 درس 9 - درس 9 -
11 تحویل تکلیف سری 9 درس 10 - درس 10 امتحانک 5
12 تحویل تکلیف سری 10 درس 11 - درس 11 -
13 تحویل تکلیف سری 11 - - - امتحانک 6
14 - - - - -
15 - - - - -
16 - - - - -

 

6- سایر اطلاعات درس:

1-6- تکالیف:

کلیه تکالیف از طریق این سایت تعریف و تحویل گرفته می شود.

2-6- ویدیوهای درس:

کلیه فیلم های درس در انتهای هر فصل کتاب از طریق این آدرس در دسترس است.

3-6- مثال‌های بیشتر برای تمرین:

1- تمرینات آخر فصل کتاب اصلی درس

2- تمرینات آخر فصل های کتاب دایتل

3- مجموعه سوالات موجود در سایت کویرا (برای سوالات سخت تر برنامه نویسی می توانید سوالات بخش مسابقه را حل کنید)