تبیان، دستیار زندگی
قبل از ادامه دادن پروژه ی ماشین حساب لازم است اطلاعاتی در مورد تبدیل انواع داده در سی شارپ به دست آوریم. اگر بخواهیم یک عدد را در یک متغیر نگهداری کنیم می توان کدی مانند زیر نوشت....
عکس نویسنده
عکس نویسنده
نویسنده : محسن نصرتی
بازدید :
زمان تقریبی مطالعه :

ساخت بازی پازل با #C، جلسه چهارم

آموزش برنامه نویسی#c، جلسه چهارم

هدف کلی:

نوشتن ماشین حساب ساده


سرفصل های تئوری:
1. تبدیل نوع متغیرها
2. ادامه نوشتن ماشین حساب
3. عملگرها
4. توضیحات


رشته ها و تبدیل نوع:
قبل از ادامه دادن پروژه ی ماشین حساب لازم است اطلاعاتی در مورد تبدیل انواع داده در سی شارپ به دست آوریم. اگر بخواهیم یک عدد را در یک متغیر نگهداری کنیم می توان کدی مانند زیر نوشت:

آموزش برنامه نویسی#c، جلسه چهارم

حال نظر شما درباره ی عبارت زیر چیست؟

آموزش برنامه نویسی#c، جلسه چهارم

این عبارت خطاست (همان طور که مشاهده می کنید ویژوال با کشیدن خط قرمز زیر آن سعی دارد ما را متوجه اشتباه بودن این عبارت بکند)، چرا که نمی توان یک رشته را داخل یک عدد قرار داد، برای مواقعی که نیاز داریم یکی از انواع داده را به دیگری تبدیل کنیم، بایست از عملیات تبدیل نوع (casting) استفاده کنیم، این کار را به شیوه های گوناگونی برای انواع مختلف تبدیلات می توان انجام داد، یکی از آنها استفاده از توابع کلاس Convert است:

آموزش برنامه نویسی#c، جلسه چهارم

در این حالت مقدار رشته ی درون Textbox تبدیل به یک عدد صحیح 32 بیتی شده و در number قرار داده می شود. حال اگر بخواهیم برژس این کار را انجام بدهیم و یک عدد را در رشته بریزیم می توانیم مانند زیر عمل کنیم:

آموزش برنامه نویسی#c، جلسه چهارم

مرحله دوم پروژ ماشین حساب:
بعد از گرفتن عدد ورودی کاربر (که در جلسه ی قبل یاد گرفتیم) لازم است برنامه عدد ورودی را با توجه به زدن دکمه های + / - و * وکلید مساوی تغییر و نتیجه را نمایش دهد. ما برای ادامه کار لازم است دو متغیر برای گرفتن عدد اول و دوم مربوط به محاسبه مورد نظر از نوع صحیح و یک متغیر برای تشخیص کلید های جمع * و- و / و % تعریف کنیم.

آموزش برنامه نویسی#c، جلسه چهارم

یک متغیر را می توانیم در داخل یک متد درون کلاس و همچنین بیرون یک متد و بالای کلاس فرم تعریف کنیم. اگر با طول عمر متغیرها آشنایی داشته باشید، می دانید که وقتی متغیری را داخل یک بلاک تعریف می کنیم، عمر متغیر تنها در زمانی که ما داخل آن بلاک قرار داریم می باشد و اگر از آن متد یا بلاک بیرون برویم آن متغیر دیگر مفهومی برای توابع ندارد بنابر این برای اینکه متغیر ما داخل همه متدهای رویداد کلیک کلید های * + - و/ شناخته شده و قابل استفاده باشد لازم است متغیری سراسری تعریف کنیم که با رفتن در متدهای مختلف مقدار آن محفوظ باشد بنابر این متغیر را بالای کلاس فرم به صورت زیر تعریف می کنیم:

آموزش برنامه نویسی#c، جلسه چهارم

تا این قسمت از برنامه ما می توانستیم یک عدد را داخل TextBox وارد کنیم بنابراین لازم است که مقدار متغیر داخل TextBox را که از نوع رشته است به نوع Int تبدیل کنیم اما چه زمانی ما باید این کار را انجام دهیم؟
می توان گفت زمانی که یکی از کلید های عملگر را انتخاب می کنیم، زیرا متغیر اول ما تمام شده و می خواهیم با انتخاب یکی از عملگرهای + و * و  ? و % و / این عمل را بر روی متغیر دوم ما که پس از فشردن یکی از این کلید ها وارد خواهد شد انجام دهیم.
بنابراین در هر کدام از این کلیدها کافیست که مقدار داخلTextBox1 را پس از تبدیل به نوع int  داخل متغیر اول  قرار دهیم و سپس مقدار TextBox را خالی نمائی  ('''=TextBox.Text)تا آماده وارد شدن متغیر دوم شویم.
تذکر: با زدن یکی از این عملگرها باید متغیری که برای عملگر تعریف کردیم را مقدار دهی نمائیم تا بتوانیم تشخیص دهیم کاربر چه عملگری را وارد کرده است بنابراین با دادن مقدار قرار دادی ( کلید + مقدار 1 و کلید  - مقدار 2 و.... به ترتیب مقدار دهیم)
 حالا کافیست که در متد رویداد کلیک کلید مساوی مقدار TextBox1 را بگیریم و پس از تبدیل به نوع int داخل متغیر دوم قرار دهیم و شرط های زیر را بنویسیم. این شرطها با توجه به عملگرهایی است که شما برای این دو متغیر تعریف کردید بنابراین پس از اعمال این دو متغیر باید نتیجه را داخل TextBox1 قرار دهیم.

آموزش برنامه نویسی#c، جلسه چهارم

شما می توانید کلید ها را رنگ آمیزی کرده و صفحه فرم را  رنگی کنید و اعمال مثل جذر یا log، sin، cos و ... اضافه و ماشین حساب خود را روز به روز پیشرفته تر کنید.

عملگرها:
همان طور که در مثال هم مشاهده کردید، زبان سی شارپ هم مانند سایر زبان های برنامه نویسی دارای عملگرهای مختلفی است که لیستی از آنها را در زیر مشاهده می کنید:

نوع عملگر

مثال

عملگرهای ریاضی

+   -   /   *

عملگرهای منطقی

&&  ||   ==   !=

عملگرهای بیتی

&   |   ^   ~

توضیحات:
نکته ی دیگری که در هر زبان برنامه نویسی وجود دارد و به خواناتر شدن کد برای برنامه نویسان کمک می کند توضیحات است، معمولا در برنامه نویسی کنار اسم متغیرهای مهم و یا توابع اینکه قرار است چه استفاده ای از آنها بشود را به صورت توضیح (comment) قرار می دهند، کامنت ها توسط کامپایلر اجرا نمی شوند و صرفا برای کمک به برنامه نویس ها هستند. توضیحات در برنامه #C به سه صورت استفاده می شوند:
1- نسخه xml

///  XML comment describing a class

یک توضیح xml با سه خط کج(///) همراه می باشد و معمولا جهت برچسب های xml استفاده می شود.
2- نسخه یک خطی  for a single line//
3- نسخه چند خطی            /* for one or more lines  */
مثال:

آموزش برنامه نویسی#c، جلسه چهارم

ساخت بازی پازل با# C، جلسه اول
ساخت بازی پازل با# C، جلسه دوم
ساخت بازی پازل با# C، جلسه سوم
ساخت بازی پازل با# C، جلسه چهارم
ساخت بازی پازل با# C، جلسه پنجم
ساخت بازی پازل با# C، جلسه ششم
ساخت بازی پازل با# C، جلسه هفتم
ساخت بازی پازل با# C، جلسه هشتم 

بخش پژوهش های دانش آموزی تبیان، تهیه: محسن نصرتی

تنظیم: نسرین صادقی