C++ ile Gelişmiş Sınıf Örnekleri - Uçak Rezervasyon
Uçak isimli bir sınıf oluşturup, koltuk sayısı, modeli, ağırlığı ve yakıt kapasitesi de özellik olarak ekleyiniz ve aşağıdaki metodları tanımlayınız .
1.YapıcıMetod() Bu metod hiçbir parametre almayacaktır, varsayılan olarak yakıt kapasitesi=200 ve koltuk sayısı=100 olarak ayarlanacaktır.
2. YapıcıMetod() Bu metod iki parametre alacaktır, yakıt Kapasitesi ve koltuk sayısı, bunların girişi zorunludur.
yakıtDoldur(miktar) – Miktar değerini alarak o anki yakıt durumuna ekleme yapacak ama yakıt kapasitesini aşmayacak şekilde depo dolacak dolduracak. Örneğin 100 lt yakıt kapasitesi olsun, 50 lt depoda yakıt olsun, miktar 75 lt gelirse ekrana “Maksimum 50 lt daha doldurabilirsiniz, 75 lt çok fazla” yazacak ve 75 lt’yi eklemeyecek.
yakıtGöster() O anki depo durumunu gösterecek.
koltukArtir() Koltuk sayısını bir artıracak.
koltukSay() Toplam, Boş ve dolu koltuk sayısını verir.
bosKoltukGoster() Tüm boş koltukları gösterecektir.
koltukListele() Tüm koltukları ve kime rezerve edildiğini listelenecektir.
rezerveEt(koltukno, AdSoyad) – AdıSoyadı ve koltuk numarasını parametre alıp rezerve edecek.
Rezerve edilen koltuk bir daha rezerve edilemeyecek. Örneğin rezerveEt(5,”Oğuzhan TAŞ”) gönderildiğinde 5 nolu koltuk daha önce “Sinan Ercan” isimli kişiye rezerve edilmiş ise ekrana “5 nolu koltuk Sinan Ercan’a ayrılmış” diyecek ve ekrana boş koltukları listeleyecek.
Şimdi kodlamaya geçelim. IDE olarak Jet Brains Clion kullandım, sizler Eclipse veya NetBeans kullanabilirsiniz.
#include <iostream> using namespace std; class Ucak{ double yakitKapasite; int toplamKoltukSayisi, koltukSayisi; double depo; string *koltuk; public: Ucak() { yakitKapasite = 200; toplamKoltukSayisi = 100; depo = 0; koltukSayisi = 0; koltuk = new string[toplamKoltukSayisi]; for(int i=0;i<toplamKoltukSayisi-1;i++) koltuk[i]=""; cout<<"Yeni ucak oluşturuldu"<<"\n"; } Ucak(double _yakitKapasitesi, int _toplamKoltukSayisi) { yakitKapasite = _yakitKapasitesi; toplamKoltukSayisi = _toplamKoltukSayisi; depo = 0; koltukSayisi = 0; koltuk = new string[toplamKoltukSayisi]; for(int i=0;i<toplamKoltukSayisi-1;i++) koltuk[i]=""; cout<<"Yeni ucak olusturuldu"<<"\n"; } ~Ucak() { delete[] koltuk; } void yakitDoldur(double miktar) { if (depo + miktar > yakitKapasite) cout << "Maksimum " << yakitKapasite - depo << " kadar daha doldurabilirsiniz, " << miktar << " cok fazla"<<"\n"; else depo += miktar; } void yakitGoster() { cout << "Depo durumu:" << depo << " litre"<<"\n"; } void kolturkArtir() { koltukSayisi++; } void koltukSay(){ cout<<"Toplam koltuk sayisi:" <<toplamKoltukSayisi<<"\n"; int boskoltuksayisi=toplamKoltukSayisi-koltukSayisi; cout<<"Dolu koltuk sayisi:" <<koltukSayisi<<"\n"; cout<<"Bos koltuk sayisi:" <<boskoltuksayisi<<"\n"; }; void koltuguRezerveEt(int koltukNo, string adsoyad) { if (koltukNo < toplamKoltukSayisi) { if (koltuk[koltukNo - 1] == "") { koltuk[koltukNo - 1] = adsoyad; kolturkArtir(); } else cout << "Bu koltuk daha once " << koltuk[koltukNo - 1] << " isimli kisiye rezerve edilmis" << "\n"; } else cout<<toplamKoltukSayisi <<" kadar koltuk bulunmaktadır"; } void koltuklistele(){ for(int i=0;i<toplamKoltukSayisi;i++) cout<<i+1<<".koltuk="<<koltuk[i]<<"\n"; } }; int main() { Ucak u1(200,5); u1.koltukSay(); u1.koltuguRezerveEt(1,"Oguzhan TAS"); u1.koltuguRezerveEt(2,"Sinan Can"); u1.koltuguRezerveEt(2,"Ali Can"); u1.koltukSay(); u1.koltuklistele(); u1.yakitDoldur(100); u1.yakitGoster(); u1.yakitDoldur(250); return 0; }
Mutlu kodlamalar,
Oğuzhan TAŞ
Ocak, 2021
Dil Değiştir(Change Language)
Kategoriler
- Csharp(58)
- Csharp Formlar(23)
- Web Tasarım(9)
- CSS(27)
- JavaScript(37)
- PHP(50)
- Laravel(3)
- ASP.net(38)
- Excel(15)
- Güvenlik(4)
- E-Ticaret(3)
- Kariyer(5)
- SQL Server(29)
- MySQL(16)
- Linux(17)
- MacOSX(8)
- Ayarlar(12)
- Bilgisayar Ağları(3)
- Symfony(1)
- Teknoloji(7)
- VBS(1)
- Arduino(6)
- RaspberryPi(1)
- Algoritmalar(15)
- HTML(3)
- Python(2)
- Bash Script(7)
- C Programlama(10)
- Flutter - Dart(11)
- Bootstrap(1)
En çok Okunan 18 Makale
- :: Excelde EĞER Fonksiyonu Kullanımı...
- :: Csharp ile Access Veritabanı Bağlan...
- :: SQL nedir, Temel SQL Komutları nele...
- :: Hangi Linux Dağıtımı?
- :: OSX İşletim Sistemine PHP, MySQL, A...
- :: Excel Hesap tablosunda EĞERSAY Fonk...
- :: PHP dilini kullanarak MySQLi tekniğ...
- :: Excel Hesap tablosunda ÇOKETOPLA Fo...
- :: Excel Hesap tablosunda ETOPLA Fonks...
- :: Excel Hesap tablosunda ÇOKEĞERSAY F...
- :: Hangi Programlama Dilini Öğrenmeliy...
- :: Mac Bilgisayarınıza Windows 7 Yükle...
- :: PHP ile Basit Dosya Yükleme
- :: C# Programlama Dili ile İlgili Örne...
- :: Excel hücrelerinde yıldız koyarak b...
- :: PHP Dili kullanarak MySQLi Tekniği ...
- :: PhpMyAdmin Şifresi Nasıl Değiştiril...
- :: Hangisi acaba, PHP mi ASP.NET mi ?