بررسی 0 تا 100 آرایه ها + آموزش آرایه در ++C

نویسنده: رضا حمیدی

آخرین ویرایش : 1 سال قبل

بررسی 0 تا 100 آرایه ها + آموزش آرایه در ++C

در این مطلب از مجموعه مقالات آموزشی سی پلاس پلاس، به آموزش آرایه در ++C می‌پردازیم؛ نحوه تعریف، مقداردهی آرایه در ++c و دسترسی به عناصر آرایه در ++c را در این مقاله از مجموعه آموزش برنامه‌نویسی بررسی می‌کنیم. در برنامه‌نویسی، یکی از مشکلات تکراری، داشتن چندین داده از یک نوع در یک زمینه است.

در نظر بگیرید که 100 نفر را بررسی می‌کنید و باید سن آن‌ها را ذخیره کنید. برای حل این مشکل در ++c می‌توانید یک آرایه از اعداد صحیح با 100 عنصر ایجاد کنید. آرایه مجموعه‌ای از داده‌ها است که حاوی تعدادی مقادیر از یک نوع است.

C++ چیست؟

C++ چیست؟

++ Cیک زبان برنامه‌نویسی با تایپ ایستا، فرم آزاد، (به طور کلی) قابل کامپایل، سطح متوسط، همه کاره و چند پارادایمی است. به زبان ساده، ++C یک زبان برنامه‌نویسی همه منظوره پیچیده و کارآمد است که مبتنی بر C ساخته شده است. زبان سی پلاس پلاس توسط Bjarne Stroustrup در سال 1979 توسعه پیدا کرد. بسیاری از سیستم عامل‌ها، درایورهای سیستم، مرورگرها و بازی‌های امروزی از ++C به عنوان زبان اصلی خود استفاده می‌کنند. این امر زبان ++C را به یکی از محبوب‌ترین زبان‌های امروزی تبدیل کرده است.

این زبان به عنوان نسخه بسط/ بهبود یافته زبان برنامه‌نویسی C در نظر گرفته می‌شود، بنابراینC و ++C اغلب به عنوان ++C/Cیکپارچه شناخته می‌شوند. همچنین برای آموزش این زبان برنامه‌نویسی محبوب می‌توانید به مجموعه آموزشی مداد سبز که بهترین مجموعه آموزش برنامه‌نویسی سی پلاس پلاس را ارائه می‌دهد، مراجعه کنید. این مجموعه با اساتید مجرب این حوزه همکاری می‌کند و به صورت حرفه‌ای و تخصصی آماده ارائه آموزش‌ برنامه نویسی است؛ بنابراین یادگیری آرایه‌ها در C++ را به مجموعه ما بسپارید.

آموزش آرایه در ++C

در این قسمت از آموزش ++c به تعریف کلی آرایه می‌پردازیم. آرایه یک ساختار داده‌ای است که از خانه‌های متوالی از یک نوع تشکیل شده است و می‌تواند چند بعد داشته باشد. یک آرایه از تعدادی خانه در یک ردیف تشکیل شده است که همه آن‌ها از نوع داده خاصی هستند)مثلاً intیاString) و اندازه خاصی هم دارند.

به طور کلی می‌توان گفت که به جای اینکه از متغیرهای با نام مختلف در برنامه‌نویسی بهره ببریم، می‌توانیم از آرایه‌ها برای در نظر گرفتن نام‌های مختلف در یک زبان برنامه‌نویسی استفاده کنیم. آرایه‌ها بر اساس Index یا اندیس کار می‌کنند. به عبارت دیگر، اگر می‌خواهید به یک آرایه مقدار بدهید، باید اندیس را دستکاری کنید. کمترین اندیس همیشه اولین آدرس آرایه و بالاترین اندیس همیشه آخرین آدرس آرایه است.

پردازش آرایه ها در c++

آرایه‌ها را می‌توان مانند متغیرهای عادی تعریف و استفاده کرد. تفاوت آن‌ها در این است که آرایه یک متغیر مرکب است و برای دسترسی به هر خانه از آن باید از ایندکس استفاده کنید.

شیوه اعلان آرایه در c++

برای اعلان یک آرایه باید نوع و تعداد عناصر آن را مشخص کنید. مثال آرایه در ++c:

type arrayName [ arraySize ]؛

این یک آرایه یک بعدی است. arraySize باید یک ثابت از نوع int و باید یک عدد صحیح بزرگتر از 0 باشد. type هم می‌تواند هر نوع داده معتبر در زبان ++C باشد. به عنوان مثال، برای ایجاد یک آرایه 10 عنصری از نوع double named balance، می‌توانید از دستور زیر استفاده کنید:

[10] double balance؛

در کد بالا، balance یک متغیر آرایه است که می‌تواند 10 عضو از نوع داده double را ذخیره کند.

مقداردهی آرایه درc++

در آموزش آرایه‌ها در ++c، چندین روش برای تخصیص مقداردهی به عناصر یک آرایه وجود دارد که یکی از آن‌ها مقداردهی مانند زیر است:

{1000.0، 2.0، 3.4، 7.0، 50.0}؛double balance[5]

تعداد ارقام بین {} بوده و نمی‌تواند بیشتر از تعداد عناصر مشخص شده باشد. در مثال آرایه در ++c، آرایه می‌تواند تا 5 عنصر تعریف شده داشته باشد. اگر اندازه آرایه را حذف کنید، آرایه‌ای ایجاد می‌شود که به اندازه کافی بزرگ است تا مقادیر اولیه را نگه دارد.

اگر اندازه آرایه را هنگام نوشتن مشخص نکنید، اندازه آرایه بر اساس مقداردهی اولیه تنظیم می‌شود؛ بنابراین اگر مثال بالا را به صورت زیر بنویسیم:

{1000.0، 2.0، 3.4، 7.0، 50.0}double balance[] =

اندازه آرایه هنوز 5 است؛ زیرا 5 عنصر در هنگام مقداردهی اولیه مشخص شده است. روش دیگر برای مقداردهی آرایه در ++c استفاده از:

balance[4] = 50.0؛

دستور بالا مقدار عنصر در موقعیت پنجم آرایه را به مقدار 50.0 تنظیم می‌کند. توجه داشته باشید که اندیس‌های آرایه از صفر شروع می‌شوند.

ایندکس بیرون از حدود آرایه

ایندکس بیرون از حدود آرایه

در این قسمت از آموزش آرایه‌ها در c++ به بررسی ایندکس بیرون از حدود آرایه می‌پردازیم. در برخی از زبان‌های برنامه‌نویسی، یک آرایه را نمی‌توان خارج از محدوده‌ای که برای آن تعریف شده است ایندکس کرد. به عنوان مثال، در پاسکال، اگر آرایه a با پنج عنصر تعریف شود و سپس به a[7]  برسد، برنامه از کار خواهد افتاد. این سیستم حفاظتی در ++C وجود ندارد. مثال بعدی نشان می‌دهد که می‌توان به ایندکس آرایه‌ که از عنصر تعریف ‌شده دسترسی داشت و برنامه هم بدون خطا ادامه پیدا خواهد کرد.

ارسال آرایه به تابع

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

تغییر مقادیر آرایه

در این قسمت از آموزش آرایه ها در C++ تغییر مقادیر آرایه را بررسی می‌کنیم. برای مقداردهی آرایه در ++c از مثال زیر پیروی کنید. ابتدا خانه مورد نظر را در آرایه مشخص کرده و مقدار جدید را در جلو آن بنویسید. به این ترتیب مقادیر موجود در آرایه تغییر می‌کند:

#include <iostream>

#include <string>

using namespace std؛

intmain() {

string cars[4] = {“Volvo”، “BMW”، “Ford”، “Mazda”}؛

cars[1] = “Audi”؛

cout<<cars[1]؛

return 0؛

چاپ آرایه با حلقه for

در ابتدای حلقه for، متغیر count روی 1 تنظیم می‌شود. سپس عبارات شرطی بررسی می‌شوند. از آنجایی که count<=num درست است (1 کمتر از 10 است)، بدنه حلقه اجرا می‌شود و مقدار متغیر مجموع برابر با 1 است. متغیر sum مجموع اعداد را نگه می‌دارد. سپس دستور آپدیت ++ countاجرا می‌شود و مقدار متغیرcount  را به 2 افزایش می‌دهد.

عبارت شرطی دوباره بررسی می‌شود و چون 2 کمتر از 10 است، بدنه حلقه دوباره اجرا می‌شود. در این تکرار، مقدار 3sum است. این روند ادامه می‌یابد و مجموع تا زمانی محاسبه می‌شود که مقدار متغیر شمارش به 11 برسد. وقتی تعداد به 11 رسید، شرطی false می‌شود، 0 را برمی گرداند و در نهایت از حلقه خارج می‌شود. در پایان برنامه و بعد از حلقه، مقدار کل متغیر sum روی صفحه چاپ می‌شود.

آرایه بدون سایز اولیه

یک آرایه بدون اندازه اولیه، به این معنی است که شما مجبور نیستید اندازه آرایه را از ابتدا تعیین کنید. همانطور که در کد زیر می‌بینید، من هیچ خطایی دریافت نمی‌کنم؛ زیرا اندازه آرایه را مشخص نکرده‌ام.

string cars[] = {“Volvo”، “BMW”، “Ford”، “Mazda”}؛

در مثال زیر، یک آرایه به اندازه 5 را مشخص کردیم، اما فقط 4 خانه را پر کردیم. این کار هیچ مشکل یا خطایی ایجاد نمی‌کند.

#include <iostream>

#include <string>

using namespace std؛

intmain() {

string cars[5] = {“Volvo”، “BMW”، “Ford”، “Mazda”}؛

for(inti = 0؛ i< 5؛ i++) {

cout<< cars[i] << “\n”؛

}

return 0؛}

تعریف آرایه بدون مقدار

در مثال زیر می‌توانید تعریف آرایه بدون مقدار اولیه را مشاهده کنید. ابتدا آرایه‌ای به اندازه 2 تعریف کرده‌ایم و سپس مقادیر را جدا کردیم. در نهایت آن را در یک حلقه for چاپ کردیم.

#include <iostream>

#include <string>

using namespace std؛

intmain() {

string tv[2]؛

tv[0] = “samsung”؛

tv[1] = “Lg”؛

for(inti = 0؛ i< 2؛ i++) {

cout<<tv[i] << “\n”؛

}

return 0؛}

استفاده از انواع شمارشی در آرایه

در این بخش از آموزش آرایه ها در c++ به استفاده از انواع شمارشی در آرایه می پردازیم. توجه داشته باشید که enum‌ها به صورت اعداد ذخیره می‌شوند. مقدار صحیح SAT 6 است و آرایه باید 7 عنصر داشته باشد؛ بنابراین اندازه آرایه SAT 1 است. متغیر day از نوع int است؛ بنابراین می‌توانید مقدار Day را به آن اختصاص دهید.

استفاده از enums در برخی از برنامه‌ها باعث می‌شود که کد برنامه “خود ارجاع” شود. به عنوان مثال، کنترل حلقه به شکل for(int day = SUN; day <= SAT; day)، مانند مثال، باعث می‌شود که حلقه for بالا به خوبی برای همه بینندگان درک شود.

استفاده از انواع شمارشی در آرایه

آرایه های چند بعدی

آرایه چند بعدی آرایه‌ای است که در آن باید به هر عنصر با استفاده از چند اندیس دسترسی داشت. یک آرایه چند بعدی را می‌توان به عنوان جدولی با تعداد زیادی ستون و ردیف در نظر گرفت. با افزایش اندیس‌ها، اندازه ابعاد آرایه نیز افزایش می‌یابد و یک آرایه چند بعدی با بیش از دو اندیس ایجاد می‌شود. در اینجا مثال مقداردهی آرایه دو بعدی در ++c آورده شده است:

datatype arrayName[lengthX][lengthY];

یک آرایه سه بعدی به صورت زیر ایجاد می‌شود:

datatype arrayName[lengthX][lengthY][lengthZ];

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

سپس نام آرایه و به دنبال آن دو جفت کروشه را وارد کنید. یک آرایه دو بعدی برای دسترسی به هر عنصر به دو مقدار نیاز دارد. یکی مقدار X و دیگری مقدار Y است. مقادیرx  نشان دهنده سطرها و مقادیرY  نشان‌دهنده ستون‌های آرایه است. البته اگر آرایه دو بعدی را به عنوان یک جدول در نظر بگیرید. یک آرایه سه بعدی را می‌توان به عنوان یک مکعب با سه بعد در نظر گرفت که x طول، y عرض و z ارتفاع آن است.

ورود و چاپ آرایه ها

در این بخش مثال‌هایی در زبان برنامه‌نویسی ++C ارائه می‌شود که از سه مفهوم ایجاد آرایه، تخصیص ارزش و دسترسی به آرایه استفاده می‌کنند:

#include <stdio.h>

int main () {

intnumber[10]؛ /* number is an array of 10 integers */

inti = 0؛

/* Initialize elements of array n to 0 */

while( i< 10 ) {

/* Set element at location i to i + 100 */

number[i ] = i + 100؛

i = i + 1؛

 }

/* Output each array element’s value */

i = 0؛

while( i< 10 ) {

printf(“number[%d] = %d\n”، i، number[i] )؛

i = i + 1؛

 }

return 0؛

}

در کد بالا خط 4 برنامه می‌گوید که یک آرایه با 10 عنصر ایجاد می‌شود که همه آن‌ها اعداد صحیح هستند. حلقه while و خط 7 به بعد آرایه را مقداردهی اولیه می‌کنند و خط 11 برنامه نشان می‌دهد که مقدار آرایه از 100 شروع می‌شود. در نهایت در دومین while و خط 17 این برنامه، مقدار نهایی هر عنصر آرایه را ایجاد کرده و در خروجی چاپ می‌کنیم. خروجی برنامه فوق به صورت زیر چاپ می‌شود:

number[0] = 100

number[1] = 101

number[2] = 102

number[3] = 103

number[4] = 104

number[5] = 105

number[6] = 106

number[7] = 107

number[8] = 108

number[9] = 109

خلاصه

در مقاله آموزش آرایه‌ها در ++C به زبان ساده، سعی کردیم تا دستورات اولیه و ضروری برای شروع و تمرین آرایه‌ها در C++ را به شما آموزش دهیم. واضح است که زبان برنامه‌نویسی C++ دامنه بسیار عمیق و گسترده‌ای دارد؛ بنابراین در هیچ پست یا مقاله آموزشی قابل پوشش نیست. این آموزش آرایه‌ها در برنامه‌نویسی ++C، برای مبتدیان و کسانی که فقط نام زبان برنامه‌نویسی را شنیده‌اند، بسیار مناسب است.

فهرست مطالب

مقاله های مرتبط

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

20 − پانزده =