Linux slogan
Visite também: Segurança Linux · BR-Linux.org · Dicas-L · Doode · NoticiasLinux · SoftwareLivre.org · UnderLinux



» Screenshot
Linux: Flux Green
Por marcrock
» Login
Login:
Senha:

Se você ainda não possui uma conta, clique aqui.

Esqueci minha senha



Scripts

Linux user

Publicado por Augusto em 05/02/2006    [ 3867 hits ]

Login: enki1, 6648 pontos

   


Descrição

um scriptzinho bem simples para o cálculo de juros usando o comando linguagem bc,...

sintese:         M=C(1+T)^i
              jrcomp.Ah <M> <C> <T> <i>
              entre com os valores conhecidos e x para o valor a ser cálculado,...
     No próprio script tem + info,...

  bjunda a tds,.

[ Download: jrcomp.Ah ]   [ Enviar nova versão ]

[ Esconder código-fonte ]

#!/bin/bash
# cálculo de juros composto usando bc


# Cálculo do Montante

# M = C (1+T)^i

# Cálculo do Capital

# C = M / (1+T)^i

# Cálculo da Taxa

# Acompanhe o raciocínio

# M = C (1+T)^i
# M/C = (1+T)^i
# ln(M/C) = ln((1+T)^i)
# ln(M/C) = i ln(1+T) # Eq (I)
# ln(M/C)/i = ln(1+T)
# ln(1+T) = ln(M/C)/i
# 1+T = e^(ln(M/C)/i)

# T = e^(ln(M/C)/i) - 1

# Cálculo do índice

# da Eq (I) temos:
# ln(M/C) = i ln(1+T) de onde teremos:
# i ln(1+T) = ln(M/C)
# i = ln(M/C)/ln(1+T)

# função

Sintase-f () {
        echo "Sintase jrcomp.Ah <M>  <C>  <T>  <i>"
        echo "onde: M = C (1+T)^i"
        echo "coloque todos os três valores conhecidos e x para o valor a ser calculado."
        echo Formato
        echo "M e C XX.XX - valor de moeda"
        echo "T XX - em percentual com ponto como divisor decimal"
        echo "i XX - número natural"
        echo
}


# setando as váriáveis caso os valores existam.

M=$1
C=$2
T=$3
i=$4

if [ -z $1 ]  # -z indica que $1 é nulo
    then
        Sintase-f
        echo "por favor informe o montante(M)"
        read M
fi

if [ -z $2 ]
    then
        Sintase-f
        echo "M=$M"
        echo
        echo "por favor informe o capital(C)"
        read C
fi

if [ -z $3 ]
    then
        Sintase-f
        echo "M=$M"
        echo "C=$C"
        echo
        echo "por favor informe a taxa(T)"
        read T
        echo
fi

if [ -z $4 ]
    then
        Sintase-f
        echo "M=$M"
        echo "C=$C"
        echo "T=$T"
        echo
        echo "por favor informe o índice(i)"
        read i
fi

if [ $M = x ]
    then
        # calcula o montante com a equação M = C (1+T)^i
        R=`bc -l << fim  # R recebe o resultado para podermos acertar o número de casas decimais logo abaixo,. usamos 50 casas decimais para fazermos um bom calculo.

scale=50

$C*(1+$T/100)^$i

fim`

CS=2  # retorna resultado com 2 casas decimais.

    elif [ $C = x ]
        then
       # calcula o capital com a equação C = M / (1+T)^i
         R=`bc -l << fim # R recebe o resultado para podermos acertar o número de casas decimais logo abaixo,. usamos 50 casas decimais para fazermos um bom calculo.
scale=50

$M/(1+$T/100)^$i

fim`

CS=2

    elif [ $T = x ]
        then
        # calcula a taxa com a equação T = e^(ln(M/C)/i) - 1
        R=`bc -l << fim  # R recebe o resultado para podermos acertar o número de casas decimais logo abaixo,. usamos 50 casas decimais para fazermos um bom calculo.

scale=50

100*(e(l($M/$C)/$i)-1)

fim`

CS=2

    elif [ $i = x ]
        then
        R=`bc -l << fim  # R recebe o resultado para podermos acertar o número de casas decimais logo abaixo,. usamos 50 casas decimais para fazermos um bom calculo.

scale=50

l($M/$C)/l(1+$T/100)

fim`

CS=0

fi


bc -l << fim  #esta parte é apenas para acertar o número de casas decimais a multiplicação e divisão por 100 serve apenas para enganar o bc.

scale=$CS

100*$R/100

fim

Scripts recomendados
   Script Linux recomendado Matrizes
   Script Linux recomendado Montar pasta do Samba
   Script Linux recomendado Listar o número de arquivos de um diretório
   Script Linux recomendado Compactando arquivos em lote
   Script Linux recomendado Firewall Dialog

Comentários
Nenhum comentário foi encontrado.

Contribuir com comentário


  
Para executar esta ação você precisa estar logado no site, caso contrário, tudo o que for digitado será perdido.
Responsável pelo site: Fábio Berbert de Paula - Conteúdo distribuído sob licença GNU FDL
Site hospedado por:

Viva o Linux

A maior comunidade Linux da América Latina! Artigos, dicas, tutoriais, fórum, scripts e muito mais. Ideal para quem busca auto-ajuda em Linux.