Pular para o conteúdo

média,valor máximo e valor mínimo

Esse script extremamente simples tem a função de mostrar o maior valor, o menor valor e tirar a mÉdia aritmética de n termos informados (não importando o numero de termos).

Pode ser passado a ele um arquivo contendo os números separados por espaço como parâmetro, fazendo o uso do comando  'cat  /endereço_do_arquivo' (nÃo esquecer do caracter  ' antes e depois)
Rômulo Torres Silva pankdo
Hits: 12.799 Categoria: Shell Script Subcategoria: Introdução
  • Download
  • Nova versão
  • Indicar
  • Denunciar
O Viva o Linux depende da receita de anúncios para se manter. Ative os cookies aqui para nos patrocinar.
Não conseguimos carregar os anúncios. Se usa bloqueador, considere liberar o Viva o Linux para nos patrocinar.

Descrição

Esse script extremamente simples tem a função de mostrar o maior valor, o menor valor e tirar a mÉdia aritmética de n termos informados (não importando o numero de termos).

Pode ser passado a ele um arquivo contendo os números separados por espaço como parâmetro, fazendo o uso do comando  'cat  /endereço_do_arquivo' (nÃo esquecer do caracter  ' antes e depois)
Download mmm.sh Enviar nova versão
O Viva o Linux depende da receita de anúncios para se manter. Ative os cookies aqui para nos patrocinar.
Não conseguimos carregar os anúncios. Se usa bloqueador, considere liberar o Viva o Linux para nos patrocinar.

Versões atualizadas deste script

Esconder código-fonte

soma=0 #Essa variável vai servir de acumulador dos valores 
max=0 #Essa variável vai armazenar o maior valor de todos por isso ela e inicializada com 0
min=1000000000 #Essa variável vai armazenar o menor valor de todos por isso ela e #inicializada com um numero muito alto

div=$#  #O $# traz o numero total de parâmetros q foram passados que sera util para tirar a #media ao final

while [ $# -gt 0 ] ;do #Esse loop permanece enquanto tiverem parâmetros na linha de comando
   if [ $1 -gt $max ] ;then #Testa se o 1°parâmetro e o maior ate o momento
      max=$1 #Se for armazena o seu valor como sendo o maior
   fi

   if [ $1 -lt $min ] ;then #Testa se o 1°parâmetro e o menor ate o momento
      min=$1 #Se for armazena o seu valor como sendo o menor
   fi

   soma=$(($soma+$1)) #soma o valor do 1° parâmetro com os outros valores ja #armezenados

   shift # Esse comando e o segredo ele faz com que todos os parâmetros sejam movidos 1 #para a esquerda fazendo com que, o que era o 1° deixe de existir, com que o segundo #assuma o lugar do 1°, com que o terceiro assuma o lugar do 2° e assim sucessivamente 

done # fecha o laço  do loop voltando ao teste da condição 

#após não haverem mais termos na linha sai do loop

media=$(($soma/$div)) #calcula a media

echo "A media dos $div termos e: $media" #mostra a media e o numero de termos 
echo "O valor maximo e: $max" #mostra o maior valor
echo "O vamor minimo e: $min" #mostra o menor valor
O Viva o Linux depende da receita de anúncios para se manter. Ative os cookies aqui para nos patrocinar.
Não conseguimos carregar os anúncios. Se usa bloqueador, considere liberar o Viva o Linux para nos patrocinar.

Monitoramento automático de logs e envio por e-mail – Fácil e explicado

Abre e Fecha o CD/DVD ROM

Jogo da velha para dois jogadores

Baixa e instala o WinRAR

Mudando a extensão de vários arquivos

#1 Comentário enviado por vitinho217 em 02/07/2014 - 12:01h
Cara você não pode supor que o valor máximo deve começar em 0, e se eledifitar -3 por exemplo, assim como você não pode supor que o valor minimo começa em 1000000000, e se o usuário entra com 1000000001

Contribuir com comentário

Entre na sua conta para comentar.