Visualizzazione dei risultati da 1 a 3 su 3
  1. #1
    Utente di HTML.it
    Registrato dal
    Jun 2014
    residenza
    Sardegna
    Messaggi
    18

    [C] Prendere in input una stringa qualunque da file di testo

    Salve a tutti!

    Mi sto scornando con un programma che mi serve per "allenamento".

    Il problema è questo:

    Dati tre file di testo (uno per nomi maschili, uno per nomi femminili e uno per i cognomi), progettare un programma che crei una lista doppiamente concatenata di elementi che contengono nome, cognome, sesso ed età. Inoltre, in base all'input dell'utente, il programma deve scegliere tra il file contenente i nomi maschili o quelli femminili. Tutti i nomi e i cognomi devono essere randomizzati opportunamente.

    Il file di testo è fatto così:

    0\tNome1\n;
    1\tNome2\n;
    2\tNome3\n;
    ...
    (n-1)\tNome(n)\n;

    Date le specifiche io ho pensato a due variabili che randomizzo ogni qual volta che l'utente vuole inserire un elemento nella lista (una per i nomi e una per i cognomi), una variabile per l'età (che chiedo all'utente) e una per il sesso (che chiedo all'utente). Il problema sorge quando devo "scorrere" la lista dei nomi per far combaciare l'indice presente nei file di testo con quello che randomizzo io. Essenzialmente non capisco come scrivere un ciclo che, una volta che trova la corrispondenza "numero randomizzato == indice del file", prenda la stringa dal file e la trasferisca nella mia lista. Come faccio andare a capo l'ipotetico puntatore che sto usando per scorrere i nomi? Come carico, poi, la stringa del file in un'altra stringa?

    Scusate se sono stato poco chiaro, me ne rendo conto, ma è il massimo che sono riuscito a fare. E scusate anche se questa problematica è già stata trattata, ho cercato ma non ho trovato niente nel forum.
    Ultima modifica di alemutasa; 20-03-2015 a 17:03

  2. #2
    Utente di HTML.it L'avatar di Scara95
    Registrato dal
    Jul 2009
    residenza
    Zimella (VR)
    Messaggi
    2,590
    L'unico modo è leggere ogni volta riga per riga a partire dall'inizio. Per l'(n-1)_esimo nome dovrai effettuare n letture.
    L'altro modo più semplice è che all'inizio crei 3 array contenenti i nomi maschili, femminili e i cognomi. Quindi semplicemente indicizzi uno degli array. Più semplice e più efficiente prestazionalmente, non per quanto riguarda il consumo di memoria ovviamente.
    "Quid enim est, quod contra vim sine vi fieri possit?" - Cicerone, Ad Familiares

  3. #3
    Utente di HTML.it L'avatar di vero1426
    Registrato dal
    Mar 2015
    residenza
    Albaredo d'Adige
    Messaggi
    3
    scusa, ma i dati li devi prendere da file?? o come vuoi
    Vero

Tag per questa discussione

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 © 2025 vBulletin Solutions, Inc. All rights reserved.