آموزش سی شارپ قسمت اول

بازدیدها
: 694 -
آخرین بروزرسانی
: -
آخرین ارسال توسط
: سیده آمین ارمان
چون ما توی بلاک حلقه فور فقط یک دستور داریم , میتونیم از نوشتن {} خودداری کنیم و حلقه رو بصورت یک خطی بنویسیم و اگه بخوایم حلقه بالا رو یکم بهتر بنویسیم , به شکل زیر عمل میکنیم :

for(int i = 0 ; i < 10 ; ++i)

MessageBox.Show(i.ToString());


در صورت اجرا میبینید که نتیجه دقیقا مثل دفعه ی قبل هست . با این تفاوت که الان توی دو خط دستورات رو نوشتیم !





Read mor
 
  • Like
Reactions: ...zαнrα...*
متغیر , مقدار نام و نام خانوادگی رو از کاربر دریاف کنیم . در نهایت با نمایش یک پیام مناسب , برنامه رو به پایان برسونیم . (دقت کنید : این قسمت ممکنه خیلی مبتدی باشه)

string FirsName, LastName;

Console.WriteLine("Please Enter Your First Name : ");

FirsName = Console.ReadLine();

Console.WriteLine("Please Enter Yuor Last Name : ");

LastName = Console.ReadLine();

string msg = "Hi " + FirsName + " " + LastName + " Wellcom To My First Console Application";

Console.WriteLine(msg);

Console.WriteLine("Please Press Key to Exit …”);

Console.ReadKey();


من کد بالا رو نوشتم که البته شما میتونید به سلیقه خودتون هر تغییری که مایل هستین توش بدین ( که من هم توصیه میکنم کد رو کپی نکنید و خودتون بنویسید و تغییرات بسیار توی کد اعمال کنید ) .



توضیح کد بالا : طبق قراری که داشتیم اول دوتا متغیر تعریف کردیم . حالا با استفاده از متد WriteLine و با نمایش یک پیغام مبنی بر " لطفا نام خود را وارد کنید " به کاربر میفهمونیم که برنامه یک ورودی از شما میخواد که در اینجا همون نام هست . بعد از این باید با متد ReadLine یک متن رو از کاربر بگیریم و در متغیر نام یا همون FirstName قرار بدیم !

روند کار برای دریافت نام خانوادگی هم همین هست ! .

بعد از دریافت نام و نام خانوادگی , یک متغیر جدید با نام msg تعریف کردیم که مخفف مسیج هست و قراره متن پیام مورد نظر توی اون قرار بگیره . طبق چیزی که مسئله خواسته , یک پیام سلام و نمایش نام و نام خانوادگی کاربر و در نهایت چاپ پیام .

توی خط آخر هم با استفاده از متد ReadKey از بسته شدن برنامه جلوگیری کردیم ! ( در صورتی که نمیدونید کار این متد چیه , پیشنهاد میکنم این خط رو پاک کنید و برنامه رو اجرا کنید و نتیجه رو ببینید :) ! )
 
  • Like
Reactions: ...zαнrα...*

سیده آمین ارمان

کاربر ویژه
عضو انجمن
10/5/16
1,733
21,045
696
البرز
قسمت دوم زبان سی شارپ برنامه نویسی


توی هر پروژه ( یا حتی سولوشن ) فایل هایی وجود داره که باعث تکمیل پروژمون میشه !

وقتی یک پروژه سی شارپ میسازید , بصورت خودکار یک سری فایل همراه با پروژه ساخته میشه و توی پوشه سولوشن و پروژه قرار داده میشه !



مثلا اگه یک پروژه سی شارپ از نوع ویندوز فرم بسازید , یک فایل Program.cs و یک فایل Form1.cs و یک فایل App.Config و چند تا فایل دیگه هم ساخته میشه که هر کدوم از این فایل ها یک جایی بدرد میخوره و هیچ کدوم اضافه نیست ( پس سعی نکنید یکی رو حذف کنید )



حالا که میدونیم پروژه و سولوشن و ... چی هست , نوبت اینه که با بخش Solution Explorer آشنا بشیم .

در واقع سولوشن اکسپلورر یک پنل برای مدیریت سولوشن ( یا سولوشن ها ) و تمامی فایل هایی که توی اون هستن ( از جمله پروژه ها و فایل های درون پروژه ) هست .

مکان قرار گیری پنل سولوشن اکسپلورر توی ویژوال استادیو در وسط سمت راست صفحه هست . ( البته بطور معمول و اگه تغییر نداده باشید )



شکل 1 – محل قرار گیری Solution Explorer در ویژوال استادیو

اگر سولوشن اکسپلورر توی محیط ویژوال استادیو نبود ( یا به هر دلیلی شما پیداش نکردید ) , میتونید از منوی View -> Solution Explorer پنل رو به محیط ویژوال استادیو اضافه کنید .

فعلا به همین قدر توضیح در مورد سولوشن اکسپلورر اکتفا میکنیم !

خب یک پنل مهم دیگه هم داریم که اسمش Toolbox هست ( که به فارسی میشه جعبه ابزار ) . توی جعبه ابزار , چند تا از مهم ترین ابزار های مورد نیاز برنامه نویسی وجود داره که هر کدوم رو که بخوایم میتونیم به پروژمون اضافه کنیم

چند تا از مهمترین ابزار ها (TextBox , Button , Label , ListBox , CheckBox , RadioButton , ….. ) هستن که معمولا کاربرد زیادی دارن ( اگه یادتون باشه جلسه قبل یک باتن هم اضافه کردیم !! )

یک سری پنل دیگه هم هست که جلسات بعدی وقتی نیاز شد باهاشون آشنا میشیم

گفتیم که توی سی شارپ یک سری ابزار داریم . حالا باید بدونیم که هر کدوم از این ابزارها یک سری چیزهایی رو بخودش داره که به چند دسته تقسیم میشه :

  1. Property یا خصوصیت
  2. Event یا رویداد
  3. Method یا متد ( قبلا با نام تابع شناخته میشد )
در واقع هر کدوم از این ابزارها یک کلاس بشمار میاد . ( بعدا توضیح بیشتری میدم )

خب حالا بریم سراغ مواردی که توی کد نویسی باهاشون سر و کار داریم !

مقدمات پایه مورد نیاز :

  1. متغیر ها
  2. محاسبات و عملگرهای محاسباتی
  3. ساختار ها ( عمده ترین و مهم ترین ساختارها , ساختارهای شرط و حلقه ها هستن )
  4. آرایه ها
  5. متد ها و توابع
اولین بحث ما در مورد متغیرها ست .� ( جلسه امشب هم به متغیرها اختصاص داره )

اکثرا متغیر رو اینطوری تعریف میکنن : " متغیر بخشی از حافظه رم میباشد که وظیفه� ذخیره سازی اطلاعات ( اعم از اعداد , نوشته ها , زمان و تاریخ و .... ) را دارد . هر متغیر سه مشخصه اصلی دارد ( 1- نوع متغیر , 2- نام متغیر , 3- مقدار متغیر ) "

تعریف بالا تقریبا شفاف و واضح هست , اما اگه متوجه نشدید جای نگرانی نیست .

یک مثال میزنم : فرض کنید شما میخواید یک مقدار غذا بخورید ( نوش جان ) خب این غذا رو میتونید مستقیما از توی ظرف اصلی ( مثلا دیگ یا قابلمه ) میل کیند . ولی یک مسئله ای هست اونم اینه که این همیشه ایده ال نیست . مثلا اون غذا فقط مال شما نیست و با یک عده دیگه مشترک هست . و یا یک عده دیگه میخوان از اون غذا میل کنن و نمیشه به هر کدوم یک قاشق داد و راه رسیدن به دیگ رو نشونشون داد

راه حل چیه ؟؟؟ اینه که باید یک سری ظرف تهیه کنیم ( مثل بشقاب یا کاسه ) و غذا رو توی اون ظرف ها به مردم ارائه بدیم !!

توی برنامه نویسی ( تقریبا توی همه زبان ها ) همچین حالتی وجود داره . ما میتونیم بدون استفاده از ظرف ( در واقع همون متغیر ) استفاده خودمون رو ببریم و کارمون رو راه بندازیم . ولی یک جاهایی باید یک ظرفی تهیه کنیم که بتونیم یک مقدار رو از کاربر بگیریم , یک سری اعمال روش انجام بدیم , و در نهایت نتیجه رو به کاربر نشون بدیم !!

مثلا میخوایم دو عدد رو از کاربر دریافت کنیم و حاصل جمع اونا رو نشون بدیم . خب اولین کار اینه که دوتا عدد رو به شکلی ( به هر نحوی ) از کاربر بگیریم و هر کدوم رو بصورت جداگانه توی یک ظرف بریزیم . مرحله دوم کار این هست که اون دوتا رو با هم جمع کنیم و حاصل جمع رو توی یک ظرف ( یا همون متغیر ) سوم بریزیم . و درنهایت آخرین مرحله این هست که نتیجه رو به کاربر نشون بدیم !!

توی برنامه نویسی به زبان سی شارپ , برای اینکه بتونیم از متغیر ( ظرف ) استفاده کنیم , اول باید اون رو تعریف کنیم .

هر متغیر یک نوع داره و هر کدوم از انواع متغیرها به یک دردی میخوره و یک جایی به کمک ما میاد !

مثلا یک سری از انواع فقط برای عدد هستن . یک سری برای متن هستن ( مثلا نام و نام خانوادگی ) . و یک سری برای دریافت تاریخ و ساعت ( مثل روز دقیق تولد و یا ساعت پرداخت حقوق !! )



Read more:

ارسال شده توسط
fatemeh.E.z
 
  • Like
Reactions: ...zαнrα...*

سیده آمین ارمان

کاربر ویژه
عضو انجمن
10/5/16
1,733
21,045
696
البرز
آموزش زبان سی شارپ قسمت پنجم


جلسه قبل عملگرهای مقایسه ای و عملگر شرطی و دستور شرطی رو توضیح دادیم . این جلسه میخوایم در مورد عملگرهای منطقی و بیتی صحبت کنیم

فرض کنیم میخوایم دوتا شرط رو داخل یک دستور if بررسی کنیم و دستورات مورد نظرمون رو اجرا کنیم

خب در حالت عادی راه حل اینه که ما دوتا شرط if پشت سر هم بنویسیم و اگه شرط اول برقرار بود , شرط دوم رو چک کنه و در صورت صحیح بودن شرط دوم , دستور مورد نظر اجرا بشه و در صورت عدم صحیح بودن هر دوتا شرط , یک سری دستورات دیگه اجرا بشه .

مثال :

if(username==”Mohamad”)

if(password==”ilikePHP.ir”)

MessageBox.Show(“Welcome”);

else

MessageBox.Show(“Error !”);

else

MessageBox.Show(“Error !”);


خب قطعه کد بالا خیلی واضحه !



دوتا متغیر رو بررسی میکنه اگه شرایط درست بودن پیام خوش آمد و اگه شرایط غلط بودن پیام ارور رو به کاربر نشون میده !

ولی این کد یک مقدار طولانی و کمی گیج کننده ست ! به علاوه ما الان از دوتا دستور if و else استفاده کردیم !

اینجاست که عملگرهای منطقی و بیتی به کمکمون میان !

برخی از عملگرهای منطقی و بیتی در سی شارپ :

1. & AND

2. | OR

3. && AND

4. || OR

5. ^ XOR

6. ! NOT

7. …….


اینها برخی از عملگرهای منطقی هستن .



چون نمیخوایم خیلی روی بحث عملگرها وقت بذاریم بقیه رو توضیح نمیدم و فقط همین چندتایی که بالا گفتم رو توضیح میدم و به بحث خاتمه میدم ( درصورتی که میخواید همه عملگرهای سی شارپ رو به همراه نمونه کد مشاهده کنید به این لینک مراجعه کنید :

C# Operators )

نکته : دقت کنید که عملگر " & با && " و عملگر " | با || " فرق داره که توضیح خدمتتون توضیح میدم .

عملگر & ( and ) :

این عملگر دو عملوند رو در اطراف خودش دریافت میکنه و تنهای درصورتی پاسخ صحیح true رو برمیگردونه که پاسخ شرط هر دو عملوند صحیح یا همون true باشه !!!!

یکم گیج کننده بود . مثال :

bool x = True;

bool y = false;

bool z = true;

if (x&x) // true !

if (x&y) // false !

if (x&z) // true !

if (y&z) // false !

if (y&y) // false !

جدول پاسخ در عملگر & به شکل زیر هست :

X & Y = Z

T & T = T

T & F = F

F & T = F

F & F = F

عملگر | ( OR ) :

این عملگر هم مثل عملگر & دوتا عملوند رو دریافت میکنه . با این تفاوت که در صورت صحیح بودن یکی از عملوند ها نتیجه به عنوان true برگشت داده میشه

جدول پاسخ عملگر | :

X & Y = Z

T & T = T

T & F = T

F & T = T

F & F = F

اگه دقت کنید توی عملگر & از چهار مورد تنها یک مورد پاسخ صحیح هست و سه مورد دیگه پاسخ غلط ارجاع داده میشه . ولی توی عملگر | سه مورد پاسخ صحیح و تنها یک مورد پاسخ غلط ارجاع داده میشه !

عملگر && ( AND ) :


ارسال شده توسط
fatemeh.E.z

 
  • Like
Reactions: ...zαнrα...*

سیده آمین ارمان

کاربر ویژه
عضو انجمن
10/5/16
1,733
21,045
696
البرز
دستور شرطی switch هم یکی دیگه از دستورات پرکاربرد توی زبان های برنامه نویسی از جمله سی شارپ هست

اگه خاطرتون باشه توی دستور if ما یک یا چند شرط رو بررسی میکردیم و در صورت صحیح یا غلط بودن , یک سری دستورات رو اجرا میکنیم !

به زبان ساده if برای بررسی چند شرط و متغیر مختلف استفاده زیادی داره !

یک وقتی هم هست که ما میخوایم تنها یک متغیر رو بررسی کنیم و در صورت برابر بودن متغیر با هر مقداری , یک سری دستورات خاص اجرا بشه !

مثلا قراره توی یک پروژه حقوق و تحصیلات اشخاص رو دریافت و بررسی میکنیم و باید بسته به سطح تحصیلاتشون حقوقشون رو افزایش بدیم

خب اگه بخوایم این قسمت از برنامه رو با if بنویسیم یک چیزی شبیه به قطعه کد زیر میشه :

if (level == "karDaani")

salary += (salary / 100 * 3);

else if (level == "karshenasi")

salary += (salary / 100 * 6);

else if (level == "arshad")

salary += (salary / 100 * 10);

else if (level == "phd")

salary += (salary / 100 * 15);


خب اگه دقت کنید میبینید که ما 4 تا شرط داریم و 4 بار متغیر level رو بررسی کردیم . خب این یک مقدار سرعت برنامه رو پایین میاره و خیلی هم ایده آل نیست و بر فرض مثال سطح علمی شخص مورد نظر phd ( که آخرین شرط هست ) باشه . برنامه باید چهار تا شرط رو بررسی کنه تا به شرط درست برسه !



اینجا دستور switch به کار میاد .

درواقع دستور سویچ کارش اینه که تنها یک متغیر یا یک مقدار رو دریافت میکنه , و با مقادیر دیگه ای که ما میخوایم بررسی میکنه و در صورت صحیح بودن هر کدوم , دستوراتش رو اجرا میکنه .

ساختار دستور سویچ :

switch (level)

{

case "case1":

;

;

;

break;

case 2:

;

;

;

break;

case true:

;

;

;

break;

default:

;

;

;

break;

}


دقت کنید که روبروی هر کیس و بعد از نوشتن مقدار باید علامت دو نقطه : قرار بدیم .



نکته : هنگامی که دستورات هر کیس تموم شد باید از دستور break استفاده کنیم ( وگرنه اتفاقاتی میوفته که جلوتر توضیح میدم ) .

اگه یادتون باشه دستور شرطی if یک بخشی به اسم else داشت و وقتی که دستور غلط بود , کدهای بخش else اجرا میشدن . توی سویچ دستور default این کار رو انجام میده .

همونطور که توی مثال می بینید بعد از default هم باید break گذاشته بشه .

حالا میخوایم همون برنامه ی حقوق بالا رو با دستور سوییچ بنویسیم :

switch (level)

{


case "kardaani":

salary += (salary / 100 * 3);

break;


case "karshenasi":

salary += (salary / 100 * 3);

break;

case "arshad":

salary += (salary / 100 * 3);

break;

case "phd":

salary += (salary / 100 * 3);

break;

{


به زبان ساده ( و بطور معمول ) وقتی که میخوایم حالت های مختلف یک متغیر رو بررسی کنیم از سوییچ استفاده میکنیم .



یک مثال دیگه میزنم : فرض کنیم میخوایم کاراکتر های ورودی کاربر رو بررسی و کنترل کنیم . مثلا میخوایم یک کیبورد موسیقی بسازیم و به ازای ورود هر کلید , یک نوت خاص پخش بشه ( این صرفا یک مثال هست ) .

از اونجایی که بین کاراکتر های کوچک و بزرگ انگلیسی تفاوت هست ( مثلا کاراکتر “k” با کاراکتر “K” تفاوت داره ) , توی مثال کیبورد موسیقی باید همون دستوری که برای کیس k مینویسیم رو برای کیس K هم کپی کنیم که این ایده آل نیست و خیلی کد نویسی رو طولانی میکنه و همچنین خیلی دستورات تکراری به وجود میاد !!

برای حل این مشکل میتونیم برای چند کیس مختلف , یک یا چند دستور بنویسیم و از تکرار جلوگیری کنیم .

اینطوری هرکدوم از کیس ها که درست بود , اون شرط ها بصورت کامل اجرا میشن !
توی قطعه کد بالا اگه کاراکتر a یا A باشه یک سری دستورات و اگه b یا B باشه یک سری دستورات دیگه , و در نهایت اگه c یا C و یا هیچ کدوم از موارد دیگه باشه یک سری دستورات دیگه اجرا میشه !!





خب فکر کنم دستور سویچ دیگه جا افتاده باشه .

حلقه ها :

توی برنامه نویسی یک وقتایی ما بشدت نیاز به تکرار یک سری کد داریم . مثلا میخوایم مثال بالا رو برای 1000 نفر انجام بدیم و حقوق 1000 نفر رو بررسی کنیم .

اولین راهی که ممکنه به ذهن برسه اینه که این کد ها رو 1000 بار کپی کنیم .

خب این راه حل به هیچ عنوان مناسب نیست و شک دارم در طول تاریخ برنامه نویسی کسی از این راه استفاده کرده باشه !!

اینجا حلقه ها به کمک برنامه نویسان اومدن !

وظیفه حلقه ها اینه که یک سری کد رو به تعداد دفعات مشخص و یا نا مشخص تکرار کنند .



ارسال شده توسط
fatemeh.E.z
 
  • Like
Reactions: ...zαнrα...*