Juros compostos usando bc
Publicado por Augusto 05/02/2006
[ Hits: 8.675 ]
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,.
#!/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
Juntar arquivos divididos por HJsplit
Instalador de Lutris com winehq-staging para rodar Origin em Debian Bullseye (Kernel 5.10.0-23) - 64
Mudança automatica de papel de parede no fluxbox
Nenhum comentário foi encontrado.
Compartilhando a tela do Computador no Celular via Deskreen
Como Configurar um Túnel SSH Reverso para Acessar Sua Máquina Local a Partir de uma Máquina Remota
Configuração para desligamento automatizado de Computadores em um Ambiente Comercial
Como renomear arquivos de letras maiúsculas para minúsculas
Imprimindo no formato livreto no Linux
Vim - incrementando números em substituição
Efeito "livro" em arquivos PDF
Como resolver o erro no CUPS: Unable to get list of printer drivers
Não to conseguindo resolver este problemas ao instalar o playonelinux (1)
Excluir banco de dados no xampp (1)
[Python] Automação de scan de vulnerabilidades
[Python] Script para analise de superficie de ataque
[Shell Script] Novo script para redimensionar, rotacionar, converter e espelhar arquivos de imagem
[Shell Script] Iniciador de DOOM (DSDA-DOOM, Doom Retro ou Woof!)
[Shell Script] Script para adicionar bordas às imagens de uma pasta