• Nenhum resultado encontrado

Desconto_Racional_por_Dentro

N/A
N/A
Protected

Academic year: 2021

Share "Desconto_Racional_por_Dentro"

Copied!
29
0
0

Texto

(1)

Generated by Doxygen 1.8.20

(2)
(3)

2 Hierarchical Index 3

2.1 Class Hierarchy . . . . 3

3 Class Index 5 3.1 Class List . . . . 5

4 File Index 7 4.1 File List . . . . 7

5 Namespace Documentation 9 5.1 _02f_rational Namespace Reference . . . . 9

5.1.1 Detailed Description . . . 10

5.1.2 Function Documentation . . . 12

5.1.2.1 futureValue() . . . 12

5.1.2.2 getDownPayment() . . . 12

5.1.2.3 getInterest() . . . 13

5.1.2.4 getInterest2() . . . 14

5.1.2.5 main() . . . 15

5.1.2.6 presentValue() . . . 16

5.1.2.7 priceTable() . . . 16

5.1.2.8 printRow() . . . 17

5.1.2.9 printTable() . . . 17

5.1.2.10 rational_discount() . . . 18

5.1.2.11 setDownPayment() . . . 18

5.1.2.12 setEncodingUTF8() . . . 18

5.1.3 Variable Documentation . . . 19

5.1.3.1 CF . . . 19

5.2 calcTest Namespace Reference . . . 19

5.2.1 Detailed Description . . . 20

6 Class Documentation 21 6.1 calcTest.CalcTest Class Reference . . . 21

6.1.1 Detailed Description . . . 22

6.1.2 Member Function Documentation . . . 22

6.1.2.1 setUp() . . . 22

6.1.2.2 testPriceTable() . . . 22

6.1.2.3 testTaxa() . . . 22

Generated by Doxygen

(4)

ii

7 File Documentation 23

7.1 _02f_rational.py File Reference . . . 23 7.2 calcTest.py File Reference . . . 24

Index 25

Generated by Doxygen

(5)

Namespace Index

1.1 Namespace List

Here is a list of all namespaces with brief descriptions:

_02f_rational

Desconto Racional por Dentro . . . . 9 calcTest

Class for testing the Calculator . . . . 19

(6)

2 Namespace Index

Generated by Doxygen

(7)

Hierarchical Index

2.1 Class Hierarchy

This inheritance list is sorted roughly, but not completely, alphabetically:

TestCase

calcTest.CalcTest . . . . 21

(8)

4 Hierarchical Index

Generated by Doxygen

(9)

Class Index

3.1 Class List

Here are the classes, structs, unions and interfaces with brief descriptions:

calcTest.CalcTest

Class for testing certain aspects of the behavior of the calculator . . . . 21

(10)

6 Class Index

Generated by Doxygen

(11)

File Index

4.1 File List

Here is a list of all files with brief descriptions:

_02f_rational.py . . . . 23

calcTest.py . . . . 24

(12)

8 File Index

Generated by Doxygen

(13)

Namespace Documentation

5.1 _02f_rational Namespace Reference

Desconto Racional por Dentro.

Functions

• def setDownPayment (dp=True) Set a down payment.

• def getDownPayment () Get the down payment.

• def setEncodingUTF8 () Set default enconding to UTF8.

• def getInterest (x, y, p)

Acha a taxa que produz o preço à vista pelo método de Newton:

• def getInterest2 (x, y, p)

Acha a taxa que produz o preço à vista pelo método de Newton:

• def presentValue (x, p, t)

Retorna o fator para atualizar o preço no instante da compra.

• def futureValue (y, p, t)

Retorna o fator para atualizar o preço no final da compra.

• def rational_discount (p, t, x, y, option=True) Desconto Racional por Dentro.

• def priceTable (np, pv, t, pmt)

Retorna a Tabela Price, também chamado de sistema francês de amortização.

• def printRow (pt, fmt='o')

Print a single row of the Price Table.

• def printTable (pt) Print the Price Table.

• def main (argv=None)

Programa principal para testes.

(14)

10 Namespace Documentation

Variables

• CF = lambda i,n: float(i) / (1-(1+i) ∗∗ -n)

Coeficiente de financiamento CDC (Crédito Direto ao Consumidor).

5.1.1 Detailed Description

Desconto Racional por Dentro.

A fórmula para atualizar o preço no instante da compra, levando em conta a remuneração aplicada a cada prestação, R = x p , é:

x atualizado = A = x p

(1 + t) p − 1

t(1 + t) (p−1) = x × (1 + t)

(p ∗ CF ) , CF = t 1 − (1 + t) −p .

O preço atualizado, A , voltando cada parcela, R , para o tempo inicial, é a soma de uma P.G. de razão q = (1+t) 1 e cujo primeiro termo é q:

A = R[(1 + t) −1 + (1 + t) −2 + ... + (1 + t) −n ] A = Rq (1 − q n )

1 − q ,

A = Rq

(1 − (1+t) 1

n

) (1 − (1+t) 1 )

= Rq ((1 + t) n − 1) (1 + t) n

(1 + t) t A = R (1 + t) n − 1

t(1 + t) n

= R (1 − (1 + t) −n )

t ⇒

R = A t

(1 − (1 + t) −n )

= A × CF onde R = x p é o valor de cada parcela.

Como, neste exercício, a primeira parcela é paga no ato da compra, na realidade, n = p − 1 e deve-se somar R = x p (a entrada):

A = R(1 + q(1 − q (p−1) ) (1 − q) ).

Generated by Doxygen

(15)

q (1 − (1+t) 1 ) = q

(1 + t) (p−1) t 1

(1 + t) ((1 + t) (p−1) − 1) (1 + t)

t(1 + t) (p−1) = (1 + t) (p−1) − 1

t(1 + t) (p−1) ⇒ (somando 1) 1 + (1 + t) (p−1) − 1

t(1 + t) (p−1) = t(1 + t) (p−1) + (1 + t) (p−1) − 1 t(1 + t) (p−1)

(t + 1)(1 + t) (p−1) − 1

t(1 + t) (p−1) = (1 + t) p − 1

t(1 + t) (p−1) = (1 + t) − (1 + t) −(p−1)

t ⇒ (recolocando R) R(1 + t) (1 − (1 + t) −p )

t = R (1 + t)

CF

Nota: Achar a taxa "t" que produz o preço à vista "y" requer o método de Newton:

x n+1 = x n − f (x n ) f ' (x n )

y = x

p (c − 1)

tb , f (t) = ytb − x

p (c − 1) f ' (t) = y(b + t(p − 1)a) − xb

onde a = (1 + t) (p−2) , b = (1 + t) (p−1) , c = (1 + t) p e o problema é equivalente a encontrar um zero da função f t n+1 = t n − f (t)

f ' (t) , t o = x y

A função é decrescente e converge para t quando n →∞ .

Author

Paulo Roma

Since

02/11/2012

See also

http://pessoal.sercomtel.com.br/matematica/financeira/curso/curso.htm https://calculador.com.br/calculo/financiamento-price

https://dicascarrosusados.com/financiar-carro-por-cdc/

https://edisciplinas.usp.br/pluginfile.php/4647782/mod_resource/content/1/ ← -

ENS%20-%20MTF%20191S%20-%20Aula%2007%20C%20Financiamentos.pdf

https://mundoeducacao.uol.com.br/matematica/calculo-financiamento.htm http://www.urca.br/itec/images/pdfs/mod.%20vi%20-%20anal.%20econ.financ. ← -

e%20invest.pdf

Generated by Doxygen

(16)

12 Namespace Documentation

5.1.2 Function Documentation

5.1.2.1 futureValue()

def _02f_rational.futureValue ( y,

p, t )

Retorna o fator para atualizar o preço no final da compra.

Parameters

y preço à vista.

p número de parcelas.

t taxa.

Returns

fator para atualizar o preço e o valor futuro.

Definition at line 184 of file _02f_rational.py.

References CF, and getDownPayment().

5.1.2.2 getDownPayment()

def _02f_rational.getDownPayment ( )

Get the down payment.

Definition at line 73 of file _02f_rational.py.

Referenced by futureValue(), getInterest(), main(), and presentValue().

Generated by Doxygen

(17)

def _02f_rational.getInterest ( x,

y, p )

Acha a taxa que produz o preço à vista pelo método de Newton:

t n+1 = t n − f (t n ) f ' (t n )

A função é decrescente e converge para t = lim n→∞ t n+1 . Nota: se não houve entrada, retorna getInterest2 ( x, y, p )

Generated by Doxygen

(18)

14 Namespace Documentation

Parameters

x preço a prazo.

y preço à vista.

p número de parcelas.

Returns

taxa, número de iterações.

Definition at line 116 of file _02f_rational.py.

References getDownPayment().

5.1.2.4 getInterest2()

def _02f_rational.getInterest2 ( x,

y, p )

Acha a taxa que produz o preço à vista pelo método de Newton:

t n+1 = t n − f (t n ) f ' (t n )

A função é decrescente e converge para t = lim n→∞ t n+1 . Nota: assume-se que não houve entrada.

Parameters

x preço a prazo.

y preço à vista.

p número de parcelas.

Returns

taxa, número de iterações.

Definition at line 148 of file _02f_rational.py.

Generated by Doxygen

(19)

def _02f_rational.main ( argv = None )

Programa principal para testes.

Parameters

argv command line arguments:

• h help

• n número de parcelas.

• t taxa mensal.

• x valor da compra a prazo.

• y valor da compra à vista.

• e indica uma entrada.

• v verbose mode

Usage:

• _02f_rational.py -n10 -t1 -x500 -y450 -e

• _02f_rational.py -n18 -t0 -x3297.60 -y1999

• _02f_rational.py -n10 -t0 -x1190 -y1094.80

• _02f_rational.py -n 88 -t 4.55 -x 111064.80 -y 23000

• _02f_rational.py -n 96 -t 0 -x 134788.8 -y 63816.24

• _02f_rational.py -n 4 -t 3.0 -x 1076.11 -y 1000

• _02f_rational.py –parcelas=88 –taxa=4.55 –valorP=111064.80 –valorV=23000 -v or

• _02f_rational.py –help

See also

https://mkaz.blog/code/python-string-format-cookbook/

https://www.w3schools.com/python/ref_string_format.asp https://pyformat.info

Definition at line 344 of file _02f_rational.py.

References CF, getDownPayment(), priceTable(), printTable(), and setDownPayment().

Generated by Doxygen

(20)

16 Namespace Documentation

5.1.2.6 presentValue()

def _02f_rational.presentValue ( x,

p, t )

Retorna o fator para atualizar o preço no instante da compra.

Parameters

x preço a prazo.

p número de parcelas.

t taxa.

Returns

fator para atualizar o preço e o valor presente.

Definition at line 171 of file _02f_rational.py.

References CF, and getDownPayment().

5.1.2.7 priceTable()

def _02f_rational.priceTable ( np,

pv, t, pmt )

Retorna a Tabela Price, também chamado de sistema francês de amortização.

É um método usado em amortização de empréstimos cuja principal característica é apresentar prestações (ou parcelas) iguais.

O método foi apresentado em 1771 por Richard Price em sua obra "Observações sobre Pagamentos Remissivos".

Parameters

np número de prestações.

pv valor do empréstimo.

t taxa de juros.

pmt pagamento mensal.

Generated by Doxygen

(21)

Definition at line 254 of file _02f_rational.py.

Referenced by main(), and calcTest.CalcTest.testPriceTable().

5.1.2.8 printRow()

def _02f_rational.printRow ( pt,

fmt = 'o' )

Print a single row of the Price Table.

Parameters pt given row.

fmt selector:

• 'f': f-string (python 3.6+),

• 'o': new format or

• '%': the old % style.

Definition at line 277 of file _02f_rational.py.

5.1.2.9 printTable()

def _02f_rational.printTable ( pt )

Print the Price Table.

Definition at line 292 of file _02f_rational.py.

Referenced by main().

Generated by Doxygen

(22)

18 Namespace Documentation

5.1.2.10 rational_discount()

def _02f_rational.rational_discount ( p,

t, x, y,

option = True )

Desconto Racional por Dentro.

Parameters

p número de prestações.

t taxa de juros mensal.

x preço a prazo.

y preço à vista.

option seleciona o que será impresso.

Definition at line 205 of file _02f_rational.py.

5.1.2.11 setDownPayment()

def _02f_rational.setDownPayment ( dp = True )

Set a down payment.

Definition at line 68 of file _02f_rational.py.

Referenced by main(), and calcTest.CalcTest.setUp().

5.1.2.12 setEncodingUTF8()

def _02f_rational.setEncodingUTF8 ( )

Set default enconding to UTF8.

Needed for python 2 CGI.

• Either use python 3, import pango or this dirty hack.

Rationale:

Generated by Doxygen

(23)

But CGI with defaultencoding ascii does not accept the latter.

>>> len(’Mês’.encode())

Traceback (most recent call last):

File "<stdin>", line 1, in <module>

UnicodeDecodeError: ’ascii’ codec can’t decode byte 0xc3 in position 1: ordinal not in range(128)

Returns

sys.getdefaultencoding()

See also

http://jonathansoma.com/tutorials//international-data/python-and-utf-8/

Definition at line 96 of file _02f_rational.py.

5.1.3 Variable Documentation

5.1.3.1 CF

_02f_rational.CF = lambda i,n: float(i) / (1-(1+i)∗∗-n)

Coeficiente de financiamento CDC (Crédito Direto ao Consumidor).

Parameters

i taxa mensal.

n período (meses).

Definition at line 194 of file _02f_rational.py.

Referenced by futureValue(), main(), presentValue(), and calcTest.CalcTest.testPriceTable().

5.2 calcTest Namespace Reference

Class for testing the Calculator.

Generated by Doxygen

(24)

20 Namespace Documentation

Classes

• class CalcTest

Class for testing certain aspects of the behavior of the calculator.

5.2.1 Detailed Description

Class for testing the Calculator.

Author

Paulo Roma

Since

23/08/2021

See also

https://docs.python.org/2/library/unittest.html

Generated by Doxygen

(25)

Class Documentation

6.1 calcTest.CalcTest Class Reference

Class for testing certain aspects of the behavior of the calculator.

Inheritance diagram for calcTest.CalcTest:

calcTest.CalcTest unittest::TestCase

Collaboration diagram for calcTest.CalcTest:

calcTest.CalcTest

unittest::TestCase

(26)

22 Class Documentation

Public Member Functions

• def setUp (self)

setUp is called automatically before every test is executed.

• def testTaxa (self) Test getInterest.

• def testPriceTable (self) Test priceTable.

6.1.1 Detailed Description

Class for testing certain aspects of the behavior of the calculator.

Definition at line 21 of file calcTest.py.

6.1.2 Member Function Documentation

6.1.2.1 setUp()

def calcTest.CalcTest.setUp ( self )

setUp is called automatically before every test is executed.

Definition at line 25 of file calcTest.py.

References _02f_rational.setDownPayment().

6.1.2.2 testPriceTable()

def calcTest.CalcTest.testPriceTable ( self )

Test priceTable.

Definition at line 36 of file calcTest.py.

References _02f_rational.CF, and _02f_rational.priceTable().

6.1.2.3 testTaxa()

def calcTest.CalcTest.testTaxa ( self )

Test getInterest.

Definition at line 29 of file calcTest.py.

The documentation for this class was generated from the following file:

• calcTest.py

Generated by Doxygen

(27)

File Documentation

7.1 _02f_rational.py File Reference

Namespaces

• _02f_rational

Desconto Racional por Dentro.

Functions

• def _02f_rational.setDownPayment (dp=True) Set a down payment.

• def _02f_rational.getDownPayment () Get the down payment.

• def _02f_rational.setEncodingUTF8 () Set default enconding to UTF8.

• def _02f_rational.getInterest (x, y, p)

Acha a taxa que produz o preço à vista pelo método de Newton:

• def _02f_rational.getInterest2 (x, y, p)

Acha a taxa que produz o preço à vista pelo método de Newton:

• def _02f_rational.presentValue (x, p, t)

Retorna o fator para atualizar o preço no instante da compra.

• def _02f_rational.futureValue (y, p, t)

Retorna o fator para atualizar o preço no final da compra.

• def _02f_rational.rational_discount (p, t, x, y, option=True) Desconto Racional por Dentro.

• def _02f_rational.priceTable (np, pv, t, pmt)

Retorna a Tabela Price, também chamado de sistema francês de amortização.

• def _02f_rational.printRow (pt, fmt='o') Print a single row of the Price Table.

• def _02f_rational.printTable (pt) Print the Price Table.

• def _02f_rational.main (argv=None)

Programa principal para testes.

(28)

24 File Documentation

Variables

• _02f_rational.CF = lambda i,n: float(i) / (1-(1+i) ∗∗ -n)

Coeficiente de financiamento CDC (Crédito Direto ao Consumidor).

7.2 calcTest.py File Reference

Classes

• class calcTest.CalcTest

Class for testing certain aspects of the behavior of the calculator.

Namespaces

• calcTest

Class for testing the Calculator.

Generated by Doxygen

(29)

CF, 19 futureValue, 12 getDownPayment, 12 getInterest, 12 getInterest2, 14 main, 14 presentValue, 15 priceTable, 16 printRow, 17 printTable, 17 rational_discount, 17 setDownPayment, 18 setEncodingUTF8, 18 _02f_rational.py, 23 calcTest, 19

calcTest.CalcTest, 21 setUp, 22 testPriceTable, 22 testTaxa, 22 calcTest.py, 24 CF

_02f_rational, 19 futureValue

_02f_rational, 12 getDownPayment

_02f_rational, 12 getInterest

_02f_rational, 12 getInterest2

_02f_rational, 14 main

_02f_rational, 14 presentValue

_02f_rational, 15 priceTable

_02f_rational, 16 printRow

_02f_rational, 17 printTable

_02f_rational, 17

_02f_rational, 17 setDownPayment

_02f_rational, 18 setEncodingUTF8

_02f_rational, 18 setUp

calcTest.CalcTest, 22 testPriceTable

calcTest.CalcTest, 22 testTaxa

calcTest.CalcTest, 22

Referências

Documentos relacionados

Desta maneira, para iniciar, um estudo que visa modelar o preço do café no mercado físico, baseado nos valores do indicador de café arábica CEPEA/ESALQ; utilizou-se o período

Para a questão 3, entretanto, os alunos deverão ser capazes de fazer uma análise mais profunda, estabelecendo relações entre o texto de Mário de Andrade e o conteúdo principal a

Modernização de Infraestrutura para Sistema de Alarme, no regime de Empreitada por Preço Global (Material e Mão de Obra), de acordo com as condições e especificações definidas

“A história da ascensão da Monavie também revela um registro manchado de alegações exageradas de alívio de doenças graves e discutíveis afirmações de valores

Uma das principais mudanças está na elevação da taxa básica de juros (Selic) para 4,25% ao ano e a expectativa é que suba ainda mais esse ano.. Especialistas do mercado

Os fatores de consumo, segundo Kotler e Keller (2013), são definidos por psicológicos, pessoais, culturais e sociais, sendo que cada um deles predo- minaram em alguma etapa

Na área de estudo, o Planalto está representado por Unidades Morfoló- gicas ou Padrões de Formas Semelhantes, que são: Padrão em forma de morros, em forma de morros associados

A DIRETORA-GERAL DO CÂMPUS FLORIANÓPOLIS DO INSTITUTO FEDERAL DE SANTA CATARINA, no uso de suas atribuições legais,. Considerando deliberação na 260ª