داده و متغیر در ویژوال بیسیک
داده ها در ویژوال بیسیک
برای پردازش اطلاعات به دادهای مختلفی نیاز داریم ویژوال بیسیک . همچنین برای اینکه بخواهیم یک متغیر را تعریف کنیم باید حتماً نوع متغیر و را مشخص کنیم. داده ها به دو بخش تقسیم میشوند.
بخش اول :داده های عددی
عددی صحیح: که می توان بر روی آن محاسبات ریاضی و منطقی انجام داد.
محدوده مقدار حافظه نوع داده
Byte 1 byte 0تا255
Integer 2 byte 768/32- تا 768/32+
Long 4 byte 648/483/147/2- تا 648/483/147/2+
عددی اعشاری:که می توان بر روی آن محاسبات ریاضی و منطقی انجام داد.
محدوده مقدار حافظه نوع داده
Single 8 byte اعداد منفی:-3.402823E+28 تا-1.401298E-45
اعداد مثبت:1.401298E-45تا3.402823E+28
Currency 8 byte -922/337/203/685/477.5808 تا922/337/203/685/477.5807
بدون اعشار: ±79/228/162/514/264/337/593/543/950/335
Double 8 byte اعداد منفی: -1.79769313486232E+308 تا-4.94065645841247E-324
اعداد مثبت: 4.94065645841247E-324 تا 1.79769313486232E+308
Decimal 12 byte بدون اعشار :±97/228/162/514/264/337/593/543/950/335
7.9228162514264337593543950335 با حداکثر 28 رقم اعشار(اما هنوز ویژوال بیسیک به طور کامل از آن پشتیبانی نمی کند)
!نکته:
همانطور که در بالا مشاهده کردید مقدار حافظه انواع داده ها مختلف یکسان نیست و نمی توان گفت که یک عدد چه مقدار حافظه را اشغال کرده اما باید سعی کرد برای داده هایمان نوعی را انتخاب کنیم که حافظه کمتری را اشغال کند مثلاً اگر در قرار است یک عدد 3رقمی یا کمتر در متغیر ما قرار گیرد بهتر است از داده عددی Byte استفاده کرد.
بخش دوم :داده های غیر عددی
|
نوع داده |
توضیح |
|
String |
داده رشته ای است که می تواند شامل حرف،ارقام،علامت یا ترکیبی از آنها باشد مثل"کامپیوتر" یا "+" یا "55-93/" که محدود آن از 0 تا 2میلیارد کارکتر است و مقدار حافظ آن به اندازه طول رشته+10 بایت است |
|
Date |
داده ای که نشان دهنده تاریخ یا زمان است این داده بین دو علامت "#" قرار گیرد و محدوه آن از اول ژانویه 100 تا 31 دسامبر 9999 است و مقدار حافظ آن 8 بایت است مثال #20/02/1388 |
|
Boolian |
داده ای است که می تواند دارای دو ارزش درست یا نادرست باشد محدوه آن True یا False است مثال Label1.value=False ومقدار حافظه آن 2 بایت است |
|
Object |
برای اشیاء کاربرد دارد و محدود آن معادل شیء تعریف شده است و مقدارحافظه آن 16 بایت است |
|
Variant |
عددی آن محدوده اش هر دو برابر هر عدد و حافظه آن 16 بایت است |
|
variant |
متنی آن محدوده اش 0تا2 میلیارد کارکتر و مقدار حافظه آن برابر طول رشته +22 بایت است |
چگونه متغیر را تعریف کنیم:
برای اینکه بخواهیم یک متغیر را تعریف کنیم باید نام متغیر و نوع متغیر را مشخص کنیم. متغیر میتواند یک حرف یا یک جمله باشد یا یک عدد یا یک علامت یا ترکیبی از آنها باشد مثلاً هم a1 می تواند یک متغیر باشد هم Ali وهم Arc-w می تواند یک متغیر باشد بعد از این کار باید نوع متغیر را که متناسب با برنامه تان باشد را مشخص کنیم که انواع داده ها و ویژگی آنها در صفحات قبلی آمده است
شکل کلی تعریف متغیر به صورت زیر میباشد:
Dim نام متغیر As نوع متغیر
مثال:
Dim i1 As Integer
درمثال بالا ما متغیر i1 را از نوع Integer تعریف کردیم حال i1 یک متغیر عددی صحیح است
چگونه به یک متغیر مقدار بدهیم:
فقط کافی است متغیر را برابر آن مقدار داده قرار دهیم
شکل کلی آن به صورت زیر است:
مقدار داده یا یک عبارت محاسباتی =نام متغیر
مثال:
Dim num1 As Long
Num1=186423
Dim car As String
Car="BMW"
Dim Poto As Boolian
Poto=False
Dim SHP As Integer
SHP=SHP+110
Dim tarikh As Date
tarikh=#1388/02/03#
Dim Res,A,B,C, As Integer
A=5
B=10
C=15
Res=(A+B*C)/3
عملیات بر روی داده ها: عملگر ها به سه قسمت تقسیم میشوند
بخش اول: عملگرهای محاسباتی
برای اینکه بخواهیم یک عبارت محاسباتی یا بر روی متغیرها مان یک سری عملیات مانند جمع ،ضرب،تقسیم و... انجام دهیم از عملگرها استفاده می کنیم این عمگرها در ویژوال بیسیک بر طبق اولویت انجام میشوند
عملگر |
نام عملگر |
مثال |
نتیجه |
|
^ |
توان |
2^5 |
25 |
|
* |
ضرب |
2*3 |
6 |
|
/ |
تقسیم |
2/5 |
2.5 |
|
+ |
جمع |
10+2 |
12 |
|
- |
تفریق |
10-2 |
8 |
|
Mod |
باقیمانده یک تقسیم را نشان می دهد |
12 Mod 5 |
2 |
|
\ |
تقسیم صحیح |
2\5 |
2 |
اولویت انجام عملگر ها محاسباتی به صورت زیر است:
- عبارت داخل پرانتز
- توان
- ضرب و تقسیم
- تقسیم با خارج قسمت صحیح
- باقیمانده تقسیم (Mod)
- جمع و تفریق
مثال:
Dim W,Y,X As Singel
Y=10
X=2
W=(Y^X*3)
در مثال بالا 3 متغیر W,Y,X را از نوع Singel، که اعشاری است تعریف کرده است
Y را مساوی 10 قرار داده است پس Y می شود 10
X را مساوی 2 قرار داده است پس X می شود 2
بعد W را مساوی با Y به توان X، ضرب در 3 قرار داده
پس W می شود:10×3=300
چند نکته در تقدم عملگرها:
اگر از پرانتز استفاده نکنید ویژوال بیسیک همیشه ابتدا توان،سپس ضرب و تقسیم و بعد از آن جمع و تفریق را انجام خواهد داد .
اگر در یک عبارت عملگرهایی با تقدم یکسان وجود داشته باشد ویژوال بیسیک محاسبات را از چپ به راست انجام می دهد.
توضیح مهم:
در صورتی که بخواهید ترتیب انجام محاسبات را تغییر دهید باید از پرانتز استفاده کنید.
در پرانتز های تو در تو ویژوال بیسیک از داخلی ترین جفت پرانتز شروع کرده و رو به بیرون حرکت می کند در مثال ذیل:
(2+3*(1+2) -3
ویژوال بیسیک قبل از هر کاری ابتدا (1+2)را محاسبه می کند بعد 2+3 را محاسبه می کند بعد حاصل هر دو پرانتز را ضرب در هم می کند بعد حاصل کل را منهای 3 میکند