1. Trang chủ
  2. » Cao đẳng - Đại học

slide 1 §4 bài toán và thuật toán § 4 bài toán và thuật toán ví dụ 1 kiểm tra tính nguyên tố của một số nguyên dương xác định bài toán input n là một số nguyên dương output n là số nguyên tố hoặc

26 30 0

Đ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

Định dạng
Số trang 26
Dung lượng 1,71 MB

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

Nội dung

Cần sắp xếp các số hạng để dãy A trở thành.. Cần sắp xếp các số hạng để dãy A trở thành.[r]

Trang 1

§4 BÀI TOÁN VÀ THUẬT TOÁN

§4 BÀI TOÁN VÀ THUẬT TOÁN

Trang 2

Ví dụ 1 Kiểm tra tính nguyên tố của một số

nguyên dương

 Input: N là một số nguyên dương;

 Output: "N là số nguyên tố" hoặc "N

không là số nguyên tố"

3 Một số ví dụ về thuật toán

Trang 3

Ý tưởng:

 Nếu N = 1 thì N không là số nguyên tố;

 Nếu 1 < N < 4 thì N là số nguyên tố;

 Nếu N 4 và không có ước số trong

phạm vi từ 2 đến phần nguyên căn bậc hai của N thì N là số nguyên tố

3 Một số ví dụ về thuật toán

Trang 4

Thuật toán

a) Thuật toán diễn tả bằng cách liệt kê

 Bước 1: Nhập số nguyên dương N;

 Bước 2: Nếu N = 1 thì thông báo N không

Trang 5

Thuật toán

a) Thuật toán diễn tả bằng cách liệt kê

 Bước 5: Nếu i > thì thông báo N là

nguyên tố rồi kết thúc;

 Bước 6: Nếu N chia hết cho i thì thông

báo N không nguyên tố rồi kết thúc;

 Bước 7: i  i + 1 rồi quay lại bước 5

3 Một số ví dụ về thuật toán

N

Trang 6

Thuật toán

b) Thuật toán diễn tả bằng sơ đồ khối

3 Một số ví dụ về thuật toán

Trang 7

Nhập N N=1 ? N<4 ?

i  2

i  i + 1

i > ?

N chia hết cho i ?

Trang 9

 

 45 

45 không là số nguyên tố

Trang 10

Ví dụ 2 Bài toán sắp xếp:

Cho dãy A gồm N số nguyên a1, a2, , aN

Cần sắp xếp các số hạng để dãy A trở thành dãy không giảm (tức là số hạng trước không lớn hơn số hạng sau)

3 Một số ví dụ về thuật toán

Trang 11

Xác định bài toán

 Input: Dãy A gồm N số nguyên a1, a2, , aN.

 Output: Dãy A được sắp xếp lại thành dãy

không giảm.

Ý tưởng: Với mỗi cặp số hạng đứng liền kề trong

dãy, nếu số trước lớn hơn số sau ta đổi chỗ chúng cho nhau Việc đó được lặp lại, cho đến khi không

có sự đổi chỗ nào xảy ra nữa.

3 Một số ví dụ về thuật toán

Trang 12

 Thuật toán: Cách liệt kê

 Bước 6: Nếu i > M thì quay lại bước 3;

 Bước 7: Nếu ai > ai+1 thì tráo đổi ai và ai+1 ;

 Bước 8: Quay lại bước 5.

3 Một số ví dụ về thuật toán

Trang 13

Nhập N ; a1,a2, aN

M  N M<2 ?

Trang 14

01/25/24 § 4 BÀI TOÁN VÀ THUẬT TOÁN 14

§4 BÀI TOÁN VÀ THUẬT TOÁN

§4 BÀI TOÁN VÀ THUẬT TOÁN

Trang 15

Ví dụ 3 Bài toán tìm kiếm

Cho dãy A gồm N số nguyên, đôi một khác nhau: a1, a2, , aN và một số nguyên k Cần biết có hay không chỉ số i (1  i  N)

mà ai = k Nếu có hãy cho biết chỉ số đó

Số nguyên k được gọi là khóa tìm kiếm (gọi tắt là khóa)

3 Một số ví dụ về thuật toán

Trang 16

Thuật toán Tìm kiếm tuần tự (Sequential Search)

3 Một số ví dụ về thuật toán

Trang 17

Ý tưởng : thực hiện một cách tự nhiên Lần lượt từ số hạng thứ nhất,so sánh giá trị số hạng đang xét với khóa cho đến khi hoặc gặp một số hạng bằng khóa hoặc dãy đã được xét hết và không có giá trị nào bằng khoá Trong trường hợp thứ hai dãy A không có số hạng nào bằng khoá.

3 Một số ví dụ về thuật toán

Trang 18

3 Một số ví dụ về thuật toán

Trang 20

Thuật toán Tìm kiếm nhị phân (Binary Search):

Input : Dãy tăng a1, a2, , aN và số nguyên k;

Output : Chỉ số i mà ai = k hoặc thông báo không

có số hạng nào của dãy có giá trị bằng k.

3 Một số ví dụ về thuật toán

Trang 22

 Nếu aGiua = k thì Giua là chỉ số cần tìm Việc tìm kiếm kết thúc.

 Nếu aGiua > k thì tìm tiếp trên dãy adau, adau+1, , aGiua–

Trang 23

Thuật toán

a) Cách liệt kê

Bước 1: Nhập N, dãy a1, a2, , aN và số k ;

Bước 2: Dau  1, Cuoi  N ;

Bước 3: Giua  (dau + cuoi)/2 ;

Bước 4: Nếu aGiua = k thì thông báo chỉ số Giua, rồi kết thúc ;

3 Một số ví dụ về thuật toán

Trang 24

Thuật toán

a) Cách liệt kê

 Bước 5: Nếu aGiua > k thì đặt Cuoi  Giua–1 rồi chuyển đến bước 7;

 Bước 6: Dau  Giua + 1;

 Bước 7: Nếu Dau > Cuoi thì thông báo dãy A không có số hạng có giá trị bằng k, rồi kết thúc;

 Bước 8: Quay lại bước 3.

3 Một số ví dụ về thuật toán

Ngày đăng: 11/04/2021, 23:39

TỪ KHÓA LIÊN QUAN

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

TÀI LIỆU LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm

w