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

Cấu trúc rẽ nhánh

15 453 1
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 Không rõ (Chưa cung cấp tên trường)
Chuyên ngành Lập trình
Thể loại Bài giảng
Năm xuất bản 2008
Thành phố Chưa rõ
Định dạng
Số trang 15
Dung lượng 408,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

CẤU TRÚC RẼ NHÁNHRẼ NHÁNH CÂU LỆNH IF-THEN CÂU LỆNH GHÉP MỘT SỐ VÍ DỤ 1... CẤU TRÚC RẼ NHÁNHRẼ NHÁNH CÂU LỆNH IF-THEN CÂU LỆNH GHÉP MỘT SỐ VÍ DỤ 2.. Nếu điều kiện đúng câu lệnh 1 được th

Trang 1

Để thực hiện chương trình được viết bằng một ngôn ngữ lập trình

ta cần phải làm gì?

KIỂM TRA BÀI CŨ:

1 Soạn thảo :Viết chương trình, nhập chương trình vào máy.

2 Dịch (Alt+F9): Phát hiện và thông báo lỗi cú pháp, NLT sửa lỗi.

3 Thực hiện chương trình (Ctrl+F9).

4 Nhập vào các giá trị chạy thử - Nhấn Enter.

Trang 2

chương 2: cấu trúc rẽ nhánh và lặp

CẤU TRÚC RẼ NHÁNH

Nội dung:

1 Rẽ Nhánh

2 Câu Lệnh If-Then

3 Câu Lệnh Ghép

4 Một Số Ví Dụ

Tháng 10 năm học 2008

Trang 3

CẤU TRÚC RẼ NHÁNH

RẼ NHÁNH CÂU LỆNH IF-THEN CÂU LỆNH GHÉP MỘT SỐ VÍ DỤ

1 RẼ NHÁNH

TRƯỜNG HỌC 1

HÃY ĐƯA RA MỆNH ĐỀ NẾU- THÌ THEO HÌNH VẼ 2 ?

HS B

HS A

HÌNH VẼ 2

Nếu bạn A học trường 1 Thì rẽ bên trái Nếu bạn B học trường 2 Thì rẽ bên phải Nếu bạn A không học trường 2 Thì rẽ bên trái

HÃY ĐƯA RA MỆNH ĐỀ NẾU- KHÔNG THÌ THEO HÌNH VẼ 2 ?

HÌNH VẼ 1

TRƯỜNG HỌC 2

Trang 4

CẤU TRÚC RẼ NHÁNH

RẼ NHÁNH CÂU LỆNH IF-THEN CÂU LỆNH GHÉP MỘT SỐ VÍ DỤ

Nhập a,b,c

D  b 2 -4ac

D≥0?

Thơng báo vơ Nghiệm, KT

Tính và đưa ra Nghiệm, KT

Đ S

Sơ đồ thể hiện sự rẽ nhánh

1 RẼ NHÁNH

Trang 5

CẤU TRÚC RẼ NHÁNH

RẼ NHÁNH CÂU LỆNH IF-THEN CÂU LỆNH GHÉP MỘT SỐ VÍ DỤ

Nhập a,b,c

D  b 2 -4ac

D<0?

Thơng báo Nghiệm kép, KT

PT vơ Nghiệm, KT

Đ S

Sơ đồ thể hiện sự rẽ nhánh

1 RẼ NHÁNH

D=0?

Đ

Thơng báo 2

Nghiệm, KT S

Trang 6

CẤU TRÚC RẼ NHÁNH

RẼ NHÁNH CÂU LỆNH IF-THEN CÂU LỆNH GHÉP MỘT SỐ VÍ DỤ

2 CÂU LỆNH IF-THEN

Điều kiện Đ

S

Câu lệnh

Điều kiện Đ

S

Câu lệnh 1 Câu lệnh 2

IF <Điều kiện> Then

<Câu lệnh>;

a Dạng thiếu

IF <Điều kiện> Then <Câu lệnh 1>

ELSE <Câu lệnh 2>;

b Dạng đủ

Nếu điều kiện đúng câu lệnh

được thực hiện, ngược lại câu

lệnh sẽ bị bỏ qua

Nếu điều kiện đúng câu lệnh 1 được thực hiện, ngược lại câu lệnh 2 sẽ được thực hiện

Sau mỗi câu lệnh được kết thúc bằng dấu ;

nhưng câu lệnh trước ELSE không có dấu ;

? Có nhận xét gì về câu lệnh trước ELSE

ELSE

Tên dành riêng (từ khĩa)

Điều kiện :

Là biểu thức quan hệ hoặc biểu thức logic

Điều kiện :

Là câu lệnh đơn

Câu lệnh 1 Câu lệnh 2 :

Câu lệnh

Hãy so sánh hai cấu trúc trên?

Chú ý: Dạng đủ cĩ thể lồng nhau, khi đĩ Else

sẽ gắn với If gần nhất.

Trang 7

CẤU TRÚC RẼ NHÁNH

RẼ NHÁNH CÂU LỆNH IF-THEN CÂU LỆNH GHÉP MỘT SỐ VÍ DỤ

If a mod 2=0 then

Write( ‘ a la so chan ’);

If (a>0) and (b>0) and (c>0) and

(a+b>c) and (b+c>a) and (a+c>b)

then

Write(‘a, b, c la ba canh tam

giac’)

Else

Write(‘ khong la ba canh tam

giac’);

2 CÂU LỆNH IF-THEN

Ví dụ 1: Viết thơng báo nếu số nguyên

a chia hết cho 2 thì a là số chẳn

Ví dụ 2: Kiểm tra xem 3 số nguyên

a,b,c cĩ phải 3 cạnh của tam giác

khơng?

a mod 2=0

Nhập a

Đ

a là số chẳn

S

a>0,b>0, c>0,a+b>c, b+c>a, a+c>b

Nhập a,b,c

Đ

a,b,c là 3 cạnh tam giác

S

a,b,c kgơng là 3 cạnh

tam giác

Trang 8

CẤU TRÚC RẼ NHÁNH

RẼ NHÁNH CÂU LỆNH IF-THEN CÂU LỆNH GHÉP MỘT SỐ VÍ DỤ

3 CÂU LỆNH GHÉP

Sau Then, Else nếu thực hiện nhiều hơn một câu lệnh thì phải

được đặt giữa BEGIN END <Các câu lệnh> (câu lệnh ghép)

If <Điều kiện> then

Begin

<Câu lệnh 1>;

<Câu lệnh 2>;

<Câu lệnh n>;

End

Else

Begin

<Câu lệnh 1>;

<Câu lệnh 2>;

<Câu lệnh n>;

End;

Ví du: ï Đổi chổ 2 số a, b sao cho số bé đứng trước, số lớn đứng sau.

a=8;

b=2;

If a>b then {doi cho b cho a} BEGIN

tg:=a;

a:=b;

b:=tg;

Write(‘doi cho b cho a, ket qua la’, a,b);

END Else Write(‘khong doi cho’);

Câu lệnh ghép

8

tg

2

a

8 b

Trang 9

CẤU TRÚC RẼ NHÁNH

RẼ NHÁNH CÂU LỆNH IF-THEN CÂU LỆNH GHÉP MỘT SỐ VÍ DỤ

4 MỘT SỐ VÍ DỤ

PROGRAM SOCHAN;

Var a: word;

BEGIN

Write(‘Nhap vao so nguyen a’);

Read(a);

If a mod 2=0 then

Write( ‘ a la so chan ’)

Readln

END.

Program kiemtra;

Uses Crt;

Var a,b,c: integer;

BEGIN Clrscr;

Write(‘ Nhap vao 3 so nguyen a,b,c);

Readln(a,b,c);

If (a>0) and (b>0) and (c>0) and (a+b>c) and (b+c>a) and (a+c>b) then

Write(‘a, b, c la ba canh tam giac’) Else

Write(‘ khong la ba canh tam giac’);

Readln END.

VD2: Viết chương trình kiểm tra xem 3 số nguyên a, b, c nhập vào từ bàn phím có phải là 3 cạnh của tam giác không?

VD1: Viết chương trình thông báo số

nguyên a nhập vào từ bàn phím là số

chẳn?

Trang 10

CẤU TRÚC RẼ NHÁNH

RẼ NHÁNH CÂU LỆNH IF-THEN CÂU LỆNH GHÉP MỘT SỐ VÍ DỤ

Program doicho;

Var a,b,tg: Integer;

BEGIN

Write(‘ Nhap vao 2 so a,b’);

readln(a,b);

If a>b then {doi cho b cho a}

Begin

tg:=a;

a:=b;

b:=tg;

Write(‘ Ket qua tim duoc la:’, a,b);

End

Else

Write(‘khong doi cho’, a,b);

END.

VD3: Viết chương trình nhập 2 số a,

b bất kỳ từ bàn phím, đổi chổ 2 số sao

cho số bé đứng trước, số lớn đứng sau

VD4: Tìm số lớn nhất trong 4 số nguyên a,b,c,d

max:=a;

If b>max then max:=b

else

if c>max then max:=c else max :=d

Trang 11

CẤU TRÚC RẼ NHÁNH

RẼ NHÁNH CÂU LỆNH IF-THEN CÂU LỆNH GHÉP MỘT SỐ VÍ DỤ

CỦNG CỐ

1 Cấu trúc câu lệnh IF-THEN cĩ 2 dạng:

• Dạng thiếu: IF <ĐiềuKiện> Then <Câu lệnh>;

• Dạng đủ: IF <ĐiềuKiện> Then <Câu lệnh1>

Else < <Câu lệnh2>;

 <Điều kiện> là biểu thức quan hệ hoặc biểu thức logic

 Dạng đủ cĩ thể lồng nhau, khi đĩ Else sẽ gắn với If gần

nhất.

VD: max:=a;

If b>max then max:=b else if c>max then max:=c else max :=d

2 Câu lệnh ghép

Sau Then, Else có nhiều hơn một < câu lệnh> thì phải được đặt giữa BEGIN END.

Trang 12

CẤU TRÚC RẼ NHÁNH

RẼ NHÁNH CÂU LỆNH IF-THEN CÂU LỆNH GHÉP MỘT SỐ VÍ DỤ

BÀI TẬP

1 Viết chương trình kiểm tra xem số nguyên a nhập vào cĩ phải là tháng trong năm khơng?

2 Viết chương trình giải phương trình bậc 2: ax2+b+c=0 (a≠0)

HD:(xét các trường hợp của delta (delta <0, delta =0, delta >0))

3 Viết chương trình giải phương trình bậc nhất: ax+b=0

ngược lại xét : b=0,

ngược lại xét: b 0

Trang 13

CẤU TRÚC RẼ NHÁNH

RẼ NHÁNH CÂU LỆNH IF-THEN CÂU LỆNH GHÉP MỘT SỐ VÍ DỤ

Program Giảipt_bac2;

Var a,b, c,d: Integer;

x,x1,x2: Real;

BEGIN

Write(‘ Nhap vao 3 so a,b,c’); readln(a,b,c);

D:=sqr(b)-4*a*c

If D<0 then Writeln(‘Phuong trinh vo nghiem’) Else

If D=0 Then Writeln(‘ Phuong trinh co nghiem kep x= ‘, -b/(2*a)) Else

Begin

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

Writeln(‘ phuong trinh co 2 nghiem la:’, ‘x1=‘,x1,’x2=‘,x2);

End;

END.

VD4: Viết chương trình giải phương trình bậc 2: ax2+b+c=0 (a≠0)

Trang 14

CẤU TRÚC RẼ NHÁNH

RẼ NHÁNH CÂU LỆNH IF-THEN CÂU LỆNH GHÉP MỘT SỐ VÍ DỤ

2 CÂU LỆNH GHÉP

Sau Then, Else nếu thực hiện nhiều hơn một câu lệnh thì phải

được đặt giữa BEGIN END (câu lệnh ghép)

Ví du: ï Nhập 2 số nguyên a,b Đổi

chổ 2 số sao cho số bé đứng trước,

số lớn đứng sau.

<Các câu lệnh>

If a>b then {doi cho b cho a}

BEGIN

tg:=a;

a:=b;

b:=tg;

Write(‘doi cho b cho a, ket qua la’,

a,b);

END

Else Write(‘khong doi cho’);

Câu lệnh ghép

Nhập a,b

a>b

S

Kết quả là

a,b tg a; a b; b tg

Kết quả là

a,b

Đ

a=8;

b=2;

Trang 15

CẤU TRÚC RẼ NHÁNH

RẼ NHÁNH CÂU LỆNH IF-THEN CÂU LỆNH GHÉP MỘT SỐ VÍ DỤ

Ngày đăng: 05/08/2013, 01:27

HÌNH ẢNH LIÊN QUAN

HÌNH VEÕ 2 - Cấu trúc rẽ nhánh
2 (Trang 3)
Sơ đồ thể hiện sự rẽ nhánh - Cấu trúc rẽ nhánh
Sơ đồ th ể hiện sự rẽ nhánh (Trang 4)
Sơ đồ thể hiện sự rẽ nhánh - Cấu trúc rẽ nhánh
Sơ đồ th ể hiện sự rẽ nhánh (Trang 5)

TỪ KHÓA LIÊN QUAN

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

TÀI LIỆU LIÊN QUAN

w