Torna indietro   Hardware Upgrade Forum > Software > Programmazione

Recensione REDMI Note 17 Pro: il midrange con batteria da 8.340 mAh e ricarica veloce
Recensione REDMI Note 17 Pro: il midrange con batteria da 8.340 mAh e ricarica veloce
REDMI Note 17 Pro porta in fascia media una batteria da 8.340 mAh con ricarica HyperCharge a 67W, un display AMOLED da 6,83 pollici capace di picchi di luminosità molto elevati e una struttura certificata TÜV SÜD contro cadute e infiltrazioni d'acqua, il tutto racchiuso in una scocca da 223 grammi. Lo abbiamo provato per diversi giorni tra fotocamera, prestazioni, autonomia e prezzo sul mercato italiano
Insta360 Luna Ultra: la potenza del sensore da 1 pollice incontra la portabilità estrema
Insta360 Luna Ultra: la potenza del sensore da 1 pollice incontra la portabilità estrema
Insta360 Luna Ultra integra un sensore da 1 pollice 8K, ottiche Leica e triplo chip IA. Tra schermo OLED rimovibile, workflow I-Log a 10 bit e stabilizzazione a tre assi, analizziamo le doti tecniche di una gimbal camera pensata per i professionisti
Marvel's Wolverine, la recensione: Logan torna protagonista in un'avventura brutale e intensa
Marvel's Wolverine, la recensione: Logan torna protagonista in un'avventura brutale e intensa
Marvel's Wolverine porta Logan in un'avventura inedita, violenta e fortemente narrativa, costruita attorno alla sua natura di combattente e al difficile rapporto con il proprio passato. Insomniac Games punta su combattimenti spettacolari, progressione e personalizzazione, inserendo l'azione in un mondo segnato dalla persecuzione dei mutanti. Un viaggio intenso, che alterna mattanza, esplorazione e momenti sorprendentemente emotivi.
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 19-01-2006, 21:50   #1
MaxGuevara
Member
 
Iscritto dal: Aug 2005
Messaggi: 86
[C++]Lettura da file

Ciao.
Ho un problema a leggere delle righe di testo da un file.
In pratica il programma C++ che ho in mente dovrebbe chiedere all'utente di digitare il numero di una matricola,cercare all'interno del file questo numero e se lo trova stamparmi a video il nome del proprietario.
Vi posto la parte del codice che fa questo:

Codice:
cout<<"Inserisci il numero di matricola:"<<endl;
cin>>matr;
if(!leggi)
      {
           cerr<<"Impossibile aprire il file!";
           return 1;
      }
for(unsigned int n=0;n<1024;++n)
      {
                                                        leggi>>lettura[n].nome>>lettura[n].cognome>>lettura[n].anno>>lettura[n].nascita>>lettura[n].recapito>>lettura[n].matricola>>lettura[n].email;
       }
                                                posizione_matricola=cerca_numero_matricola(lettura,matr);
if(posizione_matricola<0)
       {
           cout<<"\nNumero di matricola non presente";
           return 0;
           }
else 
        {
            cout<<"\nIl numero di matricola "<<matr<<" appartiene a "<<lettura[posizione_matricola].nome<<"                      "<<lettura[posizione_matricola].cognome;
          }
 leggi.close();
La funzione chiamata nello snippet sovrastante e' la seguente:
Codice:
int cerca_numero_matricola(info a[],unsigned int b)
{
      int indice;
      int i=0;
      for(i=0;i<1024;i++)
      {
                      if(a[i].matricola=b)
                      indice=i;
                      return indice;
      }   
}
Il mio problema e' che il programma riesce ad effettuare la ricerca e a stamparmi a video con successo solo i dati della prima riga,mentre la seconda non riesce a leggerla.
ESEMPIO:
Il programma legge da un file chiamato "Archivio.txt"
Il contenuto di Archivio.txt e':

Francesco Rossi 12345
Luca Verdi 67890

dove 12345 e 67890 sono i numeri di matricola.
Se io,una volta eseguito il programma,alla richiesta "Scrivi il numero di matricola"
scrivo 12345
mi appare:
Il numero di matricola 12345 appartiene a Francesco Rossi

E quindi e' tutto corretto,mentre se scrivo:

67890
mi risponde con:
Numero di matricola non esistente.

Spero di essere stato abbastanza chiaro.
Grazie in anticipo.
MaxGuevara è offline   Rispondi citando il messaggio o parte di esso
Old 19-01-2006, 22:00   #2
Qu@ker
Member
 
Iscritto dal: Apr 2004
Messaggi: 130
Quote:
Originariamente inviato da MaxGuevara
La funzione chiamata nello snippet sovrastante e' la seguente:
Codice:
int cerca_numero_matricola(info a[],unsigned int b)
{
      int indice;
      int i=0;
      for (i=0;i<1024;i++)
      {
                      if(a[i].matricola=b)
                      indice=i;
                      return indice;
      }   
}
Non mi pare corretta.
Codice:
int cerca_numero_matricola(info a[], unsigned int b)
{
        for(int i = 0; i < 1024; ++i) {
                if (a[i].matricola == b)
                        return i;
        }
        return -1;   
}
Qu@ker è offline   Rispondi citando il messaggio o parte di esso
Old 20-01-2006, 00:02   #3
MaxGuevara
Member
 
Iscritto dal: Aug 2005
Messaggi: 86
Ok,ho corretto ma continuo ad avere lo stesso problema...
MaxGuevara è offline   Rispondi citando il messaggio o parte di esso
Old 20-01-2006, 13:37   #4
Fenomeno85
Senior Member
 
L'Avatar di Fenomeno85
 
Iscritto dal: Jun 2002
Città: Provincia De VaRéSe ~ § ~ Lat.: 45° 51' 7" N Long.: 8° 50' 21" E ~§~ Magica Inter ~ § ~ Detto: A Chi Più Amiamo Meno Dire Sappiamo ~ § ~ ~ § ~ Hobby: Divertimento allo Stato Puro ~ § ~ ~ § ~ You Must Go Out ~ § ~
Messaggi: 8897
non vedo come leggi il file ... quando ripassi e non hai chiuso il file serve fare il rewind del puntatore ... quindi

in c

Codice:
rewind (fp);
in c++

Codice:
file.seekg (0, ios::end);
~§~ Sempre E Solo Lei ~§~
__________________
Meglio essere protagonisti della propria tragedia che spettatori della propria vita
Si dovrebbe pensare più a far bene che a stare bene: e così si finirebbe anche a star meglio.
Non preoccuparti solo di essere migliore dei tuoi contemporanei o dei tuoi predecessori.Cerca solo di essere migliore di te stesso
Fenomeno85 è offline   Rispondi citando il messaggio o parte di esso
Old 20-01-2006, 14:02   #5
MaxGuevara
Member
 
Iscritto dal: Aug 2005
Messaggi: 86
Quote:
Originariamente inviato da Fenomeno85
non vedo come leggi il file ... quando ripassi e non hai chiuso il file serve fare il rewind del puntatore ... quindi

in c

Codice:
rewind (fp);
in c++

Codice:
file.seekg (0, ios::end);
~§~ Sempre E Solo Lei ~§~

Per leggere il file avevo scritto:
Codice:
ifstream leggi("Archivio.txt");
Cosa intendi per "ripassi"?
MaxGuevara è offline   Rispondi citando il messaggio o parte di esso
Old 20-01-2006, 14:18   #6
Fenomeno85
Senior Member
 
L'Avatar di Fenomeno85
 
Iscritto dal: Jun 2002
Città: Provincia De VaRéSe ~ § ~ Lat.: 45° 51' 7" N Long.: 8° 50' 21" E ~§~ Magica Inter ~ § ~ Detto: A Chi Più Amiamo Meno Dire Sappiamo ~ § ~ ~ § ~ Hobby: Divertimento allo Stato Puro ~ § ~ ~ § ~ You Must Go Out ~ § ~
Messaggi: 8897
non so che cosa hai combinato

http://www.cplusplus.com/ref/iostream/ifstream/

~§~ Sempre E Solo Lei ~§~
__________________
Meglio essere protagonisti della propria tragedia che spettatori della propria vita
Si dovrebbe pensare più a far bene che a stare bene: e così si finirebbe anche a star meglio.
Non preoccuparti solo di essere migliore dei tuoi contemporanei o dei tuoi predecessori.Cerca solo di essere migliore di te stesso
Fenomeno85 è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


Recensione REDMI Note 17 Pro: il midrange con batteria da 8.340 mAh e ricarica veloce Recensione REDMI Note 17 Pro: il midrange con ba...
Insta360 Luna Ultra: la potenza del sensore da 1 pollice incontra la portabilità estrema Insta360 Luna Ultra: la potenza del sensore da 1...
Marvel's Wolverine, la recensione: Logan torna protagonista in un'avventura brutale e intensa Marvel's Wolverine, la recensione: Logan torna p...
DJI Romo 2: tante novità lo rendono un robot completo DJI Romo 2: tante novità lo rendono un ro...
Sony Bravia 9 II: il True RGB alla prova, dove l'LCD sfida l'OLED Sony Bravia 9 II: il True RGB alla prova, dove l...
La Camera USA presenta il conto: i data ...
Non solo EV, ma anche IA: Panasonic inau...
iPhone Duo, il debutto del pieghevole di...
Atlas 960E SuperPoD, la risposta di Huaw...
IA militare e nucleare: esperti USA e ci...
Dieci mini-reattori nucleari in Europa d...
CONTROL Resonant su PC: Path Tracing, Ra...
ColorOS 17 arriva su circa 90 dispositiv...
GTA VI, il multiplayer potrebbe debuttar...
Aggiornamento KB5002914 rompe Excel: ecc...
Processo Huawei a Brooklyn: l'FBI mostra...
WhatsApp introduce nuovi temi per le cha...
NVIDIA, Google e Emerald AI uniscono le ...
iPhone 18 Pro Max, il test sulla vapor c...
Fine estate in giardino: le proposte sco...
Chromium
GPU-Z
OCCT
LibreOffice Portable
Opera One Portable
Opera One 106
CCleaner Portable
CCleaner Standard
Cpu-Z
Driver NVIDIA GeForce 546.65 WHQL
SmartFTP
Trillian
Google Chrome Portable
Google Chrome 120
VirtualBox
Tutti gli articoli Tutte le news Tutti i download

Strumenti

Regole
Non Puoi aprire nuove discussioni
Non Puoi rispondere ai messaggi
Non Puoi allegare file
Non Puoi modificare i tuoi messaggi

Il codice vB è On
Le Faccine sono On
Il codice [IMG] è On
Il codice HTML è Off
Vai al Forum


Tutti gli orari sono GMT +1. Ora sono le: 03:25.


Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Served by www3v