[Buổi 24][Lớp & đối tượng][HW] Bài 1: Rectangle Class
Rectangle Class
Bối cảnh
Hai object Rectangle chứa width,height và tự cung cấp method area(). Chương trình cần so diện tích mà không tự tính lại từ field ở main. Bài Homework Easy nhấn mạnh tư duy data + behavior: object biết state của chính nó và chịu trách nhiệm trả diện tích. Nếu hai area bằng nhau thì EQUAL; ngoài ra chọn FIRST hoặc SECOND.
Mục tiêu quan trọng của bài là giữ công thức/behavior bên trong class thay vì để main tự tính lại ở nhiều nơi. Mỗi object phải có state riêng và method đọc đúng state đó. Khi behavior được gọi nhiều lần hoặc dùng trong ranking, một nguồn logic duy nhất giúp tránh hai công thức gần giống nhưng cho kết quả khác nhau.
Yêu cầu
- Tạo class Rectangle với width,height và area().
- Đọc hai hình.
- In
FIRST,SECONDhoặcEQUALtheo diện tích.
Input
Bốn số w1 h1 w2 h2.
Output
Một từ.
Ràng buộc
0≤w,h≤10^9.
Ví dụ 1
Input
3 4 2 5
Output
FIRST
Giải thích
Rectangle1 có area 3*4=12; rectangle2 có 2*5=10. 12 lớn hơn10 nên output FIRST.
Trường hợp mẫu cũng cho thấy kết quả được lấy thông qua behavior của object, không phải do main tự thay đổi field rồi tính tạm. Mỗi object giữ state độc lập, nên các phép tính ở object này không làm thay đổi object khác và output phản ánh đúng state đã nhập.
Ví dụ 2
Input
1 1 1 1
Output
EQUAL
Giải thích
Hai hình đều 1x1 nên area cùng bằng1. Không object nào lớn hơn, output EQUAL.
Trường hợp mẫu cũng cho thấy kết quả được lấy thông qua behavior của object, không phải do main tự thay đổi field rồi tính tạm. Mỗi object giữ state độc lập, nên các phép tính ở object này không làm thay đổi object khác và output phản ánh đúng state đã nhập.
Thông tin học tập
- Module: M07
- Buổi: B24
- Loại bài: HOMEWORK
- Độ khó: Easy
- Concepts: class, methods, multiple objects
- Giới hạn kiến thức: B01-B24
- Time limit: 1 second(s)
- Memory limit: 256 MB
- Point: 100
Comments