تبلیغات
banner
banner
banner
تبلیغات
banner

فیلم های آموزشی : 36 +

تعداد کاربران : 36 +

تعداد کل مطالب : 338 +

تعداد نظرات : 29 +

حضرت علی (ع) : دانش اندک همراه با عمل بهتر از علم بسیار بدون عمل است.

آموزش مقدماتی تا پیشرفته سی شارپ بخش بیست و پنجم


بسم الله الرحمن الرحیم

آموزش مقدماتی تا پیشرفته سی شارپ بخش بیست و پنجم

سلام به همه کاربران وبسایت بزرگ لندلرن

قسمت بیست و پنجم

شما مي توانيد به هر تعداد كه بخواهيد قسمتهاي if  else  را به يك دستور if براي بررسي حالتهاي مختلف اضـافه كنيـد .

اما همانطور كه ذكر شد، هنگامي كه ويژوال #C به اولين دستور if رسيد شرط داخل آن را بررسي ميكند. اگر عبارت داخل پرانتـز درست ارزيابي شود، دستورات داخل بلاك if اجرا مي شوند و كنترل برنامه به اولين خط بعـد از سـري دسـتورات if و    else  ميرود. در غير اين صورت، عبارت مربوط به اولين  else if  ارزيابي مي شود. اين روند ادامه پيدا مي كند تا برنامه به بلاكـي از دستورات برسد كه حاصل آن درست باشد.

در اين حالت دستورات اين بلاك اجرا شده و كنترل برنامه به بعـد از مجموعـه دسـتورات  if و else مي رود  .

نكته:

  1. هنگام بررسي يك سري از حالتها، بهتر است آنهايي را كه احتمال درست بودنشان بيشتر است، ابتدا بررسي كنيـد.
  2. ايـن مـورد باعث مي شود كامپايلر هنگام اجرا، شرايط اضافه را بررسي نكند و كد سريعتر اجرا شود .
  3. در مواردي كه تعداد قسمتهاي if else  در برنامه زياد باشد و حالتهاي زيادي را بايد بررسي كنيد، به جـاي اسـتفاده از if  و  else if ميتوانيد از switch استفاده كنيد كه در قسمتهاي بعدي توضيح داده مي شوند .

دستورات if تودرتو :

علاوه بر استفاده متوالي از دستورات if ،مي توانيد در داخل يك if از دستورات if ديگري استفاده كنيد . بـه مثـال زيـر توجـه كنيد:

در استفاده از دستورات if تودرتو هيچ محدوديتي نيست. البته بايد دقت كنيد كه هر چه تعـداد  ifهـاي تودرتـو در برنامـه بيـشتر باشد، درك آن مشكلتر مي شود. بنابراين سعي كنيد تا جايي كه ميتوانيد تعداد  ifهاي تودرتو را در برنامه كم كنيد.

عملگرهاي مقايسه اي :

 

در قسمتهاي قبلي، نحوه بررسي برابر بودن يك متغيير را با مقادي ر مختلف براي استفاده در شرط يك دستور if ديديم. امـا دسـتور if بسيار انعطاف پذير تر است.

شما ميتوانيد براي شرط اين دستور از سوالهايي مثل موارد زير استفاده كنيد كه پاسخ همه آنها بله يا خير است.

  • آيا intNumber بزرگتر از ۴۹ است؟
  • آيا intNumber كوچكتر از ۴۹ است؟
  • آ يا آ intNumber بزرگتر يا مساوي ۴۹ است؟
  • آيا intNumber كوچكتر يا مساوي ۴۹ است؟
  • آيا strName برابر با Ben است؟

هنگام كار با متغيير هاي رشته اي، معمولا از شرطهاي برابر بودن يا مخالف بودن استفاده ميكنيد. اما هنگام كار با متغيير هاي عددي (چه اعداد صحيح و چه اعداد اعشاري) مي توانيد از تمام عملگر هاي رياضي كه در بالا ذكر شد استفاده كنيد.


استفاده از عملگر مخالف :

تاكنون از عملگر مخالف استفاده نكرده ايم. بنابراين در امتحان كنيد بعد نحوه اسـتفاده از ايـن عملگـر را بـا متغييـر هـاي رشـته اي خواهيم ديد .

 

امتحان كنيد: استفاده از عملگر مخالف

  1. يك برنامه تحت ويندوز جديد به نام If Demo ايجاد كنيد.
  2. هنگامي كه محيط طراحي Form1 را مشاهده كرديد، يك كنتـرل TextBox و يـك كنتـرل Button را بـه وسيله جعبه ابزار بر روي فرم قرار دهيد . خاصيت Name كنترل TextBox را برابـر بـا txtName و خاصـيت Text آن را ب رابر با landlearn قرار دهيد. سپس خاصيت Name كنترل Button را برابر btnCheck و خاصيت Text آن را برابر Check قرار دهيد.
  3. روي Button دو بار كليك كنيد و كد زير را در بخش رويداد Click مربوط به آن قرار دهيد:
  • برنامه را اجرا كنيد و روي د كمه Check كليك كنيد. كادر پيغامي را مشاهده خواهيد كرد كه ميگويد نـام داخـل جعبـه متني برابر با Gretchen نيست.

چگونه كار مي كند؟

عملگر مخـالف در زبـان #C بـه صـورت =! اسـت . هنگـامي كـه كـاربر روي دكمـه فرمـان كليـك مـي كنـد، اول مـتن درون TextBox  به وسيله خاصيت Text آن بدست آورده مي شود و درون يك متغيير رشته اي قرار مي گيرد.

 

بعد از اينكه نام وارد شده در متغيير قرار گرفت، با استفاده از عملگر مخالف مقدار درون متغيير رشته اي با يك عبارت رشته اي ديگـر مقايسه شده و نتيجه اين مقايسه براي اجراي دستورات if استفاده مي شود.

به پایان قسمت ۲۵ آموزش صفرتا صد سی شارپ رسیدیم تا اینجا تنها ۱۰ درصد از مسیر آموزش سی شارپ را طی کردیم با قسمت ۲۶ همراه ما باشید.


درباره نویسنده
سجاد اسدی
   سجاد اسدی

سجاد اسدی هستم دانشجوی رشته نرم افزار و علاقه مند به تدریس و یادگیری دروس مرتبط با تکنولوژی نرم افزار و اینترنت اشیاء جهت ارتباط با بنده مراجعه شود به آیدی سروش و تلگرام : @ordervira و پیج بنده در اینستاگرام instagram.com/sajjadred11 ""اللهم صل علی محمد و آل محمد"" برای شروع هیچ وقت دیر نیست. "الهم عجل لولیک الفرج"

دیدگاه بگذارید

avatar
  اشتراک  
اطلاع رسانی

aparat کانال آپارات

soroush کانال سروش

کانال آی گپ