C# Diziler Örnek Uygulamalar ve Sorular

Örnek 1: Tanımlanan sayılar dizisi içerisindeki sayıları toplayan c# konsol uygulaması

int[] sayilar={4,5,-15,22,-34,3,0,7,43,100};
int toplam=0;
foreach(int sayi in sayilar)
{
  toplam=toplam+sayi;
}
Console.WriteLine("Dizideki sayıların toplamı = " + toplam);
Console.ReadKey();

 

Örnek 2: Tanımlanan sayılar dizisi içerisindeki çift sayıları ekrana yazdıran c# konsol uygulaması

int[] sayilar={4,5,-15,22,-34,3,0,7,43,100};
int toplam=0;
foreach(int sayi in sayilar)
{
  if (sayi%2 ==0)
     Console.WriteLine(sayi);
}

Console.ReadKey();

 Ekran Çıktısı :

 
4 22 -34 0 100

 

Örnek 3: Tanımlanan sayılar dizisi içerisindeki pozitif çift sayıları ekrana yazdıran c# konsol uygulaması

int[] sayilar={4,5,-15,22,-34,3,0,7,43,100};
int toplam=0;
foreach(int sayi in sayilar)
{
  if (sayi%2 ==0 && sayi>=0)
     Console.WriteLine(sayi);
}

Console.ReadKey();

 Ekran Çıktısı :

 
4 22 0 100

 

Örnek 4: Tanımlanan sayılar dizisi içerisindeki sayıların negafit, pozitif ve işaretsiz olma durumlarını yanına yazdıran c# konsol uygulaması

int[] sayilar={4,5,-15,22,-34,3,0,7,43,100};
int toplam=0;
foreach(int sayi in sayilar)
{
  if (sayi>0)
     Console.WriteLine(sayi + " Pozitif");
  else if (sayi<0)
     Console.WriteLine(sayi + " Negatif");
  else
     Console.WriteLine(sayi + " İşaretsiz");

}

Console.ReadKey();

 Ekran Çıktısı :

 
4 Pozitif 5 Pozitif -15 Negatif 22 Pozitif -34 Negatif 3 Pozitif 0 İşaretsiz 7 Pozitif 43 Pozitif 100 Pozitif

 

Örnek çalışma ve sınav soruları : Dizi mantığını daha iyi kavramak ve öğrendiklerinizi test etmek için aşağıda verilen soruları çözebilirsiniz.

  1. 20 kişilik bir sınıftaki öğrenci adlarını tutabilecek bir dizi değişken tanımlayınız., Klavyeden girilen isimleri tanımladığınız bu dizi değişkene atayınız.

  int[] sayilar={4,5,-15,22,-34,3,0,7,43,100};  Yanda verilen diziyi tanımlayarak bir döngü yardımıyla aşağıdaki soruları çözünüz.

  1. sayilar dizisi içerisindeki 3 e bölünebilen değerleri ekrana alt alta yazdırınız
  2. sayilar dizisi içerisinde yer alan elemanları tersten alt alta yazdırınız Hazır fonksiyon kullanmayınız. (Örnek : için 100 den başlayarak 4 e doğru değerler ekrana yazdırılacak)
  3. sayilar dizisi içerisinde yeralan elemanlardan kaçtanesi çift , kaçtanesi tek sayı olduğunu bularak sonucu ekrana yazdırınız.
  4. sayilar dizisi içerisindeki en büyük sayıyı bularak sonucu ekrana yazdırınız.
  5. sayilar dizisi içerisindeki en büyük negatif sayıyı bularak ekrana yazdırınız.
  6. sayilar dizisi elamanlarını küçükten büyüğe doğru sıralayarak oluşan yeni sıralamayı ekrana yazdırnız. Hazır fonksiyon kullanmayınız

    string[] sehirler={"Kayıt Yok", "Adana", "Adıyaman", "Afyonkarahisar", "Ağrı", "Amasya", "Ankara"}

Yukarıda verilen diziyi tanımlayarak aşağıdaki soruları bu diziye göre çözünüz.

  1. Klavyeden plaka kodu girilen il adını ekrana yazdırınız. Girilen koda ait il yok ise kayıt bulunamadı olarak mesaj veriniz.
  2. Klavyeden il adı girilen ile ait plaka kodunu ekrana yazdırınız. Plaka kodu bulunamayan il için kayıt bulunamadı mesajını veriniz

 

 


 

Soru İstegi 1: 0 dan klavyeden girilen sayıya kadar olan sayılardan; tek olanları tek sayılar dizisine, çift olanları çift sayılar dizisine saklayan ve bu dizileri ayrı ayrı ekrana yazdıran program.

Çözüm :

NOT :

  • Eleman sayısı belli olmadığı için bu soruda dinamik dizi kullanmak daha mantıklı olacaktır.
  • using System.Collections; kütüphanesini dinamik diziler için eklemeyi unutmayınız

 

ArrayList tekSayilar = new ArrayList();
ArrayList ciftSayilar = new ArrayList();

Console.Write("Bir Sayı Giriniz : ");
int sayi = Convert.ToInt16(Console.ReadLine());
for (int i = 0; i <= sayi; i++)
   if (i % 2 == 0) //sayımız çift sayı ise çift sayılar dizisine ekleniyor
   ciftSayilar.Add(i);
   else  //aksi durumda tek sayılar dizisine ekleniyor
      tekSayilar.Add(i);

Console.WriteLine("Tek Sayılar Dizisi Listeleniyor ... ");
for (int i = 0; i < tekSayilar.Count; i++)
   Console.WriteLine(tekSayilar[i]);

  Console.WriteLine(" ");

Console.WriteLine("Çift Sayılar Dizisi Listeleniyor ... ");
for (int i = 0; i < ciftSayilar.Count; i++)
   Console.WriteLine(ciftSayilar[i]);

Console.ReadKey(); 

 Ekran Çıktısı :

 
Bir Sayı Giriniz : 5 Tek Sayılar Dizisi Listeleniyor ... 1 3 5 Çift Sayılar Dizisi Listeleniyor ... 0 2 4

 

 

 

 

Soru istegi 2 : 10 elemanlı bir veri grubunda bulunan pozitif,sıfır ve negatif değerlerin sayısını bulup yazan programın Kodları.

 

//dizimizi tanımlıyoruz
int[] sayilar={10,-3,5,0,33,-2,-60, 0,-20, -10};

// degiskenler tanımlanıyor
int sifirSay=0, pozitifSay=0, negatifSay = 0;
for (int x = 0; x < sayilar.Count(); x++)
{
  if (sayilar[x] < 0)
    negatifSay++; //negatif ise negatifleri 1 arttır
  else if (sayilar[x] > 0)
    pozitifSay++; // pozitif ise pozitifleri 1 arttır
  else
    sifirSay++;  // aksi durumda sıfırları 1 arttır
}
Console.WriteLine("Sıfırların Sayısı : " + sifirSay);
Console.WriteLine("Negatiflerin Sayısı : " + negatifSay);
Console.WriteLine("Pozitiflerin Sayısı : " + pozitifSay);

Console.ReadKey();

Ekran Çıktısı :

 
Sıfırların Sayısı : 2 Negatiflerin Sayısı : 5 Pozitiflerin Sayısı : 3

 

Ekleyen:admin


Ferhat
16/04/2014 - 19:20

300 elemanlı bir veri grubunda bulunan pozitif,sıfır ve negatif değerlerin sayısını bulup yazan programın Kodları.



admin : İstemiş oduğunuz sorunun çözümü yukarıdaki gibidir. 300 eleman olarak belirttiğiniz soru 10 eleman olarak çözülmüştür. Diziyi tanımlarken eleman sayısı istenilen miktarda girilebilir Çözüm için yıklayınız


mazlum
30/04/2014 - 14:59

0 dan klavyeye girilen sayıya kadar sayılardan tek olanları tek sayılar dizisine, çift olanları çift sayılar dizisine saklayan ve bu dizileri ayrı ayrı ekrana yazdıran program kodu YAPARMISINIZ LÜTFEN. ???



admin : istemiş olduğunuz sorunun çözümü yukarıdaki gibidir. Çözüm için tıklayınız


Ferhat
02/05/2014 - 07:56

Çok teşekkür ederim gerçekten çok işime yaradı.

mazlum
02/05/2014 - 14:38

Cokk tşk edrm valla sağolun sayenizde 100 alcam :D



admin: Önemli olan konuyu araştırmanız ve öğrenmenizdir. Tabiki bir öğrenci için not da çok önemli ama temel olan bilgiyi alarak gerektiğinde kullanabilmektir.


Umarım sadece hazırı almakla yetinmeyip öğrenmek için çaba harcarsın.


Ali
03/05/2014 - 10:33
Teşekkürler güzel örnekler var.
Hamit
03/05/2014 - 13:21

writeline kullanmadan dizinin terimlerinin ortalamasını bulmamız mümkün müdür?



admin: Sormak istediğinizi tam olarak anlayamadım writeline sadece kullanıcıya mesj vermek için kullanılan metotdur. Eğer sonucu yazdırmak istemiyorsanız writeline kullanmayabilirsiniz.,

Eğer sorduğunuz console degilde form uygulaması şeklinde yapmak ise değişen birşey yok sadece sonucu yadırmak için bir label veya textbox kullanmanız gerekir.


Kenan
06/05/2014 - 00:56

lutfen su 20 kisilik sinif sorusunu cevaplarmisiniz ?

ayse
08/05/2014 - 14:36

kullanıcın girdiği kenar uzunluğuna göre karenin alanını hesaplayan programı metot kullanarak çözünüz (kare alan =kenar*kenar) sorum bu yaprmsn lütfen

gfbonur1907
08/05/2015 - 03:32

ödevleri cevaplasınız hoca sınavda soracak yardım please !!!

 
1 Sayfada toplam 9 yorum mevcut