Sunum yükleniyor. Lütfen bekleyiniz

Sunum yükleniyor. Lütfen bekleyiniz

PROGRAM KONTROL KOMUTLARI 1. if koşulu 2. if else koşulu

Benzer bir sunumlar


... konulu sunumlar: "PROGRAM KONTROL KOMUTLARI 1. if koşulu 2. if else koşulu"— Sunum transkripti:

1 PROGRAM KONTROL KOMUTLARI 1. if koşulu 2. if else koşulu
A karşılaştırma 1. if koşulu 2. if else koşulu 3. if - else if koşulu 4. (? :) üçlü koşul 5. goto deyimi 6. switch deyimi B tekrarlama 7. do-while döngüsü 8. while döngüsü 9. for döngüsü

2 KARŞILAŞTIRMA OPERATÖRLERİ
Bu operatörler ilişki operatörleri olarak da adlandırılır ve sayısal değerleri veya karakterleri karşılaştırmak için kullanılırlar. C dilinde karşılaştırma operatörleri karakter katarları( strings) için kullanılmazlar. Bunların karşılaştırılması için standart kütüphanede strcmp ( ) ve buna benzer birçok fonksiyon vardır.

3 Karşılaştırma operatörleri şunlardır:
> büyük mü? >= büyük veya eşit mi? < küçük mü? <= küçük veya eşit mi? == eşit mi? != farklı mı?

4 Genelde karşılaştırma ve döngü deyimlerinde koşulun sınanması için kullanılırlar.
Karşılaştırma sonucu doğru( true ) ya da yanlış ( false ) çıkar. Koşul doğruysa olumlu varsayılarak, koşul sonunda istenenler yerine getirilir. Yanlış ise olumsuz varsayılır ve istenenler atlanır.

5 İf koşulu if (şart) ifade; if (x>y) pirint f (“x büyüktür”); if (şart) { ifade 1; ifade 2; ... ... } if (x>y) { print f (“x büyüktür”); print f (“y küçüktür”); }

6 if-else koşulu if (şart ) ifade 1; else ifade 2; if (x>y) printf (“x büyüktür”) else printf (“y büyüktür veya eşittir”) if (şart) { ifade 1; ifade2; } ifade 4; ifade 5;

7 İf else if koşulu if (şart 1) ifade 1; else if (şart 2) ifade 2; else if (şart 3) ifade 3; else ifade 4; if (x>y) print f (“x>y”); else if (x=y) printf (“x=y”); printf (“x<y”);

8 Örnek 1. /*if - else*/ #include<stdio.h> #include<conio.h> void main() { clrscr(); int x; char y; printf("bir tamsayi giriniz:"); scanf("%d",&x); printf("\n"); y=x; if(x>=-128 && x<=127) printf("girdiğiniz sayı char tipine uygundur. sayı=%d dir",x); else printf("girdiğiniz sayı char tipine uygun değildir=%d",y); getche(); }

9 Örnek 2. /*if -else if */ #include<stdio.h> #include<conio.h> void main() { clrscr(); int temp,k; printf("Sıcaklık değerini giriniz"); scanf("%d",&temp); if(temp<30 && temp>20) printf("normal bir gün (Hava sıcaklığı=%d derece)",temp); else if(temp>30) printf("sıcak bir gün (Hava sıcaklığı=%d derece)",temp); else printf("soğuk bir gün (Hava sıcaklığı=%d derece)",temp); getche(); }

10 YAPILMASI İSTENENLER 9 Girilen bir sayının tek veya çift sayi olduğunu bulan program. 10 Kullanıcıdan iki sayi girmesini isteyen ve sayıların büyüklüğünü karşılaştıran program. 12 Yaşı girilen bir kişinin seçimlerde oy verme yeterliliği olup olmadığını test eden program.

11 MANTIKSAL OPERATÖRLER
Karşılaştırma ve döngü deyimlerinde koşulun sınanması için karşılaştırma operatörleri kullanılır. Ancak birden fazla koşul olduğunda bunların birleştirilip, tek bir koşul durumuna getirilmesi gerekir. Böyle durumlarda mantıksal operatörler kullanılır. Diğer bir deyişle,mantıksal operatörler birden çok koşulun birleştirilmesi veya koşulun tümleyenini almak için kullanılır.

12 Mantıksal operatörler;
&& VE AND ll VEYA OR ! DEĞİL NOT

13 Operatörlerin doğruluk tablosu x ve y’ nin mantıksal değişken olarak kullanıldığı ve doğruyu 1, yanlışı 0 varsayılarak aşağıda verilmiştir. VE VEYA DEĞİL X Y SONUÇ 1

14

15 BİTLER ÜZERİNDE İŞLEM YAPAN OPERATÖRLER
Bitler üzerinde işlem yapmak, bir tamsayı yada karakter değişkenin (short,int,long ve char) bir bütün olarak sayısal değeri üzerinde değil de doğrudan bitlerini sınamak, değiştirmek ve öteleme yapmak anlamına gelmektedir. Örneğin, bilgisayarın iletişim kanalından alınan bir kısa tamsayının ikinci bitinin ne olduğu öğrenilmek isteniyorsa, bu operatörleri kullanmaya gerek vardır. Bu operatörler, kullanıcıya işlemcinin birleştirici dili düzeyinde( assembly) , bitler üzerinde çalışma olanağı verir.

16 Bit üzerinde işlem yapan altı operatör vardır. Bunlar:
& bit düzeyinde VE (bitwise AND) l bit düzeyinde VEYA (bitwise OR) ^ bit düzeyinde YA DA (bitwise XOR) ~ bir’e tümleme (one’s complement) << sola öteleme (left shift) >> sağa öteleme (right shift)

17 VE OPERATÖRÜ: Genelde bir değişkenin bazı bitlerini sıfırlama için kullanılır.
VEYA OPERATÖRÜ: Bir sayısal değişkenin bazı bitlerini birlemek için kullanılır. YA DA OPERATÖRÜ: Karşılaştırılan bitlerin değeri birbirinden farklı ise 1, aynı ise 0 üretir. Bir değişkenin kendisi ile YA DA’lanması sayısal değerini sıfırlar. Çünkü bütün karşılıklı bitler aynı olacağından, bütün bitler sıfırlanacaktır.

18 YA DA OPERATÖRÜNÜN DOĞRULUK TABLOSU
X Y ^ 1

19 BİRE TÜMLEME OPERATÖRÜ: Bir değişkenin tüm bitlerinden 1 olanları 0, 0 olanları 1 yapar.
ÖTELEME OPERATÖRLERİ: Değişkenlerin bitlerini sağa ya da sola kaydırmak için kullanılır.

20 X*= y+1; ifadesi ile x=x*(y+1); aynıdır…
Bütün operatörler basit atama operatörü ile birlikte kullanılmaz; geçerli olan bitişik atama operatörleri aşağıdaki çizelgede verilmiştir: Operatör tanımı += ekleyerek,atama -= çıkararak atama *= çarparak atama /= bölerek atama %= bölüp,kalanını atama <<= sola öteleyerek,atama >>= sağa öteleyerek,atama &= bit düzeyinde VE’leyerek atama l= bit düzeyinde VEYA’layarak atama ^= bit düzeyinde YADA’layarak atama =~ bit düzeyinde tümleme ve atama X*= y+1; ifadesi ile x=x*(y+1); aynıdır…

21 Girilen tarihteki günün adını veren programı yazınız.

22 #include <studio.h>
main ( ) { int gun, ay, yıl ; long gt ; printf(“Tarihi gir”) ; scanf ( “%d %d %d “,&gun) /* oncekı yıllardakı gun sayısını hesapla */ gt=( yıl*1)*365 + yıl/4; /* bu yildaki aylardaki gunleri ekle */ if (ay==2) gt = gt + 31 ; else if (ay ==3) gt = gt ; else if (ay ==4) gt = gt ; else if (ay ==5) gt = gt ; else if (ay ==6) gt = gt ; else if (ay ==7) gt = gt ; else if (ay ==8) gt = gt ; else if (ay ==9) gt = gt ; else if (ay ==10) gt = gt ; else if (ay ==11) gt = gt ; else if (ay ==12) gt = gt ; /*Bu ayı ekle */ gt = gt+ gun; if(yıl%4==0 && ay>2) gt =gt+1; gt=gt %7, if(gt==1) printf(“Pazar”); else if(gt==2) printf(“Pazartesi”); else if(gt==3) printf(“Salı”); else if(gt==4) printf(“Carsamba”); else if(gt==5) printf(“Persembe”); else if(gt==6) printf(“Cuma”); else if(gt==7) printf(“Cumartesi”); }

23 #include <stdio.h>
main ( ) { long int gun, ay, yil ; long gt ; printf("Tarihi gir") ; scanf ( "%ld%ld%ld",&gun,&ay,&yil) ; gt=( yil)*365 + yil/4; if (ay==2) gt = gt + 31 ; else if (ay ==3) gt = gt + 59 ; else if (ay ==4) gt = gt + 90; else if (ay ==5) gt = gt ; else if (ay ==6) gt = gt + 151; else if (ay ==7) gt = gt ; else if (ay ==8) gt = gt ; else if (ay ==9) gt = gt ; else if (ay ==10) gt = gt + 273; else if (ay ==11) gt = gt ; else if (ay ==12) gt = gt + 334; /*Bu ayı ekle */ gt = gt+ gun; if(yil%4==0 && ay>2) gt=gt+1; gt=gt%7; if(gt==2) printf("Pazar"); if(gt==3)printf("Pazartesi"); if(gt==4) printf("Salı"); if(gt==5) printf("Carsamba"); if(gt==6) printf("Persembe"); if(gt==0) printf("Cuma"); if(gt==1) printf("Cumartesi"); }

24 & ve * İŞARETÇİ OPERATÖRLERİ
İşaretçi (pointer), bir değişkenin bellekteki adresidir. İşaretçi değişken bu adresin saklanacağı özel bir değişkendir. Bu tip değişkenlere yalnızca adresler veya diğer işaretçi değişkenler atanabilir.

25 KARAKTERİ : Bu işaret iki amaçla kullanılır
* KARAKTERİ : Bu işaret iki amaçla kullanılır.ilki, işaretçilerin bildiriminde, ikincisi bir işaretçi değişkenin işaret ettiği bellek gözüne erişmekte. & KARAKTERİ: Daha önce bit üzerinde VE işlemi yapan operatör olarak kullanılmıştı.ancak işaretçi operatör olarak bir değişkenin önüne koyularak ta kullanılır. Bu değişkenin değeri ile değil de bellekte bulunduğu adresi ile ilgileniyor anlamına gelir. SIZEOF OPERATÖRÜ: Bir değişkenin veya veri tipinin bellekte kaç sekizli yer kapladığını verir. Farklı tipte değişkenler kullanılan bir bağıntının sonucunun kaç sekizli yer kaplayacağını öğrenmek için de kullanılabilir. Sizeof nesne ve sizeof(tip) olarak iki farklı şekilde kullanılabilir.

26

27 OPERATÖRLERİN ÖNCELİKLERİ
OPERATÖRLER AYNI BAĞINTIDA KULLANILDIĞINDA ( ) [ ] -> SOLDAN SAĞA ! ~ * & (type) sizeof SAĞDAN SOLA * / % SOLDAN SAĞA SOLDAN SAĞA << >> SOLDAN SAĞA < <= > >= SOLDAN SAĞA == != SOLDAN SAĞA & SOLDAN SAĞA ^ SOLDAN SAĞA | SOLDAN SAĞA && SOLDAN SAĞA || SOLDAN SAĞA ?: SAĞDAN SOLA = += -= *= /= %= &= ^= |= <<= >>= SAĞDAN SOLA , SOLDAN SAĞA

28 DEVAMI Operatörler aynı bağıntıda kullanıldığında ^ SOLDAN SAĞA
?: SAĞDAN SOLA = += -= *= /= %= &= ^= |= <<= >>= SAĞDAN SOLA , SOLDAN SAĞA


"PROGRAM KONTROL KOMUTLARI 1. if koşulu 2. if else koşulu" indir ppt

Benzer bir sunumlar


Google Reklamları