31 Mayıs 2013 Cuma

For Döngüsü - Csharp

For döngüsü adı üzerinden de belli olduğu gibi belli bir şart sağlanana kadar dönmesini istediğimiz zaman bu kod parçasını kullanırız. Kullanımı;
For(int i=0; i<döngü uzunluğu; i++)
{
Döngümüz devam ederken yapılacak işlemler;
}
For(bir tane sayaç koyarız istediğimiz sayıdan başlarız;sayaç<döngü uzunluğu;döngüye göre her döngüde sayac artar veya azalır)
Örnek; textbox’a bir sayı girilecek ve bu sayıya kadar olan tüm sayılar toplanıp ekrana sonucu yazılacak.
private void button1_Click(object sender, EventArgs e)
        {
            int a = Convert.ToInt32(textBox1.Text);
            int toplam=0;
            for (int i = 0; i <= a; i++)
                    {
                     toplam+=i;
                    }
            MessageBox.Show(toplam.ToString());
            }
        }
//textbox’a girilen değer bir int değişkenine atanıyor
int a = Convert.ToInt32(textBox1.Text);
//toplam değişkenine baştan sıfır dememizin amacı sürekli sayılar toplanıp bu değişkene atılacak          
 int toplam=0;
//for döngüsü 0 dan başlıyacak textbox’a girilen değere kadar devam edecek.
            for (int i = 0; i <= a; i++)
                    {
//sart her sağlandığında o döndüdeki sayaç numarası toplam değişkenine toplanıp aktarılacak
                     toplam+=i;
                    }
//Döngü bittiğinde toplam sonuç ekrana yazdırılacak.
            MessageBox.Show(toplam.ToString());
            }


Switch Yapısı - Csharp

İf yapısı ile yapabileceğimiz tüm kıyaslamaları switch yapısı ile de kullanabiliriz. Kullanımı;
Switch(kıyaslama yapılacak değerimiz)
{
Case durum:
//yukarıdaki durum sağlanıyorsa yapılacak işlemler
Break;
//yukarıdaki şart bloğu sağlanıyorsa break ile çık. Eğer break demezsek diğer case lerede bakar.
Default:
//eğer hiçbir case sağlanmazsa default’a geliyor ve buradaki işlem yapılıyor. İf else yapısındaki else’ye benziyor default.
}
Örnek: girilen değere göre hangi ay veya aylar olduğunu bulmak. Formumuza bir buton ve bir textbox ekleyelim.


//öncelikle textbox’taki değeri integer bir değere dönüştürüyoruz
int a = Convert.ToInt32(textBox1.Text);
//sonra bu değeri switch ile kontrol edeceğiz
            switch (a)
            {
                //eğer girilen değer 29 ise ekrana şubat yazıp döngü bitecek
                case 29:
                    MessageBox.Show("şubat ayı");
                    break;
                case 30:
                    MessageBox.Show("nisan,haziran,eylül,kasım");
                    break;
                case 31:
                    MessageBox.Show("ocak,mart,mayıs,temmuz,ağustos,ekim,aralık");
                    break;
               //eğer girilen değer 1-31 arasında değil veya 29,30,31 değerlerinden biri değilse hata mesajı verecek. Şartlar case’lerde sağlanmadığı için
                default:
                    MessageBox.Show("1-31 arasında değer veya 28,30,31 değerlerinden birini giriniz");

                    break;

İf Yapisi - Csharp

İf yapısı bir şeyi kıyaslama yapacağımız zaman kullanırız. Kullanımı;
İf(şart)
{
//şartımız uygunsa bu bloğu çalıştır
}
Else
//yukarıdaki şartımız gerçekleşmezse bu kod bloğu else yapısı çalısır
Örnek; Yatılı lisede okuyan bir öğrenci haftasonu dışarı çıkarken veli iznine gerek olup olmadığını bu if yapısı ile kontrol edebiliriz. Formumuza bir buton ve bir textbox ekleyelim.
private void button1_Click(object sender, EventArgs e)
        {
//öncelikle textbox’lar string değer tuttuğu için onu convert ederek integer bir değişkene atıyoruz
            int a = Convert.ToInt32(textBox1.Text);
//sonra bu integer değişkeni if yapısı içinde şartımızla kıyaslama yapıyoruz
            if (a > 18)
//şartımız tutarsa aşağıdaki mesaj kutusu çalısıyor
                MessageBox.Show("veli iznine gerek yok");
//şartımız sağlanmazsa esleye düşüyor ve oradaki ifademiz çalısıyor.
            else
                MessageBox.Show("veli iznine gerek var");

        }

27 Mayıs 2013 Pazartesi

Tür Dönüşümleri - Csharp



Csharp’ta bir türden diğeri türe bazı değişkenleri dönüştürmemiz gerekebilir. Bu durumda bizler Convert metodunu kullanırız.
Örnek: ) Windows formumuza bir textbox ve bir buton ekliyoruz. Textbox’a gireceğimiz değeri önce integer’a çevirelim sonra bu int değeri messagebox ile ekrana yazdıralım.
private void button1_Click(object sender, EventArgs e)
        {
            int a = Convert.ToInt32(textBox1.Text);
            MessageBox.Show(a.ToString());
        }
   Textbox’a girilen değer ne olursa olsun string bir değer tutar eğer girilen değer integer ise biz bunu öncelikle int tipine çevirmeliyiz.
int a = Convert.ToInt32(textBox1.Text); //bu satırda textbox’ın text’ini convert metodu ile integer’a çeviriyoruz. Sonra bunu int a değişkenine atıyoruz. Convert metodundan sonra integere bir değişkeni çevireceksek;
Convert.ToInt16
Convert.ToInt32
Convert.ToInt64
Komutunu kullanıp parantez içine;
Convert.ToInt32(integera çevrilecek veri,değişken yazılır)
MessageBox.Show ekrana mesaj yazmak için kullanırız. Fakat bu metod ekrana string tipinde bir veri yazdırır. Eğer değişkenimiz integer ise bunu string’e çevirmeliyiz.
MessageBox.Show(a.ToString()); aynı buradaki gibi.
Dönüşümleri ya Convert.ToString veya değişkenimsi.ToString() ile değiştirebiliriz.

Diziler - Csharp



Dizi, değişkenlerden ayıran en önemli özelliği değişkenler bir değer alırken ve atanırken dizilere ise birden fazla değişken atıyabiliyoruz.
Örnek:) string isim=”ali” ( bir değişken)
String[] isimler={“ali”,”Ahmet”,”Mehmet”,”hasan”} (dizi)
Dizilerde eleman sayısı belli değilse yukarıdaki gibi tanımlanır. Önce dizi tipi(string,int vs.) sonra köşeli parantez sonra dizi ismi ve diğer tarafa köşeli parantez({}) içine dizi elemanlarını yazıyoruz.
Eğer dizi boyutunu belirlemek ve sabit tutmak istiyorsak diziyi tanımlarken dizinin alacağı eleman sayısınıda belirleriz.
Örnek:) string[] iller= new string[4];
iller[0]=”Ankara”;
iller [1]=”İstanbul”;
iller [2]=”Adana”;
iller [3]=”İzmir”;
Dizilerin index numarası her zaman 0 dan başlar. Dizilerin index numarası her zaman dizinin alabileceği elaman sayısından 1 eksik olur.
Örnek; eğer iller dizisinin 3. Elemanını ekranda göstermek istiyorsak c sharp’da şöyle yapmalıyız.
MessageBox.Show(iller[3]);
MessageBox’ın içi string bir değer alır. Bizimde dizimiz string olduğu için dizi ismi ve hangi elemanı göstereceksek onun index numarasını yazarız.

25 Mayıs 2013 Cumartesi

C Programlama - int Fonksiyonlar

Girilen üç sayıdan en büyüğünü bulan program

#include
int enBuyukSayi(int,int,int);
int main(){
 int a,b,c,maximum;
 printf("üç tane sayı giriniz:");
 scanf("%d %d %d",&a,&b,&c);
 maximum=enBuyukSayi(a,b,c);
 printf("%d %d %d sayılarından en buyugu:%dn",a,b,c,maximum);
 return 0;
}
int enBuyukSayi(int x,int y,int z)
{
int max;
if(x>y)
max=x;
else
max=y;
if(z>max)
max=z;
return max;
}

Şimdi void ve int fonksiyonları arasındaki farkı daha iyi görecez. Int fonksiyonlar bir değer döndürür(return max). Bu değer sayesinde dönen sayıyı biz main fonksiyonda bu değeri başka bir değişkene atayım o dönen değişkeni kullanabiliriz. Ör:) fonksiyonun içinde dönen sayı return max, main fonksiyonda biz bu değeri maximum diye tanımladığımız değişkene atıyabiliyoruz. maximum==enBuyukSayi(a,b,c);

C Programlama - Void Fonksiyonlar

Girilen üç sayı arasından en büyüğünü bulma:
#include
void enBuyukSayi(int,int,int);
int main(){
 int a,b,c;
 printf("üç tane sayı giriniz:");
 scanf("%d %d %d",&a,&b,&c);
 enBuyukSayi(a,b,c);
 return 0;
}
void enBuyukSayi(int x,int y,int z){
int max;
if(x>y)
max=x;
else
max=y;
if(z>max)
max=z;
printf("%d %d %d sayılarından en buyugu:%dn",x,y,z,max);
}

Şimdi void fonksiyon nedir ona bakalım: Void fonksiyon bir değer döndürmez. Yani Fonksiyonun çağrıldığı main 'nin içerisinde sadece fonksiyon ne işlem ne sonuç çıkartıyorsa onu yapar. Onun dışında Fonksiyonun oluşturduğu değeri main fonksiyonu içerisinde başka bir değere atıyamayız veya onu kullanamayız. Bir sonraki int fonksiyon örneğinde arasındaki farkı daha iyi anlayacaksınız.

C Programlama Örnek VII

#include

int main){
int i;
for(i=0;i<5;i++){
int i=10;
printf("%d",i);
i++;
}
return 0;
}
Bu programın çıktısı nedir?

ilk bakışta herkes bu programın çıktısını 10 derler. Çünkü i=0 döngüye girer i=10 olur ekrana yazdırılır sonra bir artar i=11 olur döngüden çıkar:)) fakat yanıldınız:))
int i;
for(i=0;i<5;i++)
burdaki i ile for döngüsünün içindeki int i=10 farklıdır. program bunu farklı değişken olarak algılar. bizler sadece for'un içindeki i'yi tanımlamak zorundayız. Onun dışındaki aynı isim olsa bile başka değişken olarak algılar. ekrana 10 yazar,sonra i=11 olur,for'un içindeki i =1 olur döngünün içine girince i tekrar 10 olur bu tekrar 5 defa devam eder ve ekrana 5 tane 10 yazılır. Siz sakın olupta ekrana bir tane 10 yazıpta çıkar demeyin o hataya düşmeyin:))

C Programlama - Değişken Atama

#include
int main(){
float x;
x=0.35==3.5/10;
printf("%f",x);
return 0;
}
bu program hata verir. Çünkü sadece if yapısında == eşittir kullanılır. Fakat yanıldınız programın çıktısı 1 olur. Çünkü bizler ne kadar if yapısının içinde == kullanılmasına alışık olsak bile 0.35==3.5/10 ifadesi bize true yani 1 değerini döndürür. Böylece ekrana 1 çıktısı atanır.

C Programlama Örnek VI


#include
int main()
{
int i,a;
char sayi;
float yuzde;
basla:
//system("cls");
printf("Yuzdesi alinacak saayiyi giriniz:");
scanf("%d",&i);
printf("Sayinin yuzde kacini alacaginizi giriniz:");
scanf("%d",&a);
yuzde=(float)i*a/100; //yuzde hesabn tantyorum
printf("girdiginiz sayinin %d i : %f dir n",a, yuzde);

printf("Devam etmek istiyormusunuz?n");
getchar();
scanf("%c",&sayi);
if (sayi=='e' || sayi=='E')
{
system("cls");
goto basla;
}
else
printf("Program sonlandiriliyorn");

return 0;
}

 scanf("%c",&sayi);   char ifadesi %c ile ifade edilir. İkincisi biz kullanıcıdan bir harf veya bir giriş yapması için bekliyorsak bunu getchar() fonksiyonu ile yaparız. bu fonksiyon programın kullanıcıdan bir giriş alması için bekliyor. bunu yazınca kullanıcıdan e veya başka bir harf bekliyor. e ye basınca program devam ediyor, başka harfe basınca program çıkıyor. system("cls"); bizim ekranımızı temizliyordu. Bunu if içine koymamız lazım çünkü eğer e harfi girildiğinde bizden yeniden sayı istemeden önce ekran temizlenmeliki ekranda yazı fazlalığı olmamalı.

Diziler Örneği - C Programlama

Girilen 5 farklı ondalıklı sayının büyükten küçüge sıralanmış halini,ortalamasını, ortalamadan büyük olan ve ortalamadan küçük olan sayıları ekrana yazdıran C programı...
#include
#include

int main(){
int dizi[5],a,b,c,d,toplam=0,ort=0;//değişkenlerimizi ve dizimi tanımlıyoruz
clrscr();
for(a=0;a<5;a++){ //5 adet sayımızı sırasıyla for döngüsü ile alıp bunları dizimize atıyoruz
printf("Say�lar� Giriniz: ");
scanf("%d",&dizi[a]);
}
printf("nnGercek Dizi: ");
for(a=0;a<5;a++){//dizimize attığımız elemanları yazdığımız sırayla ekrana yazdırıyoruz
printf(" %d ",dizi[a]);
}
for(a=0;a<5;a++){
toplam=toplam+dizi[a];//dizimizdeki tüm sayıları toplayıp toplam değişkenine atıyoruz
}
ort=toplam/5; //dizimizde olan tüm sayılarımızı topladıktan sonra bunları 5'e bölüp ortalamalarını buluyoruz
printf("nnOrtalamadan Buyuk Olan Sayilar: ");
for(a=0;a<5;a++){
if(dizi[a]>ort){ //sonra dizimideki sayılar ile ortalamasını kıyaslıyoruz ve ortalamadan büyük olan sayıyı buluyoruz
printf(" %d ",dizi[a]);
}
}
printf("nnOrtalamadan Kucuk Olan Sayilar: ");
for(a=0;a<5;a++){//sonra dizimideki sayılar ile ortalamasını kıyaslıyoruz ve ortalamadan küçük olan sayıyı buluyoruz
if(dizi[a] printf(" %d ",dizi[a]);
}
}

//dizideki sayıları kıyaslamak için 2 tane for döngüsü kullanıyoruz
//ilk for döngüsü 5 sayı kadar dönüyor
//ikinci for döngüsü ise dizinin i. elamanlarını kıyaslamak için kullanıyoruz
for(b=1;b<5;b++){
for(c=0;c<4;c++){
if(dizi[c]>dizi[c+1]){
d=dizi[c];
dizi[c]=dizi[c+1];
dizi[c+1]=d;
}
}
}
printf("nnDizinin Siralanmis Hali: ");
for(a=0;a<5;a++){
printf(" %d ",dizi[a]);
}
getch();
return 0;
}

Csharp - Anket Yapımı

Öncelikle windows formumuza bir tabcontrol ekliyoruz. Böylece bunun üzerinde iki kısım oluşturacağız. Birinci sekmede anket soruları, ikinci sekmede ise anketin sonuçları olacak. Anket kısmı için 5 radiobuton ve 1 buton ekliyoruz. Sonuçlar sekmesine ise 1 listbox, 5 progress bar ve 1 buton ekliyoruz.
/***********************************************--------------------------------------------------------------*****************************/
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;

namespace _17SubatAnket
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }
       //anket oylamasını her bir madde tutmak için 5 elemanlı bir dizi oluşturuyoruz
        int[] sonuclar = new int[5];
        private void button1_Click(object sender, EventArgs e)
        {
//burada herbir radio butonunu kontrol ediyoruz. İşaretlimi değilmi diye
            if (radioButton1.Checked)
                sonuclar[0]++;
            else if (radioButton2.Checked)
                sonuclar[1]++;
            else if (radioButton3.Checked)
                sonuclar[2]++;
            else if (radioButton4.Checked)
                sonuclar[3]++;
            else if (radioButton5.Checked)
                sonuclar[4]++;
            MessageBox.Show("Oy Kullandığınız için Teşekkürler");

        }

        private void button2_Click(object sender, EventArgs e)
        {
//artık sonuçlar sekmesindeki sonucları göster butonuna tıkladık,
//öncelikle foreach döngüsü içinde takımları listbox'a ekledik,sonra takımlarım sonuçlarını tek tek kontrol ettik
//sonucu olanı aldık, 10 ile çarparak progress barı ilerlettik
            listBox1.Items.Clear();
            int z = 0;
            string[] takimlar = new string[] { "Fenerbahçe", "Galatasaray", "Beşiktaş", "TrabzonSpor", "Bursaspor" };
            foreach (int x in sonuclar)
    {
        listBox1.Items.Add(takimlar[z]);
        z++;
    }
            progressBar1.Value = sonuclar[0] * 10;
            progressBar2.Value = sonuclar[1] * 10;
            progressBar3.Value = sonuclar[2] * 10;
            progressBar4.Value = sonuclar[3] * 10;
            progressBar5.Value = sonuclar[4] * 10;
          
          
      
        }

    
    }
}
çalışmayı buradan indirebilirsiniz : https://hotfile.com/dl/189171576/37ebb3b/17SubatAnket.rar.html

Csharp - DateTime ve MessageBox Kullanımı

İçinde bulunduğumuz yıldan bizim belirlediğimiz yıldan çıkartarak aradaki yıl farkını bulma:

Formu çift tıklayıp Formun Load kısmına
 
  private void Form1_Load(object sender, EventArgs e)
        {
            int saat = DateTime.Now.Year;
            int yil=1982;
            int sonuc = saat - yil;
            MessageBox.Show(sonuc.ToString());
        }

yazarsak ekrana messagebox ile yıl farkını rakam olarak yazar.
Burada Dikkat etmemiz gereken message box ile ekrana msj bastırabilmemiz için bu msjın tipi string bir ifade olmak zorundadır. Eğer bu ifade string değilse öncelikle string ifadeye çevirmemiz lazım. Mesela örneğimizde sonuc int bir değişkendir. Eğer biz MessageBox.Show(sonuc); yazsaydık program hata verecekti. Dyecektiki string ifade değil messagebox'ın içindeki. Bu hatayı almamak için önce sonuç ifadesini string bir değere çeviriyoruz. sonuna .tostring() yazarak.
Google PageRank Checker Powered by  MyPagerank.Net