Program FAKTURA

0

Witam.
Jestem w I liceum, przygodę z programowaniem zaczęłam dopiero we wrześniu, więc z góry przepraszam za, najprawdopodobniej, banalne pytanie.

Otóż moim zadaniem jest napisać program składający się z kilku procedur: wpisywanie danych, wyświetlanie danych, faktura.
Stworzyłam swoją strukturę, wprowadzam dane (nazwa produktu, cena, ilość), z wyświetleniem nie mam problemu. Problem pojawia się, gdy mam napisać część odpowiedzialną za procedurę faktura. Robię, żeby wpisać nazwę produktu (taką, jaką podano we 'wpisywaniu'), ilość, jaka ma być na fakturze no i właśnie, tu zaczyna się największy problem: jak napisać tę część, żeby pobierał tylko linię odpowiedzialną za ten jeden produkt i na fakturze go wyświetlał, a nie wszystkie, jakie są wpisane do programu.

void faktura()
{string nazwa;
float cena;
int ilosc;
     cout<<"NAZWA PRODUKTU: "<<endl;
cin>>nazwa;
cout<<"ILOSC DO SPRZEDAZY: "<<endl;
cin>>ilosc;
     
     string linia;
    ifstream plik;
    plik.open("magazyn.txt", ios::in);
    while(!plik.eof())
    {Ttowar towar;
    plik>>towar.nazwa;
    plik>>towar.cena;
    getline(plik, linia);
    
    cena=ilosc*towar.cena;
    cout<<nazwa<<cena<<endl;}
     

To jest to do czego doszłam. Jeżeli produkt był wpisany jako trzeci, a tylko ten potrzebuję, i tak wszystkie się wyświetlają.

0
  1. Naucz się formatować kod jak człowiek!
int i=0;
Ttowar towar;
while(!plik.eof() && i<3)
    plik>>towar.nazwa;
    plik>>towar.cena;
    getline(plik, linia);
    i++;
}
cena=ilosc*towar.cena;
cout<<nazwa<<cena<<endl;}

1 użytkowników online, w tym zalogowanych: 0, gości: 1