BM102 BİLGİSAYAR PROGRAMLAMA II
LABORATUVAR UYGULAMALARI
5. Hafta
Ön bilgi:


1.
İteratif ve Özyineli Fonksiyon tanımlanabilmeli.
 yapısı bilinmeli.
Aşağıdaki  oluşturma örneğini inceleyiniz.
namespace Lab5
{
class Program
{
public struct Point3D
{
public double x;
public double y;
public double z;
};
static void Main()
{
Point3D p = new Point3D();
p.x = 1.1;
p.y = 1.2;
p.z = 1.3;
Console.WriteLine(p.ToString());
Console.WriteLine("X: " + p.x.ToString());
Console.WriteLine("Y: " + p.y.ToString());
Console.WriteLine("Z: " + p.z.ToString());
}
}
}
2.
Aşağıdaki  oluşturma örneğini inceleyiniz.
namespace Lab5
{
class Program
{
static void Main(string[] args)
{
Point3D p = new Point3D();
p.point2D = new Point2D(1.1, 1.2);
p.z = 1.3;
Console.WriteLine(p.ToString());
Console.WriteLine("X: " + p.point2D.x.ToString());
Console.WriteLine("Y: " + p.point2D.y.ToString());
Console.WriteLine("Z: " + p.z.ToString());
}
}
public struct Point3D
{
public Point2D point2D;
public double z;
}
BM102 BİLGİSAYAR PROGRAMLAMA II
LABORATUVAR UYGULAMALARI
5. Hafta
public struct Point2D
{
public double x;
public double y;
public Point2D(double _x, double _y) //yapıcı metod
{
x = _x;
y = _y;
}
}
}
3.
3 boyutlu koordinat düzleminde  noktası (, , ) olarak ifade edilmektedir. Kullanıcı
tarafından girilen iki nokta arasındaki mesafeyi hesaplayan program kodunu yazınız. Noktalar
 yapısında tutulmalıdır ve kullanıcı uygulamayı kapatıncaya kadar uygulama, kullanıcıdan
nokta girilmesini beklemeli ve bu noktalarla yeni hesaplama yapmaya devam etmelidir.
K ve L iki nokta olmak üzere bu iki nokta arasındaki uzaklık formülü aşağıdadır.
2
|| = √( −  )2 + ( −  )2 + ( −  )2
4.
Bir şirketin personellerinin ad, ikinci ad (isteğe bağlı), soyad, işe başlama tarihi (gün, ay, yıl),
maaş (TL) ve sicil numarası (12 haneli ) bilgilerini klavyeden alan basit bir insan
kaynakları yönetim uygulaması hazırlayınız. Personel ve tarih isminde iki  yapısından
yararlanılmalıdır. Personellerin tutulacağı dizi boyutunu kod içerisinde kendiniz belirleyiniz.
Uygulama çalıştırıldığında bir menü görüntülenmelidir.
Her işlem sonucunda menüye dönülmelidir. Bu menünün fonksiyonları aşağıdaki gibi
hazırlanmalıdır.
1→Personel ekle (personel bilgilerinin klavyeden girilmesini ister ve eğer aynı sicil numarasında
bir personel yoksa kişiyi personeller dizisine ekler)
2→Personel çıkar (personeli sicil numarasına göre arar ve arama sonucunda dönen personelin
tüm bilgilerini personeller dizisinden siler)
3→Personel ara (personeli sicil numarasına göre arar ve arama sonucunda dönen personelin
tüm bilgilerini ekrana yazdırır)
4→En Düşük Maaş (en düşük maaşlı personelin tüm bilgilerini ekrana yazdırır)
5→En Yüksek Maaş (en yüksek maaşlı personelin tüm bilgilerini ekrana yazdırır)
6→Çıkış (uygulamayı kapatır)
5.
Kullanıcı tarafından girilen iki karmaşık sayıyı toplayan program kodunu yazınız. Kullanıcıdan
alınan karmaşık sayıların gercel () ve sanal () kısımları bir  yapısında
tutulacaktır.  içinde karmaşık sayıyı ekrana yazdırmak için bir metod tanımlanacak ve iki
sayının toplamı  içinde tanımlanan bu metod yardımıyla ekrana yazdırılacaktır.
Beklenen Topla Fonksiyonu
Karmasik Topla(Karmasik kar1, Karmasik kar2)
BM102 BİLGİSAYAR PROGRAMLAMA II
LABORATUVAR UYGULAMALARI
5. Hafta
6.
Kullanıcı tarafından girilen iki zaman dilimi arasındaki farkı bulan programın yazılması.
Kullanıcıdan iki zaman diliminin ayrı ayrı saat, dakika, saniye bilgileri istenip, aradaki zaman
farkı ekrana yazdırılacak. Bunun için  tipindeki saat, dakika, saniye değişkenleri, bir
 yapısı ile tutulacak.
7.
Klavyeden öğrencinin numarasını (10 haneli ), vize (), final () ve proje
() notunu alarak ortalamasını hesaplayan program kodunu yazınız. Sınıftaki öğrenci
sayısı başlangıçta klavyeden girilecektir. Ardından sınıf ortalamasını hesaplayıp ekrana
yazdırınız. Yazılan programda öğrenci bilgileri bir  yapısında tutulmalıdır. Ortalama
hesabında vizenin %30’u finalin %40’ı ve proje notunun %30’u dikkate alınmalıdır.
8.
Klavyeden girilen bir  içerisindeki parantezlerin dengeli olup olmadığını bulan program
kodunu yazınız. Örneğin “(( + ) ∗ ( + )) + ” ifadesinde parantezler dengeliyken “ ∗
( + ))” ifadesinde parantezler dengesizdir.
9.
Özyineli fonksiyon kullanarak bir sayının kuvvetini bulan program kodunu yazınız. Sayı ve
kuvvet değerleri klavyeden girilecektir.
Beklenen Fonksiyonlar
double Kuvvet(double taban, int us)
Download

5. Hafta Uygulama Dokümanı