Trong bài này bạn sẽ biết cách kết hợp và câu lệnh điều kiện và lồng các vòng lặp vào nhau để giải quyết những bài toán khó.
Nội dung:
Dùng câu lệnh rẽ nhánh trong vòng lặp
Điều khiển vòng lặp với break và continue
Vòng lặp lồng nhau
Thử thách ++
Nhập vào 2 cạnh và in ra bể bơi như bên.
Gợi ý: Bạn hãy mở bảng mã ASCII lên và xem mã -37 là ký tự gì?
Thử thách += 2
Số nguyên tố là số tự nhiên lớn hơn 1 và chỉ có thể chia hết cho 1 và chính nó. Có nghĩa rằng trong khoảng [2, X) mà chỉ cần có một số mà X chia hết cho số đó thì X không phải là số nguyên tố.
Viết một chương trình cho phép nhập vào X và kiểm tra xem X có phải số nguyên tố không.
Ví dụ:
2 là số nguyên tố do chỉ chia hết cho 1 và 2
3 là số nguyên tố do chỉ chia hết cho 1 và 3
11 là số nguyên tố do nó chỉ chia hết cho 1 và 11
4 không phải là số nguyên tố do nó chia hết cho 2
20 không phải là số nguyên tố do nó chia hết cho 2
15 không phải là số nguyên tố do nó chia hết cho 3
Kỹ thuật đặt cờ hiệu
Đặt cờ hiệu là một kỹ thuật dùng kết hợp với vòng lặp để biết rằng khi chạy xong vòng lặp đó, cờ có bị thay đổi không. Ví dụ bạn cần kiểm tra số nguyên tố. Bạn cần một vòng lặp chạy i từ 2 đến X - 1. Trước vòng lặp bạn hãy khai báo một biến cờ hiệu bool mang giá trị true Nếu trong vòng lặp đó mà X chia hết cho i thì bạn hãy gán biến cờ hiệu đó thành false. Có nghĩa là khi chạy xong vòng lặp nếu cờ hiệu không bị thay đổi giá trị thành false thì có nghĩa là X không chia hết cho bất kì số i nào. Có nghĩa là biến cờ hiệu đó sẽ quyết định X có phải là số nguyên tố hay không.
Kỹ thuật đặt cờ hiệu tổng quát rằng ta sẽ đặt một biến để lưu trạng thái ban đầu. Sau khi chạy xong vòng lặp nếu có sự thay đổi của biến đó thì bạn sẽ hiểu rằng cờ đó bị thay đổi có ý nghĩa gì.
Cờ hiệu không chỉ có kiểu bool mà nó còn có thể mang kiểu int hay float. Và mỗi loại cờ hiệu sẽ có giá trị khởi tạo và ý nghĩa khác nhau. Lập trình viên là người định nghĩa giá trị, kiểu và ý nghĩa của cờ hiệu do chính họ tạo ra.
Xem thêm về kỹ thuật đặt cờ hiệu.