Your local library needs your help! Given the expected and actual return dates for a library book, create a program that calculates the fine (if any). The fee structure is as follows:
1.If the book is returned on or before the expected return date, no fine will be charged (i.e.: .
2.If the book is returned after the expected return day but still within the same calendar month and year as the expected return date, .
3.If the book is returned after the expected return month but still within the same calendar year as the expected return date, the .
4.If the book is returned after the calendar year in which it was expected, there is a fixed fine of .
Charges are based only on the least precise measure of lateness. For example, whether a book is due January 1, 2017 or December 31, 2017, if it is returned January 1, 2018, that is a year late and the fine would be .
Example:
Input: d1=9,m1=6,y1=2015,d2=6,m2=6,y2=2015
Output: 45
Approach
C++
#include <bits/stdc++.h>using namespace std;int libraryFine(int d1, int m1, int y1, int d2, int m2, int y2){int fine;if (y1 < y2)return 0;if ((y1 - y2) == 0){if (m1 < m2)return 0;if ((m1 - m2) == 0){if (d1 - d2 <= 0)fine = 0;elsefine = 15 * (d1 - d2);}else{fine = 500 * (m1 - m2);}}elsefine = 10000;return fine;}int main(){int d1 = 9, m1 = 6,y1 = 2015;int d2 = 6, m2 = 6, y2 = 2015;cout << libraryFine(d1, m1, y1, d2, m2, y2);return 0;}
No comments:
Post a Comment