هفته 1 سفر یادگیری C ++ من: ساختن یک پایه قوی

این هفته شروع سفر من به تسلط C ++ است. من به عنوان یک دانشجوی مهندسی سال اول ، تصمیم گرفتم روی بهبود مهارت های برنامه نویسی خود تمرکز کنم و خودم را برای چالش هایی مانند هکاتون ها و کارآموزی آماده کنم. طی چند ماه آینده ، من با اصول اصلی C ++ با موضوعات اصلی در برنامه نویسی روبرو خواهم شد.
روز 1: تسلط بر اصول C ++
سفر C ++ خود را با غواصی به اصول اولیه آغاز کردم:
-
ورودی/خروجی با استفاده از
cin
وتcout
برای تعامل با کاربر. - متغیرها و انواع داده ها مانند عدد صحیح ، شناور ، شخصیت ها و بول ها.
- عملگر مانند اپراتورهای حسابی ، رابطه ای و منطقی برای دستکاری و مقایسه داده ها.
تمرین کلیدی:
- نوشتن یک برنامه برای محاسبه منطقه مستطیل.
- تعویض اعداد با استفاده از یک متغیر موقتی.
- بررسی اینکه آیا یک عدد یکنواخت یا عجیب است.
روز 2: جریان کنترل – تصمیم گیری
در روز 2 ، من مقابله کردم جریان کنترل مفاهیم ، که برای تصمیم گیری در یک برنامه ضروری هستند:
- if-else و سوئیچ بیانیه هایی برای کنترل جریان بر اساس شرایط.
- اپراتورهای مشروط برای تصمیم گیری کوتاه
تمرین کلیدی:
- برنامه ای برای بررسی اینکه آیا یک سال یک سال جهش است ، ایجاد کرد.
- با استفاده از یک ماشین حساب ساده محور منو ساخته شده است
switch-case
بشر - برنامه ای را برای تعیین نمره دانش آموز بر اساس نمره خود اجرا کرد.
روز 3: حلقه ها – تکرار آسان
روز 3 همه چیز بود حلقه، که برای کارهای تکراری اساسی هستند:
- برای ، در حالی که ، و انجام می شود حلقه ها برای اجرای چندین بار کد.
- حلقه های تو در تو برای مقابله با الگوهای و عملیات پیچیده تر.
- شکستن و ادامه بیانیه هایی برای کنترل اجرای حلقه.
تمرین کلیدی:
- یک جدول ضرب با استفاده از a
for
حلقه - برنامه ای را برای بررسی اینکه آیا شماره اصلی است ، اجرا کرد.
- یک برنامه توالی فیبوناچی با استفاده از یک حلقه ایجاد کرد.
روز چهارم: توابع – سازماندهی کد
من با تمرکز روی یادگیری خود را ادامه دادم توابع، که برای ساختار کد به روش ماژولار بسیار مهم هستند:
- اعلامیه و تعریف عملکرد برای استفاده مجدد از کد
- عبور بر اساس مقدار در مقابل پاس توسط مرجع برای مدیریت استدلال های عملکرد.
- توابع بازگشتی برای حل مشکلاتی مانند فاکتوریل ها.
تمرین کلیدی:
- یک تابع بازگشتی برای محاسبه فاکتوریل ها ساخته است.
- یک تابع ایجاد کرده است تا بررسی کند که آیا یک شماره Palindrome است.
- بارگذاری بیش از حد عملکرد برای رسیدگی به چندین عملیات.
روز 5: آرایه ها – جمع آوری مجموعه داده ها
روز 5 من را به آرایه، که برای کار با مجموعه داده ها ضروری است:
- آرایه های یک بعدی برای ذخیره داده ها در یک دنباله.
- عملیات اساسی آرایه مانند درج ، حذف و جستجو.
- آرایه های چند بعدی به عنوان مقدمه ای برای دست زدن به ماتریس.
تمرین کلیدی:
- برنامه ای را برای یافتن بزرگترین عنصر در یک آرایه نوشت.
- یک آرایه را معکوس کرد و کپی ها را از یک آرایه مرتب شده حذف کرد.
- برنامه ای را برای انجام نوع حباب اجرا کرد.
روز ششم: روز بررسی و تمرین
تا پایان هفته ، یک روز را به بررسی و تحکیم هرچه آموخته بودم این یک فرصت عالی برای شناسایی مناطقی بود که من برای تقویت و تمرین مشکلات پیچیده تر لازم داشتم.
تمرین کلیدی:
- مشکلات الگوی حل شده مانند نیمه پیرامیدها و الگوهای شماره برای تیز کردن مهارت های حل مسئله من.
- روی بهینه سازی کد کار کرده و پیچیدگی زمان راه حل های من را بررسی می کند.
روز 7: غواصی به نشانگرها
من هفته را با غواصی به داخل پیچیدم نشانگرها، یک مفهوم مهم برای مدیریت حافظه در C ++:
- حسابی برای دستکاری آدرس های حافظه.
-
تخصیص حافظه پویا با استفاده از
new
وتdelete
برای مدیریت کارآمد حافظه. - نشانگرها به توابع برای تصویب توابع به عنوان آرگومان.
تمرین کلیدی:
- اعداد را با استفاده از نشانگرها مبادله کرد.
- با استفاده از نشانگرها یک لیست مرتبط ایجاد کرد.
- برنامه ای را برای تخصیص پویا حافظه برای آرایه ها اجرا کرد.
آنچه من این هفته آموختم:
- قدرت تمرین: برنامه نویسی دستی به من کمک کرد تا درک خود را از مفاهیم محکم کنم و مهارت های حل مسئله را بهبود ببخشم.
- ثبات مهم است: فداکاری هر روز به تسلط بر مباحث مختلف به من کمک کرد تا در مسیر بمانم و پیشرفت پایدار داشته باشم.
- مفاهیم بنیادی: تسلط بر اصول اولیه مانند ورودی/خروجی ، اپراتورها و حلقه ها برای پیشبرد موضوعات پیچیده تر مانند توابع ، آرایه ها و نشانگرها ضروری است.
مراحل بعدی:
هفته آینده ، من روی موضوعات پیشرفته تری مانند مدیریت حافظه پویا ، ساختارها و کار با الگوریتم های پیچیده تر تمرکز می کنم.
افکار نهایی:
C ++ ممکن است یک منحنی یادگیری شیب دار داشته باشد ، اما روند تجزیه موضوعات پیچیده به قطعات قابل کنترل ، آن را به یک چالش لذت بخش تبدیل کرده است. من مشتاقانه منتظر مراحل بعدی در این سفر هستم!
به من اطلاع دهید که شما چه فکر می کنید! تجربیات یادگیری C ++ خود را در نظرات زیر به اشتراک بگذارید.