متغییر ها در visual basic

Download Report

Transcript متغییر ها در visual basic

‫‪a smooth sea can not‬‬
‫‪make a success sailor.‬‬
‫دریای آرام نمیتواند یک قایق ران موفق‬
‫بسازد ‪.‬‬
‫مروری بر رویدادها ‪:‬معمول ما هر کاری که در ویندوز انجام میدهیم یک ‪ event‬یا رویداد ایجاد میکند ‪ .‬فرم ها و‬
‫کنترل های ما این توانایی را دارند که به این رویداد ها پاسخ دهند‪ .‬پس مبحث روال رویداد ها پیش میآید ‪ .‬روال‬
‫های رویداد قطعات کدی هستند که در هنگام وقوع یک اتفاق (رویداد) بر روی یک کنترل یا یک فرم اجرا میشود ‪.‬‬
‫مانند کلیک موس (‪ ،)mouse click‬فشردن کلید (‪ ، )key press‬حرکت نشانگر موس (‪)mouse move‬‬
‫قالب روال رویداد ‪ :‬مثل ش ی فرم در هنگام لود شدن قابلیت پاسخگویی به رویداد ‪ load‬را دارد‬
‫‪.‬‬
‫)(‪Private sub Form _load‬‬
‫‪End sub‬‬
‫لزم است بدانید که ‪ vb‬خود تعریف روال رویداد را بر عهده میگیرد و وظیفه ما نوشتن کد برای رویداد است ‪.‬‬
‫اجزا روال رویداد ‪ private :‬یعنی روال محلی است ‪ Form .‬یعنی روال‬
‫مربوط به ش ی فرم است ‪ Load .‬یعنی توسط ویندوز این اتفاق رخ داده است ‪.‬‬
‫‪ Sub‬یعنی روال ‪ End sub .‬پایان روال ‪.‬‬
‫متغییر ها در‬
VISUAL
BASIC
In put
Cpu
Out put
Memory
Input a
Input b
C=a + b
Print c
7
5
12
‫متغییر ها ‪ :‬محلی از حافظه است که برای نگهداری موقت داده ها و اطلعات از آن‬
‫استفاده میکنیم ‪.‬‬
‫چون این مکان ناحیه ای از حافظه است میتواند تمام خصوصیات حافظه را دارا‬
‫باشد ‪ .‬از جمله این که مقداری که داخل متغییر قرار میگیرد قابل تغییر است ‪ .‬وقتی‬
‫مقداری داخل آن قرار بگیرد مقدار قبلی از بین میرود ولی هنگامی که مقداری از آن‬
‫خوانده میشود محتویات قبلی از بین نمیرود ‪ .‬متغییر ها معمول توسط نامی که به‬
‫آنها داده میشود قابل دسترس هستند بنابراین نباید برای دو متغییر نام یکسان‬
‫انتخاب شود ‪ .‬برای ایجاد متغییر در ‪ vb‬باید سه کار انجام گیرد ‪:‬‬
‫ نام گذاری متغیر‬‫ تعیین نوع متغیر‬‫‪ -‬تعیین مقدار اولیه‬
‫قواعد نام گذاری متغیر ها ‪:‬‬
‫‪ -1‬نام متغیر باید با حروف الفبا شروع شود ‪.‬‬
‫‪-2‬نام متغیر حداکثر میتواند ‪ 255‬نویسه باشد ‪.‬‬
‫‪ -3‬فاصله دربین نام متغییر مجاز نیست ‪.‬‬
‫در تعریف متغیر ها سعی شود نام های با معنی انتخاب شود ‪.‬‬
‫تعیین نوع متغیر ‪:‬‬
‫داده های عددی ‪:‬‬
‫انواع داده‬
‫ها ‪:‬‬
‫داده های غیر عددی‪:‬‬
‫اعداد صحیح ‪ :‬این اعداد بدون نقطه اعشاری و بصورت صحیح‬
‫میباشند ‪.‬‬
‫اعداد اعشاری ‪:‬این اعداد با نقطه اعشاری و بصورت ممیز شناور‬
‫میباشند ‪ .‬در این گونه اعداد حتما ممیز وجود دارد حتی اگر هیچ رقمی‬
‫بعد از اعشار وجود نداشته باشد ‪.‬‬
‫داده های رشته ای ‪ (string) :‬این نوع داده ها بین‬
‫دوعلمت نقل قول قرار میگیرند ‪ .‬و میتواند شامل هر نوع‬
‫کاراکتری باشد ‪.‬‬
‫اگر بین دو علمت دابل کوتیشن هیچ کاراکتری قرار ندهیم‬
‫به این نوع رشته ها رشته های ‪ null‬گوییم ‪.‬‬
‫داده های بولین (منطقی) ‪ :‬این نوع داده فقط شامل عبارت‬
‫‪ true‬یا ‪ false‬میباشد ‪.‬‬
‫نوع داده ‪ :variant‬هر نوع داده ای را در خود جای میدهد ‪ .‬این نوع داده برای زمانی مناسب است‬
‫که از قبل مشخص نیست با چه نوع داده ای سروکار داریم ‪.‬‬
‫‪ : Integer‬اعداد صحیح از ‪ - 32768‬تا ‪+ 32786‬‬
‫حافظه اشغالی ‪ 2 :‬بایت‬
‫اعداد صحیح ‪:‬‬
‫‪: long‬اعداد صحیح در حدود ‪ - 2000000000‬و ‪+‬‬
‫حافظه اشغالی ‪ 4 :‬بایت‬
‫اعداد اعشاری ‪:‬‬
‫‪ : single‬اعداد اعشاری با دقت کم‬
‫حافظه اشغالی ‪ 4 :‬بایت‬
‫‪: Double‬اعداد اعشاری با دقت زیاد‬
‫حافظه اشغالی ‪ 8 :‬بایت‬
‫نحوه تعریف و ایجاد متغیر در ویژوال بیسیک‬
‫روش ‪:1‬‬
‫نوع متغیر ‪ As‬نام متغیر ‪Dim‬‬
‫در این روش نام متغیر بعد از کلمه ‪Dim‬‬
‫و نوع متغیر بعد از کلمه ‪ As‬توسط برنامه نویس ‪،‬‬
‫و مقدار اولیه متغییر توسط ویژوال بیسیک تعیین‬
‫میشود ‪.‬‬
‫روش ‪ : 2‬در این روش یک مقدار بطور مستقیم بواسطه‬
‫دستور انتساب در یک متغییر که از قبل تعیین نشده است‬
‫قرار میگیرد ‪ .‬در این حالت نام متغییر توسط برنامه نویس‬
‫در سمت چپ مساوی(=)قرار گرفته و تعیین نام میشود ‪.‬‬
‫نوع متغییر توسط ویژوال برگزیده میشود ‪ .‬و مقدار اولیه‬
‫مقداری است که در سمت راست مساوی (=) توسط‬
‫برنامه نویس ذکر شده است ‪.‬‬
‫حوزه ی تعریف متغییرها ‪:‬‬
‫برنامه های ما از تعدادی زیر برنامه تشکیل شده است ‪.‬‬
‫در صورتی که یک متغییر در یک زیر برنامه تعریف شود تنها در آن زیر‬
‫برنامه شناخته میشود ‪.‬‬
‫به مثال زیر توجه کنید ؟‬
‫‪K=0‬‬
‫متغییر محلی ‪ :‬در همان زیر برنامه تعریف و قابل شناسایی است ‪.‬‬
‫‪K=k+1‬‬
‫)(‪Private sub Form _load‬‬
‫‪End sub‬‬
‫)(‪Private sub Cmd1 _Click‬‬
‫‪Dim k As Integer‬‬
‫‪K=K+1‬‬
‫‪End sub‬‬
‫)(‪Private sub Cmd1 _Click‬‬
‫‪MsgBox k‬‬
‫‪End sub‬‬
‫‪Dim k As Integer‬‬
‫)(‪Private sub Cmd1 _Click‬‬
‫‪K=K+1‬‬
‫‪End sub‬‬
‫)(‪Private sub Cmd1 _Click‬‬
‫‪MsgBox k‬‬
‫متغییر سراسری‪ :‬در تمام زیر برنامه قابل شناسایی است و در قسمت ‪general‬‬
‫‪End sub‬‬
‫‪ declaration‬تعریف میشود ‪.‬‬
: ‫دوره ی حیات (طول عمر ) متغییرها‬
. ‫ مقدار خود را حفظ میکند‬، ‫مدت زمانی است که یک متغییر‬
Private sub Cmd1 _Click()
Dim k As Integer
MsgBox K
K=K+1
End sub
Private sub Cmd1 _Click()
Static k As Integer
MsgBox K
K=K+1
End sub
K=0
K=0
K=1
K=0
K=0
K=k+1
‫مروری بر دستورات کنترلی ویژوال بیسیک‬
‫ساختارهای شرطی‬
‫ساختارهای تکرار‬
‫ساختارهای شرطی ‪:‬‬
‫دستور شرطی‬
‫‪IF…Then‬‬
‫دستور شرطی‬
‫‪IF…Then….Else‬‬
‫دستور شرطی‬
‫‪Select …. Case‬‬
‫دستور شرطی‬
‫‪IF…Then‬‬
‫در صورت برقرار بودن شرط‬
‫دستورالعمل ‪ then‬شرط ‪If‬‬
‫‪ then‬شرط ‪If‬‬
‫دستورالعمل‬
‫در صورت برقرار بودن‬
‫یا نبودن شرط‬
‫‪ then‬شرط ‪If‬‬
‫دستورالعمل‬
‫‪Else‬‬
‫دستورالعمل‬
‫‪End if‬‬
‫‪ then‬شرط ‪If‬‬
‫دستورالعمل‬
‫شرط ‪Else if‬‬
‫دستورالعمل‬
‫شرط ‪Else if‬‬
‫دستورالعمل‬
‫‪Else‬‬
‫دستورالعمل‬
‫‪End if‬‬
‫ساختار شرطی ‪select case‬‬
‫عبارت ‪Select case‬‬
‫مقدار ‪Case‬‬
‫دستورالعمل‬
‫مقدار ‪Case‬‬
‫دستورالعمل‬
‫مقدار ‪Case‬‬
‫دستورالعمل‬
‫‪Case else‬‬
‫دستورلعمل‬
‫‪End select‬‬
‫ساختار تکرار ‪for…. next‬‬
‫مقدار نهایی ‪ to‬مقدار اولیه = نام شمارنده ‪For‬‬
‫دستوالعمل یا دستور العمل ها‬
‫نام شمارنده ‪Next‬‬
‫‪step k‬‬
‫مقدار نهایی ‪ to‬مقدار اولیه = نام شمارنده ‪For‬‬
‫دستوالعمل یا دستور العمل ها‬
‫نام شمارنده ‪Next‬‬
‫ساختار تکرار ‪while …. Wend‬‬
‫شرط ‪While‬‬
‫دستورالعمل‬
‫‪Wend‬‬
‫تمرینات‬
‫حلقه ‪ for next‬را با استفاده از حلقه ‪ while wend‬پیاده سازی نمایید ‪.‬‬
‫درباره حلقه ‪ do …. loop‬تحقیق نمایید ‪.‬‬
‫حلقه ‪ do … loop‬را با حلقه ‪ while … wend‬مقایسه نمایید ؟‬
‫درباره دستورات ‪ exit do , exit for‬تحقیق نمایید ؟‬