Calculadora2.1 em shell
Publicado por Guilherme B 11/01/2004
[ Hits: 6.031 ]
Script que ilustra bem o uso do "case", mostra também como usar funções para facilitar a
vida do programador.
#!/bin/bash
#_zYxel
#2004
#Codei e saí correndo...
clear
Menu()
{
echo "Shell Unix Calculator 2.1"
echo "Agora com muito mais opções!"
echo ""
echo "###########################"
echo "# 1 > Soma "
echo "# 2 > Subtração "
echo "# 3 > Multiplicação "
echo "# 4 > Divisão "
echo "# 5 > Números ao Quadrado "
echo "# 6 > Calculo de média "
echo "# 7 > Fechar :( "
echo "# 8 > About "
echo "###########################"
echo " Digite o número da opção desejada"
read opt
case $opt in
1) Soma ;;
2) Subtra ;;
3) Multi ;;
4) Divi ;;
5) Quadrado ;;
6) Media ;;
7) exit ;;
8) About ;;
*) "Opção Inexistente" ; clear ; Menu ;;
esac
}
Soma()
{
clear
echo "Primeiro Número"
read num
echo "Segundo Número"
read num2
expr $num "+" $num2
Menu
}
Subtra()
{
clear
echo "Primeiro número"
read sub
echo "Segundo número"
read sub2
expr $sub "-" $sub2
Menu
}
Multi()
{
clear
echo "Primeiro número"
read mul
echo "Segundo Número"
read mul2
expr $mul "*" $mul2
Menu
}
Divi()
{
clear
echo "Primeiro Número"
read div
echo "Segundo Número"
read div2
expr $div "/" $div2
Menu
}
Quadrado()
{
clear
echo "Digite o número"
read $qua
expr $qua "*" $qua
Menu
}
Media()
{
clear
echo "Função em Testes"
echo "Digite a média"
read medi
echo "1a Nota"
read anot
echo "2a Nota"
read bnot
echo "3a Nota"
read cnot
echo "4a Nota"
read dnot
final= expr $anot "+" $bnot "+" $cnot "+" $dnot
val="4"
resultado= expr $final "/" $val
if [ "$resultado" < "$medi" ] ; then echo "Recuperação"
else
echo "Passou"
fi
}
About()
{
clear
echo "####################################"
echo "# #"
echo "# Shell Unix Calculator 2.1 #"
echo "# #"
echo "# O Calculo da média é uma #"
echo "# nova função, e pode conter #"
echo "# erros de programação. #"
echo "# #"
echo "# Espero que esse script #"
echo "# ajude você a entender mais #"
echo "# shell scripting #"
echo "# _zYxel #"
echo "####################################"
sleep 8
clear
Menu
}
Menu
Ativa e dasativa o XGL para o KDE
Nenhum comentário foi encontrado.
Modo Simples de Baixar e Usar o bash-completion
Monitorando o Preço do Bitcoin ou sua Cripto Favorita em Tempo Real com um Widget Flutuante
fusermount3 no Ubuntu 25.10 - mantenha o perfil do AppArmor
[Resolvido] dlopen(): error loading libfuse.so.2 AppImages require FUSE to run.
Criação de diretórios e aplicação de restrições de acesso no Linux
diferença entre o Tor baixado pelo Gerenciador de Aplicativos e o Tor ... (2)
Podem me chamar de 1mbecil :) (2)
Debian Stable travado em atualizações: dist-upgrade não resolve [RESOL... (11)
Como ler fonte de um projeto? [RESOLVIDO] (5)
Perfil criado no samba ad dc não loga no Windows 10 e 11 [RESOLVIDO] (14)









