Ponieważ język C++ najlepiej nadaje się do tworzenia potężnych aplikacji systemo-wych, często nie docenia się jego możliwości w dziedzinie obliczeń...

Jak cię złapią, to znaczy, że oszukiwałeś. Jak nie, to znaczy, że posłużyłeś się odpowiednią taktyką.
Jest to oczywiście błąd. Język C++ charakteryzuje się doskonałymi właściwościami w tym zakresie, gdyż oferuje szeroki zakres funkcji matematycznych i wydajny mechanizm arytmetycznych operacji zmiennoprzecinkowych. Ponadto, ze względu na fakt, że kod wykonywalny generowany na podstawie kodu C++ jest ekstremalnie wydajny, język C++ stanowi doskonały wybór dla programów wykonujących złożone analizy finansowe i modelowanie.
Aby pokazać, z jaką łatwością można wykonywać obliczenia finansowe posługując się językiem C++, w tym rozdziale stworzonych zostanie kilka małych programów, które obliczają:
1. Wysokość raty;
2. Przyszłą wartość lokaty;
3. Początkową wartość inwestycji wymaganą do otrzymania pożądanej
przyszłej wartości;
4. Początkową wartość inwestycji wymaganą do otrzymania określonych
wypłat;
5. Maksymalną wielkość regularnej wypłaty z danej lokaty;
6. Pozostałą kwotę kredytu.
192
C++. Sztuka programowania
Programy te mogą być wykorzystywane w niezmienionej postaci lub można je przy-stosować do konkretnych potrzeb. Pomimo tego, że są to najprostsze programy w tej książce, może się okazać, że będziesz ich używał najczęściej.
Plan spłaty pożyczki
Prawdopodobnie najczęściej wykonywanym obliczeniem finansowym jest wyznacze-nie rat kredytu, przeznaczonego na przykład na samochód lub dom. Raty kredytu oblicza się za pomocą następującego wzoru:
Rata = (oproc ∗ (kwota / liczbaRatRocznie)) / (1 – ((oproc /
liczbaRatRocznie) + 1) –liczbaRatRocznie ∗ liczbaLat)
gdzie oproc określa oprocentowanie kredytu, kwota — wysokość kredytu, liczbaRatRocznie oznacza liczbę rat przypadającą na jeden rok, a liczbaLat określa długość spłaty kredytu w latach.
W poniższym programie w celu obliczenia wysokości rat przedstawiony wzór został
użyty w ciele funkcji . Do funkcji tej przekazujemy oprocentowanie, wielkość pierwszej raty, długość spłaty kredytu w latach oraz liczbę rat przypadających na jeden rok. Funkcja zwraca wysokość raty.
// Obliczanie jednakowych rat kredytu.
!""#" // przekształć procenty na ułamki
$
% $
& !#"
!#" % '
(
Rozdział 6. ♦ Obliczenia finansowe w C++
193
#))
#))
)*'+ ,' - , . )
)*'+ ',/0 ' '12 ' . )
)*'+ 3- . )
)*'+ 3- 4 ' ,. )
)5 . ) 67 8
"
(
Aby obliczyć wysokość raty kredytu, wprowadź wymagane dane. Oto przykładowy przebieg programu:
*'+ ',/0 , . !"""
*'+ ',/0 ' '12 ' . 9
*'+ 3- . :
*'+ 3- 4 ' ,. !8
. 8"#;<
Zwróć uwagę na kilka elementów w ciele funkcji . Po pierwsze, obiekt
związany ze strumieniem został ustawiony na Polish. Wykonano to przez wy-
wołanie metody i przekazanie obiektu dla Polski. Dzięki temu zapew-
nione jest prawidłowe wyświetlanie sum pieniężnych zgodnie z zasadami obowiązu-jącymi w języku polskim, przez co rozumiemy oddzielanie poszczególnych członów tysięcznych za pomocą znaku spacji oraz stosowanie przecinka do oddzielania części całkowitej liczby od jej części ułamkowej. Po drugie, przed wyświetleniem obliczonej wysokości raty, format liczby został zmieniony na (stały) z precyzją 2 miejsc
po przecinku z odpowiednim zaokrąglaniem. Jeśli to konieczne, do części ułamkowej dodawane są zera. We wszystkich prezentowanych w tym rozdziale programach do obliczeń finansowych zastosowane jest to samo podejście. Aby zmienić format liczb w celu dopasowania go do innego języka lub regionu, wystarczy zmienić język lub region obiektu przekazywanego do funkcji .
Obliczanie przyszłej wartości lokaty
Inną często obliczaną wartością jest przyszła wartość lokaty na podstawie początkowej wielkości lokaty, oprocentowania, rocznej częstotliwości kapitalizacji odsetek oraz długości lokaty wyrażonej w latach. Na przykład możesz chcieć się dowiedzieć, ile będziesz miał na koncie za 12 lat, jeżeli obecny stan Twego konta to 98 000 zł,
194
C++. Sztuka programowania
a średnie oprocentowanie roczne wynosi 6 procent. Przedstawiony tutaj program odpowie na to pytanie.
WÄ…tki
Powered by wordpress | Theme: simpletex | © Jak ciÄ™ zÅ‚apiÄ…, to znaczy, że oszukiwaÅ‚eÅ›. Jak nie, to znaczy, że posÅ‚użyÅ‚eÅ› siÄ™ odpowiedniÄ… taktykÄ….