erro em shell script, peço ajuda [RESOLVIDO]

1. erro em shell script, peço ajuda [RESOLVIDO]

cleriston
cleristonfreitas

(usa Debian)

Enviado em 17/03/2012 - 22:28h

alo pessoal sou aluno de Redes e recentemente comecei a usar o Linux e também o shell script , meu professor pediu para fazer uma atividade comecei mas não to conseguindo terminar.
é o seguinte:
Crie script que após ler 'n' números inteiros diferentes de zero), quando o usuario digitar zero apresente quatro opções:

1- maior
2- menor
3- media
4- soma

a após escolha do usuário exiba o resultado solicitado:

olha o que eu fiz ate agora: OBS: so posso usar os comendo que ele ensinou ate agora (if, While) não posso o CASE, o que não ta dando certo é as operaçoes matematica preciso de ajuda

numero=1
maior=0
menor=999999999
soma=0
cont=0
num=0
media=0
while [ $numero -ne 0 ]; do

echo "Digite o Numero: "
read numero

if [ $numero -gt $maior ]
then
maior=$numero
fi

if [ $numero -lt $menor -a $menor -gt 0 ]
then
menor=$numero
fi
$soma=(($soma+$numero))
cont=cont+1
media=soma/cont
done
if [ $numero -eq 0 ]
then
echo "1 - Para saber o Maior Numero digitado"
echo "2 - Para Saber o Menor NUmero digitado"
echo "3 - para saber a Media dos Numeros Digitado"
echo "4 - Para saber a Soma dos Numeros Digitado"
read num

if [ $num -eq 1 ]
then
echo "o maior numero foi: $maior"
fi

if [ $num -eq 2 ]
then
echo "O Menor numero foi: $menor"
fi

if [ $num -eq 3 ]
then

echo "a Media Foi: $media"
fi

if [ $num -eq 4 ]
then
echo "A soma dos numero foi: $soma"
fi

fi




  


2. Re: erro em shell script, peço ajuda [RESOLVIDO]

Raimundo Alves Portela
rai3mb

(usa Outra)

Enviado em 18/03/2012 - 00:34h

troque esse trecho:

$soma=(($soma+$numero))
cont=cont+1
media=soma/cont



por



soma=$((soma+numero))
cont=$((cont+1))
media=$((soma/cont))


As operaçoes matemáticas no shell podem ser realizadas pela sintaxe

$((variavel OPERACAO variavel))

Abraços


3. Agardecimento

cleriston
cleristonfreitas

(usa Debian)

Enviado em 18/03/2012 - 12:07h

Obrigado aki fucionou direito
fiz daquel mesma forma tambem mas usando o comando let no começo, não sei isso isso é corrto mais fiquei com a maneira que vc ensinou. obrigado






Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts