Муҳаммад ал-Хоразмий номидаги тату самарқанд филиали


#ifndef LOAN_H 2 #define



Download 452,06 Kb.
bet4/4
Sana25.02.2022
Hajmi452,06 Kb.
#310023
1   2   3   4
Bog'liq
D2 laboratoriya mashguloti-2.2 Inkapsulyatsiya imkoniyatlarini ko‘rsatadigan dastur tuzish (1)

#ifndef LOAN_H
2 #define LOAN_H
3
4 class Loan
5 {
6 public:
7 Loan();
8 Loan(double rate, int years, double amount);
9 double getAnnualInterestRate();
10 int getNumberOfYears();
11 double getLoanAmount();
12 void setAnnualInterestRate(double rate);
13 void setNumberOfYears(int years);
14 void setLoanAmount(double amount);
15 double getMonthlyPayment();
16 double getTotalPayment();
17
18 private:
19 double annualInterestRate;
20 int numberOfYears;
21 double loanAmount;
22 };
23
24 #endif

Листинг 2.3.2 TestLoanClass.cpp


1 #include


2 #include
3 #include "Loan.h"
4 using namespace std;
5
6 int main()
7 {
8 // Enter annual interest rate
9 cout << "Enter yearly interest rate, for example 8.25: ";
10 double annualInterestRate;
11 cin >> annualInterestRate;
12
13 // Enter number of years
14 cout << "Enter number of years as an integer, for example 5: ";
15 int numberOfYears;
16 cin >> numberOfYears;
17
18 // Enter loan amount
19 cout << "Enter loan amount, for example 120000.95: ";
20 double loanAmount;
21 cin >> loanAmount;
22
23 // Create Loan object
24 Loan loan(annualInterestRate, numberOfYears, loanAmount);
25
26 // Display results
27 cout << fixed << setprecision(2);
28 cout << "The monthly payment is "
29 << loan.getMonthlyPayment() << endl;
30 cout << "The total payment is " << loan.getTotalPayment() << endl;
31
32 return 0;
33 }
34

Асосий функция фоиз ставкасини, тўлов муддатини (йилларда) ва кредит суммасини ўқийди (8-21 сатрларда), қарз объектини яратади (24-сатр), ундан кейин ойлик тўловни олади (29-сатр) ва умумий тўловни (30-сатр) Loan синфи функцияларидан фойдаланган ҳолда.


Листинг 2.3.3 Loan.cpp


1 #include "Loan.h"
2 #include
3 using namespace std;
4
5 Loan::Loan()
6 {
7 annualInterestRate = 9.5;
8 numberOfYears = 30;
9 loanAmount = 100000;
10 }
11
12 Loan::Loan(double rate, int years, double amount)
13 {
14 annualInterestRate = rate;
15 numberOfYears = years;
16 loanAmount = amount;
17 }
18
19 double Loan::getAnnualInterestRate()
20 {
21 return annualInterestRate;
22 }
23
24 int Loan::getNumberOfYears()
25 {
26 return numberOfYears;
27 }
28
29 double Loan::getLoanAmount()
30 {
31 return loanAmount;
32 }
33
34 void Loan::setAnnualInterestRate(double rate)
35 {
36 annualInterestRate = rate;
37 }
38
39 void Loan::setNumberOfYears(int years)
40 {
41 numberOfYears = years;
42 }
43
44 void Loan::setLoanAmount(double amount)
45 {
46 loanAmount = amount;
47 }
48
49 double Loan::getMonthlyPayment()
50 {
51 double monthlyInterestRate = annualInterestRate / 1200;
52 return loanAmount * monthlyInterestRate / (1 -
53 (pow(1 / (1 + monthlyInterestRate), numberOfYears * 12)));
54 }
55
56 double Loan::getTotalPayment()
57 {
58 return getMonthlyPayment() * numberOfYears * 12;
59 }

Дастурчи томонидан яратилган синф, мазкур синфни хохлаган ҳолатларда қўлланилиши кўриб чиқилиши керак. Бунинг учун турли хил конструктор ва функциялардан фойдаланилади.


Loan синфи ўзида иккита конструктор, учта get функциядан, учта set функциядан ва ойлик тўлови ва умумий тўлов функцияларидан фойдаланилган. Сиз Loan объектини аргументсиз конструктор ёки учта параметрли конструкторлардан фойдаланиб ишлатасиз (йиллик фоиз ставкаси, йиллар сони ва кредит суммаси) Учта функция get, getAnnualInterest, getNumberOfYears ва getLoanAmount, булар ўз навбатида йиллик фоиз ставкаси, йиллар тўлови ва кредит суммаси киритилади.



ДАСТУРЛАШ (С++) фанидан 2.2-лаборатория машғулотлари

Download 452,06 Kb.

Do'stlaringiz bilan baham:
1   2   3   4




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©hozir.org 2024
ma'muriyatiga murojaat qiling

kiriting | ro'yxatdan o'tish
    Bosh sahifa
юртда тантана
Боғда битган
Бугун юртда
Эшитганлар жилманглар
Эшитмадим деманглар
битган бодомлар
Yangiariq tumani
qitish marakazi
Raqamli texnologiyalar
ilishida muhokamadan
tasdiqqa tavsiya
tavsiya etilgan
iqtisodiyot kafedrasi
steiermarkischen landesregierung
asarlaringizni yuboring
o'zingizning asarlaringizni
Iltimos faqat
faqat o'zingizning
steierm rkischen
landesregierung fachabteilung
rkischen landesregierung
hamshira loyihasi
loyihasi mavsum
faolyatining oqibatlari
asosiy adabiyotlar
fakulteti ahborot
ahborot havfsizligi
havfsizligi kafedrasi
fanidan bo’yicha
fakulteti iqtisodiyot
boshqaruv fakulteti
chiqarishda boshqaruv
ishlab chiqarishda
iqtisodiyot fakultet
multiservis tarmoqlari
fanidan asosiy
Uzbek fanidan
mavzulari potok
asosidagi multiservis
'aliyyil a'ziym
billahil 'aliyyil
illaa billahil
quvvata illaa
falah' deganida
Kompyuter savodxonligi
bo’yicha mustaqil
'alal falah'
Hayya 'alal
'alas soloh
Hayya 'alas
mavsum boyicha


yuklab olish