+1
reyiz bir baksanıza, doğru mu lan bu, ekgib varsa söyleyin bir zahmet.
endüstriciym amk bu kadar oluyo
// siniflar ile ilgili ornek
1.
include <fstream>
2.
include <iostream>
3.
include <stdlib.h>
int secim;
int hatakontrol();
class liste
{
protected:
char isim[80];
int yas;
public:
void ekle_liste();
void yazdir_liste();
};
void liste::ekle_liste()
{
cout <<"n ismini girin"; cin >>isim;
cout <<"n yasini girin"; cin >>yas;
}
void liste::yazdir_liste()
{
cout <<"n isim :" << isim;
cout <<"n yas :" << yas;
}
void main()
{
int ogrsayi,i;
liste end,mak;
fstream dosyaend, dosyamak;
//in dosyadan verı okuma ıcın kullanılıyor
//out dosya ya verı yazma icin kullanılıyor
// app dosyaya verı ekleme ıcın kullanılıyor
dosyaend. open("endustri.dat",ios::app|ios::out|ios::in |ios::binary);
dosyamak. open("makina.dat", ios::app|ios::out|ios::in |ios::binary);
cout<<"n hangi bolum ogrencilerinin kaydini girmek istiyorsunuzn";
cout<<"end=1 mak=2 seciniz ";
hatakontrol();
switch(secim)
{
case 1: cout<<"nend muh bol ogrenci sayisini giriniz :";
cin>>ogrsayi;
for(i=0; i<ogrsayi; i++) {
end. ekle_liste();
dosyaend. write(reinterpret_cast<char*>(&end), sizeof(end));
}
dosyaend. seekg(0);
cout << "nn kayitli ogrenciler ";
dosyaend. read(reinterpret_cast<char*>(&end), sizeof(end));
while (!dosyaend.eof() )
{
cout<<"n";
end. yazdir_liste();
dosyaend. read(reinterpret_cast<char*>(&end), sizeof(end));
}
dosyaend. close();
cout <<endl;
break;
case 2: cout<<"n mak muh. ogrenci sayisini giriniz ";
cin>>ogrsayi;
for(i=0; i<ogrsayi; i++) {
mak. ekle_liste();
dosyamak. write(reinterpret_cast<char*>(&mak), sizeof(mak));
}
dosyamak. seekg(0);
cout << "n kayitli ogrenciler ";
dosyamak. read(reinterpret_cast<char*>(&mak), sizeof(mak));
while (!dosyamak.eof() )
{
cout<<"n";
mak. yazdir_liste();
dosyamak. read(reinterpret_cast<char*>(&mak), sizeof(mak));
}
dosyamak. close();
cout <<endl;
break;
}
system ("pause");
}
int hatakontrol()
{
while (true)
{
cin >> secim;
if ( secim !=1 && secim !=2 )
{ cout << "nn yanlis girdiniz sayilar 1 veya 2 olmali ";
cin. clear(ios::failbit); }
if ( cin. good() ) // rakam girilmemesi durumu
{ cin. ignore(10,'n');
break;
}
cin. clear();
cin. ignore(10,'n');
cout <<"n yanlis girdiniz tekrar giriniz n";
}
}
Tümünü Göster