بعد از این درس چه کاری میتوانی انجام بدهی؟
- g++ فایل cpp را کامپایل و لینک میکند و iostream خروجی type-safe میدهد.
- کد را اجرا و نتیجه را پیشبینی کنی
- یک تغییر کوچک بدهی و اثرش را توضیح بدهی
- خطای واقعی درس را بخوانی و برطرف کنی
C++ را ساده بفهم
C++ مالکیت و عمر منابع را با نوعها و RAII روشن میکند؛ طراحی درست جلوی بسیاری از خطاها را پیش از اجرا میگیرد.
اگر برنامه اجرا نشد، از آخرین خط پیام خطا شروع کن؛ نام فایل و شماره خط معمولاً نزدیکترین سرنخاند.
چرا مهم است؟ g++ فایل cpp را کامپایل و لینک میکند و iostream خروجی type-safe میدهد.
اولین تمرین تو: count را 3 کن و با -Wall -Wextra دوباره بساز. قبل از اجرا، خروجی تازه را در یک جمله بنویس.
این درس را از چهار زاویه بفهم
قرار نیست چیزی را حفظ کنی. یک مفهوم را با چند تعبیر میبینی تا بالاخره تصویر ذهنی روشن خودت را بسازی.
خیلی ساده
C++ زبانی برای تبدیل فکر به دستورهای دقیق است. برنامه یک ورودی میگیرد، کاری روی آن انجام میدهد و نتیجهای قابل مشاهده میسازد.
تشبیه اول: دستور کار
کد مثل دستور کار یک همکار دقیق است: ترتیب مهم است، نامها باید روشن باشند و هر مرحله باید نتیجه مشخصی داشته باشد.
تشبیه دوم: خط تولید
داده وارد خط میشود، چند ایستگاه آن را تغییر میدهند و خروجی بیرون میآید. با بررسی هر ایستگاه میتوانیم خطا را پیدا کنیم.
مدل فنی
در مدل فنی، کد منبع پیش از اجرا ترجمه یا کامپایل میشود. خطای نحوی یعنی مترجم نتوانسته ساختار نوشته را بفهمد.
ورودی
چه دادهای وارد میشود؟ نام، عدد، کلیک یا درخواست؟
پردازش
برنامه چه قانون یا محاسبهای را اجرا میکند؟
خروجی
چه نتیجهای باید ببینی و چطور درستی آن را میسنجی؟
هر خط دقیقاً چه کاری انجام میدهد؟
از بالا به پایین بخوان. ابتدا توضیح را ببین، سپس همان خط را در کارگاه پایین صفحه تغییر بده.
#include <iostream>ابزار یا کتابخانهای را که در ادامه لازم داریم وارد برنامه میکند.
int main(){ int price=180000,count=2; std::cout<<price*count<<'\n'; }این بخش نقطه شروع اجرای برنامه را مشخص میکند.
کلمههایی که نباید گنگ بمانند
کد
متنی با قواعد مشخص که کار مورد انتظار را برای کامپیوتر توضیح میدهد.
نحو یا Syntax
دستور زبان کد؛ مثل جای درست کلمات و نشانهها در یک جمله.
متغیر
یک نام خوانا برای نگهداشتن مقداری که بعداً لازم داریم.
خروجی
نتیجه قابل مشاهدهای که برای بررسی برنامه بیرون میآید.
سه «چرا»ی مهم درس اول
چرا کامپیوتر خودش منظور من را حدس نمیزند؟
چون برنامه بر اساس دستورهای دقیق و قابل تکرار کار میکند. این دقت باعث میشود همان ورودی، نتیجهای پیشبینیپذیر بسازد. ابهام برای گفتوگوی انسانی طبیعی است، اما در کد باید تصمیمها را روشن بنویسیم.
چرا از برنامهای به این کوچکی شروع میکنیم؟
در نمونه کوچک، رابطهٔ علت و نتیجه واضح است. اگر فقط یک مقدار را تغییر بدهی، دقیقاً میفهمی چرا خروجی عوض شده؛ بعد همین فهم را به پروژههای بزرگ منتقل میکنی.
اگر خطا دیدم یعنی برای برنامهنویسی مناسب نیستم؟
نه. خطا گزارش محیط اجرا دربارهٔ چیزی است که نفهمیده یا نتوانسته انجام دهد. خط اول پیام، شماره خط و آخرین تغییری که دادهای سه سرنخ اصلی تو هستند.
از مشاهده تا نوشتن مستقل
هر مرحله فقط کمی سختتر از مرحله قبل است؛ لازم نیست یکباره همهچیز را بلد باشی.
خروجی را حدس بزن
بدون اجرا، نتیجه نمونه را روی کاغذ بنویس. سپس آن را با نتیجه کارگاه مقایسه کن.
یک داده را تغییر بده
فقط نام یا عدد را عوض کن. توضیح بده کدام بخش خروجی باید تغییر کند و کدام بخش ثابت میماند.
یک خروجی تازه بساز
یک داده جدید مثل شهر یا هدف یادگیری بساز و با همان الگوی ساده آن را نمایش بده.
معیار موفقیت: عدد 360000 چاپ میشود.
از یک مثال کوچک شروع کن
g++ فایل cpp را کامپایل و لینک میکند و iostream خروجی type-safe میدهد. کد زیر را در فایل «main.cpp» خودت تایپ و اجرا کن. بعد خروجی را با انتظار درس مقایسه کن.
۱. نمونه را اجرا کن
پیش از اجرا خروجی را حدس بزن و سپس تفاوت را یادداشت کن.
۲. کد را تغییر بده
count را 3 کن و با -Wall -Wextra دوباره بساز.
۳. خطا را عمداً بساز
جاانداختن ; خطای compiler با شماره خط میدهد. متن خطا و شماره خط را بخوان، علت را پیدا کن و فقط همان بخش را اصلاح کن.
اگر برنامه اجرا نشد، از آخرین خط پیام خطا شروع کن؛ نام فایل و شماره خط معمولاً نزدیکترین سرنخاند.
سه قطعهای که باید بفهمی
کامپایل و اولین برنامه C++
g++ فایل cpp را کامپایل و لینک میکند و iostream خروجی type-safe میدهد.
نتیجه قابل مشاهده
عدد 360000 چاپ میشود.
خطایی که باید بشناسی
جاانداختن ; خطای compiler با شماره خط میدهد.
میخواهی مبلغ دو کتاب را حساب و ابزار build را امتحان کنی.
فرض کن میخواهی مبلغ دو کتاب را حساب و ابزار build را امتحان کنی. فعلاً قرار نیست کل برنامه را بسازیم؛ فقط همین نیاز را با چند خط کد حل میکنیم تا معلوم باشد هر خط چه کاری انجام میدهد.
بررسی ساختار تمرین
این صفحه کامپایلر کامل C++ نیست؛ ساختار تمرین را صادقانه بررسی میکند و خروجی مورد انتظار را نشان میدهد. برای اجرای کامل به محیط رسمی همان زبان نیاز است.
یک بخش را تغییر بده و دکمه بررسی را بزن.
راهنماییها مرحلهای هستند؛ اول خودت پیام خطا را بخوان.
count را 3 کن و با -Wall -Wextra دوباره بساز. قبل از اجرا، خروجی تازه را در یک جمله بنویس.
این سه اشتباه را انجام نده
جاانداختن ; خطای compiler با شماره خط میدهد.
کپیکردن کد بدون اجرای مرحلهبهمرحله
تغییر چند قسمت همزمان و گمشدن علت نتیجه
با 5 سؤال مطمئن شو که مفهوم را گرفتهای
خروجی درست این نمونه چیست؟
چرا پیش از اجرا نتیجه را حدس میزنیم؟
سرنخ خطای این درس چیست؟
بعد از تغییر کد چه کنیم؟
چه وقت آماده درس بعدی هستی؟
فهمیدی، تغییر دادی، نتیجه را توضیح دادی؟
فقط در این صورت درس را کامل کن و سراغ مرحله بعد برو.