علاقمندان به زبان های برنامه نویسی روزتون بخیر. با آموزش زبان برنامه نویسی پاسکال (Pascal) از وب سایت آموزشی پی وی لرن همراهتون خواهیم بود. با انواع داده ها در زبان پاسکال (Pascal) در این بخش آشنا می شویم.
انواع داده های یک موجودیت معنی ، محدودیت ها ، مقادیر ممکن ، عملیات ، عملکردها و نحوه ذخیره سازی مرتبط با آن را نشان می دهد.
انواع کاراکترها ، real، بولین و Integer به عنوان انواع داده استاندارد شناخته می شوند. انواع داده ها را می توان به عنوان scalar، اشاره گر (pointer) و انواع داده های ساختاری طبقه بندی کرد. نمونه هایی از انواع داده های scalar عبارتند از integer, real, Boolean, character, subrange و enumerated. انواع داده های ساختاری از انواع scalar ساخته شده اند. به عنوان مثال ، آرایه ها ، رکوردها و ست ها. بعدا در مورد انواع داده های اشاره گر بحث خواهیم کرد.
انواع داده های پاسکال را می توان به شرح نمودار زیر خلاصه کرد.
اعلان انواع یا Type Declaration برای اعلام نوع داده یک شناسه استفاده می شود. سیننتکس اعلان نوع در زیر آمده است.
1 | type-identifier-1, type-identfier-2 = type-specifier; |
به عنوان مثال ، بیانیه زیر متغیرهای روز و سن را به صورت نوع عدد صحیح تعریف می شود، yes و true را به عنوان نوع بولین ، name و city را به عنوان نوع رشته ، fees و expenses را به عنوان نوع واقعی تعریف می کند.
1 2 3 4 5 | type days, age = integer; yes, true = boolean; name, city = string; fees, expenses = real; |
در جدول زیر جزئیات مربوط به انواع عدد صحیح (Integer) استاندارد با اندازه های ذخیره سازی و مقدار دامنه های استفاده شده در Object Pascal ارائه شده است.
نوع | مینیمم | ماکزیمم | فرمت |
---|---|---|---|
Integer | -۲۱۴۷۴۸۳۶۴۸ | ۲۱۴۷۴۸۳۶۴۷ | signed 32-bit |
Cardinal | ۰ | ۴۲۹۴۹۶۷۲۹۵ | unsigned 32-bit |
Shortint | -۱۲۸ | ۱۲۷ | signed 8-bit |
Smallint | -۳۲۷۶۸ | ۳۲۷۶۷ | signed 16-bit |
Longint | -۲۱۴۷۴۸۳۶۴۸ | ۲۱۴۷۴۸۳۶۴۷ | signed 32-bit |
Int64 | -۲^۶۳ | ۲^۶۳ – ۱ | signed 64-bit |
Byte | ۰ | ۲۵۵ | unsigned 8-bit |
Word | ۰ | ۶۵۵۳۵ | unsigned 16-bit |
Longword | ۰ | ۴۲۹۴۹۶۷۲۹۵ | unsigned 32-bit |
استفاده از ثابت باعث می شود یک برنامه بیشتر قابل خواندن شود و به حفظ مقادیر ویژه در یک مکان در ابتدای برنامه کمک می کند. پاسکال دارای ثابت های شمارشی، منطقی ، رشته و کاراکتر می باشد. با مشخص کردن اعلان const می توانید ثابت ها را در قسمت اعلان برنامه اعلام کنید.
سینتکس اعلان نوع ثابت به شرح زیر است.
1 2 | const Identifier = contant_value; |
در زیر چند نمونه از اعلان های ثابت آورده شده است.
1 2 3 4 5 | VELOCITY_LIGHT = 3.0E=10; PIE = 3.141592; NAME = 'Stuart Little'; CHOICE = yes; OPERATOR = '+'; |
همه اعلان های ثابت قبل از اعلان متغیر باید داده شود.
انواع داده های شمارشی، انواع داده های تعریف شده توسط کاربر هستند. آنها اجازه می دهند مقادیر را در یک لیست مشخص کنید. فقط اپراتورهای assignment (تخصیص) و اپراتورهای relational (رابطه ای) در نوع داده های شمارشی مجاز هستند. انواع داده های شمارشی را می توان به شرح زیر اعلام کرد.
1 2 | type enum-identifier = (item1, item2, item3, ... ) |
در زیر چند نمونه از اعلان های نوع شمارشی ذکر شده است.
1 2 3 4 | type SUMMER = (April, May, June, July, September); COLORS = (Red, Green, Blue, Yellow, Magenta, Cyan, Black, White); TRANSPORT = (Bus, Train, Airplane, Ship); |
ترتیبی که در آن آیتم ها در دامنه های یک نوع شمارشی قرار می گیرند ، ترتیب آیتم ها را مشخص می کند. به عنوان مثال ، در نوع شمارشی SUMMER ، آوریل قبل از ماه مه می آید ، ماه مه قبل از ژوئن و غیره است. دامنه شناسه های نوع شمارشی نمی توانند از ثابت های کاراکتری و عددی تشکیل شوند.
انواع زیر دامنه به متغیر اجازه می دهد مقادیری را که در یک محدوده مشخص قرار دارد فرض کند. به عنوان مثال ، اگر سن رأی دهندگان بین ۱۸ تا ۱۰۰ سال باشد ، می توان متغیری به نام سن (age) اعلام کرد.
1 2 | var age: 18 ... 100; |
در بخش بعدی به شرح متغیر خواهیم پرداخت. همچنین می توانید با استفاده از اعلان نوع ، نوع subrange را تعریف کنید. سینتکس برای اعلام نوع subrange به شرح زیر است.
1 2 | type subrange-identifier = lower-limit ... upper-limit; |
در زیر چند نمونه از اعلام های نوع subrange آورده شده است.
1 2 3 4 5 6 | const P = 18; Q = 90; type Number = 1 ... 100; Value = P ... Q; |
انواع Subrange را می توان از subset نوع شمارشی قبلا تعریف شده ایجاد کرد.
1 2 3 4 | type months = (Jan, Feb, Mar, Apr, May, Jun, Jul, Aug, Sep, Oct, Nov, Dec); Summer = Apr ... Aug; Winter = Oct ... Dec; |
انواع داده ها در زبان پاسکال (Pascal) را در این بخش از آموزش، مورد بررسی قرار دادیم. در بخش آینده به بررسی انواع متغیرها خواهیم پرداخت. با آموزش پاسکال (Pascal) همراه باشید.