Salve ragazzi,
Ho un problema con questo programma.
Il programma deve inserire un tot di libri all'interno di uno scaffale(per semplicità ho supposto 4libri) e se inserisco un libro con lo stesso titolo di uno di quelli presenti mi da errore, dicendomi che è già presente.
Il problema è che mi confronta il titolo che aggiungo solo con il primo titolo aggiunto e non con tutti i titoli presenti sul mio file.
Per favore aiutatemi, perchè non so più dove sbattere la testa!
codice:#include <iostream> #include <fstream> #include <stdio.h> using namespace std; int nuovo (); class libro { public: string titolo=""; string autore=""; }; int main () { int scelta; do { cout« "1.Inserisci: "; cout« "Operazione da eseguire:"; cin»scelta; switch (scelta) { case 1: nuovo(); break; } system ("PAUSE"); } while(scelta!=2); } int nuovo () { ofstream salva; salva.open("Libreria.txt", ios::app); libro l; for (int i=0;i<3;i++) { ifstream leggi; leggi.open("Libreria.txt"); leggi»l.titolo; leggi»l.autore; string nuovo=""; cout«"Titolo: " « endl; cin»nuovo; if(nuovo!=l.titolo) { cout«"Autore: " « endl; cin»l.autore; l.titolo=nuovo; salva«l.titolo«endl; salva«l.autore«endl; } else { cout«"Errore!"«endl; return 0; } leggi.close(); } salva.close(); return 0; }