آموزش سی‌شارپ C# – بخش ۳۹

آموزش سی‌شارپ C# – بخش ۳۹
  • 1392/4/17
  • Jeff Mosawy
  • 4
  • مقدمه

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

در این بخش، ما کمی با مثال در رابطه با این موضوع صحبت خواهیم کرد؛ پس با ما همراه باشید.

  • حلقه در آرایه‌ها

اگر پروژه‌ی از پیش ساخته‌ای از قبل ندارید، یک پروژه‌ی جدیدی را آغاز کنید و در در form ایجاد شده، یک button و یک listbox از بخش toolbox اضافه کنید. بر روی button دابل-کلیک کنید تا پنجره مربوط به کدنویسی باز شود. برای شروع، کد زیر را اضافه کنید تا ابتدا اگر مواردی در listbox موجود باشد، آن‌ها را محو کند:

private void button1_Click(object sender, EventArgs e)

{

            listBox1.Items.Clear();

}

برای دومین و سومین خط از کدنویسی، موارد زیر را اضافه کنید:

1-array_LotNums

حال برای هر یک از بخش‌های موجود در آرایه، یک مقداردهی اولیه انجام دهید:

2-array_LotNums2

برای نمایش تک‌تک مقادیر موجود در آرایه در listbox، شما اینکار را خواهید کرد:

listBox1.Items.Add(lottery_numbers[0]);

listBox1.Items.Add(lottery_numbers[1]);

listBox1.Items.Add(lottery_numbers[2]);

listBox1.Items.Add(lottery_numbers[3]);

و برای اینکه مقادیر را از آرایه‌ها دریافت کنیم، ما فقط نام آرایه و محل مورد نظر خودمان را می‌نویسیم تا مقدار مورد نظر برگردانده‌شود. هماهنند زیر:

lottery_numbers[0];

این کارها برای نمایش مقادیر داخل آرایه در listbox کفایت می‌کند؛ دقت کنید که کدهایتان می‌بایست مشابه زیر شده باشد:

3-array_LotNums2

اکنون کافیست که یکبار نرم‌افزار خود را اجرا کرده تا نتیجه را مشاهده کنید:

4-array_LotNums_Form

خوب؛ برنامه خود را ببینید. اگر دقت کنید،‌ متوجه خواهید شد که سایز آرایه ما بسیار کوچک است و تنها ۴ شماره را در خود ذخیره می‌کند؛ فرض کنید اگر آرایه‌ی ما ۱۰۰تایی باشد چه اتفاقی رخ خواهد داد؟ پس می‌بایست ما با استفاده از یک حلقه، بتوانیم (برای مثال) ۱۰۰ بار یک آرایه را پیمایش کنیم تا تمامی مقادیر داخل آن را بدست بیاوریم و در listbox نمایش دهیم.

به کد زیر دقت کنید:

for (int i = 0; i != (lottery_numbers.Length); i++)

{

            listBox1.Items.Add(lottery_number[i]);

}

کد بالا بدین شکل است؛ چون آرایه‌ها از مکان ۰ (صفر) شروع می‌شوند، پس ابتدای حلقه را صفر در نظر می‌گیریم (i = 0)

در قدم بعدی، می‌بایست به اندازی طول (length) آرایه، در آن پیمایش کنیم؛ پس کد زیر بدین معنی است که تا زمانی که به انتهای آرایه نرسیدیم، حلقه را ادامه بده:

i != (lottery_numbers.Length);

و در نهایت، در هر بار با استفاده از کد i++، یک خانه در آرایه جلوتر می‌رویم. کد مربوط به بدنه نیز کاملاً مشخص می‌باشد و نیازی به توضیح ندارد.

حال کدهای قبلی خودتان را پاک کنید و سعی کنید کدتان شبیه به کد زیر شود:

5-array_LotNums_loop

حال برنامه خود را اجرا کنید و مجدداً نتیجه را ببینید؛ متوجه خواهید شد که برنامه شما اینبار با کدهای خیلی کمتر، به درستی کار می‌کند. به عکس‌های زیر نیز دقت کنید تا نحوه کار حلقه را کمی بهتر متوجه شوید:

6-array_lotA

7-array_lotB

8-array_lotC

شما می‌توانید با استفاده از خود حلقه، حتی نسبت به مقداردهی آرایه نیز اقدام کنید؛ انجام این کار را به عهده شما قرار می‌دهیم، تنها یک نمونه کد در اینجا برای شما قرار می‌دهیم:

for (int i = 0; i != (lottery_numbers.Length); i++)

{

            lottery_numbers[i] = i + 1;

            listBox1.Items.Add(lottery_numebrs[i]);

}

جهت دریافت این بخش آموزشی به صورت یک فایل PDF، اینجا را کلیک کنید.

دیدگاه خود را وارد کنید
تعداد دیدگاه ها : 4 دیدگاه
  1. سلام
    با تشکر از آموزشتان
    من مدرس هستم و در این تابستان از هفته اینده قصد اموزش C# را دارم
    اما متاسفانه منبع ساده ای که به صورت روان اموزش داده باشد ندارم
    به نظرم مطالب شما برای این منظور مفید است اما من قسمت ارتباط با پایگاه داده را هم لازم دارم
    اگر برایتان امکان دارد و pdf بقیه مطالبتان اماده است لطف می کنید برایم ارسالشان کنید
    یا ادرس منبعی را در اختیارم قرار دهید
    با شکر

    1. سلام دوست عزیزم،

      ممنونم از شما! متأسفانه مطالب آموزشی من از قبل آماده نیستند (که اگر بودند، بعضی مواقع اینقدر فاصله زمانی میان دو آموزش زیاد نمی‌شد)
      هر بخشی، شب قبل از آن آماده می‌شود (و یا حتی ۱ ساعت قبل از آن) و سپس منتشر می‌گردد.

      باعرض پوزش از شما
      موفق باشید!

  2. خیلی ممنونم به خاطر آموزش عالی تون
    من یه سوال دارم
    به نظرتون کسی که بخواد یه برنامه نویس بشه باید علم ریاضی داشته باشه؟
    راستش من ریاضیم ضعیفه. یه کم از خودم نا امید شدم

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *