1. Trang chủ
  2. » Giáo án - Bài giảng

cấu trúc rẽ nhánh

16 473 0
Tài liệu đã được kiểm tra trùng lặp

Đ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

Thông tin cơ bản

Tiêu đề Cấu Trúc Rẽ Nhánh
Trường học Trường Đại Học Công Nghệ Thông Tin
Chuyên ngành Công Nghệ Thông Tin
Thể loại Bài Giảng
Thành phố Thành Phố Hồ Chí Minh
Định dạng
Số trang 16
Dung lượng 223,5 KB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Nếu mai trời không mưa thì An sẽ đến nhà Bình.. Nếu mai trời không mưa thì An sẽ đến nhà Bình, nếu mưa thì An sẽ gọi điện cho Bình.. Rẽ nhánh Xét ví dụ 1: Hai bạn An và bạn Bình hẹn n

Trang 1

1/ Để nhập một số vào từ bàn phím chúng ta dùng cặp thủ tục nào? Hãy cho ví dụ?

Kiểm tra bài cũ

Write(<Danh sách kết qủa ra>);

Readln(<Danh sách biến vào>);

Đáp án

Trang 2

CHƯƠNG 3

C U TR C R NH NH Ấ Ú Ẽ Á

Trang 3

Nếu mai trời không

mưa thì An sẽ đến

nhà Bình.

Nếu mai trời không mưa thì

An sẽ đến nhà Bình, nếu mưa thì An sẽ gọi điện

cho Bình.

1 Rẽ nhánh

Xét ví dụ 1: Hai bạn An và bạn Bình hẹn nhau

Cấu trúc dùng để mô tả các mệnh đề đó gọi là cấu

trúc rẽ nhánh thiếu và đủ

Trang 4

1 Rẽ nhánh

VD 2: Giải phương trình bậc hai: ax2 + bx + c =0

Tính D:=b*b+4a*c

Nếu d≥0 thì phương trình có nghiệm

Nếu d<0 thì phương trình vô nghiệm

Sơ đồ

Tính đưa ra nghiệm thực

và kết thúc

Thông báo vô nghiệm

và kết thúc

Nhập a,b

D ← b 2 -4ac

Sai

Hãy nêu cách giải phương trình đó?

Trang 5

Nếu mai trời không mưa thì An sẽ đến nhà Bình

điều kiện công việc

2 Câu lệnh if - then

a Dạng thiếu: if <điều kiện> then <câu lệnh>;

Trong đó:

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

- Câu lệnh là một câu lệnh của Pascal

Sơ đồ thể hiện cấu trúc if -then

Ý nghĩa: Tính và kiểm tra điều kiện Nếu điều kiện đúng thì câu lệnh sẽ được thực hiện, ngược lại thì câu lệnh sẽ bị bỏ qua

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

Đúng

Sai

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

Trang 6

2 Câu lệnh if - then

VD: Hãy dùng cấu trúc if – then để mô tả cấu trúc

rẽ nhánh sau:

a Nếu d<0 thì phương trình vô nghiệm

b Nếu a mod 2 =0 thì a là số chẵn

if <điều kiện> then <câu lệnh>;

a if d<0 then writeln(‘phuong trinh vo nghiem’);

b if a mod 2 =0 then writeln(‘a la so chan’);

Giải

Trang 7

VD: Nếu mai trời không mưa thì An sẽ đến nhà Bình,

Nếu trời mưa thì An sẽ gọi điện cho Bình

công việc 2 ngược lại đk

2 Câu lệnh if – then

b Dạng đủ

if <điều kiện> then <câu lệnh 1> else <câu lệnh 2>;

Sơ đồ cấu trúc if - then

điều kiện Câu lệnh 1 Câu lệnh 2

đúng Sai

Ý nghĩa: Tính và kiểm tra điều kiện Nếu điều kiện

đúng thì câu lệnh1 sẽ được thực hiện, ngược lại thì câu lệnh 2 sẽ được thực hiện

điều kiện Câu lệnh 1 Câu lệnh 2

đúng

Sai

Trang 8

2 Câu lệnh if - then

if <điều kiện> then <câu lệnh 1> else <câu lệnh 2>;

VD: Hãy dùng cấu trúc if – then để mô tả cấu trúc rẽ nhánh sau:

a Nếu d<0 thì phương trình vô nghiệm, ngược thì phương trình có nghiệm

b Nếu a mod 2=0 thì a là số chẵn, ngược lại a là số

a if d<0 then writeln(‘ phuong trinh vo nghiem’) else

writeln(‘phuong trinh co nghiem’);

b if a mod 2=0 then writeln(‘a la so chan’) else

writeln(‘a la so le’);

Trang 9

3 Câu lệnh ghép

Trong Pascal cho phép gộp một dãy câu lệnh thành một câu lệnh ghép Câu lệnh ghép có dạng

if d<0 then writeln(‘ phuong trinh vo nghiem’)

else

begin

x1:=( - b – sqrt(d))/(2*a);

x2:= - b/a - x1;

end;

ví dụ:

Chú ý: Trước từ khoá else câu lệnh không có dấu chấm phẩy

Begin

<các câu lệnh>;

End;

Chú ý: sau end phải có dấu chấm phẩy;

Trang 10

3 Câu lệnh ghép

VD: Hãy dùng cấu trúc if- then để mô tả cấu trúc

rẽ nhánh sau: Nếu ngày=3 và tháng =7 thì đưa

ra hai câu thông báo “hôm nay là ngày 3

tháng 7”.

if (ngay=3) and (thang=7) then

writeln(‘hom nay la ngay 3 thang 7’);

writeln(‘hom nay la ngay 3 thang 7’);

Begin

end;

Trang 11

Cấu trúc dùng để mô tả mệnh đề

Nếu…thì,….

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

Được gọi là cấu trúc rẽ nhánh

Cấu trúc rẽ nhánh dạng thiếu

If <điều kiện> then <câu lệnh>;

Cấu trúc rẽ nhánh dạng đủ

If <điều kiện> then <câu lệnh 1> else <câu lệnh 2>;

Câu lệnh ghép

Begin

<dãy các câu lệnh>;

Trang 12

4.Một số ví dụ

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

hai: ax 2 +bx+c=0 với a ≠ 0;

Hãy xác định input và 0utput của bài toán?

Input: nhập a, b, c;

output: đưa ra nghiệm thực hoặc thông báo

“phương trình vô nghiệm”.

Trang 13

4.Một số ví dụ

Program Giai_PTB2 ;

uses crt;

var a, b, c, d, x1, x2: real;

Begin

write(‘a, b, c’);

readln(a, b, c);

d:=b*b – 4*a*c;

if d < 0 then writeln(‘ phuong trinh vo nghiem’)

else

begin

x1:= (-b - sqrt(d))/(2*a);

x2:= -b/a – x1;

writeln(‘x1=‘, x1:8:3, ‘x2=‘,x2:8:3);

end;

readln

end.

Hãy cho biết câu lệnh dùng để nhập

a, b, c và tính d?

Hãy cho biết câu lệnh if – then ở ví

dụ này thuộc dạng thiếu hay đủ?

Trong chương trình này

có dùng câu lệnh ghép không? Nếu có nó được bắt đầu bằng từ khóa nào và kết thúc ở đâu?

Trang 14

Ví dụ 2: Tìm số ngày của năm N, biết rằng năm nhuận là

năm chia hết cho 400 hoặc chia hết cho 4 nhưng không chia hết cho 100 (biết rằng năm nhuận có 366 ngày, năm thường có 365 ngày).

Hãy xác định input và output?

input: N nhập từ bàn phím

output: đưa ra số ngày của năm N ra màn hình

Nếu N chia hết cho 400 hoặc chia hết cho 4

nhưng không chia hết cho 100.

thì số ngày của năm N là nhuận có 366 ngày,

ngược lại số ngày là 356 ngày.

Trang 15

program Nam_nhuan;

uses crt;

var n: integer;

Begin

write(‘nhap nam can tim so ngay N=‘);

readln(N);

if (N mod 400 =0) or ((N mod 4=0) and(N mod 100<>0) then

writeln(‘nam do la nam nhuan co 366 ngay’)

else

writeln(‘nam do khong la nam nhuan co 365 ngay’);

readln

end

Hãy viết điều kiện Nếu N chia hết cho 400 hoặc chia hết cho 4 nhưng không chia hết cho 100

Thì là năm nhuận

có 366 ngày ngược lại thì có số ngày là

365 ngày

Em hãy khai báo biến cho bài toán trên?Hãy nhập

năm cần tìm

số ngày?

Trang 16

Cho một số a thuộc số nguyên được nhập vào

từ bàn phím Hãy lập trình để kiểm tra xem a có chia hết cho 3 không?

Program kiemtra;

uses crt;

var n: Integer;

Begin

write(‘Hay nhap n tu ban phim’);

readln(n);

if n mod 3 =0 then writeln(‘n la so chia het cho 3’)

else writeln(‘ n la so khong chia het cho 3’);

readln

end

Ngày đăng: 30/07/2013, 01:25

HÌNH ẢNH LIÊN QUAN

Sơ đồ thể hiện cấu trúc if -then - cấu trúc rẽ nhánh
Sơ đồ th ể hiện cấu trúc if -then (Trang 5)
Sơ đồ cấu trúc if - then - cấu trúc rẽ nhánh
Sơ đồ c ấu trúc if - then (Trang 7)

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w