Originariamente inviato da alelaps
L'intento è quello di generare un numero random binario di n cifre, dove n è un parametro.
Hai ragione comunque, avevo dimenticato l'incremento del contatore.
Ho corretto, ma dà ancora lo stesso errore...
Ecco il nuovo codice
codice:
#!/bin/bash
lunghezza=$1
risultato=0
contatore=1
potenza=1
while [ $contatore -le $lunghezza ] ;
do
let cifra=$RANDOM
let cifra%=2
let risultato+=potenza*cifra
let potenza*=10
let contatore+=1
done
echo Il numero generato e $risultato
exit 0
Cosa ne pensi? E' completamente sbagliato? Credo che sia ben chiaro che è il mio primo script...
Questo a me non dà errori su bash:
codice:
┌─[psykopear @ Pera -- 18:16:50]
└─[~/Script]> ./bin 2
Il numero generato e 0
┌─[psykopear @ Pera -- 18:16:56]
└─[~/Script]> ./bin 10
Il numero generato e 1000100011
┌─[psykopear @ Pera -- 18:17:00]
└─[~/Script]> ./bin 10000
Il numero generato e 5433654075493070355
┌─[psykopear @ Pera -- 18:17:16]
└─[~/Script]>
Però se l'intento è quello di generare un numero binario, nell'ultimo risultato c'è qualcosa che non va...