Cho n,m là 2 số nguyên dương.. Viết thuật toán tìm UCLN của m, n Input: Output:?. NHẬN XÉT1/ BÀI TOÁN Sơ đồ giải thuật Nhập m, n a... CẤU TRÚC LẶP WHILE 1.. Nhận một trong hai giá trị T
Trang 1Giáo viên thực hiện: Lê Sơn
Trang 2Cho n,m là 2 số nguyên dương Viết thuật toán tìm UCLN của m, n
Input:
Output: ? UCLN(m,n). m,n.
Giải thuật
Bước 1
Bước 1: Nhập m,n
Bước 2
Bước 2: m = n, chuyển qua bước 5
Bước 3
Bước 3: m <> n
3.1: m>n thì m:=m-n
3.2: m>n thì m:= m-n
1/ BÀI TOÁN
n:=n-m
Sơ đồ giải thuật
Nhập m,n
m<>n
F
T
m > n
m:=m-n Kết thúc
Trang 3NHẬN XÉT
1/ BÀI TOÁN
Sơ đồ giải thuật
Nhập m, n
a<0
F
T
Công việc BTĐK Kết thúc
Trang 44/ CÂU LỆNH IF THIẾU
4/ CÂU LỆNH IF THIẾU
1/ BÀI CŨ
1/ BÀI CŨ
2/ CÁC BÀI TOÁN
2/ CÁC BÀI TOÁN
3/ CÂU LỆNH IF ĐỦ
3/ CÂU LỆNH IF ĐỦ
5/ VẬN DỤNG
5/ VẬN DỤNG
6/ CỦNG CỐ
6/ CỦNG CỐ
NHẬN XÉT
Như vậy dựa vào sơ đồ ta thấy có một tính chất đặc biệt đó là khi nào điều kiện còn đúng thì công việc còn được thực hiện
1/ BÀI TOÁN
Sơ đồ giải thuật Nhập m, n
a<0
F T
BTĐK Kết thúc
Trang 54/ CÂU LỆNH IF THIẾU
4/ CÂU LỆNH IF THIẾU
1/ BÀI CŨ
1/ BÀI CŨ
2/ CÁC BÀI TOÁN
2/ CÁC BÀI TOÁN
3/ CÂU LỆNH IF ĐỦ
3/ CÂU LỆNH IF ĐỦ
5/ VẬN DỤNG
5/ VẬN DỤNG
6/ CỦNG CỐ
6/ CỦNG CỐ
2 CẤU TRÚC LẶP WHILE
<BTĐK>
1 BÀI TOÁN
2.CẤU TRÚC LẶP WHILE WHILE WHILE <BTĐK> DO DO < CÂU LỆNH >; < CÂU LỆNH >
Từ khóa
Biểu thức Logic Nhận một trong hai giá trị True hoặc False
Đơn hoặc ghép
Trong đó
,
Trang 61 BÀI TOÁN
2.CẤU TRÚC LẶP WHILE
Hoạt động
Bước 1: Tính giá trị của <BTĐK>
Bước 2:
2.1: Nếu <BTĐK> có giá trị True thì < Câu lệnh> được thực hiện sau đó quay lại bước 1
2.2: <BTĐK> có giá trị False thì thoát khỏi vòng lặp While ( kết
1 HOẠT ĐỘNG
Trang 7Lưu ý
Trong < Câu lệnh> phải có một lệnh làm thay đổi giá trị của <BTĐK> (đây chính là điều kiện để cấu trúc lặp while kết thúc)
Trong thuật toán tìm UCLN của 2 số nguyên dương m, n trong phần 1 thì các phép gán
m:=m-n hoặc n:=n-m là các lệnh làm thay đổi giá trị của (m<>n) BTĐK
Ví dụ
1 BÀI TOÁN
2 CẤU TRÚC LẶP WHILE
1 HOẠT ĐỘNG
2 LƯU Ý
Trang 8Sử dụng ngôn ngữ lập trình pascal minh họa ví dụ
1 BÀI TOÁN
2 CẤU TRÚC LẶP WHILE
1 HOẠT ĐỘNG
2 LƯU Ý
3 MINH HỌA VÍ DỤ
Program ucln;
Var n,m: byte; Begin
Write(‘ nhap m,n: ‘); readln(n,m);
While n<>m do
If m>n then m:=m-n else n:=n-m;
Write( ‘ Uoc chung lon nhat cua n,m la:’, m); Readln;
Trang 94/ CÂU LỆNH IF THIẾU
5/ VẬN DỤNG
5/ VẬN DỤNG
6/ CỦNG CỐ
6/ CỦNG CỐ
Củng cố
1 BÀI TOÁN
2 CẤU TRÚC LẶP WHILE
1 HOẠT ĐỘNG
2 LƯU Ý
3 MINH HỌA VÍ DỤ
Trong < Câu lệnh> phải có một lệnh làm thay đổi giá trị của <BTĐK> (đây chính là điều kiện để cấu trúc lặp while kết thúc)
biết trước
trước số lần lặp