do/while Döngü yapısı
do/while DÖNGÜ YAPISIdo/while döngü yapısı, while yapısına oldukça benzer. while yapısında döngü devam koşulu, döngünün gövdesinden önce test ediliyordu. do/while yapısında ise döngü devam koşulu, döngünün gövdesi çalıştırıldıktan sonra kontrol edilir. Bu sebepten, döngünün gövdesi en az bir kez çalıştırılır. do/while yapısı sonladığında program, while cümlesinden sonraki ifadeden devam eder. Eğer do/while yapısının gövdesi tek bir ifadeden oluşuyorsa, küme parantezlerini kullanmaya gerek yoktur. Buna rağmen, while yapısıyla do/while yapısının karışmasını önlemek için küme parantezleri kullanılır. Örneğin,
1 |
while( koşul )
|
normal olarak bir while yapısının başlığı olarak algılanır. Küme parantezleri kullanılmadan yazılacak bir do/while yapısı ise aşağıdaki biçimde görünür:
1 |
do |
bu da bazen yanıltıcı olabilir. Son satır, okuyucu tarafından boş bir ifade içeren while yapısı gibi anlaşılabilir. Bu sebepten, tek ifadeye sahip do/while yapıları bu karışıklığı önlemek için
1 |
do{ |
biçiminde yazılır.
İyi Programlama Alıştırmaları 4.17
Bazı programcılar küme parantezine ihtiyaç duyulmasa bile do/while yapısında küme parantezlerini kullanırlar.Bu, tek ifade içeren do/while yapıları ile while yapılarının karıştırılmasını engeller.
Genel Programlama Hataları 4.7
while, for ya da do/while yapılarında döngü devam şartı asla yanlış hale gelmiyorsa, sonsuz döngüler oluşur. Bunu önlemek için, while ya da for yapılarının başlatıldığı kısmın sonuna noktalı virgül koymadığınıza emin olun. Sayıcı kontrollü döngülerde, kontrol değişkeninin döngü gövdesinde arttırılmasına ( ya da azaltılmasına ) dikkat edin. Nöbetçi kontrollü döngülerde nöbetçi değerin girildiğine emin olun
Şekil 4.9, do/while yapısıyla 1'den 10'a kadar olan sayıları yazdırmaktadır. Kontrol değişkeni olan sayici değişkeninin, döngü devam koşulu içinde ön arttırma ile arttırıldığına dikkat edin. Ayrıca do/while yapısının tek ifadeden oluşan gövdesinin, küme parantezleri içine alındığına da dikkat edin.
do/while yapısının akış grafiği Şekil 4.10'da gösterilmiştir. Bu akış grafiği, döngü devam koşulunun işlemler en az bir kez yapılmadan çalıştırılmadığını açıkça göstermektedir. Bu akış grafiğinde de (çember ve akış çizgileri dışında) yalnızca dikdörtgen ve elmas sembollerinin bulunduğuna dikkat ediniz. Bir kez daha, programcının algoritma oluşturmak için istediği kadar do/while yapısını diğer kontrol yapılarının üzerine dizebileceğini ya da içlerine yuvalayabileceğini hatırlayınız. Programcı, algoritmasını tamamlayabilmek için dikdörtgen ve elmas sembollerinin içlerini tamamlayacaktır.
1 |
/* Şekil 4.9: fig04_09.c |
1 2 3 4 5 6 7 8 9 10
Şekil 4.9 do/while yapısını kullanmak
Bilinmesi Gerekli
Arduino

Arduino ile bilgisayar programlarınızı gerçek dünyaya taşıyabilirsiniz.
İlk Transistör

Bell laboratuvarlarında icat edilen ilk transistör







