3. Điều kiện thoát
PHẦN THỰC HÀNH:
1. Cho chương trình sau: Program Doanthu; Var
i, So : integer; Begin
So := 0; For i := 1 to 10 do So := So + i; Write(So); Readln; End.
a. Hãy giải thích từng lệnh và cho biết chương trình trên làm việc gì?
b. Hãy bổ sung những thông báo cần thiết vào chương trình trên để làm dễ dàng cho người sử dụng. c. Nếu sửa lại chương trình như sau:
Program Doanthu; Var
i, So : integer; Begin
For i := 1 to 10 do Begin So := So + i; Write(So); End; Readln; End.
Chương trình trên sẽ làm việc gì? 2. Cho chương trình sau:
Program Doanthu; Var i, So : integer; Begin So := 0; For i := 10 downto 1 do So := So + i;
Write(So); Readln; End.
a/ Hãy giải thích từng lệnh và cho biết chương trình trên làm việc gì?
b/ Hãy bổ sung những thông báo cần thiết vào chương trình trên để làm dễ dàng cho người sử dụng.
3. Viết chương trình tính tổng các số nhập vào từ bàn phím, cho đến khi gõ vào số 0 bằng cách dùng vòng lặp Repeat.
4. Xem chương trình sau: Program Baitap; Var
x, i : integer; Begin
Writeln(‘Tua de la gi ? ……….. ‘);
Readln(x); if x < 1 then
Writeln (‘Khong xet’) Else Begin i:=2; While x mod i <> 0 do i := i + 1; if i = 1 then Writeln(‘x la:………’) Else
Writeln(‘x khong la: ………..’);
Readln;
End.
Bạn đoán xem chương trình trên muốn thực hiện điều gì, bạn thêm gì vào chỗ ….. để người xem dễ hiểu.
5. Bạn xem chương trình sau: Program Baitap; Var gt, i, n : integer; Begin gt:= 1; i:= 0;
Write(‘Ban nhap vao so n = ‘); Readln(n);
Repeat
gt := gt * i; Until i = n; Writeln(gt); Readln;
End.
Giải thích từng câu lệnh trong chương trình, cho biết chương trình trên thực hiện điều gì. 6. Viết chương trình nhập vào một số nguyên n không âm, đọc n từ bàn phím, nếu n âm, yêu cầu nhập lại. Viết bằng Repeat và While. Theo bạn cách viết nào tự nhiên và tốt hơn?
7. Viết chương trình tìm ước số lẻ lớn nhất của một số nguyên dương n. (ví dụ ước số lẻ lớn nhất của 60 là 15). Viết bằng While và Repeat.
Hướng dẫn: Chia n cho 2 nhiều lần cho đến khi nào không thể chia hết được nữa, số dư còn lại sẽ là ước số lẻ lớn nhất của n.
8. Viết chương trình đọc số tự nhiên n và in ra n!. Sử dụng câu lệnh While. 9. Viết chương trình in ra các kí tự từ A đến Z và từ a đến z như dạng sau: Kí tự Mã ASCii của kí tự A : 65 B : 66 … … Z : 90 a : 97 b : 98 … … z : 122
10. Viết chương trình lặp đi lặp lại nhiều lần một công việc sau: Đọc một kí tự và in ra mã ASCii của nó. Chương trình kết thúc khi phím 0 được nhấn.
11. Viết chương trình nhập vào một số nguyên dương, in ra ước số lớn nhất của nó là lũy thừa của 2. Ví dụ: nhập 160, in ra 32.
12. Viết chương trình nhập vào một số tự nhiên, kiểm tra xem số đó có phải là số nguyên tố hay không, dùng câu lệnh Repeat.
13. Viết chương trình in ra n số nguyên tố đầu tiên, n là số được nhập vào.
14. Viết chương trình nhập vào một số nguyên dương, tính S = 1 + 2 + …+ n.
15. Viết chương trình tính S = 12 + 22 + …+n2.
16. Viết chương trình nhập n nguyên dương và tính S = 1 + 1/2 + … + 1/n.