You've already forked scripts-random
Add first scripts
This commit is contained in:
71
01_bash/calculadora.sh
Executable file
71
01_bash/calculadora.sh
Executable file
@@ -0,0 +1,71 @@
|
||||
#!/bin/bash
|
||||
|
||||
# Script: calculadora.sh
|
||||
# Descripción: Este script realiza operaciones matemáticas básicas
|
||||
# (suma, resta, multiplicación, división) con dos valores ingresados por el usuario.
|
||||
# Author: Manuel Vergara
|
||||
# Web: https://vergaracarmona.es
|
||||
#
|
||||
|
||||
COLOR_RED='\033[0;31m'
|
||||
COLOR_RESET='\033[0m'
|
||||
|
||||
# Control de salida con Ctrl + C
|
||||
function ctrl_c() {
|
||||
echo -e "${COLOR_RED}\n\n[!] Saliendo... \n${COLOR_RESET}"
|
||||
tput cnorm; exit 1
|
||||
}
|
||||
|
||||
# Ctrl+C
|
||||
trap ctrl_c SIGINT
|
||||
|
||||
# Función para limpiar la pantalla
|
||||
limpiar_pantalla() {
|
||||
clear
|
||||
}
|
||||
|
||||
# Función para mostrar el mensaje inicial
|
||||
mensaje_inicial() {
|
||||
echo "Soy GNU/cal"
|
||||
sleep 1
|
||||
echo "Tú me dices lo que quieres calcular y yo te doy el resultado"
|
||||
sleep 1
|
||||
}
|
||||
|
||||
# Función para solicitar un valor al usuario
|
||||
solicitar_valor() {
|
||||
echo -e "\nIntroduce $1 valor"
|
||||
read -r "$2"
|
||||
}
|
||||
|
||||
# Función para solicitar el operador al usuario
|
||||
solicitar_operador() {
|
||||
echo -e "\nIntroduce el operador. Puedes escoger entre: + - / *"
|
||||
read -r operador
|
||||
}
|
||||
|
||||
# Función para realizar el cálculo y mostrar el resultado
|
||||
calcular_resultado() {
|
||||
echo -e "\nEl resultado es: "
|
||||
sleep 1
|
||||
resultado="$1 $2 $3"
|
||||
echo -e "$((resultado)) \n"
|
||||
sleep 0.5
|
||||
}
|
||||
|
||||
# Función para mostrar el agradecimiento
|
||||
mensaje_final() {
|
||||
echo "Gracias por su tiempo"
|
||||
}
|
||||
|
||||
# Main
|
||||
|
||||
limpiar_pantalla
|
||||
mensaje_inicial
|
||||
|
||||
solicitar_valor "el primer" valor1
|
||||
solicitar_operador
|
||||
solicitar_valor "el segundo" valor2
|
||||
|
||||
calcular_resultado "$valor1" "$operador" "$valor2"
|
||||
mensaje_final
|
||||
Reference in New Issue
Block a user