Professional Documents
Culture Documents
Wedsite
Bài 7: Viết chương trình để người dung nhập vào một số là một tháng nào đó, chương trình sẽ in ra: đây
là tháng mấy (bằng chữ) & số ngày của tháng đó.
Bài giải:
+ Thuật toán:
Bc_1: - Nhập n. (n là biến để nhập vào tháng.)
Bc_2: - Kiểm tra n. (Vd: Bằng câu lệnh If).
- Chuyển sang Bc_3.
Bc_3: - Kết luận.
+ Sơ đồ khối:
Nhập n
n=?
Kết luận
+ Cài đặt:
Program date_of_month;
Var n:integer;
Begin
write(‘Nhap vao thang bat ki: ’);
readln(n);
if (n=1) then writeln(‘Ban vua nhap vao thang 1, thang 1 co 31 ngay.’);
if (n=2) then writeln(‘Ban vua nhap vao thang 2, thang 1 co 28/29 ngay.’);
if (n=3) then writeln(‘Ban vua nhap vao thang 3, thang 1 co 31 ngay.’);
if (n=4) then writeln(‘Ban vua nhap vao thang 4, thang 1 co 30 ngay.’);
if (n=5) then writeln(‘Ban vua nhap vao thang 5, thang 1 co 31 ngay.’);
if (n=6) then writeln(‘Ban vua nhap vao thang 6, thang 1 co 30 ngay.’);
if (n=7) then writeln(‘Ban vua nhap vao thang 7, thang 1 co 31 ngay.’);
if (n=8) then writeln(‘Ban vua nhap vao thang 8, thang 1 co 31 ngay.’);
if (n=9) then writeln(‘Ban vua nhap vao thang 9, thang 1 co 30 ngay.’);
if (n=10) then writeln(‘Ban vua nhap vao thang 10, thang 1 co 31 ngay.’);
if (n=11) then writeln(‘Ban vua nhap vao thang 11, thang 1 co 30 ngay.’);
if (n=12) then writeln(‘Ban vua nhap vao thang 12, thang 1 co 31 ngay.’);
readln;
End.
+ Chú ý:
- Bài toán chưa có yêu cầu ràng buộc khi nhập tháng (n).
Khi ràng buộc, ta có 2 cách:
1. Thông báo cho người dùng giá trị có nghĩa của biến n trong bài toán.
…
write(‘Nhap vao thang bat ki (n:= 1->12): ’);
….
2. Kiểm tra n khi nhập vào, nếu n không thỏa điều kiện (n>=1) and (n<=12) thì
thông báo lỗi khi nhập, ngược lại thì tiếp tục thực hiện chương trình.
…
write(‘Nhap vao thang bat ki: ’);
readln(n);
if (n>=1) and (n<=12) then
begin
if (n=1) then writeln(‘Ban vua nhap vao thang 1, thang 1 co 31 ngay.’);
if (n=2) then writeln(‘Ban vua nhap vao thang 2, thang 1 co 28/29 ngay.’);
if (n=3) then writeln(‘Ban vua nhap vao thang 3, thang 1 co 31 ngay.’);
if (n=4) then writeln(‘Ban vua nhap vao thang 4, thang 1 co 30 ngay.’);
if (n=5) then writeln(‘Ban vua nhap vao thang 5, thang 1 co 31 ngay.’);
if (n=6) then writeln(‘Ban vua nhap vao thang 6, thang 1 co 30 ngay.’);
if (n=7) then writeln(‘Ban vua nhap vao thang 7, thang 1 co 31 ngay.’);
if (n=8) then writeln(‘Ban vua nhap vao thang 8, thang 1 co 31 ngay.’);
if (n=9) then writeln(‘Ban vua nhap vao thang 9, thang 1 co 30 ngay.’);
if (n=10) then writeln(‘Ban vua nhap vao thang 10, thang 1 co 31ngay.’);
if (n=11) then writeln(‘Ban vua nhap vao thang 11, thang 1 co 30ngay.’);
if (n=12) then writeln(‘Ban vua nhap vao thang 12, thang 1 co 31ngay.’);
end;
else writeln(‘Thang ban vua nhap vo khong dung !! Hay nhap lai’);