Ayuda ejercicio Bash

Iniciado por KiddKeo, 5 Mayo 2017, 11:11 AM

0 Miembros y 1 Visitante están viendo este tema.

KiddKeo

En clase de sistemas mi maestra mando crear un script de una maquina de cambio en el lenguaje bash. Un ejemplo seria.

ingresas 165 euros y te debería de devolver

1 billete de 100
1 billete de 50
1 billete de 10
1 billete de 5

Al principio se me ocurrió hacerlo con If ( IF $dinero -gt 500) y ir así con todas las cantidades pero al acabarlo me di cuenta de que si no contenía todos los billetes daba error.Si alguien tiene idea de este lenguaje y me pueda ayudar lo agradecería bastante le he dado bastantes vueltas y no se me ocurre nada, también me interesaría tenerlo en otro lenguaje, gracias de antemano y aquí os dejo el código que tengo.

#!/bin/bash
echo
echo "Bienvenido a esta maquina de cambio automatico"
echo
read -p "Introduzca la cantidad que desa cambiar y a continuacion introduzca el dinero -----> " dinero
echo
if [ $dinero -ge 500 ]; then
  dinero1=$(( $dinero / 500 ))
  resto1=$(( $dinero % 500))
echo "$dinero1 billetes de 500"
else "a"
fi
if [ $resto1 -ge 200 ]; then
  dinero2=$(( $resto1 / 200))
  resto2=$(( $resto1 % 200))

echo "$dinero2 billetes de 200"
else "a"
fi
if [ $resto2 -ge 100 ]; then
       dinero3=$(( $resto2 / 100))
       resto3=$(( $resto2 % 100))

echo "$dinero3 billetes de 100"

else "a"
fi

if [ $resto3 -ge 50 ]; then
       dinero4=$(( $resto3 / 50))
       resto4=$(( $resto3 % 50))

echo "$dinero4 billetes de 50"
else "a"
fi
if
[ $resto4 -ge 20 ]; then
       dinero5=$(( $resto4 / 20))
       resto5=$(( $resto4 % 20))

echo "$dinero5 billetes de 20"
else "a"

fi
if
[ $resto5 -ge 10 ]; then
       dinero6=$(( $resto4 / 10))
       resto6=$(( $resto4 % 10))

echo "$dinero5 billetes de 10"
else "a"
fi
if
[ $resto5 -ge 5 ]; then
       dinero6=$(( $resto5 / 5))
       resto6=$(( $resto5 % 5))

echo "$dinero5 billetes de 5"
else "a"
fi
if
[ $resto6 -ge 2 ]; then
       dinero7=$(( $resto6 / 2))
       resto7=$(( $resto6 % 2))

echo "$dinero5 monedas de 2"
else "a"
fi
if
[ $resto7 -ge 1 ]; then
       dinero8=$(( $resto7 / 1))

echo "$dinero8 monedas de 1"
else  "no hay monedas de 1"
fi