Một số bài tập về lệnh rẽ nhánh1.. Viết chương trình kiểm tra xem ba điểm đó có tạo thành ba đỉnh của tam giác không?. Nhập vào từ bàn phím bốn số thực5. Đưa ra màn hình số lớn nhất, số
Trang 1Bµi 11
Trang 2Bài tập câu lệnh rẽ nhánh
IF <Điều kiện> THEN <Câu lệnh> ;
a Dạng thiếu:
b Dạng đủ: IF <Điều kiện> THEN <Câu lệnh1> ELSE <Câu lệnh2>;
Trong TP cho phép gộp nhiều câu lệnh thành một câu lệnh gọi là câu lệnh ghép, có dạng:
BEGIN
< Các câu lệnh>;
END;
BEGIN
< Các câu lệnh>;
END;
Trang 3Bài 4 <tr.51>: Tính
Nếu x 2 + y 2 ≤ 1
Thì z = x 2 + y 2
;
;
Hãy xác
định Input
và Output
của bài
toán!
Input: Nhập x, y từ bàn phím.
Output: Tính z.
Xác định các
biểu thức
điều kiện của
bài toán?
Nếu x 2 + y 2 > 1
và y x ≥
Thì z = x + y
Nếu x 2 + y 2 > 1
và y < x
Thì z = 0.5
Trang 4Program vd1;
Uses crt;
Var
z,x,y: Real;
BEGIN
Clrscr;
write(‘ Nhap vao x vµ y : ’);
readln(x,y);
if (sqr(x)+sqr(y)<=1) then z := sqr(x)+sqr(y);
if (sqr(x)+sqr(y)>1) and (y>=x) then z := x+y;
if (sqr(x)+sqr(y)>1) and (y<x) then z := 0.5;
Writeln(‘ Z = ‘, z:5:1);
Readln;
END.
Em h·y khai b¸o biÕn cña bµi to¸n?
NÕu x 2 + y 2 ≤
1
Th× Z = x 2 +
y 2
1
vµ y ≥ x
Th× Z = x + y
NÕu x 2 + y 2 >
1
vµ y < x
Th× Z = 0.5
In ra kÕt qu¶?
Trang 5Một số bài tập về lệnh rẽ nhánh
1 Giải bất phương trình bậc nhất ax + b>0.
2 Đọc từ bàn phím một số nguyên n (1 n 5) Chỉ ra cách ≤ ≤
viết bằng tiếng Anh của số đó (Chẳng hạn, nếu gõ n=2 th ì
đưa ra 2 = two).
3 Đọc vào các hệ số a, b, c, d, e, f vào từ bàn phím, giải và biện luận hệ phương trình sau:
;
ax by c
dx ey f
+ =
+ =
4 Đọc vào toạ độ ba điểm A(x1,y1), B(x2,y2), C(x3,y3) Viết chương trình kiểm tra xem ba điểm đó có tạo thành ba đỉnh của tam giác không? Nếu đúng thì là tam giác gì? Diện tích bằng bao nhiêu?
5 Nhập vào từ bàn phím bốn số thực Đưa ra màn hình số lớn nhất, số nhỏ nhất.
Trang 6Bài tập câu lệnh lặp
FOR <biến đếm> := <giá trị đầu> TO <giá trị cuối> DO < câu lệnh>;
b Lặp với số lần lặp không biết trước
FOR <biến đếm> := <giá trị cuối> DOWNTO <giá trị đầu> DO <câu lệnh >;
a Lặp với số lần lặp biết trước
WHILE <Điều kiện> DO <Câu lệnh> ;
Trang 7Bài 1:
1
4
3 3
2 2
1
+
+ +
+ +
=
n
n
S
Dữ liệu ra (Output) : Tổng S
Dữ liệu vào (Input) : Nhập N
Lập chương trình nhập vào số n rồi tính
Trang 8Các bước viết chương trình:
B1: Nhập n;
B2: S:=0; i:=1;
B3: Nếu i>N thì đưa giá
trị S
=> Kết thúc
B4: S:= S +i/(i+1);
Program Bai1;
Uses crt;
Var i,n:integer; S:real;
Begin
Write(‘Nhap n:’);
Readln(n);
S:=0;
For i:=1 to n do S:=S+i/(i+1);
Writeln(‘Tong S :’,S:7:2); Readln;
END.
B5: i:=i+1
=>quay lại bước 3;
Trang 9Program ; …
Var … Begin
Nhap n;
S:=?;
FOR …… TO DO …
S:=S + ; …
In ra S Readln;
End
3
1
27
1 8
1 1
n
Bài 2:
Em hãy hoàn
thiện chương
trình sau để
tính tổng S
Trang 10Bài 3: Lập chương trình tính tổng S.
2
n
25 16
9 4
1
cho đến khi S>=300, cho biết lúc đó n = ?
B1: Gán S:=0; N:=0
B2: Chừng nào S<300 thì
thực hiện:
N:=N+1;
S:= S+ N*N;
B3: In kết quả N
S:=0; N:= 0;
WHILE S<300 DO
Begin N:=N+1;
S:=S + N*N;
End;
Writeln(‘ N = ’,N);
Các bước: câu lệnh trong chương
trình
Trang 111 Đọc từ bàn phím số tự nhiên N Xếp các dấu * thành tam giác cân N dòng.
2 Nhập vào một dãy số nguyên vào từ bàn phím cho đến khi gặp số 0 rồi tính tổng của các số dương và trung bình cộng của các số âm.
3 Tìm số nguyên lớn nhất thoả mãn điều kiện:
5
3 2 6
(Biết rằng chúng luôn tồn tại hữu hạn).
Trang 125 Người ta thả một hòn bi lăn trên một mặt phẳng nghiêng (không có vận tốc ban đầu) Sau T giây người ta đo được quãng đường mà bi lăn được là 5 cm Nhập T và S từ bàn phím, sau đó đưa ra màn hình bảng giá trị các quãng đường mà bi lăn được sau 5 giây, 10 giây , cho đến 1 phút Chạy thử với T=4 và S=80 …
6. Giải bài toán cổ: Trăm trâu, trăm cỏ“ … ”
Tìm số trâu đứng, trâu nằm, trâu già?
7 Tìm năm sinh của nhà thơ Nguyễn Du, biết rằng đến năm 1786 tuổi của ông bằng tổng các chữ số năm ông sinh ra