Salve!
Solo una piccola idea concretizzata in poco tempo per alcuni amici. Si tratta di un semplice quiz a punti. :)
Ad ogni risposta esatta verranno assegnati 5 punti. 0 punti nel caso di risposta sbagliata. Lo script, oltre ad essere perfezionabile, può essere modificato a piacimento. :)
#!/bin/bash
#bit3lux
#quiz.sh
punti=0
read -p "Come ti chiami? " nome
echo "Ciao $nome"
read -p "Qual è il capoluogo della Calabria? " risposta
if [ "$riposta" == "Catanzaro" ]; then
punti=$[$punti+5]
fi
read -p "Qual è la capitale della Slovenia? " riposta
if [ "$riposta" == "Lubiana" ]; then
punti=$[$punti+5]
fi
read -p "Quanti denti incisivi abbiamo? " risposta
if [ "$risposta" -eq 8 ]; then
punti=$[$punti+5]
fi
read -p "Qual è il nuovo nome della Birmania? " risposta
if [ "$risposta" == "Myanmar" ]; then
punti=$[$punti+5]
fi
read -p "Qual è il capoluogo della Basilicata? " risposta
if [ "$risposta" == "Potenza" ]; then
punti=$[$punti+5]
fi
read -p "Quante province ha la Calabria? " risposta
if [ $risposta -eq 5 ]; then
punti=$[$punti+5]
fi
echo -e "\f$nome, hai totalizzato $punti punti!"
echo "I punti in palio erano 30!"
echo
exit 0
Salviamo lo script su un file di testo e lo nominiamo "quiz.sh"
Spostiamoci nella directory in cui lo abbiamo salvato. Nel mio caso
$ cd Documenti
rendiamolo eseguibile
$ chmod +x quiz.sh
e lanciamolo
$ ./quiz.sh
Lo si può lanciare anche così (senza che sia necessario renderlo eseguibile):
$ bash quiz.sh
Auguri di Buon Anno a tutti!!!! :)
Carino questo script. Però per personalizzarlo bisogna creare N IF per N domande in maniera manuale..mhmh.. pensavo..
RispondiEliminaPerché non modifichi lo script che legga da un file le domande e le risposte e che faccia queste operazioni:
1. Controllare che le somma delle domande e delle risposte è uguale, per evitare eventuali errori futuri.
2. Contare quante domande ci sono e fare un ciclo su quel totale. Dove all'interno del ciclo verrà visualizzata la domanda all'utente e la risposta che darà l'utente verrà confrontata con la risposta della domanda.
Dubbi ? :D
Certo! Si può fare :))
RispondiElimina