1. Trang chủ
  2. » Tiểu sử - Hồi kí

Từ bài toán đến chương trình

38 8 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 38
Dung lượng 2,8 MB

Nội dung

Đối với mỗi bài toán cụ thể chúng ta chỉ có 1 thuật toán duy nhất để giải bài toán đó trên máy tính.. Dãy hữu hạn các thao tác cần thực hiện để giải một bài toán được gọi là thuật toá[r]

(1)(2)

Caâu 1 Caâu 2 Caâu 3

(3)

Câu 1: Hãy Input Output

của toán sau: Tìm số lớn

trong số a, b, c.

Input: số a, b, c

Output: Số lớn số a, b, c

(4)

Đối với tốn cụ thể có thuật tốn để giải tốn máy tính.

Dãy hữu hạn thao tác cần thực để giải một toán gọi thuật toán.

Xác định toán xác định rõ điều kiện cho trước kết cần thu được.

Việc thực bước giải tốn máy tính cần thiết, toán phức tạp. A A A A B B B B C C C C D DD D

(5)

Câu 3: Hãy Input Output bài tốn sau: Tính qng đường tơ được với vận tốc 60km/giờ.

Input: t = 3h, υ = 60km/h

Output: Quãng đường ô tô được.

(6)

Câu 4: Hãy Input Output bài tốn sau: Tính tổng số chẵn các số tự nhiên từ đến 100

Input: Dãy 100 số tự nhiên 1, 2,…, 100

Output: Giá trị tổng 2+4+6+…+100

(7)

Với toán cụ thể, phải lựa chọn NNLT phù hợp xây dựng thuật toán giải tốn đó.

Máy tính hiểu chương trình viết NNLT Pascal.

Cần phải xác định toán trước giải tốn máy tính.

Các bước giải tốn máy tính là:

Mơ tả thuật tốn Xác định toán Viết

chương trình. A A A A B B B B C C C C D DD D

Câu 5: Hãy chọn phát biểu? 2930282617101112131415161918202122232425279876543210

B

B

B

(8)

Câu 6: Hãy Input Output

của toán sau: Cho số a b (a>0, b>0) Tìm UC số a b.

Input: a>0, b>0

Output: Các UC số a b

(9)(10)(11)

* Một số ví dụ thuật tốn:

Bài tốn 1: Một tơ t1 đường

bằng phẳng với vận tốc v1 km/h, sau lên dốc

t2 với vận tốc v2 km/h Coi ô tô chuyển

động đều.Tính qng đường tơ hai giai đoạn

* INPUT: * OUTPUT:

Bước1: S1

Bước 2: S2

Bước 3: S

BÀI 5

v1*t1

v2*t2

S1+S2

* MƠ TẢ THUẬT TỐN:

Thời gian t1, vận tốc v1; thời gian t2, vận tốc v2

(12)

* Một số ví dụ thuật toán:

BÀI 5

Bước1: S1

Bước 2: S2

Bước 3: S

v1*t1

v2*t2

S1+S2

Căn vào thuật tốn mơ tả em viết chương trình cho

tốn bằng NNLT pascal? program tinh_qd; uses crt; var v1,v2,t1,t2:integer; s1, s2:real; begin clrscr;

writeln('nhap van toc o to di duong bang phang'); readln(v1);

writeln('nhap thoi gian o to di duong bang phang'); readln(t1);

writeln('nhap van toc o to len doc'); readln(v2);

writeln('nhap thoi gian o to len doc'); readln(t2);

s1:=v1*t1; s2:=v2*t2;

writeln('quang duong o to di ca hai gian doan la',s1+s2,'km'); readln

end.

(13)

* Một số ví dụ thuật tốn:

Bài tốn 2: Để làm biển báo giao thơng hình bên cần sơn màu đỏ lên bìa trắng Hình trịn có bán kính R, chiều dài hình chữ nhật bên bán kính hình trịn bên ngồi, chiều rộng chiều dài Tính diện tích phần cần sơn màu đỏ:

4

* INPUT: Bán kính hình trịn R,

* OUTPUT: Diện tích phần cần sơn

Bước1: Shcn Bước 2: Stron Bước 3: Sson

BÀI 5 4/3*R*1/4*4/3*R * R*R Stron–Shcn * MƠ TẢ THUẬT TỐN:

(14)

* Một số ví dụ thuật tốn:

BÀI 5

*Viết chương trình

program dt_phson; uses crt;

var s_hcn, s_ht, R:real; const pi=3.14;

begin clrscr;

writeln('nhap ban kinh'); readln(R);

s_hcn:=4/3*R*1/4*4/3*R; s_ht:=R*R*pi;

writeln('dien tich hinh chu nhat la',s_hcn,'m2'); writeln('dien tich hinh tron la',s_ht,'m2');

writeln('dien tich phan son la',s_ht-s_hcn,'m2'); readln

(15)

Bài toán 3 : Hoán đổi giá trị biến x a y b x b y

* THUẬT TOÁN

BÀI 5

a

?

Bước 1: x  y

Bước 2: y  x

Bước 1: x  y

Bước 2: y  x

C2

C2 C3C3

* INPUT: Biến x lưu giá trị a, biến y lưu giá trị b

* OUTPUT: Biến x lưu giá trị b, biến y lưu giá trị a

(16)

* Bài toán 3 : Hoán đổi giá trị biến

BÀI 5

Bước 1: x y x y

b

a b

x y

Bước 2: y x bb b

Kết sai

* INPUT: Biến x lưu giá

trị a, biến y lưu giá trị b

* INPUT: Biến x lưu giá trị a, biến y lưu giá trị b

* OUTPUT: Biến x lưu giá

trị b, biến y lưu giá trị a

* OUTPUT: Biến x lưu giá trị b, biến y lưu giá trị a

(17)

BÀI 5

Bài toán 3 : Hoán đổi giá trị biến

x

a

y

b

x

b

y

* INPUT:

* OUTPUT:

* THUẬT TOÁN

BÀI 5

a

?

C1

C1 C2C2

(18)

BÀI 5

* Một số ví dụ thuật tốn:

(19)

* Một số ví dụ thuật toán:

Bài toán 3 : Hoán đổi giá trị biến

BÀI 5

(20)

BÀI 5

Bước 1: z  x

(21)

BÀI 5

Bước 1: z  x

Bước 2: x  y

(22)

Z

x y

b

a b

x y

b a

Bước 1: z  x

Bước 2: x  y

Bước 3: y  z a a

* INPUT:

* OUTPUT:

Bài toán 3 : Hoán đổi giá trị biến

(23)

x y

b a

x y

b a

Bước 1: z  x

Bước 2: x  y

Bước 3: y  z

* INPUT:

* OUTPUT:

Bài toán 3 : Hoán đổi giá trị biến

(24)

BÀI 5

Bài toán 3 : Hoán đổi giá trị biến

x a y b x b y * INPUT: * OUTPUT:

* MÔ TẢ THUẬT TOÁN

BÀI 5

a

C1

C1 C2C2

Bước 1: z  x

Bước 2: x  y

Bước 3: y  z

Bước 1: z  x

Bước 2: x  y

(25)

Bài toán 4/ Tính tổng n số tự nhiên * INPUT: Số nguyên n

* OUTPUT: Giá trị dãy số + + + + n

Bước 1: SUM 

Bước 2: SUM  SUM +

Bước 3: SUM  SUM +

Bước n+1:SUM  SUM + n

BÀI 5

* MÔ TẢ THUẬT TOÁN

Ý tưởng: Dùng biến SUM để lưu giá trị tổng Đầu tiên SUM nhận giá trị 0, lần lược thêm giá trị 1, 2, 3, ,n vào SUM

(26)

BÀI 5

Bước 1: SUM 

Bước 2: SUM  SUM +

Bước 3: SUM  SUM +

Bước n+1: SUM  SUM + n

Bước 1: SUM 

Bước 2: SUM  SUM +

Bước 3: SUM  SUM +

Bước n+1: SUM  SUM + n

Bước 1: SUM  0; i 

Bước 2: i  i +

Bước 3: Nếu i ≤n SUM  SUM + i quay lại bước

Bước 4: Thông báo kết kết thúc

Bước 1: SUM  0; i 

Bước 2: i  i +

Bước 3: Nếu i ≤n SUM  SUM + i quay lại bước

(27)

SUM  0; i0

i  i +

i ≤ n

SUM  SUM + i

Kết thúc

Bước 1: SUM  0; i 

Bước 2: i  i +

Bước 3: Nếu i ≤n

SUM  SUM +i quay lại

bước

Bước 4: Thông báo kết kết thúc

Bước 1: SUM  0; i 

Bước 2: i  i +

Bước 3: Nếu i ≤n

SUM  SUM +i quay lại

bước

Bước 4: Thông báo kết kết thúc

BÀI 5

(28)

i 0 1 i<=n Đúng SUM 0 1

BÀI 5

Với n =

Với n =

SUM  0; i0

i  i +

i ≤ n

SUM  SUM + i

SUM  0; i0

i  +

1 ≤ SUM  +

Đúng

(29)

SUM  0; i0

i  +

1 ≤ SUM  +

i 0 1 2

i<=n Đúng Đúng SUM 0 1 3

BÀI 5

SUM  0; i0

i  +

2 ≤ SUM  +

Đúng

Với n =

Với n =

(30)

SUM  0; i0

i  +

2 ≤ SUM  +

i 0 1 2 3

i<=n Đúng Đúng Đúng SUM 0 1 3 6

BÀI 5

SUM  0; i0

i  +

3 ≤ SUM  +

Đúng

Với n =

Với n =

(31)

SUM  0; i0

i  +

4 ≤ SUM  +

i 0 1 2 3 4

i<=n Đúng Đúng Đúng Đúng SUM 0 1 3 6 10

BÀI 5

SUM  0; i0

i  +

4 ≤ SUM  +

Đúng

Với n =

Với n =

(32)

SUM  0; i0

i  +

4 ≤ SUM  +

i 0 1 2 3 4 5 i<=n Đúng Đúng Đúng Đúng Đúng SUM 0 1 3 6 10 15

BÀI 5

SUM  0; i0

i  +

5 ≤ SUM  10 +

Đúng

Với n =

Với n =

(33)

Sai

Kết thúc SUM  0; i0

i  +

5 ≤ SUM  10 +

i 0 1 2 3 4 5 6

i<=n Đúng Đúng Đúng Đúng Đúng Sai SUM 0 1 3 6 10 15 K.thúc

BÀI 5

SUM  0; i0

i  +

6 ≤ SUM  10 +

Sai

Kết thúc

Với n =

(34)

i 0 1 2 3 4 5 6 7 8 9 10 11 i<=n Đúng Đúng Đúng Đúng Đúng Đúng Đúng Đúng Đúng Đúng Sai SUM 0 1 3 6 10 15 21 28 36 45 55 K.thúc

BÀI 5

Với n = 10

(35)

Bài tập nhà:

• Bài 1: Liệt kê cơng việc em phải làm vào buổi sáng trước tới trường

• Bài 2: Mơ tả thuật tốn để hốn đổi giá trị biến mà khơng cần sử dụng biến trung gian

• Bài 3: Xác định tốn mơ tả thuật tốn để tìm số lớn số

(36)

Hốn đổi giá trị biến khơng sử dụng biến trung gian (Bài tập nhà)

BÀI 5

x

a

y

(37)

- Rót nước sơi ngập trà ấm để tráng ấm trà, rót chén để tráng chén

- Cho trà vào ấm

- Rót nước sơi vào ấm đợi khoảng đến phút - Rót trà chén để mời khách

* MƠ TẢ THUẬT TOÁN

(38)

Ngày đăng: 21/02/2021, 02:21

w