Sunum yükleniyor. Lütfen bekleyiniz

Sunum yükleniyor. Lütfen bekleyiniz

Doç. Dr. Cemil Öz SAÜ Bilgisayar Mühendisliği Dr. Cemil Öz.

Benzer bir sunumlar


... konulu sunumlar: "Doç. Dr. Cemil Öz SAÜ Bilgisayar Mühendisliği Dr. Cemil Öz."— Sunum transkripti:

1 Doç. Dr. Cemil Öz SAÜ Bilgisayar Mühendisliği Dr. Cemil Öz

2 “switch - case” seçme yapısı “switch” – “case” seçme yapısı bir değişkenin içeriğine bakarak programın akışını birçok seçenekten birisine yönlendiren bir karşılaştırma deyimidir. Değişkenin içeriği hangi sabit ile uyuşursa ona ait işlem kümesi ve arkasındaki bütün işlem kümeleri yürütülür. Ancak küme deyimleri arasında break kullanılırsa, daha sonraki tüm işlem kümeleri atlanarak “switch” bloğunun sonuna gidilir. “switch” – “case” seçme yapısı akış diyagramı olarak aşağıdaki şekilde gösterilmekte ve genel yazılım formatı verilmektedir;

3

4 Örnek: “switch”– “case” seçme yapısı için örnek bir C/C++ programı; #include void main(void) {char a; clrscr(); printf("1-5 arasi bir rakam giriniz: "); scanf("%c",&a); switch (a) { case '1': printf("cok zayif \n"); break; case '2': printf("zayif \n"); break; case '3': printf("orta \n"); break; case '4': printf("iyi \n"); break; case '5': printf("pekiyi \n"); break; default: printf("yanlis secim \n"); } getch(); }

5 Tekrar (Döngü) Yapıları Tekrar (döngü) yapıları belirli bir kod parçasının farklı değerler üzerinde tekrar tekrar çalıştırılmasını sağlar. Örneğin dizi ve matrise dayalı uygulamalar genel olarak döngü deyimlerini kullanır. Uygulamalarda sıklıkla döngü kurulması gerekmektedir. Bu döngü kurma işlemi, ya döngü deyimleriyle yada yapısal programlamada ilke olarak kullanılması istenilmeyen goto deyimiyle gerçekleştirilir. Döngü deyimleri uygulamalarda yazılan kod uzunluğunu azaltır. Bazı algoritmaların döngü deyimleri kullanılarak yazılması kaçınılmaz olabilir.

6 Tekrar (Döngü) Yapıları Döngü deyimleri kendi içerisinde iki sınıfa ayrılır. Birisi koşulu başta sınayan, diğeri koşulu sonda sınayan. Koşulu başa sınaması, daha çevrime girmeden döngü koşuluna bakılması ve koşul olumlu ise çevrime girilmesi, koşul olumsuz ise çevrime girilmeden sonraki adımlara geçilmesi anlamına gelir. Koşulun sonda sınanması ise, çevrim içerisinde kodun en az bir kere işletilmesi ve eğer koşul sağlanıyorsa çevrime devam edilmesi sağlanmıyor ise çevrimden çıkılması anlamına gelir.

7 FOR Döngüsü “for” döngüsü aynı işlemleri birçok kez tekrarlamak için kullanılır. Koşul sınaması çevrime girmeden yapılır. “for” döngüsünde koşul sayacı ve “for” koşul satırında üç parametre vardır. Birinci parametre döngü sayacına başlangıç değeri verilmesi, ikinci parametre koşulu ve üçüncü parametre her çevrimde sayacın nasıl artacağını/eksileceğini ifade eder. Döngüye girmeden önce sayaç başlangıç değeri alır ve daha sonra koşula bakılır. Döngü içerisindeki işlemler yapıldıktan sonra sayaç üçüncü parametrenin durumuna göre değiştirilir (artırılır/eksiltilir).

8 FOR Döngüsü Örnek yazılım formatları: for (k=1;k<50; k+=2) for (k=5;k<=n; k++) for (x=50;x>10;x--) for ( ;x<10;x++) /* başlangıç değeri daha önce atanmış olmalı */ for (x=2;x<n; ) /* x döngü sayacı döngü içinde değiştirilmeli */

9 FOR Döngüsü Aşağıda verilen şekilde “for” döngü yapısı akış diyagramı olarak gösterilmekte ve genel yazılım formatı verilmektedir;

10 FOR Döngüsü Örnek: #include main() { int ctr; for(ctr=1; ctr<=10; ctr++) {printf(“%d \n “, ctr);} // body of loop return 0; }

11 FOR Döngüsü Örnek: #include void main(void) {int i, n, faktoriyel=1; clrscr(); printf("faktoriyeli alinacak sayiyi giriniz: "); scanf("%d",&n); for(i=1;i<=n;i++) { faktoriyel*=i; /* faktoriyel=faktoriyel*i */ }/* tek deyim oldugu icin parantezler kullanılmaya bilirdi */ printf("hesaplanan faktoriyel değeri = %d\n",faktoriyel); getch(); }

12 FOR Döngüsü Örnek: #include main() { char letter; for( letter = 'A'; letter <= ‘Z'; letter = letter + 1 ) { printf("%c ", letter); } Örnek program çıktısı A B C D E …

13 #include main() { int total,ctr; total=0; // 100 den 200 e kadar olan sayıların toplamını tutar for(ctr=100; ctr<=200; ctr++) // ctr 100,101,…,200 {total+=ctr;} // Her bir iterasyonda ctr değerini ilave et printf(“ Toplam %d \n “, total); return 0; }

14 WHILE Döngüsü “while” döngüsü “for” döngüsü gibi aynı işlemleri birçok kez tekrarlamak için kullanılır. Bu döngüde de koşul sınaması çevrime girmeden yapılır. Koşul tek bir karşılaştırmadan oluşabileceği gibi birden çok koşulun mantıksal operatörler ile birleştirilmesi ile de oluşturulabilir. şekilde “while” döngü yapısı akış diyagramı olarak gösterilmekte ve genel yazılım formatı verilmektedir;

15 WHILE Döngüsü

16 Örnek: “while” döngü yapısı için örnek bir C/C++ programı; #include void main(void) {int sayac=1,n; clrscr(); printf("kaca kadar sayalim: "); scanf("%d",&n); while(sayac<=n) { clrscr(); printf(" %d",sayac); delay(100); sayac++; } getch(); }

17 DO … WHILE Döngüsü “do … while” döngüsü diğer döngüler gibi aynı işlemleri birçok kez tekrarlamak için kullanılır. Farklı olarak, bu döngüde koşul sınaması yapılmadan çevrime girilir ve işlem kümesi en az bir kere işletilir. Bu deyim yapısında da koşul sağlandığı sürece çevrim tekrarlanır. Koşul tek bir karşılaştırmadan oluşabileceği gibi birden çok koşulun mantıksal operatörler ile birleştirilmesi ile de oluşturulabilir.

18 DO … WHILE Döngüsü

19 Örnek: “do…while” döngü yapısı için örnek bir C/C++ programı yazalım; #include void main(void) {int sayi,kare; clrscr(); do { printf("bir sayi giriniz: "); scanf("%d",&sayi); kare=sayi*sayi; printf("sayinin karesi= %d\n",kare); } while(sayi>0); printf("cevrim sonlandirildi"); getch(); }

20 Doç. Dr. Cemil Öz SAÜ Bilgisayar Mühendisliği Dr. Cemil Öz


"Doç. Dr. Cemil Öz SAÜ Bilgisayar Mühendisliği Dr. Cemil Öz." indir ppt

Benzer bir sunumlar


Google Reklamları