Tính chất số học (bài 10)

Nộp bài
Time limit: 1.0 / Memory limit: 256M

Point: 1

Lập trình hướng đối tượng yêu cầu tư duy chia nhỏ bài toán thành các phương thức độc lập. Cho một số nguyên dương M, sinh viên cần viết các hàm kiểm tra tính chất số nguyên tố và số đối xứng (palindrome). Hãy in ra màn hình M số nguyên tố đầu tiên và M số đối xứng đầu tiên (bắt đầu từ số 0).

Đầu vào: Một dòng duy nhất chứa số nguyên dương M (1 <= M <= 1000).

Đầu ra:

• Dòng 1: M số nguyên tố đầu tiên, các số cách nhau một khoảng trắng.

• Dòng 2: M số đối xứng đầu tiên, các số cách nhau một khoảng trắng.

Ví dụ:

Input:
5
Output:
2 3 5 7 11
0 1 2 3 4

Chuẩn hóa và thống kê xâu (bài 10)

Nộp bài
Time limit: 1.0 / Memory limit: 256M

Point: 1

Viết chương trình định nghĩa lớp xử lý xâu ký tự để thực hiện các thao tác thống kê văn bản. Nhập vào một xâu ký tự S bất kỳ, hãy thực hiện các yêu cầu sau:

  1. Chuẩn hóa xâu: Xóa các khoảng trắng thừa ở đầu và cuối xâu, đảm bảo giữa các từ chỉ có duy nhất 1 khoảng trắng.

  2. Đếm số lượng từ có trong xâu sau khi đã chuẩn hóa.

  3. Đếm số từ kết thúc bởi ký tự 'G' hoặc 'g'.

Đầu vào: Một dòng chứa xâu S (tối đa 1000 ký tự, có thể chứa nhiều khoảng trắng thừa).

Đầu ra:

• Dòng 1: Xâu đã được chuẩn hóa.

• Dòng 2: Một số nguyên là số lượng từ trong xâu.

• Dòng 3: Một số nguyên là số lượng từ kết thúc bằng 'G' hoặc 'g'.

Ví dụ:

Input:
Lap trinh   huong   doi tuong
Output:
Lap trinh huong doi tuong
5
1

Quản lý điểm học sinh (bài 10)

Nộp bài
Time limit: 1.0 / Memory limit: 256M

Point: 1

Giả sử cần quản lý danh sách học sinh gồm các thông tin: Họ tên, điểm Toán, điểm Lý, điểm Hóa. Hãy xây dựng lớp Học Sinh và tính điểm trung bình (ĐTB) theo công thức: ĐTB = (3Toán + 2Lý + Hóa) / 6. Sau đó, sắp xếp danh sách sinh viên theo thứ tự ĐTB giảm dần và in ra màn hình.

Đầu vào:

• Dòng 1: Số nguyên N (1 <= N <= 100) là số lượng học sinh.

• N dòng tiếp theo, mỗi dòng chứa thông tin của 1 học sinh định dạng: Họ_tên,Toán,Lý,Hóa (các thông tin ngăn cách nhau bằng dấu phẩy).

Đầu ra:

N dòng chứa danh sách học sinh đã được sắp xếp. Mỗi dòng in ra Họ_tên và ĐTB (được làm tròn 2 chữ số thập phân), cách nhau bởi một khoảng trắng.

Ví dụ:

Input:
2
Nguyen Van A,8,7,9
Tran Thi B,9,8,8
Output:
Tran Thi B 8.50
Nguyen Van A 7.83

Sắp xếp cột ma trận (bài 10)

Nộp bài
Time limit: 1.0 / Memory limit: 256M

Point: 1

Xây dựng lớp Ma Trận để xử lý mảng hai chiều. Cho một ma trận số nguyên M có kích thước R hàng và C cột. Hãy thực hiện sắp xếp các phần tử trên mỗi cột của ma trận theo thứ tự giảm dần từ trên xuống dưới. Cuối cùng, in ra ma trận đã sắp xếp và tổng của tất cả các phần tử trong ma trận.

Đầu vào:

• Dòng 1: Hai số nguyên R và C (1 <= R, C <= 100).

• R dòng tiếp theo, mỗi dòng chứa C số nguyên đại diện cho các phần tử của ma trận.

Đầu ra:

• R dòng đầu tiên: Trạng thái ma trận sau khi đã sắp xếp các cột giảm dần.

• Dòng cuối cùng: Tổng các phần tử của ma trận.

Ví dụ:

Input:
2 3
1 5 9
4 2 8
Output:
4 5 9
1 2 8
29


Lọc sinh viên giỏi ICTU

Nộp bài
Time limit: 1.0 / Memory limit: 256M

Point: 1

Tính kế thừa là một trong những đặc trưng quan trọng nhất của OOP. Xây dựng lớp Sinh Viên kế thừa từ lớp Người (gồm họ tên, năm sinh), bổ sung thêm thuộc tính Điểm Trung Bình. Nhập vào danh sách N sinh viên, hệ thống của trường cần lọc ra và hiển thị thông tin của các sinh viên xuất sắc có điểm trung bình lớn hơn 8.5 (giữ nguyên thứ tự như khi nhập). Nếu không có sinh viên nào thỏa mãn, in ra "KHONG CO".

Đầu vào: • Dòng 1: Số nguyên N (1 <= N <= 100).

• N dòng tiếp theo, mỗi dòng định dạng: Họtên,Nămsinh,Điểmtrungbình (cách nhau bằng dấu phẩy).

Đầu ra: Danh sách những sinh viên có điểm trung bình > 8.5. Mỗi sinh viên in trên 1 dòng gồm Họtên và Nămsinh (cách nhau khoảng trắng).

Ví dụ:

Input:
3
Le Van C,2005,8.6
Hoang Thi D,2004,8.0
Vu Van E,2005,9.1
Output:
Le Van C 2005
Vu Van E 2005