Professional Documents
Culture Documents
KIỂM CHỨNG PHẦN MỀM
KIỂM CHỨNG PHẦN MỀM
Bài tập 2: Dùng kỹ thuật phân tích lớp tương đương. Hãy phân tích và sinh ra bộ
testcase cho bài toán PreviousDate (tìm ngày trước đó từ ngày nhập vào).
// Hàm kiểm tra xem một năm có phải là năm nhuận hay không
bool isLeapYear(int year) {
return (year % 4 == 0 && year % 100 != 0) || (year % 400 == 0);
}
int daysInMonth;
switch (month) {
case 4: case 6: case 9: case 11:
daysInMonth = 30;
break;
case 2:
daysInMonth = isLeapYear(year) ? 29 : 28;
break;
default:
daysInMonth = 31;
}
return true;
}
int main()
{
ifstream infile("dates.txt"); // Mở tệp tin dates.txt để đọc
if (!infile) {
cout << "Không thể mở tệp tin." << endl;
return 1;
}
// In ngày đã cho
cout << "Ngày: " << dd << "/" << mm << "/" << yy;
// In ngày trước đó
cout << " => Ngày trước đó: " << dd << "/" << mm << "/" << yy << endl;
}