تارا فایل

پاورپوینت آشنایی با زبان NET Visual C


آشنایی با زبان .NET Visual C#
فصل دوم – آشنایی با زبان C#.NET
1
در این فصل بمعرفی زبان Visual C#.NET می پردازیم. ابتدا انواع داده استاندارد این زبان و کاربرد آنها شرح داده می شود. سپس به دستورات این زبان می پردازیم و در قالب مثالهایی آنها را بررسی خواهیم نمود.

انواع داده ها
فصل دوم – آشنایی با زبان C#
2
هنگامیکه می خواهید یک متغیر را تعریف کنید باید C#.NET از اینکه چه مقادیری می خواهید در آن ذخیره کنید مطلع باشد. اینکار با مشخص کردن نوع داده این متغیر انجام می شود.
داده های عددی:

داده های عددی
فصل دوم – آشنایی با زبان C#
3
نکته: دقت کنید که زبان C# نسبت به کوچکی و بزرگی حروف حساس می باشد برای نمونه int و Int با هم متفاوتند.
//Declare variable
int i;

//Set number, add numbers,
i = 16;
i = i + 8; // i = 24
تعریف متغیر صحیح و مقدار دهی به آن:
برخی از عملگرهای ریاضی:

داده های عددی
فصل دوم – آشنایی با زبان C#
4
عملگرهای ریاضی بهمراه نسبت دهی:
*=, /=, +=,-=
i = i + 8
i += 8
برای بررسی بیشتر به برنامه IntegerMath مراجعه کنید
اعداد اعشاری:
//Declare variable
double d;
//Set number, multiply numbers,
d = 45.34;
d *= 4.333;
//divide numbers
d /= 7;
برای بررسی بیشتر به برنامه FloatingPtMath مراجعه کنید

رشته ها (Strings)
فصل دوم – آشنایی با زبان C#
5
– رشته ها نوع داده پر کاربرد دیگر هستند. یک رشته دنباله ای از کاراکترهاست که برای ذخیره سازی اطلاعاتی مانند نام، آدرس و … استفاده می شود. کاربرد دیگر رشته ها دریافت اطلاعات ورودی از کاربر و نمایش خروجی به او می باشد.
– کاراکترهای تشکیل دهنده یک رشته یونیکد(Unicode) است و اندازه هر کدام دو بایت می باشد. بنابراین آنها علاوه بر حروف انگلیسی و سایر کاراکترهای اسکی برای نمایش حروف سایر زبانهای طبیعی مانند عربی و فارسی و تعداد زیادی علایم دیگر استفاده می شوند.
'Declare variable
string str;
'Set the string value
str = "Hello, world!“;
– تعریف رشته و مقدار دهی آن

رشته ها
فصل دوم – آشنایی با زبان C#
6
محدودده رشته ها با استفاده از کاراکترهای " و " مشخص می شود. برای مثال در دستور
MessageBox.Show("Multiplication test… " + d, "Floating Points")
دو عبارت "Multiplication test… " و "Floating Points" رشته هستند.
اگر بخواهیم خود کاراکتر " را در یک رشته بیاوریم باید قبل از این کاراکتر از کاراکتر استفاده کنیم. برای مثال

string s1 = " Ali “; // value of s1 equals Ali
string s2 = ""Ali"" // value of s2 equals "Ali"

عملیات برروی رشته ها
فصل دوم – آشنایی با زبان C#
7
یک نوع داده یا کلاس در زبان شی گرای C# علاوه بر داده دارای متدها یا توابعی است که بر روی این داده ها عمل می کنند. این متدها امکان پردازش داده ها را فراهم می کنند. برای نمونه یک رشته حاوی دنباله ای از کاراکترهاست و علاوه بر آن دارای توابعی مانند تعیین زیررشته، جستجوی یک عبارت در رشته و … است. برای دستیابی به ویژگیها و متدها یک یک نوع داده از عملگر نقطه استفاده می شود.
عملگر :[]برای دستیابی به کاراکترهای تشکیل دهنده یک رشته استفاده می شود. این عملگر تنها خواندنی است. دقت کنید که اولین اندیس، با شماره صفر مشخص می شود
string s = "Hello“;
char ch = s[1]; //value of ch equals 'e'

عملیات برروی رشته ها
فصل دوم – آشنایی با زبان C#
8
عمل ادغام: ادغام دو رشته با استفاده از عملگر + انجام می شود. برای مثال به قطعه کد زیر توجه کنید
//Set the string values
string str1 = "Hello”;
string str2 = ", world!“;
//Concatenate the strings
result = str1 + str2; //value of result equals "Hello, world!"
نکته: یک مقدار عددی را نیز می توان با یک رشته ادغام کرد دراینحالت ابتدا مقدار عددی تبدیل به رشته می شود و سپس با رشته ی مورد نظر ادغام می گردد. برای نمونه به قطعه کد زیر توجه کنید.
//Set the value
int i = 26
"The value of i is: " + i; // "The value of i is:26 "

عملیات برروی رشته ها
فصل دوم – آشنایی با زبان C#
9
تعیین طول رشته: منظور از طول رشته تعداد کاراکترهای تشکیل دهنده آن است. هر رشته دارای ویژگی به نام Length است که طول آن رشته را بر می گرداند.
//Set the string values
string str = "Hello“;
int i = str.Length; // i = 5
زیر رشته: یکی دیگر از عملیات پرکاربرد برروی رشته هاست که برای تعیین بخشی از آن رشته که از مکان مشخصی شروع می شود، استفاده می شود. این عمل با استفاده از متد Substring انجام می شود. این متد دو پارامتر دارد. اولین پارامتر نشاندهنده مکان شروع زیر رشته است و پارامتر دوم طول زیر رشته را مشخص می کند.

عملیات برروی رشته ها
فصل دوم – آشنایی با زبان C#
10
//Declare variable
string s;
//Get the text from the TextBox
s = txtString.Text;
//Display the first three characters
MessageBox.Show(s.Substring(0, 3), "Strings");
//Display the middle three characters
MessageBox.Show(s.Substring(3, 3), "Strings");
//Display the last three characters
MessageBox.Show(s.Substring(s.Length – 3), "Strings");
خروجی برنامه برای رشته :Cranberry

عملیات برروی رشته ها
فصل دوم – آشنایی با زبان C#
11
جستجو در رشته:
برای جستجوی یک کلمه یا متن در یک رشته می توانید از متد IndexOf استفاده کنید. این متد کلمه با متن ورودی را در رشته جستجو کرده و اولین موقعیت شروع کلمه را در رشته برمی گرداند. در صورتیکه کلمه مورد نظر در رشته پیدا نشود مقدار خروجی این متد برابر با -1 است.
string s = "The fox jumped over the wall“;
MessageBox.Show(s.IndexOf("fox"));
نکته: عملیات متنوع دیگری نیز بر روی رشته ها انجام می شود. برای آگاهی از آنها می توانید از راهنمای سیستم کمک بگیرید.

نوع داده منطقی bool
فصل دوم – آشنایی با زبان C#
12
داده های منطقی تنها می توانند یکی از دو مقدار True(صحیح) یا False (نادرست) را داشته باشند و بیشتر بمنظور تصمیم گیری استفاده می شوند. برای نمونه نتیجه مقایسه برابری مقدار دو متغیر صحیح a و b یک داده منطقی است که یا درست (True) است یا غلط (False)
تبدیل داده ها
برای تبدیل انواع داده به یکدیگر می توانید از کلاس Convert استفاده کنید. فرض کنید s یک رشته و n یک متغیر decimal باشد.
Convert.ToInt32(s) 
تبدیل s به مقدار صحیح //Integer
Convert.ToDouble(s) 
تبدیل s به مقدار اعشاری //Double
Convert.ToString(n) 
تبدیل عدد n به مقدار رشته ای //String
.
.
.

دستورات شرطی
فصل دوم – آشنایی با زبان C#
13
عبارات شرطی مانند "اگر هوا خوب باشد بعدازظهر به پارک می رویم" در مکالمات ما بدفعات استفاده می شوند. در برنامه نویسی نیز می توان با دستورات شرطی روند اجرای برنامه را با توجه به شرایط کنترل کرد. برای این منظور دستور if به شکل زیر بکار می رود:
if ( شرط ) {
دستورات1
}
else {
دستورات2
}
معنای دستور این است که اگر شرط برقرار بود دستورات1 را اجرا کن در غیراینصورت دستورات2 اجرا شوند. برای بیان شرط مورد نظر اغلب از عملگر های مقایسه ای (>، >=، =<، ==، =!) استفاده می شود. حاصل شرط یک مقدار true یا false است. عبارات شرطی را می توان توسط عملگرهای منطقی (&&, ||) باهم ترکیب عطفی یا فصلی کرد.

دستورات شرطی
فصل دوم – آشنایی با زبان C#.NET
14
برای نمونه اگر مقدار a = 10 باشد آنگاه
a < 20  true
a > 15  false
(a < 20) && (a > 15)  false
(a < 20) || (a > 15)  true

b = 11
if ( a == 20)
b = b +1;
else b = b – 1;

b = 10
If (a == 20)
b = b +1;
else if (a > 20)
b = b * 2;
else b = b – 1;
در صورتیکه بخواهیم بیش از یک شرط را چک کنیم می توانیم از else if استفاده کنیم

دستورات شرطی
فصل دوم – آشنایی با زبان C#
15
دستورات if را بصورت تودرتو نیز می توان نوشت برای نمونه
If (x == 3){
MessageBox.Show(“x = 3");
If (y == 6)
MessageBox.Show(“y = 6");
}
برای مقایسه رشته ها می توانید از متد Compare مربوط به نوع داده string استفاده کنید. نتیجه مقایسه دو رشته a و b با استفاده از این متد در زیر آمده است:
string.Compare(a,b)
= 0 if a = b
> 0 if a > b
< 0 if a < b
نکته: اگر بخواهیم دو رشته a و b را بدون توجه به کوچکی و بزرگی حروف با هم مقایسه کنیم کافیست مقدار پارامتر سوم متد Compare را برابر با true قرار دهیم  string.Compare(a,b, true )

دستور switch
فصل دوم – آشنایی با زبان C#.NET
16
هنگامی که بخواهید به ازای مقادیر مختلف یک متغیر کارهای متفاوتی را انجام دهید معمولا دستور switch جایگزین مناسبتری برای دستور if است. برای مثال دستور زیر را در نظر بگیرید
If (customerName == "Bryan“)
(do something)
else if (customerName == "Stephanie“)
(do something)
else if (customerName == " Cathy“)
(do something)
else if (customerName == "Betty“)
(do something)
else (do something)

دستور switch
فصل دوم – آشنایی با زبان C#.NET
17
معادل این دستور را بصورت خواناتر با استفاده از switch می توان بصورت زیر پیاده سازی کرد.
switch(customerName)
{
case "Bryan“:
(do something); break;
case "Stephanie“:
(do something) break;
case "Cathy“:
(do something); break;
case "Betty“:
(do something); break;
default:
(do something); break;
}
برای آشنایی بیشتر با این دستور برنامه Select Demo"" را بررسی کنید.

حلقه های تکرار
فصل دوم – آشنایی با زبان C#
18
هنگامی استفاده می شوند که بخواهید کارمعینی را بدفعات تکرار کنید. برای نمونه فرض کنید بخواهید معدل هر دانشجو را در ترم جاری بدست آورید. برای اینکار باید عملیات مربوط به محاسبه ی معدل را برای هر دانشجو تکرار کنید. انواع حلقه های تکرار در زبان C# عبارتند از:
حلقه for: معمولا هنگامی که بخواهید کاری را بدفعات مشخصی (مثلا 10 بار ) تکرار کنید از این حلقه استفاده می شود.
حلقه while: هنگامی که بخواهید عملی را تا زمان برقراری شرط معین انجام دهید. برای نمونه خواندن داده های یک فایل تا زمانیکه به انتهای فایل برسید.

حلقه For
فصل دوم – آشنایی با زبان C#
19
برای آشنایی با نحوه ی کار حلقه ی For، فرض کنید تعداد معینی ایتم (مثلا 5 تا) را می خواهید در کنترل ListBox نشان دهید. برای این منظور ابتدا پروژه جدیدی را ایجاد کرده و Form1 را مشابه زیر طراحی کنید:

حلقه For
فصل دوم – آشنایی با زبان C#
20
در پاسخ به رویداد کلیک دکمه For Next Loop قطعه کد زیر را بنویسید:
//Declare counter variable
int i;
//Perform a loop
for (i = 1; i <= 5; i++)
{ //Add the item to the list
listBox1.Items.Add("I'm item " + i + “ in the list");
}
خروجی برنامه

حلقه while
فصل دوم – آشنایی با زبان C#
21
همانطورکه گفته شد هنگامیکه تعداد دفعات تکرار حلقه معین نیست از حلقه while استفاده می کنیم. برای نمونه فرض کنید می خواهیم در یک حلقه تکرار یک عدد تصادفی ایجاد و تا زمانیکه این عدد مخالف با 10 است آن را در ListBox نمایش دهیم:
//Declare variables
Random r = new Random();
int n = 0;
// Clear the list
listBox1.Items.Clear();
//Process the loop until n = 10
while (n != 10)
{
n = r.Next(25);
listBox1.Items.Add(n);
}

فصل دوم – آشنایی با زبان C#
22
دستورات break و continue
برای خروج ناگهانی از حلقه قبل از اینکه شرط حلقه پایان یابد از دستور break استفاده می شود. این دستور باعث می شود کنترل اجرای برنامه بقیه دستورهای درون بلوک حلقه را نادیده گرفته و به اولین دستور بیرون حلقه پرش می کند.
دستور continue نیز شبیه دستور break است اما به جای این که حلقه را خاتمه دهد، اجرا را به تکرار بعدی حلقه منتقل می کند. بعبارت دیگر این دستور، ادامه چرخه فعلی را لغو کرده و اجرای دور بعدی حلقه را آغاز می کند.
برای کار بیشتر با انواع حلقه ها در C#به برنامه "Loops" مراجعه کنید

متدها
فصل دوم – آشنایی با زبان C#
23
همانطورکه گفته شد یک نوع داده یا کلاس در C# علاوه بر داده دارای متدها یا توابعی است که بر روی این داده ها عمل می کنند. این متدها امکان پردازش داده ها را فراهم می کنند.
دلیل استفاده از متدها اینست که امکان استفاده مجدد از کد را فراهم می آورند. برای نمونه فرض کنید متدی را نوشته اید که معدل یک دانشجو را از روی نمرات آن محاسبه می کند. پس از آن هر وقت نیاز به معدل دانشجو دارید می توانید آن را با فراخوانی این متد محاسبه کنید و نیازی به نوشتن دوباره کد ندارید.
علاوه بر این استفاده از متد ها اشکال زدایی برنامه ها را آسانتر می کند.
مثال) متد مربوط به محاسبه مساحت دایره:
ورودی: شعاع دایره از نوع double
خروجی: مساحت دایره را از نوع double
double calculateArea (double radius)
نام متد
آرگومان ورودی
مقدار خروجی

متدها
فصل دوم – آشنایی با زبان C#
24
متدها به دو دسته تقسیم می شوند:
1– متدهایی که مقدار خروجی دارند. در مثال قبلی، خروجی متد از نوع double است.
2– متدهایی که هیچ مقدار خروجی را بر نمی گردانند. این متدها که به آنها روال می گویند. در روالها بجای تعیین نوع خروجی، از کلمه کلیدی void (پوچ) استفاده می شود.
{
//Declare variables
double square;
double result;
//Square the radius
square = radius * radius;
//Multiply it by pi
result = square * Math.PI;
//Return the result
return result;
}
کد متد مربوط به محاسبه مساحت دایره
دستور انتهایی متد
بازگرداندن مقدار خروجی

متدها
فصل دوم – آشنایی با زبان C#
25
فراخونی متد
فراخونی متد
private void button1_Click(object sender, EventArgs e)
{
double r = 100;
double area = calculateArea(r);
string msg = "Area of circle is " + area;
MessageBox.Show(msg);
}

26
ارسال به طریق ارجاع (آدرس)
تا این لحظه تمام پارامترهایی که در توابع دیدیم به طریق مقدار ارسال شده اند. یعنی ابتدا یک کپی از مقدار متغیری که در فراخوانی تابع ذکر شده تهیه می شود و تابع بر روی این کپی عملیات را انجام می دهد.
برای مثال اگر در برنامه اصلی تابع calculateArea(double radius) را با مقدار r فراخوانی کنیم ابتدا یک کپی از مقدار r در حافظه تهیه شده و این مکان حافظه radius نامگذاری می شود. تابع calculateArea بر روی radius عمل می کند نه r
فصل دوم – آشنایی با زبان C#

27
ارسال به طریق ارجاع (آدرس)
فصل دوم – آشنایی با زبان C#
ارسال به طریق مقدار باعث می شود که متغیرهای برنامه اصلی از تغییرات ناخواسته در توابع مصون بمانند. اما گاهی اوقات عمدا می خواهیم این اتفاق رخ دهد. یعنی می خواهیم که تابع بتواند محتویات متغیر فرستاده شده به آن را دست کاری کند. در این حالت از ارسال به طریق ارجاع استفاده می کنیم.
برای این که مشخص کنیم یک پارامتر به طریق ارجاع ارسال می شود، از کلمه کلیدی ref در کنار نوع پارامتر استفاده می شود. این باعث می شود که تابع به جای این که یک کپی محلی از آن آرگومان ایجاد کند، خود آرگومان محلی را به کار بگیرد. به این ترتیب تابع هم می تواند مقدار آرگومان فرستاده شده را بخواند و هم می تواند مقدار آن را تغییر دهد. در این حالت آن پارامتر یک پارامتر «خواندنی-نوشتنی» خواهد بود.

28
ارسال به طریق ارجاع (آدرس)
فصل دوم – آشنایی با زبان C#
void swap(ref int a, ref int b)
{
int temp = a;
a = b;
b = temp;
}
مثال)
int a = 100;
int b = 200;
swap(ref a, ref b);
کلمه کلیدی ref تنها برای ارسال انواع داده ای پایه، مانند اعداد صحیح، اعشاری و رشته ها استفاده می شود. این انواع عددی اصطلاحا انواع مقداری (value type) نامیده می شوند. انواع داده ای که توسط کاربر یا سیستم با استفاده از کلمه کلیدی class تعریف شده اند، بصورت پیش فرض از نوع ارجاع (reference type ) می باشند.

ثابتها (Contants) داده های شمارشی (Enum)
فصل دوم – آشنایی با زبان C#
29
ممکن است شما در یک برنامه مقادیری معینی را به دفعات استفاده کنید.با استفاده از ثابتها شما می توانید نام های مناسبی به این مقادیر بدهید و با استفاده از این نام به آنها مراجعه کنید:
const double Pi = 3.14159265;
double computeArea(double r){
return Pi * r * r;
}
بسیاری از اوقات ما به متغیرهایی نیاز داریم که مقدار آنها تنها می تواند از یک مجموعه مقادیر محدود انتخاب شود. برای مثال جنسیت افراد تنها می تواند مرد یا زن باشد. و یا روز هفته که میتواند یکی از مقادیر شنبه تا جمعه را داشته باشد. کلمه کلیدی enum به شما این امکان را می دهد که این نوع داده ها را تعریف کنید.
enum DaysOfWeek
{

Monday = 1, Tuesday = 2, Wednesday = 3, Thursday = 4,
Friday = 5, Saturday = 6, Sunday = 7
}
مجموعه
مقادیر
نوع داده شمارشی

داده های شمارشی (Enum)
فصل دوم – آشنایی با زبان C#
30
void ScheduleDay(DaysOfWeek day)
{
switch (day)
{
case DaysOfWeek.Monday:
// do somthing here
break;
case DaysOfWeek.Tuesday:
// do somthing here
break;
default:
break;
}
}
برای کار بیشتر با ثابتها و داده های شمارشی به برنامه های "Constant Demo" و "Enum Demo" مراجعه کنید.
استفاده از داده های شمارشی
DaysOfWeek d1, d2;
d1 = DaysOfWeek.Sunday;
d2 = DaysOfWeek.Friday;

آرایه ها
فصل دوم – آشنایی با زبان C#
31
برای نمایش لیستی از داده های همنوع استفاده می شوند. با استفاده از آرایه ها شما می توانید یک گروه از متغیرها را ایجاد کنید و به هر یک از آنها با index دسترسی پیدا کنید. تعریف آن در C# بصورت زیر انجام می شود:
تعریف آرایه ای از رشته ها //
string[] strArray;
با تعریف آرایه حافظه ای به آن اختصاص داده نمی شود. پس از تعریف آرایه می توان با استفاده از کلمه کلیدی new به شکل زیر فضای مورد نظر را به آن اختصاص داد:
آرایه ای از رشته ها با اندازه 5 که اندیس آن از 0 تا 4 تغییر می کند//
strArray = new string[5];
می توان دوعمل فوق را در یک زمان نیز انجام داد:
string[] strArray = new string[5];
بعلاوه می توان در هنگام تعریف آرایه می توان عناصرآن را مقدار دهی اولیه کرد:
int[] list = new int[] {1, 12, 15, 20, 2};

آرایه ها
فصل دوم – آشنایی با زبان C#
32
با استفاده از اندیس می توان به عناصر آرایه دسترسی پیدا کرد:
برای پیمایش عناصر آرایه می توانید از هر یک از حلقه های تکرار که قبلا معرفی شد استفاده کنید. چنانچه بخواهید تمام عناصر آرایه را پیمایش کنید استفاده از حلقه foreach برای این منظور ساده تر و خواناتر است. برای مثال قطعه کد زیر عناصر آرایه را پیمایش کرده و آنها را در یک ListBox به نام listBox1 نمایش می دهد:

string[] strArray = new string [5];
.
.
.
strArray[2] = "Stephanie"
MessageBox.Show(strArray[2])
string[] listFriends = new string[] { "Robbin", "Bryan", "Stephanie", "Sydney", "Katie" };

foreach (string s in listFriends)
{
listBox1.Items.Add(s);
}
for (int i = 0; i < listFriends.Length; i++)
{
string s = listFriends[i];
listBox1.Items.Add(s);
}

آرایه ها
فصل دوم – آشنایی با زبانC#.NET
33
در C# امکان تعریف آرایه ها با ابعاد بزرگتر نیز وجود دارد:
// Declares an array of 5 by 3 members
int[,] matrix = new int [5, 3];
// Declares a two-dimensional array and sets initial values
int[,] matrix2 = new int [,] { { 1, 2, 3 }, { 4, 5, 6 } };
// Declares a cubical array and sets initial values
int[, ,] cube = new int [,,] { { { 7, 2 }, { 1, 4 } }, { { 3, 5 }, { 4, 4 } } };
// Declares a complex array of 3 x 3 x 4 x 5 x 6 members
Int [, , , ,] complex = new int [2, 2, 3, 4, 5];

آرایه ها
فصل دوم – آشنایی با زبان C#
34
یک نوع از آرایه های چند بعدی در C# آرایه های ناهموار (Jagged) معروفند. یک آرایه ناهموار دو بعدی را می توانید جدولی در نظر بگیرید که هر سطر آن می تواند تعداد متفاوتی ستون داشته باشد:
// Declares an array of 3 arrays
string[][] families = new string[3][];
// Initializes the first array to 4 members and sets values
families[0] = new string[] {"Smith", "Mom", "Dad", "Uncle Phil"};
// Initializes the second array to 5 members and sets values
families[1] = new string[] {"Jones", "Mom", "Dad", "Suzie", "Little Bobby"};
// Initializes the third array to 3 members and sets values
families[2] = new string[] { "Williams", "Earl", "Bob" };
برای کار بیشتر با آرایه ها به برنامه "Array Demo" مراجعه کنید.

مدیریت ساده خطاها
فصل دوم – آشنایی با زبان C#.NET
35
دستورات try…catch این امکان را فراهم می کنند که شما بتوانید تمام خطاهای احتمالی در پروژه را مدیریت کنید، بدون اینکه اجرای کد شما با رخداد خطا متوقف گردد:
مثال) قطعه کد زیر شعاع یک دایره را دریافت کرده و مساحت آن را محاسبه می کند:
double r = Convert.ToDouble(TextBoxRadius.Text);
double s = 3.14 * r * r;
MessageBox.Show("Area = " + s);
اگر کاربر یک مقدار غیرعددی را در کادرمتن وارد کند چون امکان تبدیل آن به عدد وجود ندارد برنامه دچار اشکال شده و با خطای زیر خارج می شود:

مدیریت ساده خطاها
فصل دوم – آشنایی با زبان C#
36
برای جلوگیری از این اشتباه می توانید از try…catch بصورت زیر استفاده کنید:
try {
double r = Convert.ToDouble(TextBoxRadius.Text);
double s = Math.PI * r * r;
MessageBox.Show("Area = " + s);
}
catch{
MessageBox.Show("Wrong Number!");
}
در مثال بالا برنامه دستورات بخش try را اجرا می کند و در صورت وقوع اشکال کنترل اجرای برنامه وارد بخش مدیریت خطا یعنی catch می شود.
خروجی برنامه هنگامیکه کاربر مقدار غیر عددی وارد کند


تعداد صفحات : 36 | فرمت فایل : پاورپوینت قابل ویرایش

بلافاصله بعد از پرداخت لینک دانلود فعال می شود