بایگانی برچسب‌ها : value

آرایه انجمنی Associative array

آرایه انجمنی یا Associative array چیست؟

آرایه انجمنی (Associative array) در زبان‌های برنامه‌نویسی یک نوع داده‌ی انتزاعی است متشکل از مجموعه‌ای از دوتایی‌های (کلید، مقدار) یا (Key, Value) به طوری که هر مقدار با یک کلید در تناظر می‌باشد و کلیدهای موجود در مجموعه نیز تکراری نباشند. آرایه‌های انجمنی با نام‌هایی همچون نقشه (Map) و لغت نامه (Dictionary) نیز شناخته می‌شوند.

در آرایه‌های انجمنی تناظر میان کلیدها و مقادیر اصطلاحا اتصال (Binding) نامیده می‌شود. مهم‌ترین و رایج‌ترین اعمالی که روی این نوع داده قابل انجام می‌باشد عبارت است از افزودن (Insert یا Add) یک جفت کلید و مقدار به مجموعه، حذف (Remove یا Delete) یک جفت کلید و مقدار، تغییر مقدار تخصیص یافته به یک کلید و یافتن مقدار متناظر با یک کلید. برای افزودن یک جفت کلید و مقدار یا تغییر مقدار متناظر با یک کلید لازم است هم کلید و هم مقدار متناظر با آن در قالب آرگومان مشخص شود اما حذف یا یافتن مقدار متناظر با یک کلید تنها مبتنی بر کلید انجام می‌شود.

دو روش مهم برای ایجاد آرایه‌های انجمنی، استفاده از جدول درهم سازی (Hash table) و درخت جستجو (Search tree) می‌باشد. بسیاری از زبان‌های برنامه‌نویسی امروزی از آرایه‌های انجمنی تحت عناوین متفاوتی در قالب کتابخانه‌های استاندارد خود پشتیبانی می‌کنند (برای مثال در بسیاری از زبان‌ها از جمله C++، آرایه‌های انجمنی با عنوان map شناخته می‌شوند).

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

در مثال زیر نحوه‌ی ایجاد یک آرایه انجمنی به نام $weight در زبان PHP نمایش داده شده است. در این نمونه، 3 جفت کلید و مقدار در مجموعه مشاهده می‌شود که عبارات Alex و Rory و Paul کلیدهای این آرایه انجمنی هستند و مقادیر 40 و 50 و 45 به ترتیب به آنها تخصیص داده شده است. در این مثال عبارت $weight[‘Paul’] مقدار متناظر با کلید Paul یعنی 45 را خواهد داشت.

$weight = array("Alex"=>"40", "Rory"=>"50", "Paul"=>"45");
echo "Paul weighs" . $weight['Paul'] . " kilograms.";

پیوندهای پیشنهادی تک دیک

لینک واژه در ویکیپدیا

متغیر Variable

متغیر یا Variable چیست؟

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

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

در ساختار اکثر زبان‌های برنامه نویسی قراردادهایی که برای نامگذاری متغیرها درنظر گرفته شده است تقریبا مشابه یکدیگر است. به عنوان مثال عموما نام یک متغیر نمی‌تواند با رقم شروع شود، هم‌چنین استفاده از فاصله و برخی کاراکترهای خاص در اکثر زبان‌ها ممنوع است. با اینحال استفاده از علامت _ برای ایجاد نام‌های چندکلمه‌ای امکان‌پذیر است. همچنین اغلب زبان‌های برنامه نویسی مدرن در مورد نام متغیرها به بزرگی و کوچکی حروف حساس (Case-Sensitive) هستند. به عنوان مثال اگر متغیری با نام xVar تعریف شده باشد باید برای دسترسی به آن دقیقا از همین نام (با حرف V بزرگ) استفاده شود.

بسته به زبان برنامه نویسی، برای هر Variable ممکن است یک نوع (Type) نیز تعریف شود که نشان‌دهنده‌ی نوع مقادیری است که به آن متغیر می‌توان تخصیص داد. متغیرها متناسب با نوع خود می‌توانند مقادیر مختلفی از جمله اعداد صحیح، رشته‌ها، کاراکترها، مقادیر بولی و … را در خود نگه‌داری کنند. بخش‌هایی از سورس کد که در آن می‌توان از متغیر استفاده نمود را قلمرو متغیر (Variable Scope) می‌نامند. کامپایلرها و مفسرها به جای نام متغیر از محل داده‌ی متناظر با آن روی حافظه برای انتساب یا خواندن مقدار استفاده می‌کنند.

نحوه‌ی تعریف متغیرها بسته به زبان برنامه نویسی مورد استفاده می‌تواند متفاوت باشد. به عنوان مثال در زبان C++ دستور int result=0; متغیری به نام result از نوع int (عدد صحیح) با مقدار اولیه 0 ایجاد می‌کند.

پیوندهای پیشنهادی تک دیک

لینک واژه در ویکیپدیا