[Buổi 24][Lớp & đối tượng][WS] Bài 1: Smart Student


LÀM BÀI

Points: 100
Time limit: 1.0s
Memory limit: 256M

Author:
Problem types
Allowed languages
C++

Smart Student

Bối cảnh

Mỗi Student object giữ id, name và ba điểm; object tự tính average và xếp loại.

Chưa yêu cầu encapsulation chặt; trọng tâm là data + behavior.

Yêu cầu

  1. Tạo class Student có data id,name,m1,m2,m3.
  2. Method average() trả trung bình.
  3. Method rank() trả GOOD nếu avg>=8, PASS nếu avg>=5, ngược lại FAIL.
  4. Đọc n object và in id avg rank.

Yêu cầu tổ chức code

Phải có method average() và method xếp loại trong class.

Online Judge chấm output. Giảng viên có thể review thêm cấu trúc code để xác nhận học viên luyện đúng kỹ năng OOP của buổi.

Input

Dòng 1 n; n dòng id name m1 m2 m3.

Output

n dòng.

Ràng buộc

1≤n≤1000, điểm 0..10.

Ví dụ 1

Input

3
S1 An 8 8 8
S2 B 5 5 5
S3 C 4 5 5

Output

S1 8.00 GOOD
S2 5.00 PASS
S3 4.67 FAIL

Giải thích

S1 có trung bình (8+8+8)/3=8.00 nên rank GOOD. S2 trung bình 5.00 nên PASS. S3 có (4+5+5)/3=4.67, dưới 5 nên FAIL. Mỗi object tự tính average và rank từ chính ba điểm của nó, tạo ba dòng output tương ứng.

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
A A 10 10 10

Output

A 10.00 GOOD

Giải thích

Student A có cả ba điểm 10 nên average=10.00, chắc chắn đạt ngưỡng GOOD. Output A 10.00 GOOD xác nhận method rank dựa trên average của object.

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: WORKSHOP
  • Độ khó: Medium
  • Concepts: class, objects, methods, state, vector
  • Giới hạn kiến thức: B01-B24
  • Time limit: 1 second(s)
  • Memory limit: 256 MB
  • Point: 100

Comments

There are no comments at the moment.

Zalo