C++ Hastane Otomasyonu

Arkadaşlar bunu da örnek olsun diye paylaşmak istedim.

C++’ta yazmış olduğum proje ödevimdi.

Sanırım dosyalama C’nin ve C++’ın en kolay konusu. Diğer konulara göre çok daha rahat anlaşılıyor.

Hadi gelin birlikte kodu inceleyelim.⇓

#include <iostream> // cout,cin vs. için 
#include <conio.h> //getch(); fonksiyonu için
#include <fstream> // dosyalama işlemleri için 
#include <string> // string türü için 
#include <windows.h> //komut ekranına renk vermek için 
#include <clocale> // Türkçe karakter için
#include <iomanip> //setw() için eklenen kütüphane
#include <stdio.h>


using namespace std;
int main()
 {
 system("color 80"); //komut ekranını renklendiriyoruz
 setlocale(LC_ALL, "turkish"); //Türkçe karakter ekliyoruz
 
 int secim;
 string HastaAdi; //Değişkenleri tanımladık
 string HastaSoyadi; 
 int TcNo; 
 int Telefon;
 int KayitNo;
 int HastaYas; 
 string HastaCinsiyet; 
 char islem;
 int TC;
 
 
 string Tarih; 
 string DoktorAdi; 
 string Teshis; 
 string Ilac;
 string Saat;
 string Tahliller;
 double Ucret;
 
 char cevap; 
 
 do{
 cout<<"1- Hasta kayıt ekleme"<<endl; //Menümüz
 cout<<"2- Hasta kaydı düzeltme"<<endl; 
 cout<<"3- Hasta silme"<<endl;
 cout<<"4- Randevu alma"<<endl; 
 cout<<"5- Randevu silme"<<endl; 
 cout<<"6- Randevu güncelleme"<<endl; 
 cout<<"7- Hasta sorgulama"<<endl; 
 cout<<"8- Hasta listesi alma"<<endl; 
 cout<<"9- Hasta muayene kaydı"<<endl; 
 cout<<"Yapmak istediginiz islemi seciniz:"<<endl;
 cin>>secim;
 
 switch(secim) //Seçim yapıyoruz
 {
 case 1:
 {
 
 cout<<"1- Hasta kayıt ekleme"<<endl; //Menüden numara seçerken önce kayıt ekleme yapıyoruz
 
 ofstream DosyaYaz; 
 DosyaYaz.open("Hasta.txt",ios::app); 
 do 
 { 
 cout<<"\n Hasta TC :"; cin>>TC; 
 cout<<"\n Hasta Adi :"; cin>>HastaAdi; 
 cout<<"\n Hasta Soyadi :"; cin>>HastaSoyadi; 
 cout<<"\n Hasta Yasi :"; cin>>HastaYas; 
 cout<<"\n Telefonu :"; cin>>Telefon; 
 cout<<"\n Cinsiyeti :"; cin>>HastaCinsiyet; 
 
 DosyaYaz<<TC<<" "<<HastaAdi<<' '<<HastaSoyadi<<' ' <<HastaYas<<' '<<Telefon<<' ' <<HastaCinsiyet<<endl; 
 cout<<"\n Baska kayit yapacak misiniz?(e/E) (h/H) ";cin>>cevap; 
 
 }while(cevap=='e' || cevap=='E'); 
 
 DosyaYaz.close(); 
 cout<< "Dosyaya yazim tamamlandi."<<endl; 
 
 break;
 }
 case 2:
 { 
 cout<<"2- Hasta kaydı düzeltme"<<endl;
 ifstream DosyaOku;
 DosyaOku.open("Hasta.txt",ios::app);
 cout<< "\n Hasta Bilgileri \n"; 
 cout<<"TC no :";
 cin>>TcNo;
 if(TC==TcNo) 
 { 
 DosyaOku.close(); 
 ofstream DosyaYaz; 
 DosyaYaz.open("Hasta.txt",ios::app); 
 cout<<"\n Hasta Adi :"; cin>>HastaAdi; 
 cout<<"\n Hasta Soyadi :"; cin>>HastaSoyadi; 
 cout<<"\n Hasta Yasi :"; cin>>HastaYas; 
 cout<<"\n Telefonu :"; cin>>Telefon; 
 cout<<"\n Cinsiyeti :"; cin>>HastaCinsiyet; 
 
 DosyaYaz.close(); 
 }
 else 
 cout<<"Kimlik Numarası bulunamadı"<<endl;
 break;
 } 
 case 3:
 /*{
 cout<<"3- Hasta silme"<<endl;
 ifstream DosyaOku;
 DosyaOku.open("Hasta.txt");
 cout<<"TC no:";
 cin>>TcNo;
 if(TC==TcNo)
 {
 remove("Hasta.txt");
 } 
 break;
 }*/
 case 4:
 
 {
 cout<<"4- Randevu alma"<<endl;
 
 cout<<" Hasta TC :";cin>>TC; 
 
 ifstream DosyaOku("Hasta.txt"); 
 while(!DosyaOku.eof()) 
 { 
 DosyaOku>>TcNo>>HastaAdi>>HastaSoyadi>>HastaYas>>Telefon>>HastaCinsiyet; 
 cout<<endl;
 if(TC==TcNo) 
 { 
 cout<< "\n Hasta Bilgileri \n"; 
 cout<<"TC no :"<<TcNo<<endl; 
 cout<<"Adı :"<<HastaAdi<<endl; 
 cout<<"Soyadı :"<<HastaSoyadi<<endl; 
 cout<<"Yası :"<<HastaYas<<endl; 
 cout<<"Telefonu :"<<Telefon<<endl; 
 cout<<"Cinsiyeti:"<<HastaCinsiyet<<endl; 
 cout<<"Randevu istiyor mu? (e/h)"<<endl; 
 cin>>cevap; 
 
 if (cevap=='e'|| cevap=='E') 
 { 
 DosyaOku.close(); 
 ofstream DosyaYaz; 
 DosyaYaz.open("RandevuAl.txt",ios::app); 
 
 cout<<"\n Randevu Bilgileri \n"; 
 cout<<"\n Tarih :"; cin>>Tarih; 
 cout<<"\n Doktor Adi :"; cin>>DoktorAdi; 
 cout<<"\n Teshis :"; cin>>Teshis; 
 cout<<"\n Muayene Ucreti :"; cin>>Ucret; 
 
 DosyaYaz <<TcNo<<" "<<Tarih<<' '<<DoktorAdi<<' ' <<Teshis<<' '<<Ucret<<"\n";
 DosyaYaz.close(); 
 }
 }
 }
 break;
 }
 
 case 5:
 /*{
 cout<<"5- Randevu silme"<<endl;
 break;
 }*/
 case 6:
 {
 cout<<"6- Randevu güncelleme"<<endl;
 
 
 ifstream DosyaOku("Hasta.txt",ios::in); 
 cout<<"TC no:";
 cin>>TcNo;
 if(TC==TcNo)
 { 
 cout<< "\n Hasta Bilgileri \n"; 
 cout<<"TC no :"<<TcNo<<endl; 
 cout<<"Adı :"<<HastaAdi<<endl; 
 cout<<"Soyadı :"<<HastaSoyadi<<endl; 
 cout<<"Yaşı :"<<HastaYas<<endl; 
 cout<<"Telefonu :"<<Telefon<<endl; 
 cout<<"Cinsiyeti:"<<HastaCinsiyet<<endl; 
 
 ofstream DosyaYaz;
 DosyaYaz.open("Muayene.txt",ios::app);
 { 
 cout<<"\n Randevu Bilgileri \n"; 
 cout<<"\n Tarih :"; cin>>Tarih; 
 cout<<"\n Doktor Adi :"; cin>>DoktorAdi; 
 cout<<"\n Teshis :"; cin>>Teshis; 
 cout<<"\n Muayene Ucreti :"; cin>>Ucret; 
 
 DosyaYaz.close();
 ofstream DosyaYaz;
 }
 DosyaOku.close(); 
 ifstream DosyaOku; 
 
 }
 else
 cout<<"Böyle bir kişi bulunmamaktadır.";
 
 break;
 }
 case 7: 
 { 
 cout<<"7- Hasta sorgulama"<<endl;
 
 cout<<" Hasta TC :";cin>>TC; 
 ifstream DosyaOku("Hasta.txt"); 
 while(!DosyaOku.eof()) 
 { 
 DosyaOku>>TcNo>>HastaAdi>>HastaSoyadi>>HastaYas>>Telefon>>HastaCinsiyet; 
 if(TC==TcNo) 
 { 
 cout<< "\n Hasta Bilgileri \n"; 
 cout<<"TC no :"<<TcNo<<endl; 
 cout<<"Adı :"<<HastaAdi<<endl; 
 cout<<"Soyadı :"<<HastaSoyadi<<endl; 
 cout<<"Yaşı :"<<HastaYas<<endl; 
 cout<<"Telefonu :"<<Telefon<<endl; 
 cout<<"Cinsiyeti:"<<HastaCinsiyet<<endl; 
 TC=TcNo; 
 
 DosyaOku.close(); 
 ofstream DosyaYaz; 
 DosyaOku.open("Muayene.txt",ios::in); 
 cout<<" randevu bilgileri \n"<<endl; cout<<setw(11)<<" TC "<<setw(10)<<" Tarih "<<setw(12)<<" Doktor Adi "<<setw(10)<<" Teshis "<<setw(6)<<" Ucret"<<endl; 
 while(!DosyaOku.eof()) 
 { 
 
 DosyaOku>>TcNo>>Tarih>>DoktorAdi>>Teshis>>Ucret; 
 
 if(TC==TcNo) 
 { 
 cout<<setw(11)<< TcNo<<setw(10)<<Tarih<<setw(12)<< DoktorAdi<<setw(10)<< Teshis<<setw(6)<< Ucret<<endl; 
 } 
 } 
 DosyaYaz.close();
 

 } 
 } 
 

 break;
 }
 case 8:
 {
 cout<<"8- Hasta listesi alma"<<endl;
 ifstream DosyaOku;
 DosyaOku.open("Hasta.txt",ios::in);
 
 while(!DosyaOku.eof()) 
 { 
 DosyaOku>>TcNo>>HastaAdi>>HastaSoyadi>>HastaYas>>Telefon>>HastaCinsiyet; 
 cout<<"\n Hasta Bilgileri \n"; 
 cout<<"TC no :"<<TcNo<<endl; 
 cout<<"Adı :"<<HastaAdi<<endl; 
 cout<<"Soyadı :"<<HastaSoyadi<<endl; 
 cout<<"Yaşı :"<<HastaYas<<endl; 
 cout<<"Telefonu :"<<Telefon<<endl; 
 cout<<"Cinsiyeti:"<<HastaCinsiyet<<endl; 
 
 DosyaOku.close();
 }
 break;
 }
 
 case 9: 
 {
 cout<<"9- Hasta muayene kaydı"<<endl;
 ifstream DosyaOku;
 DosyaOku.open("Hasta.txt",ios::in);
 
 
 { 
 
 do{
 if(DosyaOku.eof()) break;
 else
 DosyaOku>>TcNo>>DoktorAdi>>Teshis>>Tahliller>>Ilac; 
 cout<<"\n Hasta Bilgileri \n"; 
 cout<<"\n Doktor Adı :"<<DoktorAdi; 
 cout<<"\n Teşhis:"<<Teshis;
 cout<<"\n Tahlil Bilgileri :"<<Tahliller; 
 cout<<"\n İlaç :"<<Ilac; 
 }while(true);
 
 
 do{
 if(DosyaOku.eof()) break; 
 
 else
 
 DosyaOku>>TcNo>>HastaAdi>>HastaSoyadi>>HastaYas>>Telefon>>HastaCinsiyet; 
 cout<<"\n Hasta Bilgileri \n"; 
 cout<<"TC no :"<<TcNo<<endl; 
 cout<<"Adı :"<<HastaAdi<<endl; 
 cout<<"Soyadı :"<<HastaSoyadi<<endl; 
 cout<<"Yaşı :"<<HastaYas<<endl; 
 cout<<"Telefonu :"<<Telefon<<endl; 
 cout<<"Cinsiyeti:"<<HastaCinsiyet<<endl; 
 
 }while(true);
 
 
 ofstream DosyaYaz;
 DosyaYaz.open("Randevu.txt",ios::app);
 DosyaYaz.close();
 }
 DosyaOku.close();
 
 break;
 }
 }
 
 
 cout<<"İslem yapmaya devam etmek istiyor musunuz? (e/E) (h/H)";
 cin>>islem;
 }while(islem=='e' || islem=='E'); //İşlemi yaptıktan sonra karşımıza tekrar menü
 cout<<endl; //çıkmasını sağlıyor
 getch(); 
 
 }

3 Comments on “C++ Hastane Otomasyonu”

  1. Teşekkür ederiz çok yardımcı oldu ama bir kaç hata var dosyalama işlemlerinde ve tanımlamalarda.
    TC ve telefon numarasını double ile tanımlamazsanız çalışmaz sonsuz döngüye girer ve parantezleride düzeltmek gerekiyor 🙂

    Liked by 1 kişi

    • 2013’te kendisini ödev olarak teslim ettiğim zamanlarda çalışıyordu. Aslında blogta paylaştığım her kod bundan yıllar önce çalışıyordu tabii ki çalışmayan hiçbir şeyi buraya koymadım fakat bu işlerin de cilvesi bu galiba. Bilgisayar mühendisliği okurken ben de internette paylaşılan kodları derlediğimde asla çalışmazlardı. Artık C ve türevleri ile uğraşmadığım için bunları devamlı kontrol edemiyorum fakat sizler aldığınız hataları ve çözümleri yorum olarak bırakırsanız çok memnun olurum. Teşekkürler

      Beğen

  2. merhaba benim staj ödevim var ama bu dersi uzaktan eğitim ile hiç anlıyamadım ve sizin attiginiz kod tam işimi görücek ama hata veriyor.

    Beğen

Bir Cevap Yazın

Aşağıya bilgilerinizi girin veya oturum açmak için bir simgeye tıklayın:

WordPress.com Logosu

WordPress.com hesabınızı kullanarak yorum yapıyorsunuz. Çıkış  Yap /  Değiştir )

Google fotoğrafı

Google hesabınızı kullanarak yorum yapıyorsunuz. Çıkış  Yap /  Değiştir )

Twitter resmi

Twitter hesabınızı kullanarak yorum yapıyorsunuz. Çıkış  Yap /  Değiştir )

Facebook fotoğrafı

Facebook hesabınızı kullanarak yorum yapıyorsunuz. Çıkış  Yap /  Değiştir )

Connecting to %s

This site uses Akismet to reduce spam. Learn how your comment data is processed.

<span>%d</span> blogcu bunu beğendi: