Torna indietro   Hardware Upgrade Forum > Software > Programmazione

Mad Catz M.M.O. 7+: lo stesso DNA del R.A.T. 8+ ADV, ma con molti più pulsanti
Mad Catz M.M.O. 7+: lo stesso DNA del R.A.T. 8+ ADV, ma con molti più pulsanti
Con 22 tasti, il pulsante 5D, lo Shift Mode e il sensore PixArt 3395 da 26.000 DPI, il nuovo mouse wireless di Mad Catz si rivolge in modo preciso ai giocatori di MMO e RPG. Ma chi conosce già il R.A.T. 8+ ADV si accorgerà subito di quanto i due prodotti condividano, e di dove invece divergono
Radeon RX 9070 GRE, AMD la porta in tutto il mondo | Recensione Gigabyte Gaming OC
Radeon RX 9070 GRE, AMD la porta in tutto il mondo | Recensione Gigabyte Gaming OC
Abbiamo provato la Gigabyte Radeon RX 9070 GRE Gaming OC, nuova proposta RDNA 4 che si inserisce tra GeForce RTX 5060 Ti e RTX 5070. Prestazioni solide in rasterizzazione e ray tracing, frequenze elevate grazie all'overclock di fabbrica e raffreddamento efficace: ecco come si comporta nei nostri test.
Reolink OMVI 3i WiFi: videosorveglianza più intelligente e facile da usare
Reolink OMVI 3i WiFi: videosorveglianza più intelligente e facile da usare
Con tripla lente, tracking sincronizzato, visione notturna a colori e controllo locale senza abbonamenti, la OMVI 3i WiFi porta la sicurezza domestica a un livello molto più moderno, ma senza trasformarla in un sistema complicato da installare o usare
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 10-02-2013, 15:34   #1
Stek78
Junior Member
 
Iscritto dal: Jun 2011
Messaggi: 25
[C/C++]Errore caricamento in matrice da file

Salve a tutti,
vi scrivo perché sto incontrando un problema nel caricamento di una matrice nrighe X 2 da un file di testo.
In pratica nel mio file ci sono numeri del genere:
103
520 2214
238 3031
3116 3437
4228 4848
4837 50

ma al momento del caricamento in matrice li carica in modo sbagliato, così:
10
3 5
20 22
14 23
8 30
31 31
16 34
37 42
28 48
48 48
37 50
naturalmente mi scombina tutto e mi restituisce un risultato sbagliato.
Mi potreste dare una mano a capire cos'è che mi da' questo problema?
Grazie
Stek78 è offline   Rispondi citando il messaggio o parte di esso
Old 10-02-2013, 15:45   #2
The_ouroboros
Senior Member
 
L'Avatar di The_ouroboros
 
Iscritto dal: May 2007
Città: Milano
Messaggi: 7103
Senza codice è un po come capire cos'è il rosso per un cieco
__________________
Apple Watch Ultra + iPhone 15 Pro Max + Rog Ally + Legion Go
The_ouroboros è offline   Rispondi citando il messaggio o parte di esso
Old 10-02-2013, 22:34   #3
Stek78
Junior Member
 
Iscritto dal: Jun 2011
Messaggi: 25
Giusto!
Ecco il codice della fase di caricamento!
Codice:
unsigned int missioni[NRIGHE][2],arrayi[NRIGHE],nr=0,i=0,j=0,somma=0,tmp;
    int maxgio=-100,num=0;
    bool trovato=false,fine=false;
    
    FILE *fin,*fout;
    
    fin=fopen("input.txt","r");
    fout=fopen("output.txt","w");
    
    fscanf(fin,"%u",&nr);
    
    for(i=0;i<nr;i++){
                      
          for(j=0;j<2;j++){
                           
                fscanf(fin,"%u",&missioni[i][j]);  
                if(missioni[i][j]!=0){
                     num++;               
                }        
          }
       
    }
Stek78 è offline   Rispondi citando il messaggio o parte di esso
Old 11-02-2013, 04:43   #4
sottovento
Senior Member
 
L'Avatar di sottovento
 
Iscritto dal: Nov 2005
Città: Texas
Messaggi: 1722
Per curiosita' l'ho fatto girare e mi legge correttamente tutti i dati.
Ce l'hai detta proprio tutta? Scusa, intendevo dire: il file input.txt e' un file di testo? Non e' che l'estensione e' sbagliata e i dati sono in altro formato...
__________________
In God we trust; all others bring data
sottovento è offline   Rispondi citando il messaggio o parte di esso
Old 11-02-2013, 10:33   #5
Stek78
Junior Member
 
Iscritto dal: Jun 2011
Messaggi: 25
Strano che ti funzioni!
Mi sta facendo uscire matto questo codice!
E' un file di testo .txt, altrimenti neanche lo leggeva...!
Stek78 è offline   Rispondi citando il messaggio o parte di esso
Old 11-02-2013, 10:53   #6
Stek78
Junior Member
 
Iscritto dal: Jun 2011
Messaggi: 25
Compilo con Dev C++!
Perchè?
Stek78 è offline   Rispondi citando il messaggio o parte di esso
Old 11-02-2013, 11:12   #7
sottovento
Senior Member
 
L'Avatar di sottovento
 
Iscritto dal: Nov 2005
Città: Texas
Messaggi: 1722
L'ho compilato con VS2005 (si, e' vecchio ma lo sono anch'io e per ora non mi hanno ancora buttato via). Funziona senza problemi.

Prova a pubblicare il file di testo completo, cosi' vediamo....
__________________
In God we trust; all others bring data
sottovento è offline   Rispondi citando il messaggio o parte di esso
Old 11-02-2013, 11:23   #8
Stek78
Junior Member
 
Iscritto dal: Jun 2011
Messaggi: 25
Quello nel primo post è il file di testo completo!
Stek78 è offline   Rispondi citando il messaggio o parte di esso
Old 11-02-2013, 11:28   #9
sottovento
Senior Member
 
L'Avatar di sottovento
 
Iscritto dal: Nov 2005
Città: Texas
Messaggi: 1722
Quote:
Originariamente inviato da Stek78 Guarda i messaggi
Quello nel primo post è il file di testo completo!
Scusa ma
Codice:
103
520 2214
238 3031
3116 3437
4228 4848
4837 50
non puo' essere il file completo, visto che il primo numero dice di leggere 103 coppie, ma ne conto solo 5. (Nel mio test ho modificato questo valore a mano)
__________________
In God we trust; all others bring data
sottovento è offline   Rispondi citando il messaggio o parte di esso
Old 11-02-2013, 11:37   #10
Stek78
Junior Member
 
Iscritto dal: Jun 2011
Messaggi: 25
Lo so' che può sembrar strano ma è un test datomi da fare e dice 103 righe quando poi ce ne sono solo 5(sta cosa non l'ho capita)infatti ho dovuto modificare il programma aggiungendo la variabile num che mi indica quanti numeri effettivamente ci sono...
Ma anche modificando quel parametro a me esce sbagliato il caricamento.
Boh.
Stek78 è offline   Rispondi citando il messaggio o parte di esso
Old 11-02-2013, 11:41   #11
sottovento
Senior Member
 
L'Avatar di sottovento
 
Iscritto dal: Nov 2005
Città: Texas
Messaggi: 1722
Quindi, se scrivi 5 al posto di 103, come dovrebbe effettivamente essere, ottieni lo stesso una sequenza sbagliata?
Perdona l'insistenza ma e' necessario verificare. Cosi' come e' necessario aggiungere i controlli
- sull'apertura del file (fin != NULL);
- sul numero di elementi che vai a leggere con la fscanf(), cosi' da essere sicuri che l'elemento e' stato letto. Siccome leggi un elemento alla volta, fscanf() ti deve ritornare 1. Altrimenti c'e' un errore.

Quote:
Originariamente inviato da Stek78 Guarda i messaggi
Lo so' che può sembrar strano ma è un test datomi da fare e dice 103 righe quando poi ce ne sono solo 5(sta cosa non l'ho capita)infatti ho dovuto modificare il programma aggiungendo la variabile num che mi indica quanti numeri effettivamente ci sono...
Ma anche modificando quel parametro a me esce sbagliato il caricamento.
Boh.
__________________
In God we trust; all others bring data
sottovento è offline   Rispondi citando il messaggio o parte di esso
Old 11-02-2013, 11:48   #12
Stek78
Junior Member
 
Iscritto dal: Jun 2011
Messaggi: 25
Quote:
Originariamente inviato da sottovento Guarda i messaggi
Quindi, se scrivi 5 al posto di 103, come dovrebbe effettivamente essere, ottieni lo stesso una sequenza sbagliata?

Quote:
Originariamente inviato da sottovento Guarda i messaggi
- sul numero di elementi che vai a leggere con la fscanf(), cosi' da essere sicuri che l'elemento e' stato letto. Siccome leggi un elemento alla volta, fscanf() ti deve ritornare 1. Altrimenti c'e' un errore.
Non ho capito cosa dovrei fare!Sorry!
Stek78 è offline   Rispondi citando il messaggio o parte di esso
Old 11-02-2013, 11:56   #13
sottovento
Senior Member
 
L'Avatar di sottovento
 
Iscritto dal: Nov 2005
Città: Texas
Messaggi: 1722
Quote:
Originariamente inviato da Stek78 Guarda i messaggi


Non ho capito cosa dovrei fare!Sorry!
Suggerivo di modificare leggermente il codice in modo da esser sicuri che le letture vadano a buon fine.
Insomma, c'e' qualcosa di strano se il tuo codice funziona sul mio computer e non sul tuo, pertanto devi cercare di ottenere piu' informazioni sull'errore.
Qui una libera interpretazione:

Codice:
unsigned int missioni[NRIGHE][2],arrayi[NRIGHE],nr=0,i=0,j=0,somma=0,tmp;
    int maxgio=-100,num=0;
    bool trovato=false,fine=false;
    int numReadItems;
    
    FILE *fin,*fout;
    
    fin=fopen("input.txt","r");
    if (fin == NULL)
    {
        perror ("Errore apertura input.txt. Errore:");
        return -1;
    }
//    fout=fopen("output.txt","w");
    
    numReadItems = fscanf(fin,"%u",&nr);
    if (numReadItems != 1)      // Deve ritornare 1 se tutto e' ok
    {
        printf ("Error reading tuple count\n");
        return -1;
    }
    
    for(i=0;i<nr;i++){
                      
          for(j=0;j<2;j++){
                           
                numReadItem = fscanf(fin,"%u",&missioni[i][j]);  
                if (numReadItem != 1)
                {
                    printf ("Error reading tuple [%d][%d]\n", i, j);
                    return -1;
                }

                if(missioni[i][j]!=0){
                     num++;               
                }        
          }
       
    }
__________________
In God we trust; all others bring data
sottovento è offline   Rispondi citando il messaggio o parte di esso
Old 11-02-2013, 12:36   #14
Stek78
Junior Member
 
Iscritto dal: Jun 2011
Messaggi: 25
Non mi restituisce nulla!
Stek78 è offline   Rispondi citando il messaggio o parte di esso
Old 11-02-2013, 12:39   #15
sottovento
Senior Member
 
L'Avatar di sottovento
 
Iscritto dal: Nov 2005
Città: Texas
Messaggi: 1722
Quote:
Originariamente inviato da Stek78 Guarda i messaggi
Non mi restituisce nulla!
Intendi che non vedi nessun errore e nonostante questo ottieni dei valori errati?
__________________
In God we trust; all others bring data
sottovento è offline   Rispondi citando il messaggio o parte di esso
Old 11-02-2013, 12:44   #16
sottovento
Senior Member
 
L'Avatar di sottovento
 
Iscritto dal: Nov 2005
Città: Texas
Messaggi: 1722
Senti, riesci a fare un attachment del tuo file di input?
Non sapendo cos'altro pensare, mi viene da verificare se ci siano dei caratteri "strani" (magari non printabili) nel file....
__________________
In God we trust; all others bring data
sottovento è offline   Rispondi citando il messaggio o parte di esso
Old 11-02-2013, 12:50   #17
Stek78
Junior Member
 
Iscritto dal: Jun 2011
Messaggi: 25
Sì non mi esce niente!
Allegati
File Type: txt input.txt (68 Bytes, 7 visite)

Ultima modifica di Stek78 : 11-02-2013 alle 12:54.
Stek78 è offline   Rispondi citando il messaggio o parte di esso
Old 11-02-2013, 13:22   #18
The_ouroboros
Senior Member
 
L'Avatar di The_ouroboros
 
Iscritto dal: May 2007
Città: Milano
Messaggi: 7103
__________________
Apple Watch Ultra + iPhone 15 Pro Max + Rog Ally + Legion Go
The_ouroboros è offline   Rispondi citando il messaggio o parte di esso
Old 11-02-2013, 13:25   #19
Stek78
Junior Member
 
Iscritto dal: Jun 2011
Messaggi: 25
Scusa la mia ignoranza, cosa significa?
Stek78 è offline   Rispondi citando il messaggio o parte di esso
Old 11-02-2013, 13:26   #20
The_ouroboros
Senior Member
 
L'Avatar di The_ouroboros
 
Iscritto dal: May 2007
Città: Milano
Messaggi: 7103
ho aperto il tuo file in vi e mi da quegli ^M
__________________
Apple Watch Ultra + iPhone 15 Pro Max + Rog Ally + Legion Go
The_ouroboros è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


Mad Catz M.M.O. 7+: lo stesso DNA del R.A.T. 8+ ADV, ma con molti più pulsanti Mad Catz M.M.O. 7+: lo stesso DNA del R.A.T. 8+ ...
Radeon RX 9070 GRE, AMD la porta in tutto il mondo | Recensione Gigabyte Gaming OC Radeon RX 9070 GRE, AMD la porta in tutto il mon...
Reolink OMVI 3i WiFi: videosorveglianza più intelligente e facile da usare Reolink OMVI 3i WiFi: videosorveglianza pi&ugrav...
Recensione Vivo X300 Ultra: fotocamera eccezionale, ma prezzo proibitivo Recensione Vivo X300 Ultra: fotocamera ecceziona...
Xiaomi 17T Pro recensione: zoom Leica 5x e batteria silicio-carbonio per l'alternativa ai top Xiaomi 17T Pro recensione: zoom Leica 5x e batte...
TRYX porta la personalizzazione a un nuo...
Designer di auto cinesi all'attacco di F...
Oltre 3.000 posti di lavoro a rischio: l...
Uber taglia il 23% del personale HR, ma ...
Amazon TOP 7 rinnovata: in posizione 2 u...
HTTP/2 Bomb: il nuovo attacco DoS che ab...
Assetto Corsa Evo v0.7: arrivano finalme...
2 portatili tuttofare Vivobook e Acer a ...
È stato acceso il più gran...
Mercato PC in crisi nera secondo IDC: ne...
Toyota a idrogeno liquido: il prototipo ...
Allarme ONU: entro il 2030 l'Intelligenz...
GoPro a rischio fallimento a causa dell'...
AMD sfida RTX Spark: Strix Halo e Gorgon...
I taxi a guida autonoma viaggiano vuoti ...
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: 12:02.


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