C# Programlamaya Giriş 1.Bölüm

artisbero

Üye
16 Ara 2010
176
0
Merhabalar,
Bugün temel seviyeden başlayarak C# ı aşama aşama uygulama geliştirerek ve yapıları düzgün bir şekilde kavrayarak yeni bir dil öğrenmeye başlayacağız

Başlamadan önce C# hakkında biraz bilgi verelim..
C# Nesneye yönelik programlama dillerinden biridir ve orta düzeyli dil olarak geçer. Microsoft tarafından geliştirilmiştir . C ve Java dillerinden türetilmiş ve Net platformu için geliştirilmiştir.
C# diğer dillerden farklı olarak nesneye yöneliktir peki bu ne demek int double gibi temel veri türleri dahi birer nesne olarak tanımlanmıştır.
Java dilinden farklı olarak pointer kullanılabilmektedir.

Kullanım Alanlarına Bakacak olursak...
Konsol tabanlı uygulama geliştirme
Windows için program yazma
Asp.net için en uygun dildir
Web servisleri geliştirmek de oldukça kolaydır.

Temel Veri Tipleri
Veri türleri kendi arasında değer tipi ve referans tipi olarak ikiye ayrılır.
Değişken tanımlamak için
veritürü ismi kullanılır.
Değişkene değer atarak kullanmak zorunludur.
Temel veri tipleri int double float ... değer tipi herhangi bir sınıf türü ise referans tipidir.
başlıca değer veri tiplerimiz
bool, char, double, int olarak söyleyebiliriz
bool veri tipi iki değer olmak üzere true ya da false tutar. mantık yapısı olarak düşünülebilir
char tek bir karakter tutan veri tipimizdir
double uzun tam olmayabilecek sayısal tipleri tutmakta int ise tam sayıları tutmak için kullanılan veri tiplerimizdir.

Referans türlerimizden String de önemli yapılarımızdan biridir yazılarımızı String yapısında tutarız.

syntax :
int a = 10;
float b = 32.32f;
double c = 3.243;
şeklinde örnekleyebiliriz.
yapılar arasında dönüşümler yapabilmekteyiz.

Operatörler
kod yazarken bir çok yerde operatör kullanma ihtiyacı duyacağız gerek toplama yaparken gerek if yapısı kurarken
bazı operatörlerimizi öğrenmemiz gerekecek bunlardan en önemli üçü && || ve ! olduğunu düşünmekteyim
bu operatörleri genellikle if yapısında sıkça görürüz.
&& operatörümüz ve anlamına gelmektedir belli bir koşul verdiğimiz esnada iki tarafında doğru olmasını beklemektedir lise mantık derslerinden hatırlayacağınız gibi and işlemidir aslında bir tarafta 1 sıfıra eşit && hava güneşli şeklinde bir yapımız olduğunu düşünürsek 1 sıfıra eşit olmayacağı için yapı doğru değildir ve işlemimizi yapamayız 1 == 1 && 6/2 == 3 şeklinde bir yapıda ise iki taraf da doğru olduğu için if komutumuzun içine girebiliriz gibi basit örneklerle daha iyi anlayabiliriz || yapısı ise or yani ya da anlamına gelmektedir yapıda iki taraftan birinin doğru olması bizim işimize yarayacaktır ! ifadesi ise tersinden bahseder ve olumsuzunu döndürür yani ! ( 1 sıfıra eşit) && hava güneşli gibi bir yapıda havanın güneşli olduğunu varsayarsak && yapımız başarıyla sonuçlanacaktır.


if Kullanımı

Programın akışını kontrol etmek için if yapılarını kullanırız basit bir kullanımla gösterecek olursak

if(koşul){
}
else if(koşul2){
}
else{
}

bu durumda derleyici programımız koşulumuzu kontrol eder doğruysa içine girer eğer doğru değilse koşul 2 yi kontrol eder doğruysa girer eğer o da doğru değilse else koşulumuzun içine girer ve ordaki belli kod parçalarını işleme geçirir.
if else yapısına benzer switch case yapısı vardır çok benzerdir.


Kullanıcıdan zaman zaman belli veriler almamız gerekebilir. Başlangıçta konsol uygulamasından ilerleyeceğimiz için onu göstereceğim.

saati am pm e çeviren bir program yapacağımızı varsayalım.

başta saat ve dakika olmak üzere iki tane değişken tanımlayalım
int saat, dakika;
değişkenleri bu şekilde yan yana da tanımlayabilmekteyiz.
konsol ekranımıza kullanıcıdan cevap almak için bir yazı yazdıralım.
yazıyı yazdırmak için Console.WriteLine(""); komutunu kullanmamız gerekiyor.
Console.Write ile de yazdırabiliriz fakat satır atlaması yapmaz uygulamamızda,

daha sonra int bir veri beklediğimiz için kullanıcıdan değerimize kullanıcıdan gelen yanıtı atamaktayız.

saat = Convert.ToInt16(Console.ReadLine());
kullanıcıdan veri almak için aslında Console.ReadLine(); komutunu kullanmaktayız fakat burada dönüşüm yapmamız gerektiği için gelen veriyi bir tam sayıya çevirmemiz gerekmektedir.

sonrasında bir if yapısı ile saatin 12 den çok olup olmadığını kontrol edelim.
if(saat >12){
eğer saatimiz 12 den çoksa bu if yapımıza girmektedir.
girdiyse bu yapının pm olduğunu anlamaktayız.
saatimize yeni bir atama yapacağız
saat = saat - 12;
saatimizden 12 çıkarttık ve sonra bastırmak için writeLine kullanacağız

Console.WriteLine(saat + ":" + dakika + "PM");
bu kısımda farklı göreceğiniz şey birden çok değişken ya da yazıyı nasıl kullandığımız olacak bu yapıları + ile beraber kullanabiliriz tekrar tekrar yazdırmak yerine.
if yapımızı tırnakla kapattıktan sonra
}
else{
else durumumuzu yazmaktayız
burada saatten 12 saat çıkartmamız gerekmiyor çünkü 12 nin altındaki değerler zaten AM
direkt olarak Console.WriteLine(a +":"+b+"AM");
yazdırıyoruz
ve else yapımızı da kapatıp kodumuzu tamamlıyoruz.
}
yapı bittikten sonra en sonuna bir Console.ReadLine(); ekliyoruz
bu da yapımızın işlemini yaptıktan sonra direkt olarak kapanmamasını kullanıcının bir girdisinden sonra kapanmasını sağlıyor ve ekrandaki yazıyı görebiliyor.
ortaya çıkan son kodumuz ise



Kod:
static **** Main(string[] args)
        {
            int a, b;

            Console.WriteLine("Saati Giriniz");
            a = Convert.ToInt16(Console.ReadLine());

            Console.WriteLine("Dakikayı Giriniz");
            b = Convert.ToInt16(Console.ReadLine());

            if (a > 12)
            {
                a = a - 12;
                Console.WriteLine(a + ":" + b + "PM");



            }
            else
            {
                Console.WriteLine(a + ":"+ b + "AM");
                
            }
            Console.ReadLine();

        }


bu şekilde oluyor..
 

anonuser23532

Kıdemli Üye
9 Ara 2017
2,602
12
Temel, programlamaya giriş vs. sıkılmadık mı bu konulardan artık? Aynı konudan milyonlarca kere açılıp üstüne bir şey katılmadan anlatılması kimseye bir şey kazandırmaz, size vakit kaybettirir. Emeğinize sağlık.
 

Mapzilla

Adanmış Üye
23 Eyl 2016
7,205
13
Alınma ama rezalet olmuş. Bunu yeni başlayıp görenler bile zerre anlamaz. Bir insana veri tiplerini, verbatim string'leri, string concatenate'i, boxing ve unboxing'i tam olarak anlatmadan if- else if -else yapılarına geçmek aşırı saçma. Yani şöyle kaynaklar bile varken, bi' insan sizin konunuzu n'apsın?

https://www.w3schools.com/cs/

Lütfen konularınızı uzun, açıklayıcı tutun ve görseller ile destekleyin.
Elinize sağlık.
 
Son düzenleme:
Üst

Turkhackteam.org internet sitesi 5651 sayılı kanun’un 2. maddesinin 1. fıkrasının m) bendi ile aynı kanunun 5. maddesi kapsamında "Yer Sağlayıcı" konumundadır. İçerikler ön onay olmaksızın tamamen kullanıcılar tarafından oluşturulmaktadır. Turkhackteam.org; Yer sağlayıcı olarak, kullanıcılar tarafından oluşturulan içeriği ya da hukuka aykırı paylaşımı kontrol etmekle ya da araştırmakla yükümlü değildir. Türkhackteam saldırı timleri Türk sitelerine hiçbir zararlı faaliyette bulunmaz. Türkhackteam üyelerinin yaptığı bireysel hack faaliyetlerinden Türkhackteam sorumlu değildir. Sitelerinize Türkhackteam ismi kullanılarak hack faaliyetinde bulunulursa, site-sunucu erişim loglarından bu faaliyeti gerçekleştiren ip adresini tespit edip diğer kanıtlarla birlikte savcılığa suç duyurusunda bulununuz.