Moderatori: m.paolo, kadosh, Luke57
bertolauser ha scritto:se sei arrivato a leggere fino a qua sei 1 eroe -.-
hydra ha scritto:2) fare attenzione che lo spazio (32) + una lettera maiuscola la stessa lettera però minuscola (se io ho per chiave CIAO e trovo 4 spazi consecutivi, al posto dei 4 spazi una volta cifrato avrò ciao)
hydra ha scritto:Ammesso che tu riesca a dimensionare un array con più oggetti uguali (non ho mai provato ma non penso si possa),
in ogni caso il compilatore si prende il primo che trova, e quindi il 25.
hydra ha scritto:Ho detto ammesso che si possa fare perchè non mi è mai capitato di inserire duplicati in un array.
Cmq guarda il codice ascii è la cosa più efficace, tieni conto che un testo (prendi questo post) ha dentro di tutto e cifrare solo le lettere è una cosa poco saggia, se uno ha a disposizione punteggiatura, spazi e simboli non ci mette molto a decifrare il messaggio di SOLO TESTO. Inoltre viene molto più semplice cifrare tutto invece di star la a prendere un intervallo di caratteri.![]()
Fidati, le due funzioni che ho postato prima sono giuste e SEMPLICI. Come ho detto in precedenza questo argomento è stata la mia materia d'esame, quindi lo studio c'è stato (non credere che non abbia pensato anch'io di cifrare solo il testo). Inoltre risparmi righe di codice (non serve che mi dichiari l'array, non serve che controlli in che posizione è, se io scrivo perchè con la è devo dichiarare anche è, se lo scrivo perche' devo dichiarare '. Se devo star la a farmi il mazzo per dichiarare tutto, allora perchè non utilizzare il codice ascii che ha dentro tutto?)
<HTML>
<HEAD>
<script language="JavaScript">
function rot_13(obj)
{
var keycode = "ABCDEFGHIJKLMNOPQRSTUVWXYZ"
var text = new String(obj.form.Text.value)
var rot13 = new String()
for(var i = 0; i < text.length; i++)
{
var codechar = text.substring(i, i + 1)
var pos = keycode.indexOf(codechar.toUpperCase())
if(pos >= 0)
{
pos = (pos + keycode.length / 2) % keycode.length
codechar = (codechar == codechar.toUpperCase()) ?
keycode.substring(pos, pos + 1) :
keycode.substring(pos, pos + 1).toLowerCase()
}
rot13 = rot13 + codechar
}
obj.form.Text.value = rot13
}
</script>
</HEAD>
<BODY>
<form>
<textarea name="Text" rows=10 cols=80 wrap=soft>Scrivi il testo da criptare o decriptare</textarea><br>
<input type=button value="ROT-13 Cripta/Decripta" onClick="rot_13(this)">
</form>
</BODY>
</HTML>
bertolauser ha scritto:Scusa 1 cosa ma nel link ke mi hai dato
Esempio: parola chiave: "CIAO", messaggio in chiaro:
SI ATTACCA DOMANI.
Messaggio crittato:
UQ AHVICQC LOACVI.
Invece nel programma ke ho fatto io KIAVE = TESTO
quindi mi sa ke non è sto Blaise de Vigenère , oppure è un caso particolare
bertolauser ha scritto:cmq nel tuo script quale è la chiave ??
hydra ha scritto:bertolauser ha scritto:cmq nel tuo script quale è la chiave ??
Il mio script cifra un carattere con chiave = carattere. Se vuoi cifrare una stringa devi in un ciclo chiamare length volte questa funzione passando come parametro l'i-esimo carattere della stringa. Ad esempio:
For I=0 to Length(Str)
ResStr(I)=CryptChar(Str(I), Key(I))
Next
La chiave può essere un testo lungo quanto vuoi. Alla fine ResStr contterrà la stringa originale cifrata con la chiave Key.
Programmino per convertire formati video Autore: Colo91 |
Forum: Audio/Video e masterizzazione Risposte: 4 |
programmino ripara errori nel registro di sistema Autore: spirox |
Forum: Software Windows Risposte: 3 |
Visitano il forum: Nessuno e 16 ospiti