[C++ Cơ bản 2 - C++CB2] Luyện tập 3 - Cấu trúc lặp
DIEMDANH Điểm danh đầu giờ
Nộp bàiPoint: 100
Đầu buổi học, Thầy giáo điểm danh lớp có ~n~ học sinh bằng cách gọi số thứ tự từ 1 đến ~n~. Hãy in ra các số thứ tự đó.
Input: Một số nguyên ~n~.
Output: Các số từ 1 đến ~n~, cách nhau một dấu cách.
Ràng buộc: 1 ≤ n ≤ 1000
Ví dụ:
Input:
5
Output:
1 2 3 4 5
DEMDAT - Đếm bạn đạt yêu cầu
Nộp bàiPoint: 100
Sau bài kiểm tra, Thầy giáo có điểm của ~n~ học sinh. Một bạn được coi là "đạt" nếu điểm từ 5 trở lên. Hãy đếm xem có bao nhiêu bạn đạt.
Input: Dòng đầu là số nguyên ~n~. Dòng sau gồm ~n~ số nguyên là điểm các bạn.
Output: Số học sinh đạt.
Ràng buộc: 1 ≤ n ≤ 1000; 0 ≤ điểm ≤ 10
Ví dụ:
Input:
5
4 5 6 3 8
Output:
3
MAHOCSINH — Tổng chữ số mã học sinh
Nộp bàiPoint: 100
Mỗi học sinh ở ThinkEdu có một mã số. Thầy giáo muốn tính tổng các chữ số trong mã số ~n~ để làm mã kiểm tra.
Input: Một số nguyên ~n~.
Output: Tổng các chữ số của ~n~.
Ràng buộc: 1 ≤ n ≤ 1 000 000 000
Ví dụ:
Input:
12345
Output:
15
NHAPLAI — Nhập lại điểm cho đúng
Nộp bàiPoint: 100
Phần mềm chấm của ThinkEdu chỉ chấp nhận điểm hợp lệ, tức là một số nguyên từ 0 đến 10. Thầy giáo nhập điểm cho một bạn; nếu nhập sai (nhỏ hơn 0 hoặc lớn hơn 10) thì phải nhập lại, cho đến khi nhập được một điểm hợp lệ. Hãy cho biết Thầy giáo đã nhập tất cả bao nhiêu lần.
Input: Lần lượt các số nguyên, mỗi số một dòng, cho đến khi xuất hiện một số hợp lệ (từ 0 đến 10) thì dừng.
Output: Tổng số lần đã nhập (tính cả lần nhập đúng cuối cùng).
Ràng buộc: Mỗi số nhập có giá trị tuyệt đối không quá 1000.
Ví dụ:
Input:
-3
15
8
Output:
3
PHATKEO — Phát kẹo bỏ lượt
Nộp bàiPoint: 100
Thầy giáo phát kẹo cho các số thứ tự từ 1 đến ~n~, nhưng để trêu cả lớp, thầy bỏ qua (không phát) những bạn có số thứ tự chia hết cho ~k~. Hãy tính tổng số thứ tự của những bạn được nhận kẹo.
Input: Hai số nguyên ~n, k~.
Output: Tổng số thứ tự các bạn được nhận kẹo.
Ràng buộc: ~1 ≤ n ≤ 100000; 1 ≤ k ≤ 1000~
Ví dụ:
Input:
10 3
Output:
37
XEPGHE — Xếp ghế hình chữ nhật
Nộp bàiPoint: 100
Thầy giáo xếp ghế trong phòng học thành một hình chữ nhật gồm ~h~ hàng, mỗi hàng ~w~ chiếc ghế (mỗi ghế ký hiệu bằng dấu ~*~). Hãy in sơ đồ phòng học.
Input: Hai số nguyên ~h, w~.
Output: ~h~ dòng, mỗi dòng gồm ~w~ dấu ~*~ liền nhau.
Ràng buộc: ~1 ≤ h, w ≤ 50~
Ví dụ:
Input:
2 3
Output:
***
***
TIMBAN — Tìm bạn đầu tiên
Nộp bàiPoint: 100
Thầy giáo cầm danh sách điểm của ~n~ học sinh xếp theo thứ tự chỗ ngồi. Thầy muốn trao thưởng cho bạn đầu tiên (theo thứ tự) đạt từ ~m~ điểm trở lên. Hãy in ra số thứ tự chỗ ngồi của bạn đó. Nếu cả lớp không ai đạt, in ~-1~.
Input: Dòng đầu là hai số nguyên ~n, m~. Dòng sau gồm ~n~ số nguyên là điểm theo thứ tự.
Output: Số thứ tự bạn đầu tiên đạt ~m~ điểm, hoặc ~-1~.
Ràng buộc: ~1 ≤ n ≤ 1000; 0 ≤ m, điểm ≤ 10~
Ví dụ: Input:
5 8
5 7 9 6 10
Output:
3
CHIANHOM — Số cách chia nhóm
Nộp bàiPoint: 100
Thầy giáo có ~n~ học sinh và muốn chia thành các nhóm đều nhau (mỗi nhóm có số bạn bằng nhau, không thừa ai). Hỏi có bao nhiêu cách chọn số bạn trong một nhóm? (Chia thành 1 nhóm gồm cả lớp, hay mỗi bạn một nhóm, đều được tính.)
Input: Một số nguyên ~n~.
Output: Số cách chia (chính là số ước của ~n~).
Ràng buộc: 1 ≤ n ≤ 1 000 000
Ví dụ: Input:
6
Output:
4
COLLATZ — Dãy số kỳ lạ về 1
Nộp bàiPoint: 100
Bắt đầu từ số ~n~, Thầy giáo lặp lại quy tắc: nếu số hiện tại chẵn thì chia đôi, nếu lẻ thì nhân 3 rồi cộng 1. Kỳ lạ là dãy luôn về được 1. Hãy đếm xem cần bao nhiêu bước biến đổi để ~n~ về đến 1.
Input: Một số nguyên ~n~.
Output: Số bước biến đổi. (Nếu ~n~ đã bằng 1 thì cần 0 bước.)
Ràng buộc: 1 ≤ n ≤ 1000
Ví dụ: Input:
6
Output:
8
SODOIXUNG — Số đối xứng
Nộp bàiPoint: 100
Một số được gọi là đối xứng nếu đọc từ trái sang phải giống hệt đọc từ phải sang trái (ví dụ 121, 1331). Thầy giáo cho số ~n~, hãy kiểm tra nó có đối xứng không.
Input: Một số nguyên ~n~.
Output: In Doi xung nếu đúng, ngược lại in Khong.
Ràng buộc: ~1 ≤ n ≤ 1 000 000 000~
Ví dụ:
Input:
121
Output:
Doi xung