1. مهمان گرامی، جهت ارسال پست، دانلود و سایر امکانات ویژه کاربران عضو، ثبت نام کنید.
    بستن اطلاعیه

حلقه های تکرار در vb

شروع موضوع توسط minaaa ‏11/11/11 در انجمن VB

  1. کاربر پیشرفته

    تاریخ عضویت:
    ‏9/12/10
    ارسال ها:
    19,795
    تشکر شده:
    6,456
    امتیاز دستاورد:
    113
    [h=2][/h]
    تو برنامه نويسي گاهي (شايدم زياد) پيش مياد كه بخوايم يه تيكه از كدمون رو تا وقتي كه ميخوايم تكرار كنيم

    مثلا ساده ترين برنامه اي كه ميشه نوشت به اين صورته كه اگه بخوايم اعداد يك تا 10 رو چاپ كنيم در صورتي كه از

    ساختار حلقه استفاده نشه بايد يه الگوريتمي مثل پايين داشته باشه


    1 رو چاپ كن
    2 رو چاپ كن
    3 رو چاپ كن
    .
    .
    .
    .
    و الي آخر


    که اين برنامه حدودا ميشه 10 يا 12 سطر ولي اگه بخوايم از 1 تا 100 يا 1000 رو چاپ كنيم بايد برناممون 100 خط

    داشته باشه كه اين 100 خط رو ميشه با يه حلقه تو 3 يا 4 خط خلاصه كرد

    حلقه تکرار For:

    از این حلقه برای تکرار عملیات خاصی به تعداد مشخص انجام می شود. يعني هموني كه بالا مثال زدم

    شكل كلي :

    کد کد:

    : For Counter = Start_Value To End_Value [Step Step_Count] بلاکی از یک یا چند دستور ویژوال بیسیک Next [Counter] Counter شمارنده حلقه Start_Value مقدار اولیه شمارنده End_Value مقدار پایانی شمارنده ​


    ابتدا متغییر counter برابر Start_Value قرار می گیرد و دستورات یک بار اجرا می شوند سپس counter به اندازه

    Step_Count افزایش یافته و دوباره دستورات اجرا می شوند و این عمل تا وقتی که به End_Value برسیم تکرار می

    شود.

    نکته:

    اگر Step_Count ذکر نشود مقدار پیش فرض آن یک می باشد.

    می توان Counter جلوی Next را ننوشت ولی به دلیل ناخوانایی برنامه در حلقه های تودرتو این کار توصیه نمی شود.

    مثال:

    کد:

    کد:

    Dim i, Sum As Integer For i = 0 To 100 Sum = Sum + i Next i Text1.Text = Sum ​

    در این مثال مجموع اعداد بین 0 تا 100 محاسبه شده و در آخر مقدار آن در جعبه متن قرار داده می شود.

    کد:

    کد:

    Dim i, Sum As Integer For i = 1 To 10 Step 2 Sum = Sum + i Next i Text1.Text = Sum در این مثال مجموع اعداد فرد بین 1 تا 10 محاسبه می شود. کد: Dim i As Single Dim Counter As Integer For i = 5 To -5 Step -0.5 Counter = Counter + 1 Next Text1.Text = Counter ​

    در این مثال تعداد پیمایش اعداد بین 5 تا 5- با مقدار 0.5- شمارش می شود.

    این مثال برای این آورده شده است که ببینید از اعداد منفی و اعشاری هم می توان در حلقه For استفاده کند.


    با استفاده از دستور Exit For می توان قبل از موعد مقرر از حلقه خارج شد
    .
    مثال:

    کد:

    کد:

    For i = 10 To 100 If (i Mod 7) = 0 Then Exit For Next i Text1.Text = "The first number is " & i ​

    این مثال اولین عدد بخش پذیر بر 7 را بر می گرداند. هنگامی که عدد بر 7 بخش پذیر شود با دستور Exit For از حلقه

    بیرون می آییم. (راستش يادم نيست MOD رو گفتيم يا نه ولي بهش ميرسم . Mod باقيمانده i رو بر 7 برميگردونه )


    يه مثال ديگه (يه كم بزرگتر) :

    کد:

    کد:

    For i = 0 To 100 If (i Mod 2) = 0 Then Even = Even + 1 Else Odd = Odd + 1 End If Next i ​


    Text1.Text = "Even numbers: " & Even & " Odd numbers: " & Oddاين برنامه هم تعداد اعداد زوج و فرد رو از 1 تا 100 ميشمره و تو text1 چاپ ميكنه​