BM102 BİLGİSAYAR PROGRAMLAMA II
LABORATUVAR UYGULAMALARI
3. Hafta
Ön bilgi:
 Tek ve çok boyutlu dizi tanımlanabilmeli.
 Değişken tipleri arasındaki dönüşümler bilinmeli.
 Döngüler (for, while, foreach) ve koşul ifadeleri bilinmeli.
 Metot/Fonksiyon tanımlanabilmeli.
 Rastgele sayılar (Random) ve nasıl üretilecekleri bilinmeli.
1.
Aşağıda tamsayı tipinde iki boyutlu bir dizinin nasıl tanımlandığı, bir fonksiyona
parametre olarak nasıl gönderildiği ve kullanıldığına dair bir örnek sunulmuştur.
İnceleyiniz.
static void Main(string[] args)
{
soru_1();
}
static void soru_1()
{
int[,] myArray = { { 1, 2, 3, 4 }, { 5, 6, 7, 8 }, { 9, 10, 11, 12 } };
// 1
2
3
4
// 5
6
7
8
// 9 10 11 12
PrintArrayItems(myArray);
}
static void PrintArrayItems(int[,] arr)
{
int row = arr.GetLength(0);
int column = arr.GetLength(1);
for (int i = 0; i < row; i++)
{
for (int j = 0; j < column; j++)
{
Console.WriteLine(i.ToString() + ":" + j.ToString() + " = " +
arr[i, j].ToString());
}
}
}
2.
Aşağıda  tipinde bir dizinin tanımlanmasına ve ℎ döngüsü ile dizinin
tüm elemanlarının gezilmesine yönelik bir örnek sunulmuştur, inceleyiniz.
static void Main(string[] args)
{
bool [] bArray = new bool[10];
bArray[0] = true;
foreach (bool item in bArray)
{
Console.Write(item + " ");
}
}
BM102 BİLGİSAYAR PROGRAMLAMA II
LABORATUVAR UYGULAMALARI
3. Hafta
3.
Aşağıdaki 0 ile 10 aralığında 20 adet rastgele sayı üretimini sağlayan fonksiyonu inceleyiniz.
static void RandomSayiUret()
{
Random rnd = new Random();
for (int i = 0; i < 20; i++)
{
Console.Write(Convert.ToString(rnd.Next(10))+ "
}
}
4.
");
Sütun ve satır sayısı ve elemanları klavyeden girilmek üzere iki boyutlu 
tipindeki iki dizinin toplamını ekrana yazdıran program kodunu C# programlama dizi ile
yazınız.
Beklenen Fonksiyonlar:
static double[,] DiziOku(int satir, int sutun)
static void DiziTopla(double[,] dizi1, double[,] dizi2)
static void Main()
5.
Sütun ve satır sayısı ve elemanları klavyeden girilmek üzere iki boyutlu 
tipindeki iki dizinin çıkarma sonucunu ekrana yazdıran program kodunu C#
programlama dizi ile yazınız.
Beklenen Fonksiyonlar:
static double[,] DiziOku(int satir, int sutun)
static void DiziTopla(double[,] dizi1, double[,] dizi2)
static void Main()
6.
Eleman sayısı klavyeden girilmek üzere, tek boyutlu  tipinde bir dizinin
elemanlarını “ −  −  −  −  … ” şeklinde atayan program
kodunu yazınız.
7.
Eleman sayısı ve elemanları klavyeden girilmek üzere tek boyutlu  tipindeki iki
dizinin dot product (∙) sonucunu ekrana yazdıran program kodunu C# programlama dizi
ile yazınız.
Beklenen Fonksiyonlar:
static double[] DiziOku(int elemanSayisi)
static double DotProduct(double[] dizi1, double[] dizi2)
static void Main()
 ve ,  elemanlı iki vektör olmak üzere

 ∙  = ∑   = 1 1 + 2 2 + ⋯ +  
=1
Ö: [1 3 − 5] ∙ [4 − 2 − 1] = 1.4 + 3. (−2) + (−5). (−1) = 3
BM102 BİLGİSAYAR PROGRAMLAMA II
LABORATUVAR UYGULAMALARI
3. Hafta
8.
Sütun ve satır sayısı ve elemanları klavyeden girilmek üzere iki boyutlu 
tipindeki bir dizinin elemanları toplamını bulan ve klavyeden girilen bir eşik değerden
büyük ve küçük olan elemanlarını ayrı ayrı ekrana yazdıran programı C# programlama
dili ile yazınız.
9.
[-100, 100] aralığında kullanıcının istediği adette rastgele sayı üreten ve bu sayıların
pozitif, negatif ve sıfır olanlarını ayrı ayrı üç dizide saklayıp bu dizilerin elemanlarını
ekrana yazdıran programı C# programlama dili ile yazınız.
10.
Kullanıcının seçimine göre  tipindeki Fahrenhayt değeri Santigrat Dereceye veya
Santigrat Dereceyi Fahrenhayta dönüştüren program kodunu yazınız. Program sonucu hem
 hem de  olarak ekrana yazdırmalıdır. (FC: Fahrenhayt’tan Santigrat’a, CF:
Santigrat’tan Fahrenhayt’a ve Q: Çıkış) Kullanıcıdan alınan girdi Q olana kadar program
dönüşüm yapmaya devam etmelidir.
ºF = ºC ∗ 1.8000 + 32.00
Download

3. Hafta Uygulama Dokümanı