10 soruluk diziler ile ilgili genel bir örnek... Çok açıklama yapmaya gerek yok... Daha önceki örneklerin tek bir program üzerinde toplanmış hali diyebiliriz... Bu örnekle beraber dizi örneklerimizi bitirelim... Sadece çok boyutlu dizilere sonra örnekler verelim...
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace ConsoleApplication14
{
class Program
{
static void Main(string[] args)
{
/*Klavyeden girilen 10 adet sayıyı a dizisine kopyalayan
1= bu sayıların toplamı ve ortalaması
2= 100 den büyük olan sayıları ekrana yazdıran
3= 100 den küçük olanların adetini bulan
4= 100 olanlarının toplamını aldıran
5= bu sayıların en büyüğünü ve en küçüğünü bulan
6= bu sayıları büyükten – küçüge sıralayan
7= bu sayıları küçükten büyüğe sıralatan
8= klavyeden girilen sayıyı bu dizide arayan( bulursa ilgili mesajı vern vardır/ yoktur diye
9= klavyeden girilen sayıyı dizide arayan ve kaç adet olduğunu bulan
10=her elemanın karesini alarak b dizisina aktaran , her elamanın kare kökünü alarak
* c dizisine aktaran , b ve c dizilerinin toplamını d dizisine aktaran ve d dizisini
* ekranda gösteren consol uygulaması ….( tek proğram içerisinde yapılacak )*/
int[] a = new int[10]; // 10 sayılık bir int dizi oluşturduk.
// Diziye sırası ile 10 adet sayı girdiriyoruz.
for (int i = 1; i <= 10; i++)
{
Console.Write(i + ". sayı : ");
a[i - 1] = Convert.ToInt32(Console.ReadLine());
}
// 1. Cevap
int dizidekiSayilarinToplami = 0;
for (int i = 0; i < 10; i++)
{
dizidekiSayilarinToplami = dizidekiSayilarinToplami + a[i];
}
double sayilarinOrtalamasi = dizidekiSayilarinToplami / 10;// Sayılar küsürlü çıkabilir diye double yaptık
Console.WriteLine("Dizideki sayıların toplamı : " + dizidekiSayilarinToplami);
Console.WriteLine("Dizideki sayıların ortalaması : " + sayilarinOrtalamasi);
//2. Cevap
Console.Write("100'den büyük sayılar : ");
for (int i = 0; i < 10; i++)
{
if (a[i] > 100)
{
Console.Write(a[i].ToString() + " - ");
}
}
Console.WriteLine(); // alt satıra geçmek için yazıldı
//3. Cevap
int yuzdenKucukSayilarinToplami = 0;
for (int i = 0; i < 10; i++)
{
if (a[i] < 100)
{
yuzdenKucukSayilarinToplami = yuzdenKucukSayilarinToplami + 1;
}
}
Console.WriteLine("100'den küçük {0} adet sayı vardır.", yuzdenKucukSayilarinToplami);
//4. Cevap
int yuzlerinToplami = 0;for (int i = 0; i < 10; i++)
{
if (a[i] == 100)
{
yuzlerinToplami = yuzlerinToplami + 100;
}
}
Console.WriteLine("100 olan sayıların toplamı : " + yuzlerinToplami.ToString());
//5. Cevap
Array.Sort(a); // Bu kod dizideki sayıları sıralar. Dizinin ilk elemanı en küçük
// Son elemanı en büyük olur.
Console.WriteLine("En büyük sayı : " + a[9].ToString());
// Dizi 0 dan başladığı için 10. elemanı 9 olur. 0 elemanı ilk eleman olur.
Console.WriteLine("En küçük sayı : " + a[0].ToString());
//6. Cevap sayıları biraz önce zaten sıralatmıştık. Şimdi ekrana yazdıralım.
Console.WriteLine("Büyükten Küçüğe Sıralanışı.");
for (int i = 9; i >= 0; i--)
{
Console.Write(a[i].ToString() + " - ");
}
Console.WriteLine();
//7. Cevap
Console.WriteLine("Küçükten büyüğe sıralanışı.");
for (int i = 0; i < 10; i++)
{
Console.Write(a[i].ToString() + " - ");
}
Console.WriteLine();
// 8. Cevap
Console.Write("Aramak İstediğiniz sayı :");
int arananSayi = Convert.ToInt32(Console.ReadLine());
// Array.Indexof Dizinin içinde sayı aramak için kullanılır eğer sayı yoksa -1 değerini
// sayı varsa sayının değerini döndürür.
if (Array.IndexOf(a, arananSayi) == -1)
Console.WriteLine("Sayı dizide yoktur.");
else
Console.WriteLine("Sayı dizide vardır.");
//9. Bunu sırası ile kontrol etmek gerekiyor.
Console.Write("Aramak İstediğiniz sayı :");
int arananSayi2 = Convert.ToInt32(Console.ReadLine());
int kacAdetVar = 0;
for (int i = 0; i < 10; i++)
{
if (arananSayi2 == a[i])
{
kacAdetVar = kacAdetVar + 1;
}
}
Console.WriteLine(arananSayi2.ToString() + " sayısından " + kacAdetVar + " adet bulunuyor.");
// 10. Cevap
int[] b = new int[10]; // dizileri oluşturduk.
double[] c = new double[10]; // Karekökünü alınca sayılar basamaklı çıkabilir. Bunun için double yaptık...
double[] d = new double[10];
for (int i = 0; i < 10; i++)
{
b[i] = a[i] * a[i]; // Karesini b dizisine aldık...
c[i] = Math.Sqrt(a[i]); // Karekökö Math.Sqrt ile alınır...
d[i] = b[i] + c[i]; // toplayıp d ye yazdık...
Console.WriteLine(i.ToString() + " sayı : " + d[i].ToString());
}
Console.ReadLine();
}
}
}