Bankomat ma 4 klientów. Klient loguje się na swoje konto, jego konto np. ma numer 3, czyli ma dostęp do 9,10 i 11 linii. W 11 linii jest stan konta i gdy klient wpłaci coś na konto to chciałbym aby wartość 11linii zwiększyła się, np. klient ma na początku w banku 9999 i wpłaca 200, i w tedy w 11linii 9999 zamienia się na 1199. Jak to zrobić?
#include <iostream>
#include <fstream>
#include <stdlib.h>
#include <conio.h>
using namespace std;
string tlogin[4], thaslo[4];
int tna_start[4];
fstream plik;
string login, haslo, na_start;
class Bankomat
{
public:
void nowy_klient()
{
cout << "Podaj login: ";
cin >> login;
cout << "Podaj haslo: ";
cin >> haslo;
cout << "Ile wplacasz na start: ";
cin >> na_start;
plik.open("klienci.txt", ios::out | ios::app);
plik << login << endl;
plik << haslo << endl;
plik << na_start << endl << endl;
plik.close();
}
void pokaz_klientow()
{
int id_klienta = 0;
plik.open("klienci.txt", ios::in);
if(plik.good() == false)
{
cout << "Blad odczytu pliku";
exit(0);
}
string linia;
int nr_linii = 1;
while(getline(plik, linia))
{
switch(nr_linii)
{
case 1: tlogin[id_klienta] = linia; break;
case 2: thaslo[id_klienta] = linia; break;
case 3: tna_start[id_klienta] = atoi(linia.c_str()); break;
}
if(nr_linii == 3)
{
nr_linii = -1;
id_klienta++;
}
nr_linii++;
}
for(int i = 0; i < 4; i++)
{
cout << tlogin[i] << endl;
}
}
};
int logowanie(int srodki_na_koncie)
{
int id_klienta = 0;
plik.open("klienci.txt", ios::in);
if(plik.good() == false)
{
cout << "Blad odczytu pliku";
exit(0);
}
string linia;
int nr_linii = 1;
while(getline(plik, linia))
{
switch(nr_linii)
{
case 1: tlogin[id_klienta] = linia; break;
case 2: thaslo[id_klienta] = linia; break;
case 3: tna_start[id_klienta] = atoi(linia.c_str()); break;
}
if(nr_linii == 3)
{
nr_linii = -1;
id_klienta++;
}
nr_linii++;
}
cout << "Podaj login: ";
cin >> login;
cout << "Podaj haslo: ";
cin >> haslo;
for(int i = 0; i < 4; i++)
{
if(login == tlogin[i] && haslo == thaslo[i])
{
system("cls");
cout << "Witaj!: " << login;
srodki_na_koncie = tna_start[i];
cout << endl << endl << endl << "Nacisnij dowolny klawisz aby kontynuowac...";
getch();
system("cls");
return srodki_na_koncie;
}
}
}
void konto()
{
int wybor, srodki_na_koncie, wplac;
srodki_na_koncie = logowanie(srodki_na_koncie);
while(true)
{
cout << "Witaj w naszym banku!" << endl << endl;
cout << "1. Sprawdz stan konta" << endl;
cout << "2. Wplac na konto" << endl;
cout << "3. Wyplac z konta ";
cout << endl << endl << "Wybor: ";
cin >> wybor;
if(wybor == 1)
{
system("cls");
cout << "Srodki na koncie: " << srodki_na_koncie;
getch();
system("cls");
}
if(wybor == 2)
{
system("cls");
cout << "Ile chcesz wplacic na konto: ";
cin >> wplac;
plik.open("klienci.txt", ios::out);
}
}
}
int main()
{
int wybor;
Bankomat bankomat;
cout << "== BANKOMAT ==";
cout << endl << endl;
cout << "1. Zaloz nowe konto" << endl;
cout << "2. Pokaz klientow banku" << endl;
cout << "3. Zaloguj sie" << endl;
cout << endl << "Wybor: ";
cin >> wybor;
if(wybor == 1)
{
bankomat.nowy_klient();
}
else if(wybor == 2)
{
bankomat.pokaz_klientow();
}
else if(wybor == 3)
{
konto();
}
return 0;
}