1 / 23

Bölüm 5

Bölüm 5. Döngü Komutları. while Komutu. Diğer Operatörler Bileşik Komut for Komutu. do--while Komutu İçiçe Döngüler. break ve continue Komutları. while Komutu Döngü komutları komutların bir çok kez yeniden yürülmesini sağlayan, programlamada kullandığımız önemli yapılardan biridir.

Télécharger la présentation

Bölüm 5

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Bölüm5 DöngüKomutları whileKomutu DiğerOperatörler BileşikKomut forKomutu do--whileKomutu İçiçeDöngüler breakvecontinueKomutları

  2. whileKomutu Döngükomutlarıkomutlarınbirçokkezyenidenyürülmesini sağlayan,programlamadakullandığımızönemliyapılardanbiridir. Cdilindebizebuözelliğisağlayankomutlar while for do-while komutlarıdır. 2

  3. whileKomutu while(koşul_ifadesi) komut; whiledöngüsünde komut’unyürütümü koşulifadesidoğru olduğusürecedevam eder. 3

  4. whileKomutu Örnek: printf(“Birpozitifsayigiriniz:”); scanf(“%d”,&n); while(n<0) scanf(“%d”,&n); printf(“Ensonndegeri:%d”,n); 4

  5. whileKomutu whileKomutununAşamaları →Đlkdeğeratamaaşaması →Kontrolaşaması →Güncellemeaşaması sayac=1; while(sayac<=10) { printf(“%3d”,sayac); sayac=sayac+1; } 5

  6. whileKomutu Örnek: Pozitifsayılarıngirildiğivegirilenbupozitifsayılarınenbüyüğünün bulunduğuprogramıyazınız.Programdasayıgirmeişleminegatifbirsayı girilinceyekadardevametmelidir. –#include<stdio.h> –intmain(void) –{ intsayi,max=0; /*Enbuyuksayininsifiroldugunukabuledelim.*/ printf("Sayigiriniz:"); scanf("%d",&sayi); – – – – – – 6

  7. whileKomutu while(sayi>0) { /*Egergirilensayimaxdabulunanbuyuksayidandaha buyukseyenigirilensayimaxdegiskenineatanir*/ if(sayi>max) max=sayi; printf("Sayigiriniz:"); scanf("%d",&sayi); } printf("Enbuyukpozitifsayi:%d",max); return(0); } 7

  8. DiğerOperatörler BileşikAtamaOperatörü değişken=değişkenoperatörifade; değişkenoperatör=ifade; 8

  9. DiğerOperatörler ArtırmaveAzaltmaOperatörleri(++--) sayac=sayac+1; sayac++;(son-ek) ++sayac;(ön-ek) 9

  10. forKomutu for(ilk_değer_atama_komutu; kontrol_ifadesi; güncelleme_komutu) döngü_komutları; 10

  11. forKomutu for(ilk_değer_atama_komutu; kontrol_ifadesi; güncelleme_komutu) döngü_komutları; 11

  12. forKomutu whiledöngüsü sayac=1; while(sayac<=10) { printf(“%3d”,sayac); sayac++; } Eşdeğerfordöngüsü for(sayac=1;sayac<=10;sayac++) printf(“%3d”,sayac); 12

  13. forKomutu Örnek: Pozitifbirnsayısınıvebunsayısıkadardatamsayıyıgirdiolarakalan programıyazınız.Ayrıca,buprogramdagirilmişolanntanetamsayının kaçınınnegatif,pozitifvesıfırolduğunuhesaplayıpekrandagösteriniz. #include<stdio.h> intmain(void) {intpos=0,neg=0,sifir=0,n,sayi,i; printf("Kactanesayigireceksiniz:"); scanf("%d",&n); /*Donguicindentanesayiningirilmesiveislenmesi*/ for(i=1;i<=n;i=i+1) { printf("%d.sayi:",i); scanf("%d",&sayi); 13

  14. forKomutu /*Girilensayininpozitif,negatifveyasifirolup olmadigininbelirlenmesi*/ if(sayi>0) pos++; elseif(sayi<0) neg++; elsesifir++; } /*Sonuclaringosterilmesi*/ printf("\n%dadetpozitifsayi.\n",pos); printf("%dadetnegatifsayi.\n",neg); printf("%dadetsifirsayisi.\n",sifir); return(0); } 14

  15. forKomutu forKomutununFarklıKullanımları for(i=0,j=0;i<=4&&j>-8;i++,j--) printf(“%3d%3d\n”,i,j); toplam=0; toplam=0; i=1; for(;i<=10;i++) toplam+=i; i=1; for(;i<=10;) {toplam+=i; i++; 15

  16. dowhileKomutu do komut; while(koşul_ifadesi); 16

  17. dowhileKomutu whileveforkomutlarındakoşulifadesi,döngününbaşında kontroledilirken,do-whilekomutundakontrolişlemi döngününsonundayapılır. 17

  18. dowhileKomutu Örnek: Aşağıdakiseçeneklerigörüntüleyecekveseçenekleregöreaşağıdatanımlanan seçeneğinalanınıbulacakbirCprogramıyazınız. 1.Kare 2.Daire 3.Bitti Seceneginizibelirtiniz(1,2,3): #include<stdio.h> #definePI3.141592654 intmain(void) { intcevap; doublea,r,alan; do {/*Menunungoruntulenmesi*/ printf("\n1.Kare"); printf("\n2.Daire"); printf("\n3.Bitir"); printf("\n\nSeceneginizibelirtiniz:"); scanf("%d",&cevap); 18

  19. dowhileKomutu switch(cevap) { case1:/*Kareninalanininhesaplanmasi*/ printf("\nKareninkenaruzunlugunugiriniz: "); scanf("%lf",&a); alan=a*a; printf("Kareninalani:%.2f\n",alan); break; case2:/*Daireninalanininhesaplanmasi*/ printf("\nDaireninyaricapuzunlugunugiriniz: "); scanf("%lf",&r); alan=PI*r*r; printf("Daireninalani:%.2f\n",alan); } } while(cevap!=3); return(0); } 19

  20. İçiçeDöngüler 20

  21. İçiçeDöngüler Örnek: Birbaşkaörnekolarakaşağıdakiçıktıyıverenprogramparçasınıiçiçedöngüler kullanarakyazalım. 1 21 321 4321 54321 654321 7654321 87654321 for(i=1;i<=8;i++) {for(j=i;j>=1;j--) printf(“%3d”,j); printf(“\n”); } 21

  22. breakvecontinueKomutları breakkomutuherhangibirdöngükomutuiçinde kullanıldığındadöngüdençıkılmasınısağlar. for(i=1;i<=10;i++) { printf(“Sayigiriniz:”); scanf(“%d”,&sayi); if(sayi<=0) break; } printf(“%dpozitifsayigirildi.”,i-1); 22

  23. breakvecontinueKomutları Döngününherhangibiraşamasında continue komutunagelindiğinde,oturunyürütümüonoktadakesilir veyürütümbirsonrakituriledevameder. toplam=0; for(i=1;i<=5;i++) { printf("Sayigiriniz:"); scanf("%d",&sayi); if(sayi<=0) {i--; continue;} toplam+=sayi; } printf(“Toplam:%d”,toplam); 23

More Related