در خدمت شما هستیم با آموزش کار با حلقه ها در برنامه نویسی GO از وب سایت آموزش برنامه نویسی سورس باران. در این جلسه خیلی ساده و روان با حلقه ها در برنامه نویسی GO را خواهیم داشت. با ما همراه باشید…
کار با حلقه ها در برنامه نویسی GO
زمانی شما می خواهید یک بلوک از کد را چندبار تکرار کنید.بطور کلی دستورات بطور مرحله ای اجرا میشوند:دستور اول یک تابع است که ابتدا اجرا میشود بعد دوم وبعد غیره زبان های برنامه نویسی کنترل زیادی برای مسیر های پیچیده اجرا،فراهم میکنند. دستور حلقه به ما در اجرای یک دستور یا گروهی از دستورات بطور چند بار پشت سرهم کمک میکند شکل زیر نمونه ای از یک دستور حلقه در زبان های برنامه نویسی است
این زبان انواع حلقه های زیر را پشتیبانی میکند
Sr.No | Control Statement & Description |
---|---|
۱ |
break statement It terminates a for loop or switch statement and transfers execution to the statement immediately following the for loop or switch. |
۲ | continue statement
It causes the loop to skip the remainder of its body and immediately retest its condition prior to reiterating. |
۳ | goto statement
It transfers control to the labeled statement. |
سریعا تمام دستورات داخل حلقه را متوقف و ازحلقه بیرون می آید
break statement
شرط قبلی را ادامه میدهد و دستور بعدی را اجرانمیکند و ازحلقه بیرون می آید
continue statement
کنترل را به دستور علامت زده شده ارسال میکند
goto statement
دستورات کنترل حلقه در برنامه نویسی GO
این دستورات اجرای دستورات آن را از مراحل نرمال خود تغییر میدهد زمانیکه اجرا یک مقدار false برمیگرداند، تمام اشیای اتوماتیک که ایجاد شده بودند،متوقف خواهند شد زبان C دستورات کنترل کننده زبر راپشتیبانی میکند
Sr.No | Loop Type & Description |
---|---|
۱ | for loop
It executes a sequence of statements multiple times and abbreviates the code that manages the loop variable. |
۲ | nested loops
These are one or multiple loops inside any for loop. |
حلقه بی نهایت در برنامه نویسی GO
یک حلقه زمانی بی نهایت میشود که شرط هیچ وقت false نشود.حلقه for مخصوصا برای اینکار استفاده میشود زمانی که هیچ کدام از دستورات داخل حلقه نیاز نباشد،شما میتوانید یک حلقه بی پایان با خالی گذاشتن عبارت ها بسازید
<span class="kwd">package</span><span class="pln"> main </span><span class="kwd">import</span> <span class="str">"fmt"</span><span class="pln"> func main</span><span class="pun">()</span> <span class="pun">{</span> <span class="kwd">for</span> <span class="kwd">true</span> <span class="pun">{</span><span class="pln"> fmt</span><span class="pun">.</span><span class="typ">Printf</span><span class="pun">(</span><span class="str">"This loop will run forever.\n"</span><span class="pun">);</span> <span class="pun">}</span> <span class="pun">}</span>
زمانی که عبارت شرطی وجود نداشته باشد، فرض میکند که شرط درست است شما میتوانید یک مقداردهی یا اضافه کردن داشته باشید اما برنامه نویسان زبان C بیشتر از عبارت for(;;) برای ساخت حلقه بی نهایت استفاده میکنند.
نکته: شما میتوانید بافشردن کلید ترکیبی Ctrl + C یک حلقه بی نهایت را متوقف کنید
چند مثال از حلقه در برنامه نویسی Go
component loop
sum := 0 <b>for i := 1; i < 5; i++</b> { sum += i } fmt.Println(sum) <span class="comment">// 10 (1+2+3+4)</span>
This version of the Go for loop works just as in C/Java/JavaScript.
- The init statement,
i := 0
, runs. - The condition,
i < 5
, is evaluated.- If it’s true, the loop body executes,
- otherwise the loop terminates.
- The post statement,
i++
, executes. - Back to step 2.
The scope of i
is limited to the loop.
While loop
If the init and post statements are omitted, the Go for
loop behaves like a C/Java/JavaScript while loop:
power := 1 <b>for power < 5</b> { power *= 2 } fmt.Println(power) <span class="comment">// 8 (1*2*2*2)</span>
- The condition,
i < 5
, is evaluated.- If it’s true, the loop body executes,
- otherwise the loop terminates.
- Back to step 1.
Infinite loop
By also leaving out the condition, you get an infinite loop.
sum := 0 <b>for</b> { sum++ <span class="comment">// repeated forever</span> } fmt.Println(sum) <span class="comment">// unreachable</span>
For each loop
Looping over elements in slices, arrays, maps, channels and strings is often better done using the range
keyword:
strings := []string{"hello", "world"} <b>for i, s := range strings</b> { fmt.Println(i, s) }
0 hello 1 world
For more examples, see Range loops (for each loops) explained.
Exit a loop
The break
and continue
keywords work just as they do in C/Java/JavaScript.
sum := 0 for i := 1; i < 5; i++ { if i%2 != 0 { <span class="comment">// skip odd numbers</span> <b>continue</b> } sum += i } fmt.Println(sum) <span class="comment">// 6 (2+4)</span>لیست منابع : منبع ۱ منبع ۲
The post آموزش کار با حلقه ها در برنامه نویسی GO appeared first on آموزش برنامه نویسی.