بر پایه جزوهٔ واقعی ++C
آموزش گامبهگام ### به زبان فارسی
از اولین برنامه شروع کن و مبحثبهمبحث جلو برو. هر مبحث با فلوچارت، کد استاندارد و تمرین عملی همراه است؛ برای مرور هم شب امتحانی و فلشکارت هست. تا آخر دوره، به اشارهگرها و توابع بازگشتی میرسی.
1// یادگیری C++ از صفر، قدمبهقدم2#include <iostream>34int main() {5 int knowledge = 0;6 while (learning) {7 knowledge++; // هر روز یک درس8 }9}
سرفصلهای دوره
مبانی و مقدمات
الگوریتم، فلوچارت، متغیرها، انواع داده، عملگرها، کاراکترها و ASCII، عملگرهای مقایسهای و منطقی، if/else، switch و حلقه for — از صفر برای تازهکارها.
حلقهها و کنترل جریان
حلقههای for و while، تمرینهای عملی، فاکتوریل، اعداد اول، فیبوناچی، کار با ارقام عدد و محاسبات پیشرفته ریاضی.
آرایهها و رشتهها
آرایههای یکبعدی و دوبعدی، هیستوگرام، رشتهها در C++، الگوهای نجومی، مرتبسازی و توابع کتابخانهای رشته.
گرافیک و ماتریس
مقدمه گرافیک در C++، رسم اشکال و چندضلعیها، و عملیات ماتریسی شامل ضرب، ماتریس مثلثی و اعداد تصادفی.
توابع و اشارهگرها
تعریف و فراخوانی توابع، ارجاع، ارسال آرایه به تابع، اشارهگرها، حافظه پویا، struct و توابع بازگشتی.
نقشه راه دوره
۰٪ تکمیل شده- ۱مبانی و مقدمات۱۰ درسادامه از اینجاست
الگوریتم، فلوچارت، متغیرها، انواع داده، عملگرها، کاراکترها و ASCII، عملگرهای مقایسهای و منطقی، if/else، switch و حلقه for — از صفر برای تازهکارها.
درس بعدی: الگوریتم و فلوچارت چیست؟
۰٪ - ۲حلقهها و کنترل جریان۶ درس
حلقههای for و while، تمرینهای عملی، فاکتوریل، اعداد اول، فیبوناچی، کار با ارقام عدد و محاسبات پیشرفته ریاضی.
درس بعدی: مرور حلقه for و معرفی while
۰٪ - ۳آرایهها و رشتهها۶ درس
آرایههای یکبعدی و دوبعدی، هیستوگرام، رشتهها در C++، الگوهای نجومی، مرتبسازی و توابع کتابخانهای رشته.
درس بعدی: آرایههای یکبعدی
۰٪ - ۴گرافیک و ماتریس۳ درس
مقدمه گرافیک در C++، رسم اشکال و چندضلعیها، و عملیات ماتریسی شامل ضرب، ماتریس مثلثی و اعداد تصادفی.
درس بعدی: مقدمه گرافیک در C++
۰٪ - ۵توابع و اشارهگرها۵ درس
تعریف و فراخوانی توابع، ارجاع، ارسال آرایه به تابع، اشارهگرها، حافظه پویا، struct و توابع بازگشتی.
درس بعدی: توابع: تعریف، فراخوانی و مثالها
۰٪
همه دروس
الگوریتم و فلوچارت چیست؟
قدم به قدم با اولین زبان مشترک انسان و کامپیوتر
متغیرها و انواع داده
جعبههای حافظه، انواع داده و چرایی مقداردهی اولیه
اولین برنامه C++
ساختار برنامه، Hello World، cout و cin، کامنتها و کامپایل
عملگرها و عبارات
از جمع و تفریق تا تقسیم اعشاری، باقیمانده و ترجمه فرمولهای ریاضی به کد C++
عملگرهای افزایش و انتساب مرکب
از ++ و -- تا +=، -=، *=، /=، %=: نوشتن خلاصهتر و خواناتر برای شمارش و انباشت
کاراکترها و کدهای ASCII
از نوع char تا کدهای اسکی، تبدیل حروف بزرگ/کوچک و خواندن کلید بدون Enter با getch
عملگرهای مقایسهای و دستور if
از == تا if/else: اولین گام در مسیر تصمیمگیری در برنامه
عملگرهای منطقی و if تودرتو
ترکیب شرطها با &&، || و ! و ساختاربندی تصمیمات پیچیده
دستور switch و case
ساختار تمیز برای انتخاب چندحالته — از ماشینحساب تا کلیدهای جهتنما
حلقه for — شروع تکرار
اولین قدم در دنیای حلقهها: از چاپ اعداد تا فاکتوریل و شمارش زوج/فرد
مرور حلقه for و معرفی while
از مجموع اعداد تا شمارش ارقام: گام نخست با حلقههای تکرار
تمرینهای عملی حلقه while
از چاپ اعداد شرطی تا ماشین حساب تعاملی و میانگینگیری از اعداد خاص
فاکتوریل، اعداد اول و فیبوناچی
سه الگوریتم کلاسیک که هر برنامهنویسی باید بداند
کار با ارقام عدد: مجموع، معکوس و پالیندروم
تکنیکهای کلاسیک پردازش ارقام با عملگرهای % و /
محاسبات پیشرفته: π، sin، cos و ب.م.م
سریهای نامتناهی لایبنیتس و تیلور، الگوریتم اقلیدسی و تجزیه اول
حلقههای تودرتو و الگوهای نجومی
رسم مثلث، مربع، لوزی، ضربدری و صلیب با ستارهها به کمک حلقههای تودرتو
آرایههای یکبعدی
تعریف، مقداردهی، پیمایش، یافتن ماکزیمم و شمارش تکرارها در آرایه
هیستوگرام و آرایههای کاراکتری
رسم نمودار ستونی با ستاره، شمارش اعداد بزرگتر از قبلی و معرفی آرایه کاراکتری
رشتهها (string) در C++
std::string، cin در برابر getline، شمارش کلمات، تبدیل حروف، یافتن زیررشته و استخراج اعداد
آرایههای دوبعدی
ماتریس، قطر اصلی و فرعی، پیمایش و الگوهای مثلثی
مرتبسازی: Bubble Sort و Selection Sort
دو الگوریتم کلاسیک مرتبسازی آرایهها به همراه پیادهسازی صحیح و تحلیل پیچیدگی
توابع کتابخانهای رشته C (string.h)
آشنایی با strlen، strcpy، strcat و strcmp به همراه اصلاح اشتباهات رایج جزوه
مقدمه گرافیک در C++
آشنایی با کتابخانه graphics.h، سیستم مختصات، رنگها و رسم دایره از روی قطر
رسم اشکال و چندضلعیها
دایره محاطی، تقسیم مثلث، چندضلعی منتظم، دایرههای تصادفی و هممرکز
ماتریسها و عملیات ماتریسی
پیمایش، ضرب، یافتن ماکزیمم سطر، ماتریس مثلثی و تولید تصادفی
توابع: تعریف، فراخوانی و مثالها
از مفهوم تابع تا پیادهسازی فاکتوریل، عدد اول و ترکیب
ارجاع، ارسال آرایه به تابع و معکوس رشته
متغیرهای ارجاعی، تابع swap و ارسال آرایههای یک و دو بُعدی
اشارهگرها و حافظه پویا
از مفهوم اشارهگر تا تخصیص پویا و اشارهگر به اشارهگر
struct و ساختارها
گروهبندی دادهها، آرایه ساختارها و توابع عضو
توابع بازگشتی (Recursion)
از فاکتوریل تا فیبوناچی، توان و مجموع — با تحلیل پشته
یک نگاه به محتوای دوره
// شمارش تعداد ارقام یک عدد
int n, count = 0;
cin >> n;
while (n > 0) {
n = n / 10;
count++;
}
cout << count;// فاکتوریل با بازگشت
long long fact(int n) {
if (n <= 1) return 1; // شرط پایه
return n * fact(n - 1); // بازگشت
}// آرایه پویا با new/delete
int* arr = new int[n];
for (int i = 0; i < n; i++)
cin >> arr[i];
delete[] arr; // آزادسازی// جابجایی با ارجاع
void swap(int& a, int& b) {
int t = a;
a = b;
b = t;
}سوالات متداول
این دوره برای چه سطحی مناسب است؟
آیا برای استفاده از این دوره نیاز به نصب نرمافزار خاصی دارم؟
آیا پیشرفت من ذخیره میشود؟
چطور میتوانم سریع به درس خاصی بروم؟
میتوانم لینک مستقیم یک درس را به دیگران بدهم؟
آیا کدهای این دوره قابل اعتماد هستند؟
نکات ایمنی C++
درباره این دوره
این دوره بر پایه جزوهای ++C نوشته شده است. اشتباهات کد و توضیحات جزوه اصلاح و کدها به استاندارد مدرن ++C (int main()، #include کامل، مقداردهی اولیهٔ متغیرها و...) بازنویسی شدهاند. هر جا باگ اصلی وجود داشته، نسخهٔ اشتباه و اصلاحشده را کنار هم گذاشتهایم تا تفاوتشان را ببینید. محمد این دوره را آماده کرده است.
اولین برنامهات را همینجا بنویس
نه نصبی لازم است، نه ثبتنام — اولین درس همین حالا توی مرورگر شما باز میشود.
از درس اول شروع کن