آزمایشگاه GIS&GIT

مهندسی فناوری اطلاعات مکانی|مهندسی نقشه برداری|GIS|GEOMATICS|GIT
آزمایشگاه  GIS&GIT

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

جهت تماس از طریق ای دی زیر اقدام نمایید.
telegram:@fazel_shahcheragh
تلفن تماس جهت مشاوره:09124320328
برنامه نویسی و اسکریپت نویسی GIS
آموزش و رفع اشکال ARCPY
طراحی وتوسعه اپلیکیشن های موبایل
طراحی و توسعه برنامه های دسکتاپ جی ای اس

سید فاضل شاه چراغ
مدرس دانشگاه
طراح و مجری پروژه های GIS



























آزمایشگاه GIS&GIT

مهندسی فناوری اطلاعات مکانی|مهندسی نقشه برداری|GIS|GEOMATICS|GIT





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

باسلام...

در جلسه قبل یکی از مهمترین ساختار های برنامه نویسی (ساختار شرطی if..else) رو بررسی کردیم. با عملوندها و عملگرها آشنا شدیم. امیدوارم درس قبل رو بخوبی متوجه شده باشید.

در این جلسه به امید خدا در مورد ساختارهای تکرار صحبت می کنیم و یکی از مهمترین ساختارهای تکرار در برنامه نویسی سی شارپ رو با هم یاد می گیریم.

قبل از هرچیز باید ببینیم ساختار تکرار چی هست و چه کاربردی داره. در بیشتر مواقع نیاز داریم که یک کار تکراری رو بارها و بارها انجام بدیم. مثلا نام و نام خانوادگی 1000 نفر رو بپرسیم، عددهای زوج بین 2 تا 256 رو با هم جمع کنیم، فاکتوریل یک عدد رو محاسبه کنیم. رنگ یک دکمه رو بصورت متوالی قرمز و آبی کنیم و...

به ساختارهای تکرار، حلقه هم می گویند.

یکی از ساختارهای مهم تکرار ، ساختار while هست. به شکل کلی این ساختار توجه کنید:

while(Conditional Expression){
    Commands set
}

حلقه while ، تا زمانی که عبارت شرطی داخل پرانتز برابر با true باشد، مجموعه دستورات داخل آکولاد را اجرا می کند. ممکنه این عبارت هیچوقت برابر با false نشود، بنابراین حلقه تا بی نهایت ادامه پیدا می کند. اگر حلقه بصورت بی نهایت باشد، پس از اینکه مدتی از اجرای حلقه بگذرد برنامه با خطای Stack Overflow مواجه خواهد شد.(حالا فعلا کاری نداریم که این خطا چی هست).

بذارید در عمل با طرز کار این حلقه آشنا شویم. یک پروژه جدید بسازید و یک TextBox و یک دکمه روی فرم آن قرار دهید. خاصیت Name مربوط به شیئ TextBox رو به txtDisplay تغییر دهید.

loop structures example

برنامه پایین رو برای دکمه بنویسید. (البته اینکه می گوییم فلان برنامه رو برای دکمه بنویسید اصطلاح درستی نیست، بعدا که با "رویدادها" آشنا شدیم، متوجه خواهید شد)

while (txtDisplay.Text.Length < 5)
{
    txtDisplay.Text = txtDisplay.Text + "A";
}

این برنامه تا زمانی که طول متن داخل TextBox کمتر از 5 حرف باشد، حرف A را به TextBox اضافه می کند.

نکات جدید برنامه: 

  • برای بدست آوردن طول هر رشته ای می توانیم از خصوصیت Length آن رشته استفاده کنیم. دقت کنید که چطور طول متن داخل TextBox را بدست آورده ایم، سپس آنرا با 5 مقایسه کرده ایم.
  • به دستور  "txtDisplay.Text=txtDisplay.Text+"A  دقت کنید. به دستورهایی که در آنها علامت = وجود دارد، اصطلاحا "بیان انتساب" می گوییم. همیشه قسمت سمت راست علامت مساوی محاسبه شده سپس نتیجه آن به قسمت سمت چپ هدایت خواهد شد. باید توجه داشته باشید که مقدار قبلی قسمت سمت چپ با مقدار جدید جایگزین می شود.
  • در هر دور حلقه ، به متن داخل TextBox حرف A اضافه می شود. پس طبیعتا طول متن داخل TextBox زیادتر می شود؛ اما حلقه تا زمانی دستورهای داخل بلوک خود را اجرا می‌کند که طول متن کمتر از 5 باشد.
سعی کنید مقادیر و عبارات این برنامه را تغییر دهید و نتیجه را مشاهده کنید. مثلا علامت کوچکتر را با علامت های دیگری که در جلسه قبل با آنها آشنا شدید جایگزین کنید، سپس در نتیجه اجرای برنامه دقت کنید و برای آن دلیل بیاورید.
ادامه مبحث متغیرها:
تا اینجا کمی با متغیر آشنا شده ایم. متغیرهای رشته ای را مورد استفاده قرار دادیم. اما اجازه دهید بیشتر در مورد این جزء اساسی برنامه ها بیاموزیم.
متغیرها را می توان به دو دسته اصلی عددی و غیر عددی تقسیم کرد. متغیرهای رشته ای یا string در دسته غیرعددی ها قرار می گیرند.
متغیرهای عددی خود شامل دو دسته متغیرهای صحیح و متغیرهای اعشاری هستند. هرگاه بخواهیم یک عدد صحیح مانند 5 ، 136 ، 124313 و... را ذخیره کنیم باید آن ها را در متغیر نوع صحیح ذخیره کنیم. برای تعریف متغیرهای نوع صحیح به روش زیر عمل می کنیم:
int MyIntVariable=124313;

در عبارت بالا MyIntVariable ، نام متغیر بوده و کاملا صلیقه ای هست. کلمه کلیدی int به کامپیوتر می فهماند که باید یک متغیر نوع صحیح (Integer) بسازد. قسمت بعد از علامت مساوی کاملا اختیاری بوده و می توانید از آن صرف نظر کنید؛ این قسمت مقدار اولیه متغیر را مشخص می کند.

برای تعریف متغیرهای اعشاری به روش زیر عمل می کنیم:

float MyFloatVariable=3.1415f;

تنها نکته در مورد متغیرهای اعشاری این است که اگر دقت کنید بعد از عدد 3.1415 از حرف f استفاده کرده ایم. البته این کار ما علت هایی داره اما فعلا شما نیازی نیست درگیر این مسایل شوید.

علاوه بر int ، نوع های دیگری هم می توانیم برای متغیرهای صحیح تعریف کنیم. از جمله انواع متغیرهای صحیح می توان به byte ، long ، uint ، ulong و غیره اشاره کرده. تفاوت آنها در گنجایش آنها برای ذخیره اعداد هست. مثلا نوع byte حداکثر می تواند عددی به بزرگی 255 را در خود ذخیره کند.

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

ان شاء الله در جلسات آینده برنامه های جالبی با استفاده از همین متغیرها خواهیم ساخت.

موفق باشید.


 برگرفته شده از butterfly.blog.ir

نظرات  (۰)

هیچ نظری هنوز ثبت نشده است

ارسال نظر

ارسال نظر آزاد است، اما اگر قبلا در بیان ثبت نام کرده اید می توانید ابتدا وارد شوید.
شما میتوانید از این تگهای html استفاده کنید:
<b> یا <strong>، <em> یا <i>، <u>، <strike> یا <s>، <sup>، <sub>، <blockquote>، <code>، <pre>، <hr>، <br>، <p>، <a href="" title="">، <span style="">، <div align="">
تجدید کد امنیتی