Pagina 2 di 2 primaprima 1 2
Visualizzazione dei risultati da 11 a 16 su 16

Discussione: prendere riga nriga

  1. #11
    a me funziona, però stampa sempre solo la prima riga. è da modificare secondo quello che vuoi fare.
    cosa vorresti farci di preciso?
    vuoi giocare al fantacalcio gratis, solo per divertirti con tante altre persone? clicca su http://www.fantamagic.it

  2. #12
    Se vuoi uno script che visualizzi le righe in modo random allora

    open(parole, "<parole.txt");
    $i=0;
    while(!eof(parole)){
    $riga = <parole>;
    @words[$i]=$riga;
    $i++;
    }
    $nword = int(rand $i);
    print @words[$nword];
    funziona bene.
    vuoi giocare al fantacalcio gratis, solo per divertirti con tante altre persone? clicca su http://www.fantamagic.it

  3. #13
    Utente di HTML.it
    Registrato dal
    Feb 2003
    Messaggi
    1,965
    O si si si
    funziona bene

    grazie a tutti x la disponibilità

    ^__^

  4. #14
    Originariamente inviato da geiar99
    a me funziona, però stampa sempre solo la prima riga. è da modificare secondo quello che vuoi fare.
    cosa vorresti farci di preciso?

    codice:
    open(parole, "<parole.txt"); 
    $i=0; 
    while(!eof(parole)){ 
    $riga = <parole>; 
    @words[$i]=$riga; 
    $i++; 
    } 
    $nword = int(rand $i); 
    print @words[$nword];
    -----
    codice:
    open(PAROLE, "parole.txt"); 
    $i=0; 
    while (<PAROLE>) {
    $words[$i++]=$_; #prima assegna e poi incrementa $i
    }
    print $words[int(rand($i))];
    close(PAROLE);
    Una cosa che mi hanno sempre corretto sui newwsgroup del perl è che gli identificatori dei file devono essere scritti sempre in maiuscolo.
    Poi l'operazione $i++ e ++$i esiste proprio per applicarla all'interno di altre espressioni, quindi sarebbe uno peccato non usarla come sopra.
    Poi, gli array, quando si chiama un valore, non si usa la '@' degli array ma la '$' degli scalari.
    Provate a fare i vostri script con il modulo Strict, imparerete molto.

    ciao ciao

  5. #15
    in effetti la sintassi che ho riportato non è convenzionale e l'errore sull'array (@->$) è grave. Però confesso di aver riportato il codice senza controllarlo grammaticalmente ma solo nella sua funzionalità.
    Comunque grazie per la precisazione
    vuoi giocare al fantacalcio gratis, solo per divertirti con tante altre persone? clicca su http://www.fantamagic.it

  6. #16
    codice:
    open(PAROLE, "parole.txt"); 
    @words=<PAROLE>;
    close(PAROLE);
    print $words[int(rand(@words))];
    Ancora più semplificato.
    Forse c'è un modo ancora più criptico per rimpicciolirlo, ma questo è al momento il mio limite.

    L'ultima istruzione dovrebbe essere comprensibile. al posto di @words è come avere il numero degli elementi che lo compongono. Un bel rompicapo insomma.

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