Đề bài : ThucHanh03_CauTrucDieuKhien.pdf
Sửa chương trình "MuaTraGop.cpp" để giải Bài tập 4 trong trường hợp thời gian làm việc mỗi tháng của sinh viên đó là khác nhau :
Tháng Tổng số giờ
Tháng 09/2013 155
Tháng 10/2013 145
Tháng 11/2013 125
Tháng 12/2013 135
Tháng 01/2014 100
Tháng 02/2014 100
Tháng 03/2014 145
Tháng 04/2014 135
Tháng 05/2014 100
Tháng 06/2014 155
Tháng 07/2014 170
Tháng 08/2014 180
Được biết sinh viên đó được ngân hàng quyết định cho vay vào đầu tháng 9/2013
Viết chương trình để tính sau bao nhiêu tháng sinh viên đó hoàn trả hết nợ (gốc và lãi) cho ngân hàng.
Chương trình sẽ in ra :
- Thu nhập sau thuế của sinh viên đó từ việc làm thêm
- Số tiền lãi ngân hàng tính vào cuối mỗi tháng
- Số tiền dư nợ của sinh viên vào đầu tháng (sau khi thanh toán hàng tháng cho ngân hàng)
- Sau bao nhiêu tháng thì sinh viên đó thanh toán hết
- Khoản thanh toán cuối cùng với ngân hàng
Code : http://pastebin.com/uAmeD1kQ hoặc thuchanh3-bai5.cpp
--------------------------------------------------------------------------------------------------------
Ở đây mình sửa lại bài Thực hành 3 - Bài 4 nhưng chuyển 2 bài Thực hành 3 - Bài 1 và Thực hành 3 - Bài 2 vào gộp chung thành luôn 1 hàm double tinhtienluong (int sogiolam) .
Chú ý : Nhập đúng theo thứ tự bảng thời gian làm việc vì mỗi lần nhập khác nhau sẽ ra kq khác.
Code như sau :
#include <iostream>
#include <iomanip>
using namespace std;
// Tinh tien luong
double tinhtienluong(int sogiolam)
{
// Luong truoc thue
const double muc0 = 12000, muc1 = 16000, muc2= 20000, muc3= 25000;
double luong;
if (sogiolam>200)
{
luong = (sogiolam-200)*muc3 + 50*(muc1 + muc2) + 100*muc0;
}
else
{
if ( sogiolam>150)
{
luong = (sogiolam-150)*muc2 + 50*muc1 + 100*muc0;
}
else
{
luong = (sogiolam-100)*muc1 + 100*muc0;
}
}
// Luong sau thue
double thue;
const double baohiem=0.09, thue0 = 0, thue1= 0.1, thue2= 0.15, thue3= 0.2;
const double muctien0= 1e6, muctien1= 1.5e6, muctien2= 2e6;
luong = luong* (1-baohiem);
if ( luong>muctien2)
{
thue = (luong-muctien2)*thue3 + 5e5*(thue1 + thue2);
luong = luong - thue;
}
else
{
if ( luong>muctien1 )
{
thue = (luong-muctien1)*thue2 + 5e5*thue1 ;
luong = luong - thue;
}
else
{
thue = (luong-muctien0)* thue1;
luong = luong -thue;
}
}
return luong;
}
int main ()
{
// Tinh lai, in lai hang thang, tien du no
const double tientrocap= 1.5e6, tienchitieu= 2e6;
const double laixuat=0.02;
double tienvay=10e6;
double tienvaylai;
double tienduhangthang;
double tienluongtoithieu = tinhtienluong(100);
double luong;
int sogiolam, i= 1;
cout << fixed << setprecision(0);
while ( tienvay*1.02 >tienluongtoithieu )
{
cout << "Nhap gio : "; cin >> sogiolam;
luong = tinhtienluong(sogiolam);
tienduhangthang = luong + tientrocap - tienchitieu;
cout << "Tien du sau chi tieu hang thang : " << tienduhangthang << endl << endl;
tienvaylai = tienvay * laixuat;
cout << "Tien lai ngan hang vao cuoi thang thu " << i << " la: " << tienvaylai << endl;
tienvay+= tienvaylai;
cout << "So tien vay sau lai xuat thang thu " << i << " la: " << tienvay << endl;
tienvay-= tienduhangthang;
cout << "So tien du no vao dau thang thu " << i+1 << " la: " << tienvay << endl << endl;
i++;
}
cout << "Tra het no vao dau thang thu " << ++i << endl;
cout << "So tien thanh toan cuoi cung voi ngan hang la: " << tienvay*1.02 << endl;
system("pause");
return 0;
}