Bolum 09

You might also like

Download as pdf or txt
Download as pdf or txt
You are on page 1of 14

7.04.

2016

Bölüm
C# ile Programlama
Kontrol Deyimleri

C# Ders kitabı: Arı, E., 2014, Algoritma ve C#


Programlama, Seçkin yayınları, Ankara

C# Kontrol Deyimleri

› Kontrol deyimleri, program içerisinde herhangi bir koşulun doğru olup olmadığına göre farklı
işlemler yapılması gerekiyorsa kullanılır.

Kontrol Deyimleri

if Deyimi switch-Case Deyimi

2
7.04.2016

C# if Deyimi
› Koşul bazında komut seti çalıştırmak amacıyla kullanılır.

if Deyimi

Yalın if if - else if - else if - else

C# if Deyimi
› Yalın if: Belirtilen koşula bağlı olarak belirtilen bir komut setinin
çalıştırılması amacıyla kullanılır. A

Evet
Koşul
B: Koşul doğru
Hayır ise çalıştırılacak
komutlar

4 C
7.04.2016

C# if Deyimi

C# if Deyimi
› Klavyeden girilen Vize ve Final notlarına göre başarı notu (%40v+%60f)
60 ve üzerinde ise ekrana “Geçti” değilse “Kaldı” yazdıran programın
kodunu yazınız.

› Öğrencinin başarı notu 50’in altında olması durumunda Bütünleme notu


isteyip Final yerine kullanan programı yazınız.

6
7.04.2016

C# if Deyimi
› Kullanıcıdan alınan x sayısı için aşağıdaki fonksiyonla tanımlanan y
sayısını hesaplayan programı yazınız.

C# if Deyimi

Başla

E
x≤5 y = 5x
H
E
x>5 VE x≤10 y = x2
H
E
x>10 VE x≤15 y = x3-5x+7
H
E
x>15 y = x/2
H

8 Son
7.04.2016

C# if Deyimi
› if-else
A

Evet
Koşul

Hayır B: Koşul DOĞRU


ise çalıştırılacak
C: Koşul YANLIŞ
ise çalıştırılacak

9 D

C# if Deyimi
› Kullanıcıdan alınan vize (v) ve final (f) notlarına göre başarı puanını
(b=0,40v+0,6f) hesaplayıp ekrana geçti/kaldı yazan programı yazınız.

10
7.04.2016

C# if Deyimi

Başla

v, f

b = 0,4v + 0,6f

E "Geçti"
b ≥ 60
H
"Geçti"

Son

11

C# if Deyimi A
› if-else if-else E B1
Koşul1
Komutları
H
E B2
Koşul2
Komutları
H

E Bn
Koşuln
Komutları
H
C Bn
Komutları Komutları

12
D
7.04.2016

C# if Deyimi

13

C# if Deyimi
› Kullanıcıdan alınan vize (v) ve final (f) notlarına göre başarı puanını
(b=0,40v+0,6f) hesaplayıp, geçme notunu harf notuna çeviren programı
yazınız.

14
7.04.2016

C# if Deyimi
Başla

v, f

b = 0,4v + 0,6f
E
b ≥ 85 harf="AA"
H
E
b ≥ 70 harf="BB"
H
E
b ≥ 55 harf="CC"
H
E
b ≥ 40 harf="DD"
H
harf="FF"
Aynı örneği (akış
s diyagramı ve kodu) else
15 kullanmadan yapınız.
Son

C# if Deyimi
› if yapılarında koşula bağlı yapılacak işlemeler tek satırlık kod ise kıvırcık
(küme) parantezlerin kullanılmasına gerek yoktur. Ancak kullanılmasında
da sakınca yoktur.
› Birden fazla sayıda kod çalıştırılacaksa kıvırcık parantezlerin kullanılması
zorunludur.

16
7.04.2016

C# if Deyimi
› Klavyeden girilen bir sayının negatif, pozitif ya da sıfır olup olmadığını
bulan programın yazılması.

17

C# if Deyimi
› İç içe if kullanımı: Klavyeden girilen not bilgisi 50 den az ise bütünleme
notunu isteyen, bütünleme notu 50 nin altındaysa başarısız oldunuz mesajı
veren programın yazılması.

18
7.04.2016

C# if Deyimi

19

C# if Deyimi (Çalışma soruları)

› Klavyeden girilen sayının tek mi, çift mi olduğunu gösteren programı yazınız.
› Klavyeden iki ürünün fiyatı girildiğinde toplam fiyat 200 TL’den fazla ise, ucuz olan üründen
%25 indirim yaparak ödenecek tutarı gösteren programı yazınız.
› Kullanıcıdan girdiği iki sayı ve yapılacak işlem türü (toplama, çıkarma, çarpma, bölme)
seçildiğinde, sonucu hesaplayarak ekranda gösteren programı yazınız.
› Girilen bir sayının 4 ve daha büyük basamaklı mı, 3 basamaklı mı, 2 basamaklı mı yoksa 1
basamaklı mı olduğunu bulan programı yazınız.
› 2 yazılı, 1 sözlü ve devamsızlık klavyeden girilerek ortalaması 60 ve üzeri ve devamsızlığı 3 ve
daha küçükse ekrana geçti, değilse kaldı mesajı veren programı yazınız.
› Erkeklerin emekli olması için en az 9000 gün prim yatırmış ve 60 yaşını tamamlamış, kadınların
ise 8000 gün prim yatırmış ve 55 yaşını tamamlamış olması gerekmektedir. Kullanıcıdan
cinsiyet, yaş ve prim gün sayısını isteyip, emekli olabilecekse 5*{prim gün sayısı}+100*{yaş}
formülüne göre alacağı ikramiyeyi gösteren, emekli olamayacaksa kaç gün prim yatırması ve ne
kadar beklemesi gerektiğini ekrana yazan programı yazınız.

20
7.04.2016

C# if Deyimi

› Cinsiyet, boy ve kilo bilgilerini alarak kişinin ideal kiloda olup olmadığını, ideal kiloda değilse
kaç kilo alması veya kaç kilo vermesi gerektiğini bulan programı yazınız. (İdeal kilo: Erkekler
Boy-105; Kadınlar Boy-110)
› Bir işyerinde parça başı prim uygulanmaktadır. Prim hesabı aşağıdaki gibidir. Kullanıcıdan
ürettiği parça sayısı ve maaş bilgisini isteyip alacağı primi ekrana yazan programı yazınız.
(Primler 0-9 parça için 0TL; 10-19 parça için 0,05*maaş+5*parça; 20-39 parça için
0,10*maaş+6*parça; 40 ve üzeri parça için 0,15*maaş+7*parça)

21

C# Switch-Case Deyimi
A
E DEĞER
Degisken=değer1
1 BLOK
H

E DEĞER
Degisken=değer1
2 BLOK
H

FARKLI
BLOK

22 D
7.04.2016

C# Switch-Case Deyimi

› Case ifadelerinden sonra değişkenin olası değeri yazılır. Bu değer alfa sayısal bir ifade
ise çift tırnak arasında kullanılır. Sayısal bir ifade direk olarak yazılır.
› Her “case” bloğunda break; kullanılmalıdır. break; komutu girilen case bloğundaki
istenen işlemler yapıldıktan sonra kullanılır. Bu yolla diğer case bloklarına
bakılmaksızın switch yapısından çıkılması sağlanır.
› Default kullanılması zorunlu değildir.
› Değerler sabit olmalıdır.
› Aynı değere sahip birden fazla “case” olamaz.
› Birden fazla farklı değer için aynı komutlar çalıştırılacaksa aşağıdaki gibi kullanılır.
case deger1:
case deger2:
//yapılacak işlemler..
break;
23

C# Switch-Case Deyimi

› Örnek: Klavyeden girilen günün adını yazan programı yazınız.

24
7.04.2016

C# Switch-Case Deyimi

› Örnek: Klavyeden girilen 1-12


arasındaki ay bilgisine göre hangi
mevsime ait olduğunu ekrana
yazan programı yazınız.

25

C# Switch-Case Deyimi
› go to anahtar sözcüğünün kullanımına bir örnek;

26
7.04.2016

C# Switch-Case Deyimi

› swich-case ile yapılan herşey if deyimi ile de yapılabilir.

27

C# Switch-Case Deyimi

› Klavyeden giriş yapılan mevsim adına göre o mevsimde yer alan ayları ekrana yazan programı
yazınız.
› Yapılan seçime göre (toplama, çıkarma, çarpma, bölme) uygun işlemi gerçekleştirerek sonucunu
ekrana yazan programı yazınız.

28

You might also like