|
|
|
 |
Sende bize katıl 10 numara |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
 |
|
|
 |
I. DEYİMLER
Bir program bir dizi deyimden oluşur. Deyimler, ifadeler, açıklamalar ve programın işleyişi içinde işlevsel olan program satırlarıdır. Ancak C# dilinde deyimler sırayla ve satırlar halinde yazılmak yerine bloklanırlar. Bloklama, C# programı içinde deyim yapısını etkileyen en önemli yapıdır.
C# blokları küme işareti (braces) olarak bilinen işaretlerle belirtilirler:
Kod bloğu:
{
program kodu
}
Kod blokları program parçalarının (yordamların) oluşmasını sağlar. Bu anlamda program içinde değişkenlerin tanımlamalarında ve kapsamların önemli rol oynar:
Kod bloğu:
{
int i;
}
.
{
int i;
}
Yukarıda iki ayrı blok içinde aynı değişken tanımlanmıştır.
Bir de iç içe tanımlanan kod blokları vardır:
{
int i;
.
{
int i;
.
}
}
II. PROGRAM DENETİM DEYİMLERİ
Program içinde yer alan deyimleri, atama deyimleri, karar (sapma) deyimleri, döngü (loop, iteration) ve C'ye özel atlama (jump) deyimleri olarak gruplandırabiliriz.
Program Denetimi Yapıları:
• Karar (sapma)
• Döngü
• Atlama
Klasik (geleneksel) programlamada programın akışı sıradan gider. Diğer bir deyişle programın işletimi deyimlerin sırasıyla yürütülmesiyle (satır satır) devam eder. Bir karar, döngü ya da bir atlama deyimi ile karşılaşılması durumunda programın işletim sırasını değiştirir.
Ana karar yapıları şunlardır:
Karar yapıları:
• If..Else
• Switch
Döngüler özellikle programın etkinliği bakımından önemli bir programlama tekniğidir.
Döngü Yapıları:
• While
• Do
• For
• Foreach
Atlama (Jump) yapıları ise program denetimini hiçbir koşula bağlı olmadan (doğruda) bir diğer deyime geçirir.
Bu deyimler:
• Goto
• Break
• Continue
A. IF DEYİMİ
Program içinde karar vermek için kullanılan en basit yapıdır. If..Else deyimi bir Boolean ifadeyi değerlendirerek program denetimi belirtilen deyim gruplarına geçirir.
Örnek:
if (saat = = 24) {
saat = 0;
gun++
}
Karar yapılarının temelinde değerler arasındaki ilişkiler yatar. İlişkiler değerler arasındaki operatörlerle kurulur.
Tablo: İlişki operatörleri
Operatör Anlamı
< Küçüktür
<= Küçük eşittir
> Büyüktür
>= Büyük eşittir
!= Eşit değildir
= = Eşittir
B. IF.. ELSE DEYİMİ
Klasik olarak kullanılan karar mekanizmasıdır. Eğer koşul sağlanıyorsa (if) bunu yap; yoksa şunu yap (else) gibi:
Yapı: (1)
If (koşul)
{ işlem }
Yapı: (2)
If (koşul)
{ işlem1 }
Else if (koşul)
{ işlem2 }
Yapı: (3)
if (koşul)
if (koşul2)
işlem
else
işlem-n
If yapıları kapsama göre bloklanabilir:
Birinci koşulun değerlendirilmesini ardından blok başlar:
if (koşul)
{
if (koşul2)
işlem
else
işlem-n
}
If ve else blokları ayrı ayrı:
if (koşul) {
if (koşul2)
işlem
} else {
işlem-n
}
UYGULAMA: Ekrandan alınan üç sayının en büyüğünü bulan program
C. SWİTCH DEYİMİ
Switch deyimi de if deyimi gibi programın koşullara gore yönlenmesini sağlar. Özellikle bir değişkenin değerine gore değişik işlemler yapılacaksa o zaman Switch..Case yapısı uygun olur. Örneğin ücret değerinin belli kademelerde değişik oranlarda vergilenmesi gibi.
Yapısı:
Switch (değişken) {
Case koşul1:
İşlem1
Case koşul2:
İşlem2
Default:
İşlem3
}
Default etiketi, değerin herhangi bir case koşuluna uymadığı durumlarda gidilecek deyimi belirtir.
Örnek : Su parası hesabı
Su parası hesabı ya da KDV kesintisi hesabı ya da benzer fiyatlandırmalar belli bir tarifeye göre bir hesaplamanın yapılarak bir işlemin yapılmasını ve sonucun hesaplanmasını gerektirirler.
Örnekte aşağıdaki tablo kullanılarak ekrandan girilen mektreküp değerlerine göre ne kadar TL'lık su harcandığını hesaplayan bir program yazılacaktır.
Tablo : Su hesabı bilgileri
Tüketim Metreküp fiyatı
0-10 20.000 TL
11-50 40.000 TL
51- sonsuz 100.000 TL
Bu örneğin Switch..Case yapısı ile kodlamaya çalışın.
D. DÖNGÜLER
Program denetiminde yaygın olarak kullanılan mekanizmalardan birisi de döngülerdir. Döngüler işlemlerin yinelenmesi anlamına gelir. Örneğin dosyanın sonuna kadar kayıtların birer birer okunması ve her okunan kayıt üzerinde belli işlemlerin yapılması gibi. Çünkü burada yapılacak işlem aynıdır ama dosyada yer alan bütün kayıtlar için uygulanır.
C#'da çeşitli döngü yapıları vardır:
While deyimi
Do deyimi
For deyimi
While Deyimi
While deyimi en kolay döngü yapısını kurmanızı sağlar. While yapısı içinde bir Boolean ifadenin doğru olduğu süre boyunca belirtilen işlemlerin yenilenmesi sağlanır.
Yapısı:
while (koşul) {
yinelenecek işlem
}
Örnek: Birden yirmiye kadar sayıları yazdırmak.
int = 0;
while (i < 20) {
Console.Writeline(i);
i++;
}
Do Deyimi
Bir blok deyimi verilen koşul doğru (True) olduğu sürece işletir.
Yapısı:
Do {
yinelenecek işlem
} while (koşul)
Belirtilen koşul doğru olduğu sürece döngünün işleyeceğini belirtir.
While ile Do..While yapısı arasında fark şudur. While yapısında koşul doğru ise döngüye girilir. Her seferinde koşul test edilerek işlemler yinelenir. Do...While yapısında ise, ilk başta döngüye bir kez girilir. Koşul çıkışta test edilir.
Koşulların Do döngüsünü başında yer alması denetimin döngünün başında yapılması anlamına gelir. Döngü başında kullanılan While deyimi ise koşul False olduğu süre boyunca döngünün işlemesini sağlar.
While ve Do.. While Sistemi:
While Yapısı:
int sayac = 1;
while (sayac <= 10) {
Console.WriteLine(sayac);
sayac++;
}
Do..While Yapısı:
int sayac = 1;
Do {
Console.WriteLine(sayac);
sayac++;
} while (sayac<= 10);
For Deyimi
Bir grup deyimi belli sayıda çalıştırarak (tekrar ederek) bir döngü oluşturur. Örneğin birden ona kadar (on kere) şu işlemi yap şeklinde. Özellikle bir döngü denetim değişkenin kullanıldığı (sayaç) bu döngü yapısı iç içe döngülerin de yapılmasını sağlar.
Yapısı:
for (ilk değer ; koşul ; artırım )
iç deyimler
Örnek:
for (int i = 0; i < 10; i ++) {
Console.WriteLine(i); }
For...Next döngüsünde döngü değişkeni, döngünün kullanımında önemli bir rol oynar. Kullanımlardan genellikle döngü değişkeni ile bir dizinin elemanı ya da kayıt sayısı gibi değerler temsil edilir:
for (int i = 0; i < 7; i ++) {
Console.WriteLine(gunler[i]); }
Jump Deyimleri
Döngüler ve karar deyimleri görevlerini yerine getirirken, bazen çıkış yapmaya gereksinim duyulur. C#'da goto, break ve continue deyimleri atlama deyimleri olarak bilinir.
Goto deyimi program içinde belirtilen bir etikete atlamayı sağlar. Ancak yapısal programlama açısında kullanımı önerilmez.
Örnek:
..
atla:
..
goto atla;
Break ve continue deyimi
En yakın bloktan çıkışı sağlar. Continue deyimi ise yeni bir döngüye başlar.
int sayac = 1;
while (true) {
Console.WriteLine(sayac);
sayac++;
if (sayac <= 10)
continue;
else
break;
}
III. UYGULAMA
1 ile 10 arası değer girilene kadar ekrandan değer okuyacak program parçasını yazın.
Çözüm:
do {
Console.Write ("değeri girin");
deger = int.Parse (console.ReadLine());
} while (deger < 0 œœdeger >= 10);
|
|
 |
|
|
|
[
]
|
|
|
|
|
|
 |
|
|
|
|