L'interfaccia si compone di un campo password in cui inserire la parola da cercare, un campo testo in cui inserire la lettera, un campo testo in cui appare l'andamento del gioco (lettere indovinate e asterischi) e un campo testo che memorizza gli errori.
Parola da indovinare
Lettera Proposta
Soluzione Parziale
Errori
Premendo il pulsante start, tramite l'evento OnClick attiviamo la funzione iniziogioco() che pone a zero il campo errori e maschera la soluzione parziale. Per compiere quest'ultima operazione, si utilizzano le funzioni string e len: string genera un numero di asterischi uguale alla lunghezza (len) della parola da indovinare.
Alla pressione del pulsante prova, si cerca la lettera proposta tra le lettere della parola; nel caso si trovi, essa viene sostituita. Per rendere il gioco completo, viene visualizzato un messaggio nel caso la soluzione non contenga più asterischi.
<html>
<head><title>Esercizio 3</title></head>
<body>
<script language="vbscript">
<!--
sub iniziogioco()
errori.value = 0
Soluzione.value= string(len(parola.value),"*")
end sub
sub prova()
sol = "" ' valori iniziali
err = 1
for x=1 to len(parola.value)
carattere = mid(parola.value,x,1)
if carattere=lettera.value then
sol = sol & lettera.value
err = 0
else
sol=sol & mid(soluzione.value,x,1)
end if
next
errori.value = cint(errori.value) + err
Soluzione.value = sol
lettera.value = ""
lettera.focus()
if instr(1,Soluzione.value,"*") = 0 then
MsgBox "Hai Vinto"
end if
end sub
//-->
</script>
Parola da indovinare <input type="password" name="parola"/>
<input type="button" value="Start" onclick="iniziogioco()"/><br />
Lettera Proposta <input type="text" name="lettera" size="1" maxlength="1"/>
<input type="button" name="prova" value="Prova" onclick="prova()"/><br/>
Soluzione Parziale <input type="text" name="Soluzione"/><br/>
Errori <input type="text" name="errori" size="3"/>
</body>
</html>
Il tutto si basa sulle funzioni InStr, che restituisce la posizione di un'occorrenza all'interno di una parola, e Mid, che estrae una sottostringa da una frase.
Se vuoi aggiornamenti su Development inserisci la tua email nel box qui sotto: