الگوریتمستان

برنامه‌نویسی، طراحی الگوریتم و حل مسئله‌های الگوریتمی

 
در صورت ناخوانا بودن نوشته‌ها، از مرورگر دیگری استفاده کنید.
نوشته‌ها با برچسب برنامه‌نویسی ++C نوشته‌ها با برچسب برنامه‌نویسی ++C - الگوریتمستان الگوریتمستان الگوریتمستان
نوشته‌ها با برچسب «

برنامه‌نویسی ++C

»

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

پیش از شروع بحث دو مطلب مهم را یادآوری می‌کنم:

1- تک تک بایت‌های حافظه برای خود آدرسی دارند که یک عدد صحیح و مثبت است. این آدرس دقیقا مانند کد پستی عمل می‌کند. یعنی کاملا منحصربفرد بوده و می‌توان از آن برای ارجاع به بایت استفاده کرد.

ادامه ...

یکی از امکانات جالب و مفید زبان ++C قالب‌ها (Templates) هستند که انعطاف زیادی به کدنویسی می‌دهند.

فرض کنید در یک برنامه نیاز به تعویض مقادیر دو متغیر هست. یعنی مثلا می‌خواهیم مقادیر a و b را با هم عوض کنیم. اگر a و b از نوع صحیح باشند، تابع جابجایی می‌تواند به این صورت باشد:

  

void swap(int &a, int &b){
  int temp;
  temp = a;
  a = b;
  b = temp;
}

  

ادامه ...

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

  

type name[number of elements];

  

که در آن type یکی از انواع داده‌های استاندارد ++C، ساختمان و یا کلاس است. number of elements هم تعداد اعضا یا عناصر آرایه را مشخص می‌کند که باید عدد ثابتی باشد. مثلا عبارت زیر یک آرایه‌ی 10 عضوی از اعداد اعشاری به نام arr تعریف می‌کند:

ادامه ...

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

هر زبانی عموما شامل چندین نوع حلقه‌ی تکرار است که هر کدام به نحوی به برنامه‌نویس در نوشتن کدهای مختصر و با مفهوم کمک می‌کنند. در این فرصت با انواع حلقه‌های تکرار در زبان برنامه‌نویسی ++C آشنا می‌شویم.

  

حلقه‌ی تکرار while

این نوع حلقه ساده‌ترین نوع حلقه‌ی تکرار در این زبان برنامه‌نویسی است. فرم کلی حلقه‌ی while به این صورت است:

ادامه ...

الگوریتمستان در تلگرام

   

 

پیوند کوتاه:
برچسب‌ها
#سوالات مسابقات ACM-ICPC #Python #مسئله‌های الگوریتمی #حل سوالات مسابقات برنامه‌نویسی #حل سوالات Timus Online Judge #گراف #محاسبات ریاضی #آموزش الگوریتم #جستجوی اول عمق #صف #الگوریتم‌های کوتاهترین مسیر #حل سوالات UVa Online Judge #نکات برنامه‌نویسی #تمرین مسابقه برنامه‌نویسی #جستجوی اول سطح #ساختمان داده #الگوریتم‌های حریصانه #ترجمه‌ی فارسی سوالات ACM #نمونه سوال فارسی مسابقات ACM #مسابقات برنامه‌نویسی #درخت پوشا #تمرین طراحی الگوریتم #وبلاگ #حل مسئله‌‌ی الگوریتمی #برنامه‌نویسی ++C #مسابقه برنامه‌نویسی #حل سوالات ACM-ICPC #مسئله‌های برنامه‌نویسی #پیمایش گراف #آمادگی مسابقه ACM #آموزش طراحی الگوریتم #الگوریتم‌های بازگشتی #تمرین المپیاد کامپیوتر #نمونه سوال فارسی مسابقه‌ی ACM #نمونه سوالات مسابقه برنامه‌نویسی #مسابقات برنامه‌نویسی ACM #الگوریتم فلوید-وارشال #دانلود کتاب #کتاب الکترونیکی #ماتریس #ترجمه‌ی فارسی سوالات برنامه‌نویسی #آمادگی المپیاد کامپیوتر #مسابقه برنامه نویسی #الگوریتم‌های مسیریابی #تکنیک‌های طراحی الگوریتم #الگوریتم‌های گراف #مسأله‌های الگوریتمی #برنامه‌نویسی #تمرین مسابقه‌ی برنامه‌نویسی ای‌سی‌ام #آموزش برنامه‌نویسی ++C #ویدئوی آموزشی #آمادگی مسابقه برنامه‌نویسی #نمونه سوال فارسی مسابقات برنامه‌نویسی #نمونه سوال مسابقه ACM #ترجمه فارسی سوالات کتاب Programming Challenges #کتاب الگوریتم #کتابخانه قالب استاندارد ++C #سوالات مسابقات برنامه‌نویسی بیان #مسأله‌های برنامه‌نویسی #مسئله‌ی کوله‌پشتی #معرفی وب‌سایت #درخت‌ها #الگوریتم‌های تقسیم و غلبه #ترجمه‌ی فارسی سوالات UVa Online Judge #الگوریتم‌های عقبگرد #سوالات UVa Online Judge #کتاب مسابقات برنامه‌نویسی #الگوریتم‌های مرتب‌سازی #سوالات چالشی برنامه‌نویسی #منبع آموزشی #الگوریتم‌های برنامه‌نویسی پویا #سوالات برنامه‌نویسی #الگوریتم دایکسترا #آموزش ساختمان داده‌ها #الگوریتم