Ders_notu_C

Algoritma: Herhangi bir programın yazılmadan önce
adım adım tasarlanmasıdır.
Örnek : Herhangi iki sayının
programın algoritmasını yazınız.
toplamını
bulan
Örnek : Herhangi iki sayı ile dört işlemi yapan
programın algoritmasını yazınız.
Örnek : Klavyeden girilen değerler ile üçgenin alanını
ve çevresini hesaplayan programın algoritmasını
yazınız.
Örnek : Bir öğrencinin ortalamasını hesaplayan
programın algoritmasını yazınız (2 yazılı, 1 sözlü).
Akış Diyagramı: Adım adım hazırlanan her hangi bir
programın hangi yöne doğru dallandığını gösteren
şekillerden oluşan diyagramlardır.
Semboller:
Örnek : Klavyeden girilen değerler ile bir öğrencinin
matematik dersinden geçip / kaldığını mesaj eden
programın algoritmasını yazarak, akış diyagramını
çiziniz.
(2 yazılı, 1 sözlü, Geçme notu = 50)
Örnek :Klavyeden girilen değerler ile öğrencinin
matematik dersinden 5’li sisteme göre kaç aldığını
mesaj eden programın algoritmasını yazarak, akış
diyagramını çiziniz.
1  0 ile 49 arası
2  50 ile 59 arası
3  60 ile 69 arası
4  70 ile 84 arası
5  85 ile 100 arası (Sayılar dahildir.)
ÖDEV SORULARI
1-Klavyeden girilen değerler ile kare ve dikdörtgenin
alanını hesaplayıp, en büyük alana sahip olanı ekrana
yazdıran
programın
algoritmasını
yazarak,
akış
diyagramını çiziniz.
2-Farklı girilen üç sayıdan en büyüğünü bulan programın
algoritmasını yazarak, akış diyagramını çiziniz.
3-Klavyeden girilen değerler ile işçinin maaşını hesaplayan
programın algoritmasını yazarak, akış diyagramını
hesaplayınız.
(Maaş = Saat ücreti * Aylık toplam saat)
Örnek :Klavyeden girilen 5 adet sayının toplamını ve
ortalamasını bulan programın algoritmasını yazarak,
akış diyagramını çiziniz.
Örnek :Klavyeden girilen N adet sayının toplamını ve
ortalamasını bulan programın algoritmasını yazarak,
akış diyagramını çiziniz.
Örnek :N personele sahip bir işyerinde bayanların ve
erkeklerin sayısını bulan programın algoritmasını
yazarak, akış diyagramını çiziniz.
ÖDEV SORULARI
1-20’ye kadar olan çift sayıların toplamını bulan
programın algoritmasını yazarak, akış diyagramını
çiziniz.
2-Klavyeden girilen N adet sayıdan;
 Pozitif sayıların toplamını (0 sayısı pozitiftir)
 Negatif sayıların toplamını
 Bütün
sayıların
toplamını
bulan
programın
algoritmasını yazarak, akış diyagramını çiziniz.
3-N kişilik bir sınıfta geçenlerin ve kalanların
sayısını bulan programın algoritmasını yazarak, akış
diyagramını çiziniz (Geçme notu 50).
4-N personele sahip bir işyerinde;




Çocuğu olmayanların sayısını
1 çocuğu olanların sayısını
2 çocuğu olanların sayısını
3 ve daha fazla çocuğu olanların sayısını bulan
programın algoritmasını yazarak, akış diyagramını
çiziniz.
5-100 personele sahip bir işyerinde;
 Yaşı 25’e eşit ve küçük olanların sayısını
 Yaşı 25’den büyük erkeklerin sayısını
 Yaşı 40 ve daha küçük bayanların sayısını
 Bekar
bayanların
sayısını
bulan
programın
algoritmasını yazarak, akış diyagramını çiziniz.
6-Sıfır değeri girilinceye kadar klavyeden sayı girişi
yapılıyor.
 Girilen sayılardan pozitif sayıların toplamını
 Girilen sayılardan pozitif sayıların adedini
 Girilen sayılardan pozitif sayıların ortalamasını bulan
programın algoritmasını yazarak, akış diyagramını
çiziniz.
Örnek :Klavyeden girilen farklı
üç adet sayıyı
büyükten
küçüğe
sıralayıp
ekrana
yazdıran
programın algoritmasını yazarak, akış diyagramını
çiziniz.
VISUAL STUDIO
İçerisinde birden fazla programlama dilini barındıran bir
platformdur.
IDE  Tümleşik gelişme ortamı da denir.
 .NET tabanlıdır.
 .NET teknolojisi Microsoft tarafından
atılmıştır.
 Sadece Microsoft platformlarında çalışır.
ortaya
.NET Framework; birçok uygulama türünün bir arada
geliştirilebileceği bir uygulama geliştirme platformudur.
İşletim sistemleri üzerinde, kurulu oldukları donanımları
yöneten
bileşenlerdir.
Programcılar
tarafından
oluşturulan uygulamalar monitör, yazıcı ya da klavyeyle
iletişim kurabilmek için işletim sistemi ile bağlantı
kurmalıdırlar.
.NET Framework tam bu noktada devreye girer. .NET
Framework platformu, işletim sistemi ile uygulamalar
arasındaki katmandır.
Burada ara katmanın görevi; işletim sistemi ile
uygulamalar arasında ilişki kurmaktır. .NET Framework
sayesinde uygulamalar işletim sistemi ile bağlantı
kurarak donanımları kullanabilirler.
CLR; (CommonLanguage Runtime – Ortak Çalışma
Zamanı) Bellek yönetimi ya da hata yönetimi gibi
karmaşık alt yapı işlerinin sorumlusudur.
Farklı ortamlarda geliştirme yapmak için programcının
bellek yönetimi gibi çözümü zor problemler ile
uğraşması ve kendisinin bilgisi dışında oluşan hatalara
da çözüm üretmesi gerekmektedir.
.NET Framework platformu içerisinde bulunan CLR
sayesinde programcının bu gibi sorunlar ile uğraşmasına
gerek kalmaz.
CLS; (CommonLanguage Spesification – Ortak Dil
Spesifikasyonu) .NET mimarisi kullanılan bütün dillerin
ortak olarak CLR tarafından çalıştırılabilmesi için
gerekli olan kurallar bütünüdür.
CTS; (CommonTypeSystem – Ortak Tip Sistemi) .NET
mimarisi kullanılan dillerin birbiri ile uyumlu bir şekilde
çalışmasını sağlar ve bu dillerden biri ile geliştirilen bir
tipin diğer dillerde de kullanılabilmesini sağlar.
TEMEL SINIF KÜTÜPHANESİ; (Base Class Library)
Uygulamalarda
kullanacağımız
ve
temel
olarak
uygulamanın temel ihtiyaçlarını karşılayacak olan
sınıfları içerir.
Örneğin; System.IO isimli sınıf kütüphanesi, bilgi girişi
ve çıkışı işlemlerinin yapıldığı komutları barındırır.
Uygulamanın başına bu sınıf kütüphanesini ekleyerek, bu
komutları çalıştırabiliriz.
C#(.NET Kod Geliştirme Ortamı)
Microsoft firması tarafından 1999 yılı sonu itibari ile
geliştirilmeye başlanan C# programlama dili, 2002 yılı
itibari ile 1.0 sürümü ile .NET dilleri arasında yerini
almıştır.
 1.0 versiyonu(2002 – ManagedCode) ile birlikte
yönetilebilir kod yapısı kullanılmaya başlanmıştır.
 2.0 versiyonu (2005 - Generics) ile generics,
anonymousmethods
(isimsiz
metodlar)
gibi
programlama yapıları kullanılmaya başlandı.
 3.0 versiyonu (2007 – LINQ) ile birlikte lambda
ifadeleri, extensionmethods (genişletme metodları),
LINQ gibi programlama yapıları kullanılmaya
başlandı.
 4.0 versiyonu (2010 – Dynamic) ile birlikte dynamic
veri tipi, named ve optionalparameters gibi
programlama yapıları kullanılmaya başlandı.
 5.0 versiyonu (2012 – Asynchronous) ile asenkron
programlama yapısı kullanılmaya başlandı.
C# Dilinde şu tür uygulamalar geliştirilir;
 Console uygulamaları (DOS ortamında çalışır)
 Windows uygulamaları (Form üzerinde çalışır)
 Web uygulamaları (Web üzerinde çalışır)
Web sunucu veya Local Web
sunucuda çalışır.
ASP tabanlıdır.
Sunucu olarak IIS kullanılır.
Using
Projeye
kütüphaneleri
dahil
eder.
kütüphaneler .NET Framework’ün içerisindedir.
Kaynak Dosyalar  Program
dosyalardır.
 C#
program.cs
 Visual Basic program.vb
kodlarının
Bu
yazıldığı
Kaynak Kod (sourcecode) Programcının yazdığı kod.
C #’da bir uygulama NameSpace’de (isim uzayı) başlar.
Çünkü içerisinde sınıflar barındırır.
Bizim yazdığımız programlarda, içerisinde bir sürü sınıfın
bulunduğu bir yapı elde ederiz. Proje, hazır dahil edilen
veya programcının yazmış olduğu sınıflardan oluşur.
Demek oluyor ki; NameSpace içerisinde bir sürü sınıf
barındıran bir kümedir.
C #’da ana fonksiyon main’dir.
Yeni bir proje açmak;
 Console uygulamaları (DOS ortamında çalışan)
New  Project  C #  Windows
consoleaplication uygulama1
 Windows uygulaması
New  Project  C #  Windows windows
aplication uygulama2
(Form’larla çalışır. En az bir form açılır.)
SINIF ÜYELERİ
İki grupta toplanır;
a)Veri üyelei (datamembers)
b)Fonksiyon üyeleri (membersfunctions)
A-Veri Üyeleri
1)Alanlar (değişkenler)
2)Sabitler
3)Olaylar (Bir işlemin gerçekleşmesi)
B-Fonksiyon üyeleri (iş yapan üyelerdir)
1)Yöntemler
methots
2)Özellikler
properties
3)Yapıcı fonksiyonlar constructors (Nesne ilk
oluşturulduğunda çağrılıyor,
yani sınıf çalıştırıldığında)
4)Sonlandırıcılar
destructor (nesne
sonlandığında çağrılıyor)
5)Operatörler
6)Dizinleyiciler
index
Değişkenleri İsimlendirme Kuralları (Sabitler için de
aynıdır)
 Değişkenlerin isimleri harf ile başlamalıdır. Ama ilk
harf hariç diğer karakterler sayı olabilir.
 Bazı programlama dilleri büyük ve küçük harfe
duyarlıdır. Yani Sayi, sayi ve SAYI hepsi ayrı değişken
olarak algınabilir. (C# büyük/küçük harfe duyarlıdır.)
 Değişken isimleri birden fazla kelime olduğu zaman;
kelimelerin arasına boşluk konmaz. Bu tür değişkenleri
ya kelimeleri birleştirerek veya kelimeler arasına
_(alt tire) karakteri koyarak isimlendiririz.
 Değişkenlerin isimleri !, ?, {, ] gibi karakterler
içeremez.
 Programlama dili için tanımlanmış anahtar kelimelerini
(komutları) değişken isimleri olarak kullanamayız.
Değişken Program içerisinde üretilen değerleri bellekte
(RAM) geçici olarak saklamak amacı ile kullanılırlar.
Değişken Elde edilen bilgilerin hafızada (RAM hafıza)
tutulduğu bölgelerin adıdır.
Bir değişken tanımlanırken değişken ismi ve değişken veri
tipi belirtilerek tanımlanırlar.
Kullanımı;
Veri tipi
Değişken Adı ;
Not : İlk değer kullanımı zorunlu değildir. Program
içerisinde istenirse daha sonra değişkene değer aktarımı
yapılabilir.
Sabit İçeriği sabit olan değer ve ifadelerin saklanması
amacı ile kullanılırlar.
C# dilinde sabitleri const ya da readonly ifadesi
kullanarak iki şekilde tanımlamak mümkündür.
Kullanımı;
Const veri tipi sabit ismi = değer;
VISUAL STUDIO
İçerisinde birden fazla programlama dilini barındıran bir platformdur.
IDE  Tümleşik gelişme ortamı da denir.
 .NET tabanlıdır.
 .NET teknolojisi Microsoft tarafından ortaya atılmıştır.

Sadece Microsoft platformlarında çalışır.
.NET Framework; birçok uygulama türünün bir arada geliştirilebileceği bir uygulama
geliştirme platformudur.
İşletim sistemleri üzerinde, kurulu oldukları donanımları yöneten bileşenlerdir. Programcılar
tarafından oluşturulan uygulamalar monitör, yazıcı ya da klavyeyle iletişim kurabilmek için
işletim sistemi ile bağlantı kurmalıdırlar.
.NET Framework tam bu noktada devreye girer. .NET Framework platformu, işletim sistemi
ile uygulamalar arasındaki katmandır.
Burada ara katmanın görevi; işletim sistemi ile uygulamalar arasında ilişki kurmaktır. .NET
Framework sayesinde uygulamalar işletim sistemi ile bağlantı kurarak donanımları
kullanabilirler.
CLR;(CommonLanguage Runtime – Ortak Çalışma Zamanı) Bellek yönetimi ya da hata yönetimi
gibi karmaşık alt yapı işlerinin sorumlusudur.
Farklı ortamlarda geliştirme yapmak için programcının bellek yönetimi gibi çözümü zor
problemler ile uğraşması ve kendisinin bilgisi dışında oluşan hatalara da çözüm üretmesi
gerekmektedir.
.NET Framework platformu içerisinde bulunan CLR sayesinde programcının bu gibi sorunlar ile
uğraşmasına gerek kalmaz.
CLS;(CommonLanguage Spesification – Ortak Dil Spesifikasyonu) .NET mimarisi kullanılan
bütün dillerin ortak olarak CLR tarafından çalıştırılabilmesi için gerekli olan kurallar
bütünüdür.
CTS;(CommonTypeSystem – Ortak Tip Sistemi) .NET mimarisi kullanılan dillerin birbiri ile
uyumlu bir şekilde çalışmasını sağlar ve bu dillerden biri ile geliştirilen bir tipin diğer dillerde
de kullanılabilmesini sağlar.
TEMEL SINIF KÜTÜPHANESİ;(Base Class Library) Uygulamalarda kullanacağımız ve
temel olarak uygulamanın temel ihtiyaçlarını karşılayacak olan sınıfları içerir.
Örneğin; System.IO isimli sınıf kütüphanesi, bilgi girişi ve çıkışı işlemlerinin yapıldığı
komutları barındırır. Uygulamanın başına bu sınıf kütüphanesini ekleyerek, bu komutları
çalıştırabiliriz.
C# (.NET Kod Geliştirme Ortamı)
Microsoft firması tarafından 1999 yılı sonu itibari ile geliştirilmeye başlanan C#
programlama dili, 2002 yılı itibari ile 1.0 sürümü ile .NET dilleri arasında yerini almıştır.





1.0 versiyonu (2002 – ManagedCode) ile birlikte yönetilebilir kod yapısı kullanılmaya
başlanmıştır.
2.0 versiyonu (2005 - Generics) ile generics, anonymousmethods (isimsiz metodlar) gibi
programlama yapıları kullanılmaya başlandı.
3.0 versiyonu (2007 – LINQ) ile birlikte lambda ifadeleri, extensionmethods
(genişletme metodları), LINQ gibi programlama yapıları kullanılmaya başlandı.
4.0 versiyonu (2010 – Dynamic) ile birlikte dynamic veri tipi, named ve
optionalparameters gibi programlama yapıları kullanılmaya başlandı.
5.0 versiyonu (2012 – Asynchronous) ile asenkron programlama yapısı kullanılmaya
başlandı.
C# Dilinde şu tür uygulamalar geliştirilir;
 Console uygulamaları (DOS ortamında çalışır)
 Windows uygulamaları (Form üzerinde çalışır)
 Web uygulamaları (Web üzerinde çalışır)
Web sunucu veya Local Web sunucuda çalışır.
ASP tabanlıdır.
Sunucu olarak IIS kullanılır.
UsingProjeye kütüphaneleri dahil eder. Bu kütüphaneler .NETFramewok’ün içerisindedir.
Kaynak Dosyalar Program kodlarının yazıldığı dosyalardır.


C# program.cs
Visual Basic program.vb
Kaynak Kod (sourcecode)Programcının yazdığı kod.
C #’da bir uygulama NameSpace’de (isim uzayı) başlar. Çünkü içerisinde sınıflar barındırır.
Bizim yazdığımız programlarda, içerisinde bir sürü sınıfın bulunduğu bir yapı elde ederiz. Proje,
hazır dahil edilen veya programcının yazmış olduğu sınıflardan oluşur.
Demek oluyor ki; NameSpace içerisinde bir sürü sınıf barındıran bir kümedir.
C #’da ana fonksiyon main’dir.
Yeni bir proje açmak;Console uygulamaları (DOS ortamında çalışan)
New  Project  C #  Windows consoleaplication uygulama1
Windows uygulaması
New  Project  C #  Windows windowsaplication uygulama2
(Form’larla çalışır. En az bir form açılır.)

SINIF ÜYELERİ
İki grupta toplanır;
a)Veri üyelei (datamembers)
b)Fonksiyon üyeleri (membersfunctions)
A-Veri Üyeleri
1)Alanlar (değişkenler)
2)Sabitler
3)Olaylar (Bir işlemin gerçekleşmesi)
B-Fonksiyon üyeleri (iş yapan üyelerdir)
1)Yöntemler
methots
2)Özellikler
properties
3)Yapıcı fonksiyonlar
constructors (Nesne ilk oluşturulduğunda çağrılıyor,
yani sınıf çalıştırıldığında)
4)Sonlandırıcılar
destructor (nesne sonlandığında çağrılıyor)
5)Operatörler
6)Dizinleyiciler
index
Değişkenleri İsimlendirme Kuralları (Sabitler için de aynıdır)





Değişkenlerin isimleri harf ile başlamalıdır. Ama ilk harf hariç diğer karakterler sayı
olabilir.
Bazı programlama dilleri büyük ve küçük harfe duyarlıdır. Yani Sayi, sayi ve SAYI hepsi
ayrı değişken olarak algınabilir. (C# büyük/küçük harfe duyarlıdır.)
Değişken isimleri birden fazla kelime olduğu zaman; kelimelerin arasına boşluk konmaz. Bu
tür değişkenleri ya kelimeleri birleştirerek veya kelimeler arasına _(alt tire) karakteri
koyarak isimlendiririz.
Değişkenlerin isimleri !, ?, {, ] gibi karakterler içeremez.
Programlama dili için tanımlanmış anahtar kelimelerini (komutları) değişken isimleri olarak
kullanamayız.
DeğişkenProgram içerisinde üretilen değerleri bellekte (RAM) geçici olarak saklamak amacı
ile kullanılırlar.
Bir değişken tanımlanırken değişken ismi ve değişken veri tipi belirtilerek tanımlanırlar.
Kullanımı;Değişken tipi
Değişken Adı = İlk Değer ;
Not :İlk değer kullanımı zorunlu değildir. Program içerisinde istenirse daha sonra değişkene
değer aktarımı yapılabilir.
Sabitİçeriği sabit olan değer ve ifadelerin saklanması amacı ile kullanılırlar.
C# dilinde sabitleri const ya da readonly ifadesi kullanarak iki şekilde tanımlamak mümkündür.
Kullanımı;
Constveri tipi sabit ismi = değer;
ÇIKIŞ İŞLEMLERİ
Bir metin ifadesini ekrana yazdırmak için kullanılan
metotlardır (komutlardır).
1-Console.Write( ) : Ekrana yazdırma işleminden sonra
imleç, yazdırılan ifadenin yanında bekler.
Örnek : Ekrana isminizi yazdıran projeyi oluşturunuz.
static void Main(string[] args)
{
Console.Write("Emine Özel");
Console.ReadKey();
}
Escape (kaçış) karakterleri : Belli bir eylemi yerine
getiren karakterlerdir. \ işareti ile kullanılır.
Karakter
\n
\r
Açıklama
Alt satıra iner
Satır başı
Static void Main(string[] args)
{
Console.Write("Emine Özel \n");
Console.Write("İstanbul");
Console.ReadKey();
}
2-Console.WriteLine( ) : Yazdırma işleminden sonra, imleç
yazdırılan ifadenin alt satırında bekler.
Örnek : Ekrana adınızı ve bulunduğunuz şehri yazan
projeyi oluşturunuz.
Static void Main(string[] args)
{
Console.WriteLine("Emine Özel");
Console.WriteLine("İstanbul");
Console.ReadKey();
}
Static void Main(string[] args)
{
Console.Write("\nEmine \nÖzel\n");
Console.Write("İstanbul");
Console.ReadKey();
}
Örnek : Verilen iki sayı ile toplama işlemini yapan projeyi
oluşturunuz.
Static void Main(string[] args)
{
int x, y, toplam;
x = 5;
y = 10;
toplam = x + y;
Console.Write("Sayıların Toplamı...={0}", toplam);
Console.ReadKey();
}
Veya;
Static void Main(string[] args)
{
int x, y;
x = 5;
y = 10;
Console.Write("Sayıların Toplamı...={0}", x + y);
Console.ReadKey();
}
Veya;
Static void Main(string[] args)
{
int x, y, toplam;
x = 5;
y = 10;
toplam = x + y;
Console.Write("{0} sayısı ile {1} sayısının
toplamı...={2}",x,y,toplam);
Console.ReadKey();
}
Örnek : Verilen iki sayı ile dört işlemi yapan projeyi
oluşturunuz.
Not: Değişken değerlerini ekrana birlikte yazdırmanın
diğer bir yolu da + (artı) işaretidir. Bu işaret birleştirme
işlemini gerçekleştirir.
staticvoid Main(string[] args)
{
int x, y, toplam;
x = 5;
y = 10;
toplam = x + y;
Console.WriteLine("x değişkeninin değeri..="
+ x + " y değişkeninin değeri...=" + y);
Console.WriteLine("x + y = {0} ", toplam);
Console.ReadKey();
}
Örnek : Verilen ad ve soyadı ekrana birleştirerek
yazdıran projeyi oluşturunuz.
Static void Main(string[] args)
{
string ad, soy;
ad = "Emine";
soy = "Özel";
Console.Write(ad + " " + soy);
Console.ReadKey();
}
Örnek :Verilen değerler ile üçgenin çevresini ve alanını
bulan projeyi oluşturunuz.
Static void Main(string[] args)
{
int a,b,c,h;
int cevre, alan;
a
b
c
h
=
=
=
=
3;
4;
5;
4;
cevre = a + b + c;
alan = (a * h) / 2;
Console.WriteLine("Üçgenin Alanını...={0}", alan);
Console.WriteLine("Üçgenin Çevresi...={0}", cevre);
Console.ReadKey();
}
Örnek :Verilen değerler ile dikdörtgenin çevresini ve
alanını bulan projeyi oluşturunuz.
ÖDEV:
1-Verilen iki
oluşturunuz.
sayı
ile
dört
işlemi
yapan
projeyi
2-Verilen değerler ile üçgenin çevresini ve alanını bulan
projeyi oluşturunuz.
3-Verilen değerler ile dikdörtgenin çevresini oluşturan
projeyi oluşturunuz.
4-Klavyeden girilen iki sayı ile dört işlemi yapan projeyi
oluşturunuz.
5- Klavyeden girilen değerler ile öğrencinin İngilizce
dersinden ortalamasını hesaplayan projeyi oluşturunuz.
(2 yazılı, 1 sözlü)
6- Klavyeden girilen değerler ile personelin maaşını
hesaplayan projeyi oluşturunuz.
(maaş = saat ücreti * aylık toplam saat)
GİRİŞ KOMUTLARI
Klavyeden bilgi girişi sağlayan metotlardır (komutlardır).
1-Console.Read( ) : Kullanıcının klavyeden giriş yapmasını
sağlar. Tek karakter okur. Geriye tam sayı tipinde bir
değer döndürür. Bu değer okunan karakterin “ascii” kod
karşılığıdır.
Kullanımı :
Değişken adı = Console.Read( );
2-Console.ReadLine( ) : Kullanıcının klavyeden bir değer
girmesini sağlar. Bu değeri string bir ifade olarak geri
döndürür.
Kullanımı :
Değişken adı = Console.ReadLine( );
Örnek : Klavyeden öğrencinin okul kimlik bilgisini giren ve
ekrana yazdıran projeyi oluşturunuz.
Static void Main(string[] args)
{
string ad, soy, sn;
int num;
Console.Write("Adınızı giriniz...:");
ad = Console.ReadLine();
Console.Write("Soyadınızı giriniz...:");
soy = Console.ReadLine();
Console.Write("Sınıfınızı giriniz...:");
sn = Console.ReadLine(); // Sınıf girilir
Console.Write("Numaranızı giriniz...:");
num = Convert.ToInt16(Console.ReadLine());
Console.Clear();
//Girilen değerleri ekrana yazdırıyoruz
Console.WriteLine("Adınız......:{0}", ad);
Console.WriteLine("Soyadınız...:{0}", soy);
Console.WriteLine("Sınıfınız...:{0}", sn);
Console.WriteLine("Numaranız...:{0}",
num.ToString());
Console.ReadKey();
}
OPERATÖRLER
Programlama dillerinde tanımlanmış sabit ve değişkenler üzerinde işlemler yapmamızısağlayan
karakter ya da karakter topluluklarına operatör denir.
1-Aritmetiksel Operatörler: Aritmetik işlemler yaparken kullandığımız operatörlerdir.
Dört İşlem
Operatör
+
*
/
Açıklama
Toplama İşlemi
Çıkarma İşlemi
Çarpma İşlemi
Bölme İşlemi
Mod Alma: Bir sayının başka bir sayıya bölümünden kalan sonucu alma işlemine mod alma denir.
Bu işlemi yapmak için % karakteri kullanılır.
2-İlişkisel Operatörler : İlişkisel operatöler iki değerin karşılaştırılması işlemi için kullanılır.
Programımızdakoşul ifadelerinde kullanılarak programın akşını değiştirmemizi sağlar.
Karşılaştırmasonucunda doğru(true) ve yanlış(false) olmak üzere boolen bir değer döndürür.
Operatör
==
!=
>
<
>=
<=
Açıklama
Eşittir
Eşit Değildir
Büyüktür
Küçüktür
Büyük Eşittir
Küçük Eşittir
3-Mantıksal Operatörler :Mantıksal
operatörler birden fazla şartın olduğu
durumlarda kullanılır. Birden çokboolen
değeri tek bir boolen değere indirmek için
kullanılır.
Operatör
&&
||
!
4-İşlem Önceliği : İşlem öncelik sırası aşağıdaki tabloda en
yüksekten en düşüğe doğru sıralanmıştır.
Açıklama
Ve
Veya
Değil
En Yüksek
()
!
*, /, %
+, <, >
= =, !=
&&
||
En Düşük
PROGRAM AKIŞININ KONTROLÜ
Programın akışı ilk satırdan başlayıp, sırası ile tüm
satırları çalıştırarak devam eder. Tüm programlama
dillerinde programın çalışma şekli aynıdır. Bu çalışma
şeklini Akış Kontrol Komutları ile değiştirebiliriz.
Akış Kontrol Komutları;
 Aritmetiksel işlemlerden
 Değişkenlerden
 Mantıksal ifadelerden
 Fonksiyonların gönderdiği değerlerden
 Sayısal ve mantıksal değer üretebilen
ifadelerden oluşur.
tüm
1-if { } yapısı :Şartlı (koşullu) kontrol yapısıdır. Şartın
karşılaştırılması
sonucunda;
şart
doğru
ise
işlem/işlemler yapılır. Şart yanlış ise bloktan sonraki
işleme geçilir.
Kullanımı:
if (şart)
{
İşlem/işlemler;
}
Örnek:
ekrana
Static
{
int x,
Klavyeden girilen iki sayıdan büyük olan sayıyı
görüntüleyen projeyi oluşturunuz.
void Main(string[] args)
y;
Console.Write("1. sayıyı giriniz...:");
x = Convert.ToInt16(Console.ReadLine());
Console.Write("2. sayıyı giriniz...:");
y = Convert.ToInt16(Console.ReadLine());
Console.WriteLine("");
if (x == y)
{
Console.Write("Sayılar birbirine eşittir...");
}
if (x > y)
{
Console.Write("1. sayı büyüktür...:{0}", x);
}
if (y > x)
{
Console.Write("2. sayı büyüktür...:{0}", y);
}
Console.ReadKey();
}
Veya;
if (x == y) Console.Write("Sayılar birbirine
eşittir...");
if (x > y) Console.Write("1. sayı
büyüktür...:{0}", x);
if
(y
>
x)
büyüktür...:{0}",y);
Console.Write("2.
sayı
Not: Şarttan sonra yapılacak işlem, bir işlem ise blok
içerisine almak gerekmez. Alınırsa problem olmaz.
Örnek: Klavyeden girilen değerler ile öğrencinin geçip
kaldığını mesaj eden projeyi oluşturunuz.
(2 yazılı, 1 sözlü, Geçme notu = 50)
Static void Main(string[] args)
{
int y1, y2, s1;
double ort;
Console.Write("1. yazılıyı giriniz...:");
y1 =
Convert.ToInt16(Console.ReadLine());
Console.Write("2. yazılıyı giriniz...:");
y2 =
Convert.ToInt16(Console.ReadLine());
Console.Write("Sözlü notunu giriniz...:");
s1 =
Convert.ToInt16(Console.ReadLine());
Console.WriteLine("");
ort = (y1 + y2 + s1) / 3;
if (ort > 49)
{
Console.Write("Öğrenci Geçmiştir....:{0}", ort);
}
if (ort < 50)
{
Console.Write("Öğrenci Kalmıştır....:{0}", ort);
}
Console.ReadKey();
}
Örnek: Klavyeden girilen değerler ile
cinsiyetini mesaj eden projeyi oluşturunuz.
(Bayan = B , Erkek = E)
personelin
Static void Main(string[] args)
{
string cin;
Console.Write("Personelin cinsiyetini giriniz
<Bayan=B / Erkek=E>..:");
cin = Console.ReadLine();
Console.WriteLine("---------------------");
if ((cin == "B") || (cin == "b"))
{
Console.Write("Personelin cinsiyeti...: BAYAN");
}
if ((cin == "E") || (cin == "e"))
{
Console.Write("Personelin cinsiyeti...: ERKEK");
}
Console.ReadKey();
}
Örnek: Klavyeden girilen cinsiyet ve yaş bilgisine göre,
kişinin askere gidip/gidemeyeceğini mesaj eden projeyi
oluşturunuz.
staticvoid Main(string[] args)
{
string cin;
int yas;
Console.Write("Kişinin cinsiyetini giriniz
<Bayan=B / Erkek=E>..:");
cin = Console.ReadLine();
Console.Write("Kişinin yaşını giriniz...:");
yas = Convert.ToInt16(Console.ReadLine());
Console.WriteLine("----------------------------");
if (((cin == "E") || (cin == "e")) && (yas > 19))
{
Console.Write("Kişi askere gidebilir...");
}
Console.ReadKey();
}
2-if { } else { } yapısı :Şartlı (koşullu) kontrol
yapısıdır. Şartın karşılaştırılması sonucunda; şart
doğru ise işlem/işlemler yapılır. Şart yanlış ise
else’den sonraki işlem/işlemleryapılır.
Kullanımı:
if
{
(şart)
İşlem/işlemler;
}
Else
{
İşlem/işlemler;
}
Örnek: Klavyeden girilen değerler ile personelin maaşını
hesaplayan projeyi oluşturunuz.
Çocuk yardımı  saat ücreti * 10 (Tek çocuk yardımı)
(En fazla iki çocuk için yardım alabilir.)
Yakacak Yardımı  Evli ise  saat ücreti * 15
Bekar ise  saat ücreti * 10
Vergi Kesintisi  Evli ise  saat ücreti * 10
Bekar ise  saat ücreti * 5
Maaş=(saat ücreti*Aylık Toplam saat)+yardımlar – kesinti
staticvoid Main(string[] args)
{
// su: saat ucreti , ats : aylık toplam saat
// cs: çocuk sayısı , md:medeni durum
// ----------------------------------------// Değişkenler tanımlanır ve sıfırlanır.
int su, ats, cs;
string md;
int cocukydm, yakacakydm, vergi, yardim, maas;
cocukydm = 0;
yakacakydm = 0;
vergi = 0;
yardim = 0;
//--------------------------------------------// Veri girişleri
//
Console.Write("Personelin saat ücretini giriniz..:");
su = Convert.ToInt16(Console.ReadLine());
Console.Write("Per.aylık toplam saatini giriniz..:");
ats = Convert.ToInt16(Console.ReadLine());
Console.Write("Personelin çocuk sayısını giriniz
<Çocuk yoksa 0 giriniz>...:");
cs = Convert.ToInt16(Console.ReadLine());
Console.Write("Personelin medeni durumunu giriniz
<Evli=E / Bekar=B>.......:");
md = Console.ReadLine();
//----------------------------------------------if (cs < 3)
{
cocukydm = cs * (su * 10);
}
if (cs > 2)
{
cocukydm = 2 * (su * 10);
}
if ((md=="E") || (md=="e"))
{
yakacakydm = su * 15;
vergi = su * 10;
}
if ((md == "B") || (md == "b"))
{
yakacakydm = su * 10;
vergi = su * 5;
}
//maas = (su * ats) + cocukydm + yakacakydm - vergi;
yardim = cocukydm + yakacakydm;
maas = (su * ats) + yardim - vergi;
Console.WriteLine("");
Console.Write("Personelin Maaşı........= {0}", maas);
Console.ReadKey();
}
Örnek: Klavyeden girilen değerler ile kişinin ideal
kilosunu hesaplayan projeyi oluşturunuz.
 Kaç kilo fazlalığı veya eksikliği hesaplanacak ve
ilgili mesaj verdirilecek
 İdeal kiloda ise ilgili mesaj verdirilecek
 İdeal Kilo= ((Boy – 100) + (yaş / 10 )) * K
 K  Bayan  0,8
Erkek  0,9
intyas, boy;
doublekilo, idealkilo,fark;
stringcin;
Console.Write("Kilonuzu giriniz......: ");
kilo=Convert.ToDouble(Console.ReadLine());
Console.Write("Boyunuzu giriniz......:");
boy=Convert.ToInt16(Console.ReadLine());
Console.Write("Yaşınızı girinz.......:");
yas=Convert.ToInt16(Console.ReadLine());
Console.Write("Cinsiyetinizi belirtiniz (Bayan =
B),(Erkek = E)");
cin=Console.ReadLine();
if ((cin=="b") || (cin=="B"))
{
idealkilo= ((boy-100) + (yas/10))*0.8;
}
if ((cin=="e") || (cin=="E"))
{
idealkilo= ((boy-100) + (yas/10)) *0.9;
}
if (kilo==idealkilo)
{
Console.Write(" Tebrikler ideal kilonuzdasınız ");
}
if (kilo>idealkilo)
{
fark=kilo-idealkilo;
Console.WriteLine("İdeal kilonuz.....: {0} ",
idealkilo);
Console.Write("{0} KG kilo vermelisiniz....",
fark);
}
if (kilo<idealkilo)
{
fark=idealkilo-kilo;
Console.WriteLine("İdeal kilonuz.....: {0} ",
idealkilo);
Console.Write("{0} KG kilo almalısınız....",
fark);
}
Console.ReadKey();
}
Örnek: Girilen üçgen kenarlarından, o üçgenin ne çeşit
üçgen olduğunu bulan projeyi oluşturunuz.
Kenar kuralı;
 İki kenarın toplamı üçüncü kenardan büyüktür.
 İki kenarın farkı üçüncü kenardan küçüktür.
Not: Mutlak değer fonksiyonu kullanılacak.(ABS)
staticvoidMain(string[] args)
{
inta, b, c;
Console.Write("Üçgenin 1. kenarını giriniz....:");
a=Convert.ToInt16(Console.ReadLine());
Console.Write("Üçgenin 2. kenarını giriniz....:");
b=Convert.ToInt16(Console.ReadLine());
Console.Write("Üçgenin 3. kenarını giriniz....:");
c=Convert.ToInt16(Console.ReadLine());
Console.WriteLine("");
if ((((a+b) >c) && ((Math.Abs(a-b)) <c)) ||
(((a+c) >b) && ((Math.Abs(a-c)) <b)) || (((b+c)
>a) && ((Math.Abs(b-c)) <a)))
{
if ((a==b) && (a==c))
{
Console.Write("Bu üçgen Eşkenar üçgendir....:{0}{1}-{2}", a, b, c);
}
if (((a==b) && (a!=c)) || ((a==c) && (a!=b)) ||
((b==c) && (b!=a)))
{
Console.Write("Bu üçgen İkizkenar
üçgendir....:{0}-{1}-{2}", a, b, c);
}
if ((a!=b) && (a!=c) && (b!=c))
{
Console.Write("Bu üçgen Çeşitkenar
üçgendir....:{0}-{1}-{2}", a, b, c);
}
}
else
{
Console.Write("Bu değerler üçgen oluşturmaz...");
}
Console.ReadKey();
}
Örnek: 100’lü sisteme göre puanı girilen bir öğrencinin,
5’li sistem karşılığını bulan projeyi oluşturunuz.
 0-49
 1
 50-59
 2
 60-69
 3
 70-84
 4
 85-100
 5
 0-100 arası puan girişi kontrolü yapılacaktır.
staticvoidMain(string[] args)
{
intpuan;
Console.Write("Öğrencinin puanını giriniz <0 –
100 arası> ..:");
puan=Convert.ToInt16(Console.ReadLine());
if ((puan>-1) && (puan<101))
{
if (puan<50) Console.Write("1 notu
aldınız......={0} ", puan);
if ((puan>49) && (puan<60)) Console.Write("2 notu
aldınız......={0} ", puan);
if ((puan>59) && (puan<70)) Console.Write("3 notu
aldınız......={0} ", puan);
if ((puan>69) && (puan<85)) Console.Write("4 notu
aldınız......={0} ", puan);
if (puan>84) Console.Write("5 notu
aldınız......={0} ", puan);
}
else
{
Console.Write("Geçerli bir puan girişi
yapılmadı...");
}
Console.ReadKey();
}
Örnek: Klavyeden saniye cinsinden girilen bir zamanı;
Saat, dakika ve saniye biçiminde hesaplayan projeyi
oluşturunuz.
Örnek: Klavyeden girilen sayının pozitif veya negatif
sayı olduğunu mesaj eden projeyi oluşturunuz.
 0 değeri işleme dahil edilmeyecektir.
Örnek: Klavyeden 1-5 arasındaki illerin plaka
numaraları girildiğinde, il ismini ekrana yazan projeyi
oluşturunuz .
(1=Adana, 2=Adıyaman, 3=Afyon, 4=Ağrı, 5=Amasya)
 1-5 arası sayı girişi kontrolü yapılacaktır.
staticvoidMain(string[] args)
{
intx;
Console.Write("Sayıyı giriniz <1-5 arası
değer>...:");
x=Convert.ToInt16(Console.ReadLine());
Console.WriteLine("");
if ((x>0) && (x<6))
{
if (x==1)
{
Console.Write("ADANA");
}
if (x==2)
{
Console.Write("ADIYAMAN");
}
if (x==3)
{
Console.Write("AFYON");
}
if (x==4)
{
Console.Write("AĞRI");
}
if (x==5)
{
Console.Write("AMASYA");
}
}
else
{
Console.Write("1-5 arası değer girişi
yapılmadı...");
}
Console.ReadKey();
}
Örnek: Klavyeden 1 ile 7 arasında girilen sayının,
haftanın hangi gününe geldiğini mesaj eden projeyi
oluşturunuz.
 1-7 arası sayı girişi kontrolü yapılacaktır.
staticvoidMain(string[] args)
{
intgun;
Console.Write("Sayıyı giriniz <1-7 arası
değer>...:");
gun=Convert.ToInt16(Console.ReadLine());
Console.WriteLine("");
if ((gun<1) || (gun>7))
{
Console.Write("1-7 arası değer girişi
yapılmadı...");
}
else
{
if (gun==1)
{
Console.Write("PAZARTESİ");
}
if (gun==2)
{
Console.Write("SALI");
}
if (gun==3)
{
Console.Write("ÇARŞAMBA");
}
if (gun==4)
{
Console.Write("PERŞEMBE");
}
if (gun==5)
{
Console.Write("CUMA");
}
if (gun==6)
{
Console.Write("CUMARTESİ");
}
if (gun==7)
{
Console.Write("PAZAR");
}
}
Console.ReadKey();
}
Zemin Rengi
BackgroundColor Console ekranında yazılan
yazıların arka plan (zemin rengi) rengini
değiştirmek için kullanılır.
Not: Zemin rengini tüm console ekranında geçerli
kılmak için Console.Clear() metodunu kullanarak
ekranı temizlememiz gerekir.
Yazı Rengi
ForegroundColor  Console ekranında yazılan
yazıların rengini değiştirmek için kullanılır.
Not:Console zemin ve yazı rengini varsayılan
renklere döndürmek için Console.ResetColor()
mrtodu kullanılır.
staticvoidMain(string[] args)
{
Console.BackgroundColor=ConsoleColor.White;
Console.ForegroundColor=ConsoleColor.Red;
Console.Clear();
Console.Write("Emine ÖZEL");
Console.ReadKey();
Console.ResetColor();
Console.Clear();
Console.Write("Emine ÖZEL");
Console.ReadKey();
}
Programdan Çıkış
Environment.Exit(0)  Uygulamayı sonlandırıp, console
ekranından çıkmak için kullanılır.
Örnek : Programdan çıkmak için mesaj veren projeyi
oluşturunuz.
staticvoidMain(string[] args)
{
stringcevap;
Console.Write("Çıkmak istediğinizden emin misiniz?
[E/H]...:");
cevap=Console.ReadLine();
if ((cevap=="E") || (cevap=="e"))
{
Environment.Exit(0);
}
else
{
Console.Write("Devam......");
}
Console.ReadKey();
}
Örnek : Matematiksel işlemleri gerçekleştiren projeyi
oluşturunuz.
**** İŞLEMLER ****
1-Toplama
2-Çıkarma
3-Çarpma
4-Bölme
5-Programdan Çıkış
Seçiminiz…..:
staticvoidMain(string[] args)
{
intx, y, sec, sonuc;
Console.Write("1.sayıyı giriniz....:");
x=Convert.ToInt16(Console.ReadLine());
Console.Write("2.sayıyı giriniz....:");
y=Convert.ToInt16(Console.ReadLine());
Console.Clear();
Console.WriteLine("***** İŞLEMLER *****");
Console.WriteLine("
1-Toplama");
Console.WriteLine("
2-Çıkarma");
Console.WriteLine("
3-Çarpma");
Console.WriteLine("
4-Bölme");
Console.WriteLine("
5-Programdan Çıkış");
Console.WriteLine("");
Console.Write("Seçiminiz...........:");
sec=Convert.ToInt16(Console.ReadLine());
Console.WriteLine("");
if (sec==1)
{
sonuc=x+y;
Console.Write("Sayıların Toplamı....:{0}", sonuc);
}
if (sec==2)
{
sonuc=x-y;
Console.Write("Sayıların Farkı....:{0}", sonuc);
}
if (sec==3)
{
sonuc=x*y;
Console.Write("Sayıların Çarpımı....:{0}", sonuc);
}
if (sec==4)
{
sonuc=x/y;
Console.Write("Sayıların Bölümü....:{0}", sonuc);
}
if (sec==5)
{
Environment.Exit(0);
}
Console.ReadKey();
}
2-Switch-Case yapısı : Kontrol yapısıdır. İlgili etiket
var ise, o etikete giderek işlemleri yapar. İlgili etiket
yok ise, yapıdan çıkar.
Kullanımı:
Switch (değişken adı)
{
Case etiket 1:
Yapılacak işlemler;
Break;
Case etiket 2:
Yapılacak işlemler;
Break;
-
Case etiket n:
Yapılacak işlemler;
Break;
Default:
Yapılacak işlemler;
Break;
}
Not: Default kullanımı zorunlu değildir.
staticvoidMain(string[] args)
{
intsayi;
Console.Write("Bir sayı giriniz <1-5>...:");
sayi=Convert.ToInt16(Console.ReadLine());
//if
//if
//if
//if
//if
(sayi
(sayi
(sayi
(sayi
(sayi
==
==
==
==
==
1)
2)
3)
4)
5)
Console.Write("ADANA");
Console.Write("ADIYAMAN");
Console.Write("AFYON");
Console.Write("AĞRI");
Console.Write("AMASYA");
switch (sayi)
{
case1:
Console.Write("ADANA");
break;
case2:
Console.Write("ADIYAMAN");
break;
case3:
Console.Write("AFYON");
break;
case4:
Console.Write("AĞRI");
break;
case5:
Console.Write("AMASYA");
break;
default:
Console.Write("1-5 arasında bir sayı
girmediniz...");
break;
}
Console.ReadKey();
}
Örnek : Matematiksel işlemleri gerçekleştiren projeyi
oluşturunuz (switch..case kullanılacak).
**** İŞLEMLER ****
1-Toplama
2-Çıkarma
3-Çarpma
4-Bölme
5-Programdan Çıkış
Seçiminiz…..:
staticvoidMain(string[] args)
{
intx, y, sec, sonuc;
Console.Write("1.sayıyı giriniz....:");
x=Convert.ToInt16(Console.ReadLine());
Console.Write("2.sayıyı giriniz....:");
y=Convert.ToInt16(Console.ReadLine());
Console.Clear();
Console.WriteLine("***** İŞLEMLER *****");
Console.WriteLine("
1-Toplama");
Console.WriteLine("
2-Çıkarma");
Console.WriteLine("
3-Çarpma");
Console.WriteLine("
4-Bölme");
Console.WriteLine("
5-Programdan Çıkış");
Console.WriteLine("");
Console.Write("Seçiminiz...........:");
sec=Convert.ToInt16(Console.ReadLine());
Console.WriteLine("");
switch (sec)
{
case1:
sonuc=x+y;
Console.Write("Sayıların Toplamı....:{0}", sonuc);
break;
case2:
sonuc=x-y;
Console.Write("Sayıların Farkı....:{0}", sonuc);
break;
case3:
sonuc=x*y;
Console.Write("Sayıların Çarpımı....:{0}", sonuc);
break;
case4:
sonuc=x/y;
Console.Write("Sayıların Bölümü....:{0}", sonuc);
break;
case5:
Environment.Exit(0);
break;
default:
Console.Write("Geçerli bir sayı girişi
yapmadınız...");
break;
}
Console.ReadKey();
}
Not: Seçim değişkeni string tanımlanırsa, etiket
isimleri çift tırnak içerisinde yazılmalıdır.
Örnek: Aşağıdaki menü işlemlerini yapan projeyi
oluşturunuz.
 switch..case yapısı
 etiket kullanılacak.
**** ALAN HESAPLARI ****
1-Kare
2-Dikdörtgen
3-Programdan Çıkış
Seçiminiz…..:
Goto: Bir blok yapısını çağrıldığı sürece
çalıştıran yapıdır. En az bir kez çalışır.
Kullanımı:
Etiket ismi: İşlemler;
If (koşul) goto etiket ismi;
Not:if kullanımı zorunlu değildir. Gerektiğinde
kullanılır.
Örnek: Klavyeden girilen yazılı notunu kontrol
eden projeyi oluşturunuz.
staticvoidMain(string[] args)
{
inty1;
tekrar:
Console.Clear();
Console.Write("Yazılı notunu giriniz <0-100>.:");
y1=Convert.ToInt16(Console.ReadLine());
if ((y1<0) || (y1>100))
{
Console.Write("0 ile 100 arasında not
girmelisiniz...");
Console.ReadKey();
gototekrar;
}
Console.WriteLine("");
Console.Write("Alınan not....:{0}", y1);
Console.ReadKey();
}
Örnek: Aşağıdaki menü işlemlerini yapan projeyi
etiket kullanarak oluşturunuz.
**** İŞLEMLER ****
1-Toplama
2-Çıkarma
3-Çarpma
4-Bölme
5-Programdan Çıkış
Seçiminiz…..:
staticvoidMain(string[] args)
{
intx,y,sec,sonuc;
stringcev;
Console.Write("1.sayıyı giriniz...:");
x=Convert.ToInt16(Console.ReadLine());
Console.Write("2.sayıyı giriniz....:");
y=Convert.ToInt16(Console.ReadLine());
tekrar:
Console.Clear();
Console.WriteLine("***İŞLEMLER***");
Console.WriteLine(" 1-Toplama");
Console.WriteLine(" 2-Çıkarma");
Console.WriteLine(" 3-Çarpma");
Console.WriteLine(" 4-Bölme");
Console.WriteLine(" 5-Programdan Çıkış");
Console.WriteLine("");
Console.Write("Seçiminiz....:");
sec=Convert.ToInt16(Console.ReadLine());
Console.WriteLine("");
if (sec==1)
{
sonuc=x+y;
Console.Write("Sayıların Toplamı....:{0}",sonuc);
}
if (sec==2)
{
sonuc=x-y;
Console.Write("Sayıların Farkı....:{0}", sonuc);
}
if (sec==3)
{
sonuc=x*y;
Console.Write("Sayıların Çarpımı....:{0}", sonuc);
}
if (sec==4)
{
sonuc=x/y;
Console.Write("Sayıların Bölümü....:{0}", sonuc);
}
if (sec==5)
{
Console.Write("Çıkmak istediğinizden emin misiniz?
<E/H>...:");
cev=Console.ReadLine();
if ((cev=="E") || (cev=="e"))
{
Environment.Exit(0);
}
else
{
gototekrar;
}
}
Console.ReadKey();
gototekrar;
}
ÖDEV: 1.6.3. Formatlı Çıkış İşlemleri deftere
yazılacak.
 Basit Kodlar modülü.
 Sayfa 16-17 (Modül sayfası).
Soru-1: Klavyeden girilen sayının tek veya çift
sayı olduğunu mesaj eden projeyi yazınız.
Soru-2: Klavyeden girilen bir sayının 6’ya bölünüp
bölünmediğini bulan projeyi oluşturunuz.
 Mod’lu bölme yapılacaktır.
Soru-3: Kullanıcıdan günde ortalama kaç saat okula
geldiği bilgisini alarak, ömrünün okulda geçen
yüzdesini bulan projeyi oluşturunuz.
 Bir yılda ortalama 8 ay okula gidiliyor.
 Bir ay 30 gün alınacaktır.
Soru-4: Günde ortalama 2 km yol yürüyen bir insan,
doğumundan bugüne kadar dünyanın çevresini kaç kez
dolaşacak kadar yürüdüğünü bulan projeyi
oluşturunuz.
 Dünyanın çevresi 40000 km
 Kişi 10 yaşından itibaren yürümeye başlasın.
Soru-5: Bugüne kadar kaç saat uyuduğunu ve ömrünün
yüzde kaçını uykuda geçirdiğini bulan projeyi
oluşturunuz.
Soru-6: Klavyeden girilen x ve y değerlerine göre
(x-3)2 + (y+8)2 işleminin sonucunu bulan projeyi
oluşturunuz.
ÇÖZÜMLERİ
Soru-1: Klavyeden girilen sayının tek veya çift
sayı olduğunu mesaj eden projeyi yazınız.
staticvoidMain(string[] args)
{
intsayi;
Console.Write("Sayıyı giriniz....:");
sayi=Convert.ToInt16(Console.ReadLine());
Console.WriteLine("");
if ((sayi%2) ==0)
{
Console.Write("Sayı çift sayıdır....:{0}", sayi);
}
else
{
Console.Write("Sayı tek sayıdır....:{0}", sayi);
}
Console.ReadKey();
}
Soru-2: Klavyeden girilen bir sayının 6’ya bölünüp
bölünmediğini bulan projeyi oluşturunuz.
 Mod’lu bölme yapılacaktır.
staticvoidMain(string[] args)
{
intsayi;
Console.Write("Sayıyı giriniz....:");
sayi=Convert.ToInt16(Console.ReadLine());
Console.WriteLine("");
if ((sayi%6) ==0)
{
Console.Write("6'ya bölünür....:{0}", sayi);
}
else
{
Console.Write("6'ya bölünmez....:{0}", sayi);
}
Console.ReadKey();
}
Soru-3: Kullanıcıdan günde ortalama kaç saat okula
geldiği bilgisini alarak, ömrünün okulda geçen
yüzdesini bulan projeyi oluşturunuz.
staticvoidMain(string[] args)
{
intsaat, yil, yas, omur;
floatyüzde, okul;
Console.Write("Günde okula ortalama kaç saat
gidiyorsunuz?....:");
saat=Convert.ToInt16(Console.ReadLine());
Console.Write("Kaç yıl okula gittiniz?....:");
yil=Convert.ToInt16(Console.ReadLine());
Console.Write("Kaç yaşındasınız?.....:");
yas=Convert.ToInt16(Console.ReadLine());
okul= (yil* (8*30)) *24;
omur= (yas*365)*24;
yuzde= (okul/omur) *100;
//Bölme işlemine girecek değişkenlerin biri float
olmak zorunda.
Console.Write("Hayatının okulda geçen yüzdesi..: %
{0:F2}", yuzde);
//virgülden sonra iki hane görüntülenecek.
Console.WriteLine("");
Console.ReadKey();
}
Soru-4: Günde ortalama 2 km yol yürüyen bir insan,
doğumundan bugüne kadar dünyanın çevresini kaç kez
dolaşacak kadar yürüdüğünü bulan projeyi
oluşturunuz.
 Dünyanın çevresi 40000 km
 Kişi 10 yaşından itibaren yürümeye başlasın.
staticvoidMain(string[] args)
{
intyas, yil, gun;
floatyuzde, km;
Console.Write("Yaşınızı giriniz....:");
yas=Convert.ToInt16(Console.ReadLine());
Console.WriteLine("");
yil= (yas-10);
if (yil>0)
{
gun=yil*365; //yürüyüş yaptığı gün sayısı
km=gun*2;
//yürüdüğü km
yuzde=km/40000;
Console.Write("Dünyanın çevresini {0:F2} tur
dolaşmıştır...", yuzde);
}
else
{
Console.Write("Dünyanın çevresi dolaşılmaya
başlanmamıştır....");
}
Console.ReadKey();
}
Soru-5: Bugüne kadar kaç saat uyuduğunu ve ömrünün
yüzde kaçını uykuda geçirdiğini bulan projeyi
oluşturunuz.
staticvoidMain(string[] args)
{
intyas, saat, gun, toplamsaat, uykusaat;
floatyuzde, uykugun;
Console.Write("Yaşınızı giriniz....:");
yas=Convert.ToInt16(Console.ReadLine());
Console.Write("Günde ortalama kaç saat uyuyor
sunuz?.:");
saat=Convert.ToInt16(Console.ReadLine());
gun=yas*365;
//yaşadığı gün sayısı
toplamsaat=gun*24; //yaşadığı saat sayısı
uykusaat=gun*saat; //ömrünün uykuda geçen
saat sayısı
uykugun= (uykusaat*gun) /toplamsaat;
//ömrünün uykuda geçen gün sayısı
yuzde= (uykugun/gun) *100;
//ömrünün uykuda geçen yüzdeliği
Console.WriteLine("");
Console.WriteLine("Yaşınız...........:{0}", yas);
Console.WriteLine("Ömrünüzün toplam uyku saati:{0}
saat",uykusaat);
Console.Write("Ömrünüzün % {0:F2}'si uykuda
geçmiştir.",yuzde);
Console.ReadKey();
}
Soru-6: Klavyeden girilen x ve y değerlerine göre
(x-3)² + (y+8)³ işleminin sonucunu bulan projeyi
oluşturunuz.
 Sayının karesi  Alt + 0178
 Sayının küpü
 Alt + 0179
staticvoidMain(string[] args)
{
intx, y;
floatsonuc;
Console.Write("x değerini giriniz.....:");
x=Convert.ToInt16(Console.ReadLine());
Console.Write("y değerini giriniz......:");
y=Convert.ToInt16(Console.ReadLine());
sonuc= ((x-3)*(x-3)) + ((y+8)*(y+8)*(y+8));
Console.WriteLine("");
Console.WriteLine("x değeri........={0}", x);
Console.WriteLine("y değeri........={0}", y);
Console.WriteLine("");
Console.WriteLine("(x-3)² + (y+8)³ ={0}", sonuc);
Console.ReadKey();
}
DÖNGÜ KOMUTLARI
Döngüler bir program içerisinde belirli işlemlerin
defalarca yapılmasını sağlayan komut bloklarıdır.
Sonsuz döngüler yapılabildiği gibi, belirli
kriterleri sağlayana kadar devam eden döngüler de
yapılabilir.
Döngü çeşitleri;
 For döngüsü
 While döngüsü
 Do..while döngüleri
 Foreeach döngüsü
1-For Döngüsü: Belirlenen başlangıç değerinden
itibaren, belirtilen koşul (şart) sağlandığı
sürece, blok içerisine yazılan kod parçasını
çalıştıran döngü yapısıdır.
Kullanımı:
For (başlangıç değeri ; koşul; artış miktarı)
{
İşlem / İşlemler;
}
Örnek: Ekrana isminizi 10 defa yazdıran projeyi
oluşturunuz.
staticvoidMain(string[] args)
{
inti;
Console.Clear();
for (i=1; i<=10; i++)
{
Console.WriteLine("Emine ÖZEL");
}
Console.ReadKey();
}
Örnek: Ekrana 1’den 10’ kadar olan sayıları
yazdıran projeyi oluşturunuz.
staticvoidMain(string[] args)
{
inti;
Console.Clear();
for (i=1; i<=10; i++)
{
Console.WriteLine(i+".sayı:{0}",i);
}
Console.ReadKey();
}
Örnek: 10’dan 1’e kadar olan sayıları ekrana alt
alta yazdıran projeyi oluşturunuz.
staticvoidMain(string[] args)
{
inti;
for (i=10; i>=1; i--)
{
Console.WriteLine(11-i+".sayı={0}",i);
}
Console.ReadKey();
}
Örnek: 10 adet girilen sayının toplamını bulan
projeyi oluşturunuz.
staticvoidMain(string[] args)
{
inti, sayi, toplam;
toplam=0;
for (i=1; i<=10; i++)
{
Console.Write(i+".sayıyı giriniz....:");
sayi=Convert.ToInt16(Console.ReadLine());
toplam=toplam+sayi;
}
Console.WriteLine("");
Console.Write("Sayıların toplamı....:{0}",
toplam);
Console.ReadKey();
}
Örnek: N adet girilen sayının toplamını ve
ortalamasını bulan projeyi oluşturunuz.
staticvoidMain(string[] args)
{
intn;
inti;
intsayi;
inttop;
floatort;
top=0;
Console.Write("Sayı adedini giriniz (N) : ");
n=Convert.ToInt16(Console.ReadLine());
// for (i = 1 ; i<=n ; i++)
for (i=0; i<n; i++)
//Bu döngü n kez çalışır.
{
// Console.Write( i + ".sayıyı giriniz:");
Console.Write( i+1+".sayıyı giriniz:");
sayi=Convert.ToInt16(Console.ReadLine());
top=top+sayi;
// top += sayi;
}
ort=top/n;
Console.WriteLine("Sayıların toplamı: {0}", top);
Console.WriteLine("Sayıların ort.:{0:f2}", ort);
Console.ReadKey();
}
Örnek: a’dan z’ye kadar olan harfleri ekrana alt
alta yazdıran projeyi oluşturunuz.
staticvoidMain(string[] args)
{
chari;
for (i='a'; i<='z'; i++)
{
Console.WriteLine(i);
}
Console.ReadKey();
}
Örnek: z’dan a’ye kadar olan harfleri ekrana alt
alta yazdıran projeyi oluşturunuz.
staticvoidMain(string[] args)
{
chari;
for (i='z'; i>='a'; i--)
{
Console.WriteLine(i);
}
Console.ReadKey();
}
Örnek: İki değer aralığındaki sayıların toplamını
ve ortalamasını bulan projeyi oluşturunuz.
staticvoidMain(string[] args)
{
intbas, son;
inti, toplam, adet;
floatort;
toplam=0;
// adet = 0;
Console.Write("Başlangıç değerini giriniz....:");
bas=Convert.ToInt16(Console.ReadLine());
Console.Write("Bitiş değerini giriniz....:");
son=Convert.ToInt16(Console.ReadLine());
for (i=bas; i<=son; i++)
{
toplam=toplam+i;
// adet = adet + 1;
}
adet= (son-bas) +1;
ort=toplam/adet;
Console.Clear();
Console.WriteLine("Sayıların Toplamı...:{0}",
toplam);
Console.WriteLine("Sayıların ortalaması:{0:f2}",
ort);
Console.ReadKey();
}
Örnek: İki değer aralığındaki sayıların toplamını
ve ortalamasını bulan projeyi oluşturunuz.
 Artan veya azalan değerlerde aynı döngü
çalışacak.
Örnek: Belli aralıktaki çift sayıların toplamını
bulan projeyi oluşturunuz.
Örnek: 200’den 100’e kadar olan tek sayıların
toplamını ve ortalamasını bulan projeyi
oluşturunuz.
2-While Döngüsü: Şartlı döngü yapısıdır. Şart
sağlandığı sürece döngü içerisi çalışır. Şart
sağlanmadığında yani şart yanlış ise döngüden
çıkılır.
Kullanımı:
While(şart)
{
yapılacak işlem veya işlemler;
}
Örnek: Klavyeden girilen 10 adet sayının toplamını
ve ortalamasını bulan projeyi oluşturunuz.
staticvoidMain(string[] args)
{
intsayi, i, toplam;
floatort;
toplam=0;
i=1;
while (i<=10)
{
Console.Write(i+".sayıyı giriniz.....=");
sayi=Convert.ToInt16(Console.ReadLine());
toplam=toplam+sayi;
i++;
}
ort=toplam/10;
Console.Clear();
Console.WriteLine("Sayıların Toplamı....={0}",
toplam);
Console.WriteLine("Sayıların ortalması..={0}",
ort);
Console.ReadKey();
}
Örnek: 100 ile 200 arasındaki sayıların toplamını
bulan projeyi while döngüsü ile oluşturunuz.
staticvoidMain(string[] args)
{
inti, toplam;
i=100;
toplam=0;
while (i<=200)
{
toplam=toplam+i;
i++;
}
Console.WriteLine("Sayıların Toplamı....={0}",
toplam);
Console.ReadKey();
}
Örnek: İki değer aralığındaki sayıların toplamını
ve ortalamasını bulan projeyi while döngüsü
kullanarak oluşturunuz.
staticvoidMain(string[] args)
{
inti, bas,son,gec;
floattoplam,ort;
Console.Write("Başlangıç değerini giriniz....=");
bas=Convert.ToInt16(Console.ReadLine());
Console.Write("Bitiş değerini giriniz........=");
son=Convert.ToInt16(Console.ReadLine());
if (bas>son)
{
gec=bas;
bas=son;
son=gec;
}
i=bas;
toplam=0;
while (i<=son)
{
toplam=toplam+i;
i++;
}
ort=toplam/ (son-bas) +1;
Console.Clear();
Console.WriteLine("Sayıların Toplamı....={0}",
toplam);
Console.WriteLine("Sayıların Ortalaması.={0:f2}",
ort);
Console.ReadKey();
}
Örnek: İki değer aralığındaki sayılardan;
 Çift sayıların toplamını
 Tek sayıların toplamını bulan projeyi while
döngüsü kullanarak oluşturunuz.
staticvoidMain(string[] args)
{
inti,bas,son,gec;
inttoplam1,toplam2;
intcift,tek;
Console.Write("Başlangıç değerini
giriniz......=");
bas=Convert.ToInt16(Console.ReadLine());
Console.Write("Bitiş değerini
giriniz..........=");
son=Convert.ToInt16(Console.ReadLine());
if (bas>son)
{
gec=bas;
bas=son;
son=gec;
}
cift=0;
tek=0;
if (bas%2==0)
{
cift=bas;
tek=bas+1;
}
if (bas%2==1)
{
tek=bas;
cift=bas+1;
}
i=cift;
toplam1=0;
while (i<=son)
{
toplam1=toplam1+i;
i=i+2;
}
i=tek;
toplam2=0;
while (i<=son)
{
toplam2=toplam2+i;
i=i+2;
}
Console.Clear();
Console.WriteLine("Çift Sayıların
Toplamı......={0}", toplam1);
Console.WriteLine("Tek Sayıların
Toplamı.......={0}", toplam2);
Console.ReadKey();
}
3-Do..While Döngüsü: Şartlı döngü yapısıdır. Şart
sağlandığı sürece döngü içerisi çalışır. Şart
sağlanmadığında yani şart yanlış ise döngüden
çıkılır.
Not: Şart döngü sonunda kontrol edildiğinden
dolayı, döngü içerisi en az bir kez çalışır.
Kullanımı:
do
{
yapılacak işlem veya işlemler;
}
while(koşul);
Örnek: N adet sayının toplamını ve ortalamasını
bulan projeyi oluşturunuz.
staticvoidMain(string[] args)
{
intn, i, sayi;
inttoplam;
floatort;
Console.Write("Sayı adedini giriniz....:");
n=Convert.ToInt16(Console.ReadLine());
i=1;
toplam=0;
do
{
Console.Write(i+".sayıyı giriniz....:");
sayi=Convert.ToInt16(Console.ReadLine());
toplam=toplam+sayi;
i++;
}
while (i<=n);
ort=toplam/n;
Console.Clear();
Console.WriteLine("Sayıların Toplamı....:{0}",
toplam);
Console.WriteLine("Sayıların ortalaması.:
{0:f2}", ort);
Console.ReadKey();
}
Örnek: Aşağıdaki menü işlemlerini yapan projeyi
oluşturunuz.
 do .. while döngü yapısı
 switch .. case yapısı kullanılacak
 seçim etiket içine alınacak
*** ALAN HESAPLARI ***
1-Kare
2-Dikdörtgen
3-Programdan Çıkış
staticvoidMain(string[] args)
{
intsec,a,b,alan;
do
{
tekrar:
Console.Clear();
Console.WriteLine("***ALAN HESAPLARI***");
Console.WriteLine("1. KARE");
Console.WriteLine("2. DİKDÖRTGEN");
Console.WriteLine("3. PROGRAMDAN ÇIKIŞ");
Console.WriteLine("");
Console.Write("Seçiminiz... <1-3 arasında olmalı.>
:");
sec=Convert.ToInt16(Console.ReadLine());
if ((sec<1) || (sec>3))
{
Console.WriteLine("");
Console.WriteLine("1 ile 3 arasında bir değer
girmelisiniz...");
Console.WriteLine("Devam için bir tuşa
basınız....");
Console.ReadKey();
gototekrar;
}
switch(sec)
{
case1:
Console.Clear();
Console.Write("Karenin kenar uzunluğunu
giriniz..:");
a=Convert.ToInt16(Console.ReadLine());
alan=a*a;
Console.WriteLine("");
Console.WriteLine("Karenin alanı...:{0}",alan);
Console.WriteLine("");
Console.WriteLine("Devam için bir tuşa
basınız.....");
Console.ReadKey();
break;
case2:
Console.Clear();
Console.Write("Kısa kenarı giriniz..:");
a=Convert.ToInt16(Console.ReadLine());
Console.Write("Uzun kenarı giriniz...:");
b=Convert.ToInt16(Console.ReadLine());
alan=a*b;
Console.WriteLine("");
Console.WriteLine("Dikdörtgenin
alanı...:{0}",alan);
Console.WriteLine("");
Console.WriteLine("Devam için bir tuşa
basınız.....");
Console.ReadKey();
break;
case3:
Environment.Exit(0);
break;
}
}
while(sec<3);
}
Break: Şarta bağlı veya değil olarak döngüden ve
ya yapıdan çıkma özelliğidir.
Örnek: 1’den 20’ye kadar olan sayılardan, 8’den
sonrasını ekrana yazmayan projeyi oluşturunuz.
staticvoidMain(string[] args)
{
inti;
for (i=1; i<=20; i++)
{
if (i==9) break;
/* if (i>8) break; */
Console.WriteLine("Sayı..:{0}", i);
}
Console.ReadKey();
}
Continue: Döngü içerisinde atlanması gereken bir
adım veya işlem var ise, şarta bağlı veya değil
olarak gerçekleştiren özelliktir.
Örnek: 1’den 20’ye kadar olan sayılardan, 9
sayısını ekrana yazdırmadan devam eden projeyi
oluşturunuz.
staticvoidMain(string[] args)
{
inti;
for (i=1; i<=20; i++)
{
if (i==9) continue;
Console.WriteLine("Sayı..:{0}", i);
}
Console.ReadKey();
}
RASTGELE SAYI ÜRETME
Belli aralıktaki sayı grubu içerisinden rastgele
bir sayı üretmek için kullanılan yapıdır.
Random rnd = new Random( );
Değişken ismi = rnd.Next(sayı aralığı);
Örnek :1 ile 100 arasında olan sayılardan rastgele
sayı üreten kod satırını yazınız.
Random rnd = new Random( );
Sayi = rnd.Next(1,100);
Örnek : 1 ile 100 arasında 10 adet rastgele
üretilen sayının toplamını ve ortalamasını bulan
projeyi oluşturunuz.
staticvoidMain(string[] args)
{
inti, sayi, toplam;
floatort;
Randomrnd=newRandom();
toplam=0;
for (i=1; i<=10; i++)
{
sayi=rnd.Next(1, 100);
Console.WriteLine(i+".sayı..={0}", sayi);
toplam=toplam+sayi;
}
ort=toplam/10;
Console.WriteLine("");
Console.WriteLine("Sayıların Toplamı.:{0}",
toplam);
Console.WriteLine("Sayıların
Ortalaması.:{0}", ort);
Console.ReadKey();
}
WINDOWS FORM APPLICATION







Açılan arayüz aşağıdaki bölümlerden oluşur;
Başlık çubuğu
Menü çubuğu
ToolBar (Araç çubuğu)
ToolBox (Araç Kutusu – İlgili denetimler)
Properties (Özellikler – ilgili denetimin
özellikleri)
Solution Explorer (Projemizin içinde bulunan
yapıyı gösterir)
Form alanı
Windows
application’da
proje
oluştururken
izlenecek yol aşağıdaki gibidir;
 ToolBox’dan (Araç kutusundan) ilgili denetim
seçilir.
 Formun üzerine tasarlanır.
 Properties (Özellikler) penceresinden ilgili
denetime verilmesi gereken özellikler atanır.
 İlgili
denetime
gerekiyorsa,
kod
penceresinden kodlar yazılır.
Örnek : TextBox’a girilen
projeyi oluşturunuz.
iki
sayıyı
toplayan
privatevoidbutton2_Click(objectsender, EventArgse)
{
inta, b, toplam;
a= Convert.ToInt16(textBox1.Text);
b=Convert.ToInt16(textBox2.Text);
toplam=a+b;
textBox3.Text=toplam.ToString();
}
privatevoidbutton1_Click(objectsender, EventArgse)
{
Environment.Exit(0)
}
Örnek : TextBox’a girilen iki sayı ile 4 işlemi
yapan projeyi oluşturunuz.
namespaceWindowsFormsApplication4
{
publicpartialclassForm1 : Form
{
inta, b, sonuc;
publicForm1()
{
InitializeComponent();
}
privatevoidbutton1_Click(objectsender, EventArgse)
{
a=Convert.ToInt16(textBox1.Text);
b=Convert.ToInt16(textBox2.Text);
sonuc=a+b;
textBox3.Text=sonuc.ToString();
}
privatevoidbutton2_Click(objectsender, EventArgse)
{
Environment.Exit(0);
}
privatevoidbutton3_Click(objectsender, EventArgse){
a=Convert.ToInt16(textBox1.Text);
b=Convert.ToInt16(textBox2.Text);
sonuc=a-b;
textBox4.Text=sonuc.ToString();
}
privatevoidbutton4_Click(objectsender, EventArgse)
{
a=Convert.ToInt16(textBox1.Text);
b=Convert.ToInt16(textBox2.Text);
sonuc=a*b;
textBox5.Text=sonuc.ToString();
}
privatevoidbutton5_Click(objectsender, EventArgse){
a=Convert.ToInt16(textBox1.Text);
b=Convert.ToInt16(textBox2.Text);
sonuc=a/b;
textBox6.Text=sonuc.ToString();
}
}
Örnek : TextBox’a girilen değerler ile öğrencinin 5’li sisteme göre kaç aldığını
bulan projeyi oluşturunuz.
namespace WindowsFormsApplication1
{
publicpartialclassForm1 : Form
{
int y1, y2, y3, p1, durum;
float ort;
public Form1()
{
InitializeComponent();
}
privatevoid Form1_Load(object
{
button2.Visible =
button3.Visible =
textBox11.Visible
}
sender, EventArgs e)
false;
false;
= false;
privatevoid button1_Click(object sender, EventArgs e)
{
button2.Visible = true;
button3.Visible = true;
textBox11.Visible = true;
durum = 0;
y1
y2
y3
p1
=
=
=
=
Convert.ToInt16(textBox5.Text);
Convert.ToInt16(textBox5.Text);
Convert.ToInt16(textBox5.Text);
Convert.ToInt16(textBox5.Text);
ort = ((y1 + y2 + y3 + p1) / 4);
textBox9.Text = ort.ToString();
if (ort < 50)
{
textBox10.Text = "1";
durum = 1;
}
if ((ort > 49) && (ort < 60))
{
textBox10.Text = "2";
durum = 2;
}
if ((ort > 59) && (ort < 70))
{
textBox10.Text = "3";
durum = 2;
}
if ((ort > 69) && (ort < 85))
{
textBox10.Text = "4";
durum = 2;
}
if ((ort > 84) && (ort < 101))
{
textBox10.Text = "5";
durum = 2;
}
}
privatevoid button2_Click(object sender, EventArgs e)
{
switch (durum)
{
case 1:
textBox11.Text = "16 Haziran 2014 tarihinde sınavınız var.";
break;
case 2:
textBox11.Text = "Dersi Geçtiniz.....";
break;
}
}
privatevoid button3_Click(object sender, EventArgs e)
{
textBox1.Text = "";
textBox2.Text = "";
textBox3.Text = "";
textBox4.Text = "";
textBox5.Text = "";
textBox6.Text = "";
textBox7.Text = "";
textBox8.Text = "";
textBox9.Text = "";
textBox10.Text = "";
textBox11.Text = "";
button2.Visible = false;
textBox11.Visible = false;
}
privatevoid button4_Click(object sender, EventArgs e)
{
Environment.Exit(0);
}
}
}
Örnek : 1-7 arasındaki girilen sayının hangi güne karşılık geldiğini bulan
projeyi oluşturunuz.
 1 – 7 sayı kontrolü yapılsın ve MessageBox penceresinde ilgili mesaj
verilsin
privatevoid button1_Click(object sender, EventArgs e)
{
int gun = Convert.ToInt16(textBox1.Text);
if (gun == 1) textBox2.Text = "Pazartesi";
if (gun == 2) textBox2.Text = "Salı";
if (gun == 3) textBox2.Text = "Çarşamba";
if (gun == 4) textBox2.Text = "Perşembe";
if (gun == 5) textBox2.Text = "Cuma";
if (gun == 6) textBox2.Text = "Cumartesi";
if (gun == 7) textBox2.Text = "Pazar";
if ((gun < 1) || (gun > 7))
{
MessageBox.Show("Lütfen sadece 1 ile 7 arasında sayı giriniz");
textBox1.Clear();
}
}
Örnek : Basit Hesap Makinası oluşturunuz.
namespace WindowsFormsHesapMakinasi
{
publicpartialclassForm1 : Form
{
double x;
string islem;
public Form1()
{
InitializeComponent();
}
privatevoid button10_Click(object sender, EventArgs e)
{
if (textBox1.Text == " ")
textBox1.Text = "0";
else
textBox1.Text =textBox1.Text+ "0";
}
privatevoid button1_Click(object sender, EventArgs e)
{
if (textBox1.Text == " ")
textBox1.Text = "1";
else
textBox1.Text = textBox1.Text + "1";
}
privatevoid button2_Click(object sender, EventArgs e)
{
if (textBox1.Text == " ")
textBox1.Text = "2";
else
textBox1.Text = textBox1.Text + "2";
}
privatevoid button3_Click(object sender, EventArgs e)
{
if (textBox1.Text == " ")
textBox1.Text = "3";
else
textBox1.Text = textBox1.Text + "3";
}
privatevoid button4_Click(object sender, EventArgs e)
{
if (textBox1.Text == " ")
textBox1.Text = "4";
else
textBox1.Text = textBox1.Text + "4";
}
privatevoid button5_Click(object sender, EventArgs e)
{
if (textBox1.Text == " ")
textBox1.Text = "5";
else
textBox1.Text = textBox1.Text + "5";
}
privatevoid button6_Click(object sender, EventArgs e)
{
if (textBox1.Text == " ")
textBox1.Text = "6";
else
textBox1.Text = textBox1.Text + "6";
}
privatevoid button7_Click(object sender, EventArgs e)
{
if (textBox1.Text == " ")
textBox1.Text = "7";
else
textBox1.Text = textBox1.Text + "7";
}
privatevoid button8_Click(object sender, EventArgs e)
{
if (textBox1.Text == " ")
textBox1.Text = "8";
else
textBox1.Text = textBox1.Text + "8";
}
privatevoid button9_Click(object sender, EventArgs e)
{
if (textBox1.Text == " ")
textBox1.Text = "9";
else
textBox1.Text = textBox1.Text + "9";
}
privatevoid button11_Click(object sender, EventArgs e)
{
x = Convert.ToDouble(textBox1.Text);
islem = "+";
textBox1.Clear();
}
privatevoid button12_Click(object sender, EventArgs e)
{
x = Convert.ToDouble(textBox1.Text);
islem = "-";
textBox1.Clear();
}
privatevoid button13_Click(object sender, EventArgs e)
{
x = Convert.ToDouble(textBox1.Text);
islem = "*";
textBox1.Clear();
}
privatevoid button14_Click(object sender, EventArgs e)
{
x = Convert.ToDouble(textBox1.Text);
islem = "/";
textBox1.Clear();
}
privatevoid button16_Click(object sender, EventArgs e)
{
x = Convert.ToDouble(textBox1.Text);
islem = "%";
textBox1.Clear();
}
privatevoid button15_Click(object sender, EventArgs e)
{
if (textBox1.Text == "")
textBox1.Text = "";
elseif (textBox1.Text != "") textBox1.Clear();
}
privatevoid button17_Click(object sender, EventArgs e)
{
double y = Convert.ToDouble(textBox1.Text);
if (islem == "") MessageBox.Show("Lütfen Tekrar Deneyiniz.");
elseif (islem == "+") textBox1.Text = Convert.ToString(x + y);
elseif (islem == "-") textBox1.Text = Convert.ToString(x - y);
elseif (islem == "*") textBox1.Text = Convert.ToString(x * y);
elseif (islem == "/") textBox1.Text = Convert.ToString(x / y);
elseif (islem == "%") textBox1.Text = Convert.ToString(x % y);
}
privatevoid button18_Click(object sender, EventArgs e)
{
if (textBox1.Text == " ")
textBox1.Text = ",";
else
textBox1.Text = textBox1.Text + ",";
}
}
}
Örnek : İki değer aralığındaki sayıların toplamını
ve ortalamasını bulan projeyi oluşturunuz.
(Console Application)
staticvoidMain(string[] args)
{
floatort, son, bas, gec, i, toplam;
Console.Write("1.sayıyı giriniz.....=");
bas=Convert.ToInt16(Console.ReadLine());
Console.Write("2.sayıyı giriniz.....=");
son=Convert.ToInt16(Console.ReadLine());
if (bas>son)
{
gec=bas;
bas=son;
son=gec;
}
toplam=0;
for (i=bas; i<=son; i++)
{
toplam=toplam+i;
}
ort=toplam/ ((son-bas) +1);
Console.WriteLine("");
Console.WriteLine("Sayıların Toplamı....={0}",
toplam);
Console.WriteLine("Sayıların Ortalaması.={0:f2}",
ort);
Console.ReadKey();
}
(Windows Application)
intbas, son, gec, i;
inttoplam;
floatort;
bas=Convert.ToInt16(textBox1.Text);
son=Convert.ToInt16(textBox2.Text);
if (bas>son)
{
gec=bas;
bas=son;
son=gec;
}
toplam=0;
for (i=bas; i<=son; i++)
{
toplam=toplam+i;
}
ort=toplam/ ((son-bas) +1);
textBox3.Text=toplam.ToString();
textBox4.Text=ort.ToString();
}
privatevoidbutton2_Click(objectsender, EventArgse)
{
Environment.Exit(0);
}
Örnek : Rastgele üretilen bir sayıyı bulmaya
çalışan projeyi oluşturunuz.
 10 hak verilecektir.
 Puan 1000’den başlayıp, her bilemediğinde 100
puan düşecektir.
 Her tahminden sonra, bilinemediğinde
“Tahmininizi Büyültün” veya “Tahmininizi
Küçültün” mesajları verdirilecektir.
 Tahmin bilindiğinde, kaçıncı hakta bilindiği
ve puanı görüntülenecektir.
 Tahmin hakkı bittiğinde ilgili mesaj
verdirilecektir.
 Sayı 1 ile 100 arasında rastgele
üretilecektir.
staticvoidMain(string[] args)
{
intsayi, i;
inttahmin, puan;
Randomrnd=newRandom();
sayi=rnd.Next(1,100);
puan=500;
for (i=1; i<=5; i++)
{
Console.Write(i+". tahmininizi giriniz...:");
tahmin=Convert.ToInt16(Console.ReadLine());
if (sayi==tahmin)
{
Console.WriteLine(i+".tahminde {0} sayısını
buldunuz....", sayi);
Console.WriteLine("");
Console.WriteLine("Puanınız...= {0}", puan);
gotobitis;
}
if (sayi<tahmin)
{
Console.WriteLine("Tahmininizi küçültün...");
Console.WriteLine("");
puan=puan-100;
}
if (sayi>tahmin)
{
Console.WriteLine("Tahmininizi büyültün...");
Console.WriteLine("");
puan=puan-100;
}
}
bitis:
{
if (i>5)
{
Console.WriteLine("");
Console.WriteLine("Tahmin hakkınız
bitmiştir.....");
Console.WriteLine("Sayi.....={0}", sayi);
Console.WriteLine("Puan.....={0}", puan);
}
Console.ReadKey();
}
}
Örnek : Sıfır değeri girilinceye kadar, girilen
sayıların toplamını ve ortalamasını bulan projeyi
oluşturunuz (While döngüsü veya Do..While döngüsü)
staticvoidMain(string[] args)
{
intsayi, i, toplam;
floatort;
i=0;
toplam=0;
do
{
Console.Write(i+1+".sayıyı giriniz.....=");
sayi=Convert.ToInt16(Console.ReadLine());
toplam=toplam+sayi;
i++;
//i = i + 1;
}
while (sayi!=0 );
ort=toplam/ (i-1);
Console.Clear();
Console.WriteLine("Sayıların toplamı..={0}",toplam);
Console.WriteLine("Sayıların ortalaması.={0}", ort);
Console.ReadKey();
}
ComboBox Kontrolü
İçerisindeki değerleri açılabilen liste şeklinde
görüntüleyen nesnedir.
NOT : ComboBox nesnesindeki elemanlara index
numaraları ile ulaşılabilir. İlk eleman 0. İndex
numarasına sahiptir.
ComboBox Kontrolünün Özellikleri:
 Items  ComboBox içerisindeki değerleri
temsil eder.
 Text  ComboBox içerisinde görüntülenen
metindir.
 SelectedIndex  ComboBox içerisinde seçili
olan elemanın index numarasını verir.
 Sorted  True değerini aldığında ComboBox
içerisindeki elemanların sıralı şekilde
listelenmesini sağlar.
ComboBox kontrolünün metodları:
Items özelliği aşağıdaki metodları içerir.
 Add  ComboBox içerisine belirtilen değeri
listenin sonuna ekler.
 Remove  ComboBox içerisindeki belirtilen
değeri siler.
 RemoveAt  ComboBox içerisindeki belirtilen
index numaralı değeri siler.
 Count  ComboBox içerisindeki toplam değer
sayısını verir.
 Insert  Belirtilen değeri ComboBox içerisinde
istenilen bir konuma ekler.
 Clear  ComboBox içerisini siler.
ListBox Kontrolü
İçerisindeki değerleri liste şeklinde görüntüleyen
nesnedir.
NOT : ListBox nesnesinin, ComboBox nesnesi ile
hemen hemen tüm özellik, metod ve olayları
aynıdır.
Örnek : Öğrencinin kimlik bilgisini ListBox’a
aktaran projeyi oluşturunuz.
privatevoidbutton1_Click(objectsender, EventArgse)
{
stringad, soy, sn, num;
ad=textBox1.Text;
soy=textBox2.Text;
sn=textBox3.Text;
num=textBox4.Text;
listBox1.Items.Clear();
listBox1.Items.Add(ad);
listBox1.Items.Add(soy);
listBox1.Items.Add(sn);
listBox1.Items.Add(num);
}
Örnek : Tatil yöresi seçimi yapan projeyi
oluşturunuz.
privatevoidForm1_Load(objectsender, EventArgse)
{
comboBox1.Items.Add("Kuşadası");
comboBox1.Items.Add("Marmaris");
comboBox1.Items.Add("Fethiye");
comboBox1.Items.Add("Datça");
comboBox1.Items.Add("Kapadokya");
comboBox1.Items.Add("Kemer");
comboBox1.Items.Add("Bodrum");
comboBox1.SelectedIndex=2;
}
privatevoidbutton1_Click(objectsender, EventArgse)
{
intadet;
adet=comboBox1.Items.Count;
textBox1.Text=adet.ToString();
//textBox2.Text = comboBox1.SelectedItem.ToString();
textBox2.Text=comboBox1.Text;
}
Veya;
privatevoidcomboBox1_SelectedIndexChanged(objectse
nder, EventArgse)
{
intadet;
adet=comboBox1.Items.Count;
textBox1.Text=adet.ToString();
textBox2.Text=comboBox1.SelectedItem.ToString();
}
InputBox (Bilgi Giriş Penceresi)
 Veri girişi amacı ile kullanılan giriş
penceresidir.
 C# içerisinde InputBox nesnesi mevcut
değildir.
 Project  Add Reference  Asswmblies 
Framework Microsoft.VisualBasic sınıfını
projemize referans olarak eklemeliyiz.
 Kod sayfasındaki kütüphanelerin olduğu yere;
usingMicrosoft.VisualBasic;
satırını yazmamız gerekir.
Kullanımı:
Değişken ismi = Interaction.InputBox(“Mesaj”,
“Pencere Başlığı”);
Örnek : Giriş butonuna tıklandığında, klavyeden
girilen ismi textbox’a yazdıran projeyi
oluşturunuz.
 Project  Add Reference  Asswmblies 
Framework Microsoft.VisualBasic sınıfını
projemize referans olarak eklemeliyiz.
usingMicrosoft.VisualBasic;
privatevoidForm1_Load(objectsender, EventArgse)
{
textBox1.Text="İsminiz Görüntülenecektir.";
}
privatevoidbutton1_Click(objectsender, EventArgse)
{
stringad;
textBox1.Text="";
ad=Interaction.InputBox("Adınızı
Giriniz......:","Bilgi Girişi");
textBox1.Text=ad;
}
Örnek : Klavyeden girilen N adet sayıyı ListBox’da
görüntüleyen projeyi oluşturunuz.
 Project  Add Reference  Asswmblies 
Framework Microsoft.VisualBasic sınıfını
projemize referans olarak eklemeliyiz.
usingMicrosoft.VisualBasic;
publicpartialclassForm1 : Form
{
intsayi, i, n;
publicForm1()
{
InitializeComponent();
}
privatevoidbutton1_Click(objectsender, EventArgse)
{
n=Convert.ToInt16(Interaction.InputBox("Sayı
adedini giriniz.....:", "Bilgi Girişi"));
for (i=1; i<=n; i++)
{
sayi=Convert.ToInt16(Interaction.InputBox(i+".sayı
yı giriniz.....:", "Bilgi Girişi"));
listBox1.Items.Add(sayi);
}
textBox1.Text=i.ToString();
}
Örnek : Rastgele üretilen bir sayıyı bulmaya
çalışan projeyi oluşturunuz.
 10 hak verilecektir.
 Puan 1000’den başlayıp, her bilemediğinde 100
puan düşecektir.
 Her tahminden sonra, bilinemediğinde
“Tahmininizi Büyültün” veya “Tahmininizi
Küçültün” mesajları verdirilecektir.
 Tahmin hakkı bittiğinde ilgili mesaj
verdirilecektir.
 Sayı 1 ile 100 arasında rastgele
üretilecektir.
 Project  Add Reference  Asswmblies 
Framework Microsoft.VisualBasic sınıfını
projemize referans olarak eklemeliyiz.
usingMicrosoft.VisualBasic;
privatevoidbutton1_Click(objectsender, EventArgse)
{
intpuan, sayi, tahmin,i;
puan=1000;
label1.Visible=true;
textBox1.Visible=true;
label3.Visible=true;
textBox3.Visible=true;
textBox1.Text=puan.ToString();
Randomrnd=newRandom();
sayi=rnd.Next(1, 100);
for (i=1; i<=10; i++)
{
Console.Write(i+". tahmininizi giriniz...:");
tahmin=Convert.ToInt16(Interaction.InputBox(i+".
tahmininizi giriniz....:","Tahmin Girişi"));
if (sayi==tahmin)
{
textBox3.Text="Tebrikler Bildiniz....";
label2.Visible=true;
textBox2.Visible=true;
textBox2.Text=sayi.ToString();
gotobitis;
}
if (sayi<tahmin)
{
textBox3.Text="Tahmininizi küçültün.....";
puan=puan-100;
textBox1.Text=puan.ToString();
}
if (sayi>tahmin)
{
textBox3.Text="Tahmininizi büyültün.....";
puan=puan-100;
textBox1.Text=puan.ToString();
}
}
bitis:
{
if (i>10)
{
textBox3.Text="Tahmin hakkınız bitmiştir.....";
label2.Visible=true;
textBox2.Visible=true;
textBox2.Text=sayi.ToString();
}
}
}
CheckBox Kontrolü
İki ya da üç duruma sahip olabilen, onay ve seçim
işlemleri için kullanılan bir kontroldür.
CheckBox Kontrolünün özellikleri;
 Checked :True değerini aldığında CheckBox
nesnesi işaretlidir, False değerini aldığında
ise işaretli değildir.
 CheckState : 3 değer alır;
Unchecked : İşaretsiz
Checked
: İşaretli
Indeterminate : Belirsiz.
 FlatStyle : CheckBox nesnesinin görünüm
şeklini değiştirir.
CheckBox Kontrolünün olayları;
 CheckedChanged :Durumu değiştirildiğinde
gerçekleşen olaydır.
CheckedListBox Kontrolü
İçerisindeki değerleri işaretlenebilir liste
şeklinde görüntüleyen nesnedir.
CheckedListBox Kontrolünün özellikleri;
 Items :CheckedListBox içerisindeki tüm
elemanları temsil eder.
 CheckedItems : CheckedListBox içerisindeki
işaretlenmiş tüm elemanları temsil eder.
CheckedListBox Kontrolünün Metodları;
Items özelliği aşağıdaki metodları içerir.
 Add :Belirtilen değeri listenin sonuna ekler.
 Remove : Belirtilen değeri siler
 RemoveAt : Belirtilen index numaralı değeri
siler.
 Count : Eleman sayısını verir.
 Insert : Belirtilen değeri listenin istenilen
bir yerine ekler.
 Clear : CheckedListBox içerisindeki değerlerin
hepsini siler.
 Contains : Eğer belirtilen değervar ise True,
yok ise False değerini döndürür.
 IndexOf : Değeri belirtilen elemanın index
numarasını geriye döndürür.
 CopyTo : Belirtilen elemanı bir dizi içerisine
kopyalayarak aktarır.
NOT : CheckedItems özelliği ise;
 Count
 IndexOf
 Contains
 CopyTo metodlarına sahiptir.
RadioButton Kontrolü
Birden fazla seçenekten yalnızca birini seçme
durumlarında kullanılan nesnedir.
 Checked özelliği : RadioButton nesnesinin
seçili olup olmamasını belirler.
Örnek : TextBox’daki mesajı biçim veren projeyi
oluşturunuz.
 Kalın – Eğik – Altı çizili (checkBox)
 sola dayalı–ortala–sağa dayalı (radioButton)
private void checkBox2_CheckedChanged(……)
{
textBox1.Font = new Font(textBox1.Font.Name,
textBox1.Font.Size,
textBox1.Font.Style ^
FontStyle.Italic);
}
private void checkBox1_CheckedChanged(……)
{
textBox1.Font = new Font(textBox1.Font.Name,
textBox1.Font.Size,
textBox1.Font.Style^
FontStyle.Bold);
}
private void checkBox3_CheckedChanged(……)
{
textBox1.Font = new Font(textBox1.Font.Name,
textBox1.Font.Size,
textBox1.Font.Style ^
FontStyle.Underline);
}
private void radioButton1_CheckedChanged(……)
{
textBox1.TextAlign = HorizontalAlignment.Left;
}
private void radioButton2_CheckedChanged(……)
{
textBox1.TextAlign = HorizontalAlignment.Center;
}
private void radioButton3_CheckedChanged(……)
{
textBox1.TextAlign = HorizontalAlignment.Right;
}
MessageBox (Mesaj Penceresi)
Program içerisinde üretilen sonuçların ekranda
gösterilmesi amacı ile kullanılan pencerelerdir.
Kullanımı :
MessageBox.Show(Mesaj, Başlık, Buton Tipi,
Simge, Varsayılan Buton);
Mesaj  Görüntülenmesi istenilen mesajdır. Mesaj
en fazla 1024 karakter olabilir.
Başlık  Mesaj penceresinin başlığıdır.
Buton Tipi  Mesaj penceresinde görüntülenecek
butonları belirler.
 MessageBoxButtons.OKCancel
 Tamam, İptal
 MessageBoxButtons.OK
 Tamam
 MessageBoxButtons.AbortRetryIgnore Durdur,
Yeniden Dene, Yoksay
 MessageBoxButtons.RetryCancel Yeniden Dene,
İptal
 MessageBoxButtons.YesNo Evet, Hayır
Simge Mesaj penceresinde görüntülenecek olan simgeler
belirlenir.
 MessageBoxIcon.Error
 MessageBoxIcon.Hand
 MessageBoxIcon.Stop
DUR işaretini görüntüler
 MessageBoxIcon.Exclamation
ÜNLEM işaretini görüntüler
 MessageBoxIcon.Warning
 MessageBoxIcon.Information
BİLGİ işaretini görüntüler
 MessageBoxIcon.Asterisk
 MessageBoxIcon.Question SORU işaretini görüntüler
Örnek : Form1’i tıkladığımızda, üzerinde
BİLGİ işareti ve TAMAM, İPTAL
düğmeleri olan bir mesaj penceresi;
privatevoid Form1_Click(object sender, EventArgs e)
{
MessageBox.Show("Dikkat ediniz....", "UYARI",
MessageBoxButtons.OKCancel,
MessageBoxIcon.Information
}
NOT : Mesaj penceresinde, birden fazla satır
yazdırmak için;
 \n parametresi veya
 Environment.NewLine ifadesi kullanılır.
Örnek : Form1’i tıkladığımızda, Okul Kimlik Bilginizi 2 satır olacak
şekilde mesaj penceresinde görüntüleyiniz.
 \n ile;
privatevoid Form1_Click(object sender, EventArgs e)
{
MessageBox.Show("Emine ÖZEL \n" +
"Sınıf : 10
Numara :120",
"OKUL KİMLİK BİLGİSİ",
MessageBoxButtons.OKCancel,
MessageBoxIcon.Information);
}
 Environment NewLine ile;
privatevoid Form1_Click(object sender, EventArgs e)
{
MessageBox.Show("Emine ÖZEL" +
Environment.NewLine + "Sınıf :10 Numara :120",
"OKUL KİMLİK BİLGİSİ",
MessageBoxButtons.OKCancel,
MessageBoxIcon.Information);
}
NOT : Mesaj penceresinde bulunan butonların
hangisinin aktif olacağını belirler.
 Bir şey belirtilmemiş ise 1.buton aktif
olarak varsayılır.
 MessageBoxDefaultBotton.Button1  1.buton aktif
 MessageBoxDefaultBotton.Button22.buton aktif
 MessageBoxDefaultBotton.Button33.buton aktif
Örnek : Mesaj penceresinde
“Çıkmak istediğinize emin
misiniz?” mesajını EVET,
HAYIR butonları ile
görüntüleyiniz (HAYIR
butonu aktif olsun).
privatevoid Form1_Click(object sender, EventArgs e)
{
MessageBox.Show("Çıkmak istediğinize emin misiniz?",
"DİKKAT",
MessageBoxButtons.YesNo,
MessageBoxIcon.Question,
MessageBoxDefaultButton.Button2);
}
NOT : Mesaj penceresi üzerindeki butonlardan
hangisine basılıp, basılmadığını anlayabilmek
için DialogResult nesnesini kullanırız.
 Geriye dönen değeri bir değişkene atamamız
gerekir.
 Atanan değişken DialogResult ile tanımlanmak
zorundadır.
Örnek : Yukarıdaki soruda TIKLA butonuna
tıklanınca, EVET butonu tıklandığında proje
kapatılsın.
privatevoid button1_Click(object sender, EventArgs e)
{
DialogResult cevap;
cevap = MessageBox.Show("Çıkmak istediğinize
emin misiniz?", "DİKKAT",
MessageBoxButtons.YesNo,
MessageBoxIcon.Question,
MessageBoxDefaultButton.Button2);
if (cevap == DialogResult.Yes)
{
Environment.Exit(0);
}
if (cevap == DialogResult.No)
{
MessageBox.Show("devammm");
}
}
Örnek : Girilen döviz değerinin, Türk Lirası
karşılığını bulan projeyi oluşturunuz.
 Dolar seçeneği aktif olarak
görüntülenecektir.
 Euro
 2,5 TL
 Dolar
 2 TL
 Sterlin  3 TL
private void Form1_Load(object sender, EventArgs
e)
{
comboBox1.Items.Add("Euro");
comboBox1.Items.Add("Dolar");
comboBox1.Items.Add("Sterlin");
comboBox1.SelectedIndex = 1;
label1.Text = comboBox1.Text;
}
private void button1_Click(object sender,
EventArgs e)
{
double sayi, sonuc;
sayi = Convert.ToInt16(textBox1.Text);
if (comboBox1.SelectedIndex == 0)
{
sonuc = sayi * 2.5;
textBox2.Text = sonuc.ToString();
label1.Text = comboBox1.Text;
}
if (comboBox1.SelectedIndex == 1)
{
sonuc = sayi * 2;
textBox2.Text = sonuc.ToString();
label1.Text = comboBox1.Text;
}
if (comboBox1.SelectedIndex == 2)
{
sonuc = sayi * 3;
textBox2.Text = sonuc.ToString();
label1.Text = comboBox1.Text;
}
}
private void
comboBox1_SelectedIndexChanged(object sender,
EventArgs e)
{
label1.Text = comboBox1.Text;
textBox1.Text = "";
textBox2.Text = "";
}
Örnek : İki değer aralığındaki sayılardan;
 Tek sayıların toplamını
 Çift sayıların toplamını bulan projeyi
oluşturunuz.
 İki sayının kontrolü yapılacaktır
 While veya Do…While döngüsü kullanılacaktır.
private void Form1_Load(object sender, EventArgs
e)
{
radioButton1.Checked = true;
}
private void button1_Click(object sender,
EventArgs e)
{
int ilk, son, i, toplam, gec;
toplam = 0;
ilk = Convert.ToInt16(textBox1.Text);
son = Convert.ToInt16(textBox2.Text);
if (ilk
{
gec
ilk
son
}
> son)
= ilk;
= son;
= gec;
if (radioButton1.Checked)
{
if (ilk % 2 == 0)
{
ilk = ilk + 1;
}
i = ilk;
while (i <= son)
{
toplam = toplam + i;
i = i + 2;
}
textBox3.Text = toplam.ToString();
}
if (radioButton2.Checked)
{
if (ilk % 2 != 0)
// if (ilk % 2
== 1)
{
ilk = ilk + 1;
}
i = ilk;
while (i <= son)
{
toplam = toplam + i;
i = i + 2;
}
textBox3.Text = toplam.ToString();
}
}
Örnek : N adet
girilen sayıları
ListBox’a aktaran
projeyi oluşturunuz.
 Sayı adedi girişi
textBox1’den
yapılacaktır
 Sayıların girişi Interaction.InputBox ile
yapılacaktır
 InputBox ile girilen her sayı ListBox1’e
eklenecektir.
using Microsoft.VisualBasic;
private void button1_Click(……)
{
int n, sayi,i;
n = Convert.ToInt16(textBox1.Text);
for (i = 1; i <= n; i++)
{
sayi = Convert.ToInt16(Interaction.InputBox
(i.ToString() + ".sayıyı giriniz="));
listBox1.Items.Add(sayi);
}
}
Örnek : Daire
seçiminde istenilen
özellikleri listeleyen
projeyi oluşturunuz.
private void button1_Click(object sender,
EventArgs e)
{
if (checkBox1.Checked)
{
listBox1.Items.Add(checkBox1.Text);
}
if (checkBox2.Checked)
{
listBox1.Items.Add(checkBox2.Text);
}
if (checkBox3.Checked)
{
listBox1.Items.Add(checkBox3.Text);
}
if (checkBox4.Checked)
{
listBox1.Items.Add(checkBox4.Text);
}
if (checkBox5.Checked)
{
listBox1.Items.Add(checkBox5.Text);
}
if (checkBox6.Checked)
{
listBox1.Items.Add(checkBox6.Text);
}
}
private void button2_Click(object sender,
EventArgs e)
{
listBox1.Items.Clear();
checkBox1.Checked
checkBox2.Checked
checkBox3.Checked
checkBox4.Checked
checkBox5.Checked
checkBox6.Checked
=
=
=
=
=
=
false;
false;
false;
false;
false;
false;
}
Örnek : ListBox ve button kullanarak sayıları yazdırın.
(0-10 arasını)
public Form1()
{
InitializeComponent();
}
privatevoid button1_Click(objectsender,EventArgs e)
{
int i = 0;
while (i < 10)
{
listBox1.Items.Add(i);
i++;
} }
VEYA;
privatevoid button1_Click(object sender, EventArgs e)
{
int i = 0;
for(i=0;i<=10;i++)
listBox1.Items.Add(i);
}
Örnek-1)Girilen üçgen kenarlarının ne çeşit üçgen oluşturduğunu mesaj eden programı yazınız.
Public Class Form1
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles Button1.Click
Dim a, b, c As Short
Dim ucgen As Boolean = False
Dim sart1 As Boolean = False
Dim sart2 As Boolean = False
Dim sart3 As Boolean = False
a = Convert.ToInt16(TextBox1.Text)
b = Convert.ToInt16(TextBox2.Text)
c = Convert.ToInt16(TextBox3.Text)
' üçgen olma şartı kontrol ediliyor
If (Math.Abs(b - c) < a And (b + c) > a) Then
sart1 = True
End If
If (Math.Abs(a - c) < b And (a + c) > b) Then
sart2 = True
End If
If (Math.Abs(b - a) < c And (b + a) > c) Then
sart3 = True
End If
If (sart1 = True And sart2 = True And sart3 = True) Then
ucgen = True
End If
If ucgen = False Then
MsgBox("Girdiğiniz değerler ile üçgen oluşmaz! Yeni değerler
giriniz...")
End If
If ucgen = True Then
If a <> b And b <> c Then
Label5.Text = "Çeşitkenar üçgen"
End If
If a = b And b <> c Then
Label5.Text = "İkizkenar üçgen"
End If
If a = c And c <> b Then
Label5.Text = "İkizkenar üçgen"
End If
If c = b And b <> a Then
Label5.Text = "İkizkenar üçgen"
End If
If a = b And b = c Then
Label5.Text = "Eşitkenar üçgen"
End If
End If
End Sub
End Class
Örnek-2)Personelin maaşını hesaplayan programı yazınız.
Mesai
Public Class Form1
Dim su, ats, cs, ps
Dim mesai, maas
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles MyBase.Load
Label9.Visible = False
Label10.Visible = False
TextBox8.Visible = False
TextBox9.Visible = False
End Sub
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles Button1.Click
Label9.Visible = True
Label10.Visible = True
TextBox8.Visible = True
TextBox9.Visible = True
su = Val(TextBox4.Text)
ats = Val(TextBox5.Text)
cs = Val(TextBox6.Text)
ps = Val(TextBox7.Text)
Select Case ps
Case 0 To 10
mesai = ps * 1
Case 11 To 20
mesai = ((ps - 10) * 1.5) + (10 * 1)
Case 21 To 30
mesai = ((ps - 20) * 2) + (10 * 1) + (10 * 1.5)
Case Is > 30
mesai = ((ps - 30) * 2.5) + (10*1) + (10*1.5) + (10 * 2)
End Select
TextBox8.Text = mesai
maas = (su * ats) + ((su * 10) * cs) + mesai - ((su * ats) * 0.1)
TextBox9.Text = maas
End Sub
End Class
Örnek-3)Kronometre programı
Public Class Form1
Dim KalanSure As Integer
Private Sub btnBasla_Click(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles btnBasla.Click
' Başlangıç zamanını text kutusundan aldım
KalanSure = Val(txtSure.Text)
' Kalan süreyi kullanıcıya göstermek
lblSure.Text = KalanSure
'liste kutusuna başlama zamanı yazılır
lbKayit.Items.Add("Kronometre başladı:" & Now.TimeOfDay.ToString)
'Timerın çalışma hızı ayarlanır.
Timer1.Interval = cmbInterval.Text
Timer1.Start()
End Sub
Private Sub btnDur_Click(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles btnDur.Click
'Timer durdurulur
Timer1.Stop()
'liste kutusuna kayıt girilir
lbKayit.Items.Add("Kronometre durduruldu:" & Now.TimeOfDay.ToString)
End Sub
Private Sub Timer1_Tick(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles Timer1.Tick
KalanSure = KalanSure - 1
lblSure.Text = KalanSure
If KalanSure = 0 Then
Timer1.Stop()
lbKayit.Items.Add("Süre Doldu:" & Now.TimeOfDay.ToString)
End If
End Sub
End Class
Örnek-4)Kişinin ideal kilosunu hesaplayan programı yazınız.
Public Class Form1
Dim yas, boy, kilo, eksik, fazla
Dim k, idealkilo
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles MyBase.Load
Label11.Visible = False
TextBox6.Visible = False
TextBox7.Visible = False
End Sub
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles Button1.Click
Label11.Visible = True
TextBox6.Visible = True
yas = Val(TextBox3.Text)
boy = Val(TextBox4.Text)
kilo = Val(TextBox5.Text)
If RadioButton1.Checked = True Then k = 0.8
If RadioButton2.Checked = True Then k = 0.9
idealkilo = Math.Round(((boy - 100) + (yas / 10)) * k)
TextBox6.Text = idealkilo
If kilo = idealkilo Then
TextBox7.Visible = False
Label12.Text = "TEBRİKLER.. İdeal Kilodasınız..."
End If
If kilo < idealkilo Then
TextBox7.Visible = True
eksik = idealkilo - kilo
TextBox7.Text = eksik
Label12.Text = "Kilo almalısınız..."
End If
If kilo > idealkilo Then
TextBox7.Visible = True
fazla = kilo - idealkilo
TextBox7.Text = fazla
Label12.Text = "Kilo vermelisiniz..."
End If
End Sub
End Class
Örnek-5)Hesap makinesi programı
Public Class Form1
Dim x, y, z, t, kontrol
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles Button1.Click
TextBox1.Text = TextBox1.Text & 1
End Sub
Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles Button2.Click
TextBox1.Text = TextBox1.Text & 2
End Sub
Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles Button3.Click
TextBox1.Text = TextBox1.Text & 3
End Sub
Private Sub Button4_Click(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles Button4.Click
TextBox1.Text = TextBox1.Text & 4
End Sub
Private Sub Button5_Click(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles Button5.Click
TextBox1.Text = TextBox1.Text & 5
End Sub
Private Sub Button6_Click(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles Button6.Click
TextBox1.Text = TextBox1.Text & 6
End Sub
Private Sub Button7_Click(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles Button7.Click
TextBox1.Text = TextBox1.Text & 7
End Sub
Private Sub Button8_Click(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles Button8.Click
TextBox1.Text = TextBox1.Text & 8
End Sub
Private Sub Button9_Click(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles Button9.Click
TextBox1.Text = TextBox1.Text & 9
End Sub
Private Sub Button10_Click(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles Button10.Click
TextBox1.Text = TextBox1.Text & 0
End Sub
Private Sub Button11_Click(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles Button11.Click
x = Val(TextBox1.Text)
kontrol = "+"
TextBox1.Text = ""
End Sub
Private Sub Button12_Click(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles Button12.Click
y = Val(TextBox1.Text)
kontrol = "-"
TextBox1.Text = ""
End Sub
Private Sub Button13_Click(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles Button13.Click
z = Val(TextBox1.Text)
kontrol = "*"
TextBox1.Text = ""
End Sub
Private Sub Button14_Click(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles Button14.Click
t = Val(TextBox1.Text)
kontrol = "/"
TextBox1.Text = ""
End Sub
Private Sub Button15_Click(ByVal sender
System.EventArgs) Handles Button15.Click
If kontrol = "+" Then TextBox1.Text
If kontrol = "-" Then TextBox1.Text
If kontrol = "*" Then TextBox1.Text
If kontrol = "/" Then TextBox1.Text
End Sub
As System.Object, ByVal e As
=
=
=
=
x
y
z
t
+
*
/
Val(TextBox1.Text)
Val(TextBox1.Text)
Val(TextBox1.Text)
Val(TextBox1.Text)
Private Sub Button16_Click(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles Button16.Click
TextBox1.Text = ""
End Sub
Private Sub Button17_Click(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles Button17.Click
End
End Sub
End Class
FATURA TUTARINI YAZI İLE YAZDIRMA
Geliştirdiğiniz programda fatura yazdırma özelliği varsa, fatura tutarını yazıya çevirmeniz gerekir.Bu konuda ihtiyacı
karşılayacak bir çevirme fonksiyonu hazırladım.Ayrıca fonksiyonun kullanıldığı küçük bir program da yazdım.
Fonksiyonun çalışmasını bu program üzerinden test edebilirsiniz. İnşallah işinize yarar.
?
1 privatestringyaziyaCevir(decimaltutar)
{
2
stringsTutar = tutar.ToString("F2").Replace('.', ','); // Replace('.',',') ondalık
3 ayracının . olma durumu için
4
stringlira = sTutar.Substring(0, sTutar.IndexOf(',')); //tutarın tam kısmı
stringkurus = sTutar.Substring(sTutar.IndexOf(',') + 1, 2);
5
stringyazi = "";
6
7
string[] birler = { "", "BİR", "İKİ", "Üç", "DÖRT", "BEŞ", "ALTI", "YEDİ", "SEKİZ",
8 "DOKUZ"};
9
string[] onlar = { "", "ON", "YİRMİ", "OTUZ", "KIRK", "ELLİ", "ALTMIŞ", "YETMİŞ",
10"SEKSEN", "DOKSAN"};
string[] binler = { "KATRİLYON", "TRİLYON", "MİLYAR", "MİLYON", "BİN", ""};
11
//KATRİLYON'un
önüne ekleme yapılarak artırabilir.
12
13
intgrupSayisi = 6; //sayıdaki 3'lü grup sayısı. katrilyon içi 6. (1.234,00 daki
14grup sayısı 2'dir.)
15
//KATRİLYON'un başına ekleyeceğiniz her değer için grup
sayısını
artırınız.
16
17
lira = lira.PadLeft(grupSayisi * 3, '0'); //sayının soluna '0' eklenerek sayı 'grup
18sayısı x 3' basakmaklı yapılıyor.
19
stringgrupDegeri;
20
21
for(inti = 0; i < grupSayisi * 3; i += 3) //sayı 3'erli gruplar halinde ele
22alınıyor.
23
{
24
grupDegeri = "";
25
if(lira.Substring(i, 1) != "0")
26
grupDegeri += birler[Convert.ToInt32(lira.Substring(i, 1))] + "YÜZ";
27//yüzler
28
29
if(grupDegeri == "BİRYÜZ") //biryüz düzeltiliyor.
grupDegeri = "YÜZ";
30
31
grupDegeri += onlar[Convert.ToInt32(lira.Substring(i + 1, 1))]; //onlar
32
33
grupDegeri += birler[Convert.ToInt32(lira.Substring(i + 2, 1))];
34//birler
35
if(grupDegeri != "") //binler
36
grupDegeri += binler[i / 3];
37
38
if(grupDegeri == "BİRBİN") //birbin düzeltiliyor.
grupDegeri = "BİN";
39
40
yazi += grupDegeri;
41
}
42
43
if(yazi != "")
yazi += " TL ";
44
45
intyaziUzunlugu = yazi.Length;
46
47
if(kurus.Substring(0, 1) != "0") //kuruş onlar
48
yazi += onlar[Convert.ToInt32(kurus.Substring(0, 1))];
49
if(kurus.Substring(1, 1) != "0") //kuruş birler
50
yazi += birler[Convert.ToInt32(kurus.Substring(1, 1))];
51
52
if(yazi.Length> yaziUzunlugu)
53
yazi += " Kr.";
else
54
yazi += "SIFIR Kr.";
55
56
returnyazi;
57}
58
59
Örnek : 1-7 arasındaki girilen sayının hangi güne
karşılık geldiğini bulan projeyi oluşturunuz.
 1 – 7 sayı kontrolü yapılsın ve MessageBox
penceresinde ilgili mesaj verilsin
Örnek : Basit Hesap Makinası oluşturunuz.
Örnek : 1-7 arasındaki girilen sayının hangi
güne
karşılık
geldiğini
bulan
projeyi
oluşturunuz.
 1 – 7 sayı kontrolü yapılsın ve
MessageBox penceresinde ilgili mesaj
verilsin
Örnek : Basit Hesap Makinası oluşturunuz.