C++ Switch-Case Komutu



SWITCH-CASE KOMUTU

Switch Case deyimi islev bakimindan if deyimine çok benzemektedir.
Çok sayida if islem bloklari kullandigimizda programin okunurlugu
azalacak ve programi izlemek zorlasacaktir. Programimizin bir
degerini bir çok degerle karsilastirmak gerektiginde switch komutunu
kullanacagiz. Switch seçenegi ile degiskenin durumuna göre bir çok
durum içersinden bir tanesi gerçeklestirilir. Istersek de if deyimi
ile switch case'' yi birlikte kullanabiliriz. Switch in yaptigi is
kisaca, ifadenin degerini sirayla sabitlerle karsilastirarak ve her
satiri islemektir.

switch( Kontrol Degiskeni )
{
case Sabit1 : komut1;
case Sabit2 : komut2;
.
.
.
default : Komutson;
}

Buna en basit örnegimizi verelim
//switch.cpp
// switch-case yi ögreniyoruz.

#include <iostream.h>

main()
{
int i;
cout<< " 1 ile 4 arasi sir sayi giriniz:";
cin>>i;
switch(i)
{

case 1 :cout<<"1 Girdiniz"; break;
case 2 :cout<<"2 Girdiniz"; break;
case 3 :cout<<"3 Girdiniz"; break;
case 4 :cout<<"4 Girdiniz"; break;

default:cout<<"1 ile 4 ten farkli";
}
}

Burada gördügümüz gibi i degiskenine bagli olarak program isliyor.
Case''lerinin aldigi degere göre kendinden sonra gelen komutlari
isliyorlar. Burada daha önce görmedigimiz break komutunu gördük.
Buna ilerde daha detayli olarak deginecegim. Fakat biraz bahsetmek
istiyorum. Programimizda degiskene 1 degerini verdigimizi farz
edelim. Case 1 adli satiri geçip ondan sonraki komut dizisini isleme
soktuk. Bu islemin tamamlanmasi için break komutu kullaniliyor.
Yazilimda break komutu goto gibi islev görür ve derleyiciye switch
komutundan çikmasi için talimat verir. Sorunu ortadan kaldirmak için
her durum için break deyimi eklemeliyiz (tavsiye). Ne demistik; bir
çok karsilastirma oldugunda switch''e ihtiyaç duyuyoruz.
Karsilastirmalarin hiç biri olmadigi anda da ortaya default tan
sonraki satirin islenmesi kaliyor. Sanirim bu örnekte basit olarak
anlamis olacagiz.

Daha karmasik bir örnek verecek olursak:

//ucgen.cpp
// Program girecegimiz ölçülere göre üçgenin Alan, Yükseklik ve
Tabanini bulur
// switch-case örnegimiz.

#include <iostream.h>

int main()
{
char secenek;
float alan, yukseklik, taban;

cout << "Program girecegimiz ölçülere göre üçgen''in Alan,
Yükseklik ve Tabanini bulur!\n" << endl
<< " A ---> Alan : Bulmak için yükseklik ve tabani girecegiz:" <<
endl
<< " h ---> Yükseklik : Bulmak için alan ve tabani girecegiz:" <<
endl
<< " t ---> Taban : Bulmak için alan ve yüksekligi girecegiz:" <<
endl
<< endl << endl;
cout<< "Seçeneginiz? ---> A, h, t :";
cin>> secenek;

switch(secenek)
{
case ''a'':

case ''A'':
{
cout<< endl <<endl <<"Yükseklik: ";
cin>> yukseklik;
cout<<endl << "Taban: ";
cin >> taban;

alan = 0.5 * taban * yukseklik;

cout<<endl << endl << "Alani: " << alan << endl;

break;
}

case ''h'':
case ''H'':
{
cout<< endl << endl <<"Alani: ";
cin>> alan;
cout<<endl << "Tanabi: ";
cin >> taban;

yukseklik = 2.0 * alan / taban;

cout << endl << endl << "Yükselik: " << yukseklik << endl;
break;
}

case ''t'':
case ''T'':
{
cout << endl <<endl <<"Alani: ";
cin >> alan;
cout << endl << "Yüksekligi: ";
cin >> yukseklik;

taban = 2.0 * yukseklik / alan;

cout << endl << endl <<"Tabani: " << taban << endl;
break;
}
}
return 0;
}

Yeni yorum gönder

Bu alanın içeriği gizli tutulacak ve açıkta gösterilmeyecektir.
  • Web sayfası ve e-posta adresleri otomatik olarak bağlantıya çevrilir.
  • Allowed HTML tags: <a> <em> <strong> <cite> <code> <ul> <ol> <li> <dl> <dt> <dd> <img>
  • Satır ve paragraflar otomatik olarak bölünürler.

Biçimleme seçenekleri hakkında daha fazla bilgi

CAPTCHA
Aşağıdaki resimde yer alan karakterleri kutucuğa doğru olarak yazınız
Image CAPTCHA
Enter the characters shown in the image.

Anket

Web sitesinde hangisi daha önemlidir:

Son Konular

2012-04-10 00:53 - Chrome Pili daha çabuk bitiriyor
2012-03-22 19:47 - Geliştirdiğin kodları satmak ister misin
2012-02-12 23:21 - SMF forumu vbulletin foruma aktarmak
2011-12-14 21:50 - Motorlu araçlar otomobil vergisi sorgulama
2011-12-14 21:47 - Sorgulamalar
2011-12-11 14:33 - Ben az önce ne arayacaktım
2011-09-10 22:51 - DSLR Fotograf Makinası sınıflandırması
2011-09-09 17:33 - ‘Crop Factor’ Nedir, hakkında bilgi
2011-09-09 17:30 - Fotograf Rehberi
2011-08-20 21:30 - Samsung LEDTV'lerde .SRF ve XFS süprizi
2011-08-19 00:45 - 2011 yılının web tasarım trendleri
2011-04-09 20:18 - Alan adları gerçek isim sahiplerine verilecek!
2011-01-13 01:43 - SEO İçin Dikkat Edilmesi Gereken Hususlar
2011-01-13 01:42 - Meta tag SEO Optimization
2011-01-13 01:41 - Google Adsense Hakkında Detaylı Bilgi
2011-01-13 01:40 - Soru Ve Cevaplar ile Google Adsense
2011-01-13 01:39 - Arama motoru Google ve Pagerank
2011-01-13 01:38 - Seo Sözlüğü
2011-01-13 01:37 - Google Arama Özellikleri
2011-01-13 01:36 - Adsense Reklam Yerleşimi
2011-01-13 01:35 - Robots.txt Dosyası Kullanım Robotları Yölendirme Kontrol
2011-01-13 01:34 - Sitenizin Google ve Web deki Yeri
2011-01-13 01:33 - Arama Motoru Bilgi ve İpuçları
2011-01-13 01:31 - Arama Motorları Teknikleri
2011-01-13 01:29 - Google Pagerank Detaylı Anlatım
2011-01-13 01:27 - Sitenize Ziyaretçiler En Çok Hangi Kelimeler İle Gelmiş
2011-01-13 01:25 - Pagerank Nedir?
2011-01-13 01:19 - Fireworks Shadow and Glow
2011-01-13 01:18 - Fireworks Sharpen
2011-01-13 01:16 - Fireworks Other
2011-01-13 01:13 - Fireworks Blur
2011-01-13 01:09 - Fireworks Bevel and Emboss
2011-01-13 01:05 - Fireworks Adjust Color
2011-01-13 01:03 - Fireworks Save as Style
2011-01-13 00:58 - Fireworks Text Menüsü
2011-01-13 00:54 - Fireworks Select Menüsü
2011-01-13 00:54 - Fireworks Modify Menüsü
2011-01-13 00:51 - Fireworks View Menüsü
2011-01-13 00:18 - Fireworks Edit Menüsü
2011-01-13 00:16 - Fireworks File Menüsü
2011-01-13 00:05 - İnternet - Web Tarayıcılar (Browser)
2011-01-13 00:04 - İnternet - Web Server Yazılımları
2011-01-13 00:03 - İnternet ve Web İlişkisi
2011-01-13 00:02 - İnternette Kullanılan Protokoller
2011-01-13 00:01 - İnternet - World Wide Web (WWW) Nedir?
2011-01-13 00:00 - İnternet - URL nedir?
2011-01-12 23:43 - İnternet Backorder Nedir?
2011-01-12 23:34 - İnternet - Virüs Nedir?
2011-01-12 23:32 - İnternet Paypal nedir? Nasıl Kullanılır?
2011-01-12 23:31 - İnternet - DNS Nedir?