Visualizzazione dei risultati da 1 a 6 su 6
  1. #1

    potete corregere il mio problema che conta il numero di lettere in una frase

    spero che adesso vada bene il titolo però per piacere mi aiutate a corregerlo

    <html>
    <head>
    <script>

    conta = new Array (26);

    for(i=0; i<26; i++){
    conta[0] = "";
    }

    lett = new Array (26);

    lett[0] = a;
    lett[1] = b;
    lett[2] = c;
    lett[3] = d;
    lett[4] = e;
    lett[5] = f;
    lett[6] = g;
    lett[7] = h;
    lett[8] = i;
    lett[9] = j;
    lett[10] = k;
    lett[11] = l;
    lett[12] = m;
    lett[13] = n;
    lett[14] = o;
    lett[15] = p;
    lett[16] = q;
    lett[17] = r;
    lett[18] = s;
    lett[19] = t;
    lett[20] = u;
    lett[21] = v;
    lett[22] = w;
    lett[23] = x;
    lett[24] = y;
    lett[25] = z;

    function verifica(){
    lettera=modulo.frase.value;
    for(i=0; i<26; i++){
    caratt = lettera.charAt(i);
    if(cartatt == lett[i]);
    conta[i]++;
    }
    risultato();
    }

    function risultato(){
    var newind = window.open("");
    newind.document.write("RISULTATO");
    for(i=0; i<26; i++){
    newind.document.write(nomi[i]," = ",conta[i],"
    ");
    }
    }

    </script>

    <body>
    <form name="modulo" onsubmit="return verifica(this);">

    Inserisci il testo di max 30 caratteri

    <input type="text" name="frase" maxlenght="30" value="">




    <input type="submit" value="CONTROLLA">
    </form>
    </html>

  2. #2
    Utente di HTML.it L'avatar di oronze
    Registrato dal
    Jun 2001
    Messaggi
    3,543
    scusa, se tu elimini gli spazi con
    stringa.replace(' ', '') e poi conti semplicemente la lunghezza non è lo stesso?

    No ai layout tabellari!

    Insulto libero: http://forum.html.it/forum/showthread.php?s=&postid=12524872#post12524872

  3. #3
    Anche se io l'avrei fatto diversamente, l'errore &egrave; nrlls function verifica():
    testavi solo i primi 26 caratteri di un campo lettera che, se di lunghezza inferiore a 26, mandava in crash tutto!

    codice:
    function verifica(){
        lettera=modulo.frase.value;
        for(j=0; j<lettera.length; j++) {
            for(i=0; i<26; i++) {
                caratt = lettera.charAt(i);
                if(caratt == lett[j]) {
                    conta[i]++;
                }
            }
        }
        risultato();
    }
    HTH
    Zappa
    [PC:Presario 2515EU][Cpu:P4@2.3GHz][Ram: 512M][HDU:80G@5400 RPM]
    [Wireless:LinkSys][OS: Ubuntu 9.04 - Jaunty Jackalope]

  4. #4
    Codice PHP:
    <html>
    <
    head>
    <
    script>




    function 
    verifica()
    {                 
    conta = new Array(26);
                     
    lett = new Array("a","b","c","d","e","f","g","h","i","j","k","l","m","n","o","p","q","r","s","t","u","v","w","x","y","z"); 
                     
    phase=document.getElementById("frase").value;
                     for (
    i=0i<26i++) conta[i]=0;
                 for(
    j=0j<26j++) 
                     {                
    str lett[j];
                                         
    pattern = new RegExp(str,"g");
                                        if (
    phase.match(pattern) != nullconta[j]=phase.match(pattern).length;
                     }
                    
        
        
    risultato(lett,conta);
    }

    function 
    risultato(lett,conta)
    {                 
    msg "Risultato
    "
                     
    for(i=0i<26i++)
                     {                
    msg msg lett[i] + " = " conta[i] + "
    "
    ;
                     }
                     
                    
    aggiornamento document.getElementById("conteggio");
                    
    aggiornamento.innerHTML=msg;
    }

    </script>

    <body>
    <form name="modulo" id="modulo";>

    Inserisci il testo di max 30 caratteri

    <input type="text" name="frase" maxlenght="30" value="" id="frase">




    <input type="button" value="CONTROLLA" id="click" onclick="verifica()";>
    </form>
    <div id="conteggio"></div>
    </html> 
    ho fatto così
    il tesoro più prezioso è la mia libertà

  5. #5
    Piccolo errore (od &egrave; intenzionale?):
    non vengono considerate le maiuscole.
    Ovviamente, per considerarle alla pari delle minuscole, basta:
    Codice PHP:
    pattern = new RegExp(str,"gi"); 
    Zappa
    [PC:Presario 2515EU][Cpu:P4@2.3GHz][Ram: 512M][HDU:80G@5400 RPM]
    [Wireless:LinkSys][OS: Ubuntu 9.04 - Jaunty Jackalope]

  6. #6
    thanks mi sono dimenticato di considerare le maiuscole
    il tesoro più prezioso è la mia libertà

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.