Visualizzazione dei risultati da 1 a 4 su 4
  1. #1
    Utente di HTML.it
    Registrato dal
    May 2003
    Messaggi
    10

    [C] scambio righe colonne di un file di testo

    Non sono un esperto e ho un problema:
    devo creare un programma in C che mi apre un file di testo .txt, che in sostanza è una matrice numerica di 7100 righe circa per 49 colonne.
    Successivamente dovrei riuscire a creare un nuovo file con le righe e le colonne scambiate (la prima riga diventerebbe la prima colonna, la seconda riga la seconda colonna e così via)... se mi deste una mano ne sarei felice...
    grazie dell'aiuto!!!

  2. #2

    Re: [C] scambio righe colonne di un file di testo

    Originariamente inviato da Fude
    Non sono un esperto e ho un problema:
    devo creare un programma in C che mi apre un file di testo .txt, che in sostanza è una matrice numerica di 7100 righe circa per 49 colonne.
    Successivamente dovrei riuscire a creare un nuovo file con le righe e le colonne scambiate (la prima riga diventerebbe la prima colonna, la seconda riga la seconda colonna e così via)... se mi deste una mano ne sarei felice...
    grazie dell'aiuto!!!
    Una cosa che potresti fare sarebbe quella di crearti una matrice di interi di 7100 righe e 49 colonne in cui inserire i numeri.
    Successivamente fai una semplice oeprazione di trasposizione della matrice, come si insegna a matematica .

    Altri metodi potrebbero essere piu complicati e di complessità algoritmica anche maggiore

  3. #3
    Utente di HTML.it
    Registrato dal
    May 2003
    Messaggi
    10
    Ok... per l'operazione matematica non ci sono problemi... questo lo so fare!!!

    Il problema è riuscire a leggere il file in ingresso, che è fatto più o meno così:
    0.01234567 0.98765432 2.34567890
    1.987654321 2.987654321 0.54637281
    ecc...

    ...e poi fargli riconoscere tutti i valori della prima riga e trasformarli nella prima colonna, e avanti così fino alla fine!!!

  4. #4
    Originariamente inviato da Fude
    Ok... per l'operazione matematica non ci sono problemi... questo lo so fare!!!

    Il problema è riuscire a leggere il file in ingresso, che è fatto più o meno così:
    0.01234567 0.98765432 2.34567890
    1.987654321 2.987654321 0.54637281
    ecc...

    ...e poi fargli riconoscere tutti i valori della prima riga e trasformarli nella prima colonna, e avanti così fino alla fine!!!
    se i numeri sono quelli che hai scritto allora ti devi creare una matrice di float o double.
    Per leggerli da file puoi usare la fgets() per leggere una riga del file e poi con la strtok() (usando come delimitatore lo spazio) ti prendi ognuno dei numeri della riga(nel tuo caso dovrebbero essere 3) e poi ci fai la conversione con la atof() o atod().
    Per quanto riguarda le funzioni guardati come funzionano, sono molto semplici.

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2024 vBulletin Solutions, Inc. All rights reserved.