Próbuje napisać program, w którym otwieram plik tekstowy(tworzę go sam) w którym mam w jednej linii podane imię,nazwisko,wiek,skuteczność. Jeśli imię ma więcej niż 3 litery, nazwisko kończy się na ski oraz ta osoba ma największą skuteczność to jej dane mam wpisać do nowego pliku. Mam problem jak w pliku posortować skuteczność. I w tym pliku nazwisko ma się zmienić na taki zapis: "Kowalski" => "K****ski" - pierwsza i 3 ostatnie litery zostają a w miejsce innych zostają wpisane *.
Na razie tyle stworzyłem:
#include <iostream>
#include <fstream>
#include <string>
using namespace std;
int main()
{
ifstream plik;
plik.open("C:\\plik\\pliczek.txt");
string imie;
string nazwisko;
float skutecznosc;
if(plik.good())
{
cout << "Udalo sie utworzyc plik" << endl;
}
else
{
cout << "Plik nie zostal otworzony" << endl;
}
while(!plik.eof())
{
for(int i = 0; i < !plik.eof() ; ++i)
{
plik >> imie >> nazwisko >> skutecznosc;
if((imie.length() > 3) && (nazwisko.substr(nazwisko.length() - 4,nazwisko.length() - 1) == "ski"))
{
}
}
}
return 0;
}