Napisać funkcje emerytura(char nazwaPliku[]), która wczyta z pliku o podanej nazwie dane pracowników zapisane w kolejnych wierszach w następujący sposób: Imie Nazwisko Plec Wiek Przykład: Tomasz Nowak M 45 Marta Ziobro K 42 Jan Kowalski M 27 Ewelina Tusk K 59 Następnie funkcja dla każdego pracownika powinna wyznaczyć ile lat pozostało do jego emerytury. Wyniki należy zapisać w następujący sposób: Nazwisko Imie ”Lata do emerytury” Przykład: Nowak Tomasz 20 Kowalski Jan 38 Wyniki dla kobiet należy zapisać w pliku o nazwie „kobiety.txt”, natomiast wyniki dla mężczyzn należy zapisać w pliku „mezczyzni.txt”.
#include <iostream> #include <fstream>
using namespace std;
void emerytura(char nazwaPliku[]);
int main() { emerytura("zad3plik.txt");
cin.get(); return 0; }
void emerytura(char nazwaPliku[]) { string imie, nazwisko; char plec; int wiek,ilosc; ifstream plik1; ofstream mezczyzni, kobiety; plik1.open(nazwaPliku); mezczyzni.open("mezczyzni.txt"); kobiety.open("kobiety.txt");
if(plik1.is_open()) { while(plik1>>imie>>nazwisko>>plec>>wiek) { if('M'==plec && wiek<65) { ilosc=65-wiek; cout<<nazwisko<<" "<<imie<<" "<<ilosc<<endl; mezczyzni<<nazwisko<<" "<<imie<<" "<<ilosc<<endl; } if('K'==plec && wiek<60) { ilosc=60-wiek; cout<<nazwisko<<" "<<imie<<" "<<ilosc<<endl; kobiety<<nazwisko<<" "<<imie<<" "<<ilosc<<endl; } } } else cout<<"Blad podczas otwierania pliku. Aplikacja zakonczy dzialanie."<<endl;
plik1.close(); mezczyzni.close(); kobiety.close(); }
|