cau truc re nhanh cuc dinh

18 3 0
cau truc re nhanh cuc dinh

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

Mời các em cùng xem và tìm hiểu. các tình huống sau nhé!.[r]

(1)(2)(3)

1 RẼ NHÁNH

Mời em xem tìm hiểu

(4)

Để tớ nghĩ đã.

Nếu ngày mai mưa

tớ nhà học bài. À! Nếu ngày mai mưa tớ

ở nhà học bài, nếu khơng mưa

thì tớ đến nhà cậu học nhé.

Này, ngày mai cậu có

(5)

Nếu

thì

Nếu … thì…, nếu khơng

Cấu trúc dùng để mơ tả mệnh đề có dạng trên gọi Cấu trúc rẽ nhánh

(6)

Ví dụ: Tìm nghiệm thực phương trình bậc hai

ax2+bx+c=0 (a0)

Hãy nêu bước giải phương trình

bậc hai?

- Nhập hệ số a, b, c

- Tính D=b2 - 4ac

- Nếu D < thì thơng báo PT vơ nghiệm, ngược lai

(7)

Các em xem sơ đồ thuật tốn giải phương trình

bậc (với a 0).

Sau tính D, tùy thuộc vào giá trị D, hai thao tác thực hiện.

Nhập a, b, c Tính D= b2 – 4ac

Kiểm tra D < 0 Tính đưa

ra nghiệm Thông báo vô nghiệm Kết thúc

(8)

IF <điều Kiện> THEN <câu lệnh>;

Điều kiện

Đúng

Câu lệnh

Nếu <điều kiện> <câu lệnh> thực hiện, sai <câu lệnh> bị bỏ qua.

Sai

a Dạng thiếu

Câu lệnh

Đúng

Câu lệnh Điều kiện

Điều kiện 2 Câu lệnh IF - THEN

- Điều kiện biểu thức lôgic.

- Câu lệnh lệnh Pascal.

Trong đó:

(9)

b Dạng đủ IF <điều kiện> THEN <câu lệnh 1>

ELSE <câu lệnh 2>;

điều kiện

Đúng

câu lệnh 1 Sai

câu lệnh

Nếu <điều kiện> <câu lệnh 1> thực hiện, ngược lại <câu lệnh 2> thực hiện.

điều kiện

câu lệnh câu lệnh

điều kiện

câu lệnh 1 điều kiện

Ví dụ: IF a mod 2=0 THEN Writeln(‘a la so chan’)

(10)

Ví du: Để tìm số lớn (max) trong hai số a

b.

Cách 1: sử dụng if-then thiếu max:=a;

if b>a then max:=b;

Cách 2: sử dụng if-then đủ

(11)

3 CÂU LỆNH GHÉP

Trong Pascal cho phép gộp nhiều câu lệnh thành một

câu lệnh gọi câu lệnh ghép, có dang: begin

< câu lệnh>; end;

begin

< câu lệnh>;

end;

IF D<0 THEN Writeln(‘Phuong trinh vo nghiem.’)

ELSE BEGIN

X1:= (-b- sqrt(D))/(2*a); X2:= -b/a-X1;

Writeln(‘ X1= ’, X1:5:1, ‘ X2=’, X2:5:1);

END;

(12)

3 CÂU LỆNH GHÉP

Hãy cho biết lệnh sau hay sai? Vì sao?

if i=j then if j=k then writeln(‘i=k’)

else writeln(‘i<>j’); if i=j then

if j=k then

writeln(‘i=k’)

else writeln(‘i<>j’);

Đúng là:

-Lưu ý:

if i=j then begin

if j=k then writeln(‘i=k’); end

else writeln(‘i<>j’); if i=j then

begin

if j=k then

writeln(‘i=k’); end

(13)

4 MỘT SỐ VÍ DỤ

Ví dụ 1:

Tìm nghiệm thực phương trình bậc hai

(14)

Hãy xác định Input

và Output của bài?

Ví dụ 2: Tìm số ngày năm N, biết năm nhuận

năm chia hết cho 400 chia hết cho không chia hết cho 100.

Input: Nhập N từ bàn phím.

Output: Đưa số ngày năm N hình.

Nếu N chia hết cho 400 N chia hết cho khơng chia hết cho 100

thì In số ngày năm nhuận 366,

(15)

Em hÃy khai báo biến cho toán trên?

Viết điều kiện:

Nếu N chia hết cho 400 chia hết cho 4 không chia hết cho 100

thì nhận số ngày năm nhuận, ngược lai nhận số ngày năm thường.

Nhập vào Năm cần tính số ngày.

(16)(17)(18)

Ngày đăng: 14/04/2021, 05:45

Tài liệu cùng người dùng

Tài liệu liên quan