ParsX.com
پذیرش پروژه از دانشجویی ... تا سازمانی 09376225339
 
   ProfileProfile   Log in to check your private messagesLog in to check your private messages  |  FAQFAQ   SearchSearch   MemberlistMemberlist   UsergroupsUsergroups Log inLog in   RegisterRegister 

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

 
Post new topic   Reply to topic    ParsX.com Forum Index -> ويژوال بيسيك .NET
View previous topic :: View next topic  
Author Message
unknown
مدير بخش ويژوال بيسيك
مدير بخش ويژوال بيسيك


Joined: 05 Dec 2004
Posts: 439
Location: Tehran

PostPosted: Sat Feb 26, 2005 11:09 am    Post subject: حلقه های تکرار Reply with quote

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

حلقه تکرار 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 از حلقه بیرون می آییم.

مثال:

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


این مثال تعداد اعداد زوج و فرد 0 تا 100 را می شمارد.


حلقه تکرار While:
اجرای دستورات تا زمانی که شرط درست است انجام می شود.
نکته: شرط حلقه در ابتدای حلقه چک می شود.

While condition
   بلاکی از یک یا چند دستور ویژوال بیسیک
Wend

از While بیشتر برای پیمایش رشته ها استفاده می شود.

مثال:

While Not state
    List1.AddItem i
    i = i + 1
    If i > 20 Then state = True
Wend

تا وقتی که state ارزش نادرستی دارد دستورات انجام می شود.
اعداد 0 تا 20 در لیست چاپ می شوند.


حلقه های تکرار Do:

حلقه Do چند نوع مختلف دارد که هرکدام با مثال توضاح داده می شود.
نوع اول:


Do while condition
   بلاکی از یک یا چند دستور ویژوال بیسیک
Loop

تا وقتی که شرط درست است دستورات انجام می شوند. شرط در ابتدای حلقه چک می شود.
مثال:

Dim i, sum As Integer
Dim State As Boolean
State = True
Do While State
    sum = sum + i
    i = i + 1
    If i > 100 Then State = False
Loop
Text1.Text = sum

مجموع اعداد 0 تا 100 را محاسبه می کند.

نوع دوم:

Do
   بلاکی از یک یا چند دستور ویژوال بیسیک
Loop while condition

تا وقتی که شرط درست است دستورات انجام می شوند. شرط در انتهای حلقه چک می شود.
مثال:

Dim i, sum As Integer
Dim State As Boolean
Do
    State = True
    sum = sum + i
    i = i + 1
    If i > 100 Then State = False
Loop While State
Text1.Text = sum


نوع سوم:

Do Until condition
   بلاکی از یک یا چند دستور ویژوال بیسیک
Loop

تا وقتی شرط نادرست است دستورات اجرا می شوند و به محض این که شرط برقرار شد اجرای حلقه خاتمه می یابد. شرط در ابتدای حلقه چک می شود.
مثال:

Dim x As Integer
x = 1
Do Until x < 0
    List1.AddItem x
    x = x + 1
    If x > 20 Then x = -1
Loop

اعداد 1 تا 20 را در لیست چاپ می کند.

نوع چهارم:

Do
   بلاکی از یک یا چند دستور ویژوال بیسیک
Loop Until condition

تا وقتی شرط نادرست است دستورات اجرا می شوند و به محض این که شرط برقرار شد اجرای حلقه خاتمه می یابد. شرط در انتهای حلقه چک می شود.

مثال:

Dim x As Integer
x = 1
Do
    List1.AddItem x
    x = x + 1
    If x > 20 Then x = -1
Loop Until x < 0

اعداد 1 تا 20 را در لیست چاپ می کند.



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

Dim x As Boolean
Dim i As Integer
Do While 1
    List1.AddItem i
    i = i + 1
    If i > 20 Then Exit Do
Loop

شرط حلقه همیشه برقرار است پس باید برای خاتمه حلقه از Exit Do استقاده کرد.
اعداد 0 تا 20 در لیست چاپ می شوند.

در ایجا حلقه های تکرار به پایان رسید ولی بهید به چند نکته دقت کرد:
حلقه بینهایت حلقه ای است که هیچگاه خاتمه نمی یابد و این در برنامه ایجاد اخلال می کند. همیشه از خاتمه یافتن حلقه اطمینان پیدا کنید.

اگر چند حلقه درون هم به کار روند حلقه تودرتو داریم. در حلقه های تودر تو اول حلقه داخی تر کاملا اجرا شده بعد حلقه های بیرونی اجرا می شوند.از حلقه های تودر تو بیشتر برای مقدار دادن به آرایه های چند بعدی استفاده می شود.


مولف:
امیر مرادآبادی (amirmoradabadi@yahoo.com)
Back to top
Display posts from previous:   
Post new topic   Reply to topic    ParsX.com Forum Index -> ويژوال بيسيك .NET All times are GMT + 3.5 Hours
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum