Giáo án và PPT Tin học 10 cánh diều Bài 17: Thực hành lập trình giải bài toán trên máy tính

Đồng bộ giáo án word và powerpoint (ppt) Bài 17: Thực hành lập trình giải bài toán trên máy tính. Thuộc chương trình Tin học 10 cánh diều. Giáo án được biên soạn chỉnh chu, hấp dẫn. Nhằm tạo sự lôi cuốn và hứng thú học tập cho học sinh.

Click vào ảnh dưới đây để xem giáo án WORD rõ nét

Giáo án và PPT Tin học 10 cánh diều Bài 17: Thực hành lập trình giải bài toán trên máy tính
Giáo án và PPT Tin học 10 cánh diều Bài 17: Thực hành lập trình giải bài toán trên máy tính
Giáo án và PPT Tin học 10 cánh diều Bài 17: Thực hành lập trình giải bài toán trên máy tính
Giáo án và PPT Tin học 10 cánh diều Bài 17: Thực hành lập trình giải bài toán trên máy tính
Giáo án và PPT Tin học 10 cánh diều Bài 17: Thực hành lập trình giải bài toán trên máy tính
Giáo án và PPT Tin học 10 cánh diều Bài 17: Thực hành lập trình giải bài toán trên máy tính
Giáo án và PPT Tin học 10 cánh diều Bài 17: Thực hành lập trình giải bài toán trên máy tính
Giáo án và PPT Tin học 10 cánh diều Bài 17: Thực hành lập trình giải bài toán trên máy tính
Giáo án và PPT Tin học 10 cánh diều Bài 17: Thực hành lập trình giải bài toán trên máy tính
Giáo án và PPT Tin học 10 cánh diều Bài 17: Thực hành lập trình giải bài toán trên máy tính
Giáo án và PPT Tin học 10 cánh diều Bài 17: Thực hành lập trình giải bài toán trên máy tính
Giáo án và PPT Tin học 10 cánh diều Bài 17: Thực hành lập trình giải bài toán trên máy tính
....

Giáo án ppt đồng bộ với word

Giáo án điện tử tin học 10 cánh diều bài 17: Thực hành lập trình giải bài toán trên máy tính (2 tiết)
Giáo án điện tử tin học 10 cánh diều bài 17: Thực hành lập trình giải bài toán trên máy tính (2 tiết)
Giáo án điện tử tin học 10 cánh diều bài 17: Thực hành lập trình giải bài toán trên máy tính (2 tiết)
Giáo án điện tử tin học 10 cánh diều bài 17: Thực hành lập trình giải bài toán trên máy tính (2 tiết)
Giáo án điện tử tin học 10 cánh diều bài 17: Thực hành lập trình giải bài toán trên máy tính (2 tiết)
Giáo án điện tử tin học 10 cánh diều bài 17: Thực hành lập trình giải bài toán trên máy tính (2 tiết)
Giáo án điện tử tin học 10 cánh diều bài 17: Thực hành lập trình giải bài toán trên máy tính (2 tiết)
Giáo án điện tử tin học 10 cánh diều bài 17: Thực hành lập trình giải bài toán trên máy tính (2 tiết)
Giáo án điện tử tin học 10 cánh diều bài 17: Thực hành lập trình giải bài toán trên máy tính (2 tiết)
Giáo án điện tử tin học 10 cánh diều bài 17: Thực hành lập trình giải bài toán trên máy tính (2 tiết)
Giáo án điện tử tin học 10 cánh diều bài 17: Thực hành lập trình giải bài toán trên máy tính (2 tiết)
Giáo án điện tử tin học 10 cánh diều bài 17: Thực hành lập trình giải bài toán trên máy tính (2 tiết)

Còn nữa....

Các tài liệu bổ trợ khác

Xem toàn bộ: Trọn bộ giáo án và PPT Tin học 10 cánh diều

THỰC HÀNH LẬP TRÌNH GIẢI BÀI TOÁN TRÊN MÁY TÍNH (2 TIẾT)

HOẠT ĐỘNG KHỞI ĐỘNG

GV yêu cầu HS thảo luận và trả lời:

Nếu chương trình chạy bị lỗi với thông báo lỗi là ZeroDivisionError thì đó là lỗi gì và em cần sửa lỗi như thế nào? 

HOẠT ĐỘNG HÌNH THÀNH KIẾN THỨC

Hoạt động 1. 

GV đặt câu hỏi hướng dẫn học sinh tìm hiểu:  Thực hành lập trình giải toán?

Sản phẩm dự kiến:

I. Bài 1

Nhận xét để xác định bài toán:

Vì mỗi giờ, khoảng cách giữa hai tàu giảm đi (v1 + v2) hải lí, vì vậy để hai tàu gặp nhau, sẽ cần  giờ.

- Sử dụng kiến thức vật lí để giải thích:

Đặt hệ quy chiếu một chiều với điểm 0 ở vị trí tàu cá và đảo ở vị trí d.

Phương trình chuyển động của tàu cá: x = 0 + v1.t

Phương trình chuyển động của tàu cứu hộ: x = d – v2.t

Yêu cầu tìm t để 0 + v1.t = d – v2.t, tức là tìm t  =  ,có thể giải bằng thuật toán giải phương trình bậc nhất.

Thuật toán:

Bước 1: Nhập vào d, v1, v2.

Bước 2: Tính t = d/(v1+v2).

Bước 3: In ra t.

THỰC HÀNH LẬP TRÌNH GIẢI BÀI TOÁN TRÊN MÁY TÍNH (2 TIẾT)HOẠT ĐỘNG KHỞI ĐỘNG

Chương trình:

THỰC HÀNH LẬP TRÌNH GIẢI BÀI TOÁN TRÊN MÁY TÍNH (2 TIẾT)HOẠT ĐỘNG KHỞI ĐỘNG

Kiểm thử: Đề xuất các bộ test và thực hiện kiểm thử.

II. Bài 2

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

Input: Các dữ liệu

- Số liều đã có m ().

- Số liều cần có n ( ).

- Năng suất một ngày: cơ sở A sản xuất pa, cơ sở B sản xuất pb liều vacxin, ( )

Output: Số ngày để sản xất đủ vacxin: k ngày.

Thuật toán

Ta xét một thuật toán đơn giản: Mô phỏng đúng quá trình sản xuất, sau mỗi ngày thì số liều đã có tăng lên (pa + pb) và lặp đi lặp lại cho tới khi đủ số liều cần có.

Bước 1: Nhập vào n, m, pa, pb.

Bước 2: k = 0

Bước 3: while m < n: # chừng nào chưa đủ số liều

Bước 4: k +=1# thêm một ngày.

Bước 5: m + = pa + pb # số liều được thêm pa + pb sau một ngày.

Bước 6: In ra k  # in ra số ngày.

Chương trình 1:

THỰC HÀNH LẬP TRÌNH GIẢI BÀI TOÁN TRÊN MÁY TÍNH (2 TIẾT)HOẠT ĐỘNG KHỞI ĐỘNG

Kiểm thử

Xây dựng bộ test:

Dữ liệu

Kết quả thực hiện

Ý đồ test

200                        50

20                              35

3

Bộ test 1: Test ví dụ đề bài

200                        50

4                             6

15

Bộ test 2: Sản xuất thêm 15 ngày, không thừa liều nào

201                        50

4                             6

16

Bộ test 3: Sản xuất thêm 16 ngày, thừa ra 9 liều

1000                      1000

1                             2

0

Bộ test 4: Số liều đã đủ, không cần sản xuất thêm

100000000            0

1                             1

50 000 000

Bộ test 5: Cần sản xuất thêm rất nhiều ngày

12                          16

1                             2

0

Bộ test 6: Số liều đã thừa, không cần sản xuất thêm

12                           16

0                             0

0

Bộ test 7: Không cần sản xuất thêm, pa = pb = 0

16                           12

0                             0

-1

Bộ test 8: không thể sản xuất đủ

100000000            0

100000                  100000

500

Bộ test 9: Dữ liệu max

Kết quả thực hiện:

Test

Kết quả mong muốn

Kết quả thực hiện

Tình trạng

1

3

3

OK

2

15

15

OK

3

16

16

OK

4

0

0

OK

5

50000000

50000000

Chạy rất chậm

6

0

0

OK

7

0

0

OK

8

-1

 

Lặp vô hạn

9

500

500

OK

Có 2/9 bộ test chương trình không đạt yêu cầu, cần hiệu chỉnh thuật toán và chương trình để khắc phục các lỗi này. Ở bộ test số 5, chương trình chạy chậm do vòng lặp while () phải thực hiện tới 50 triệu lần. Trước hết ta thử tối ưu chương trình:

Thay vì duy trì số liều đã có m và số liệu cần có n. Ta tính trước số liệu còn thiếu q = n - m.

Thay vì phải tính số liệu sản xuất ra trong một ngày bằng (pa + pb), ta tính trước luôn p = pa + pb.

Chương trình 2:

THỰC HÀNH LẬP TRÌNH GIẢI BÀI TOÁN TRÊN MÁY TÍNH (2 TIẾT)HOẠT ĐỘNG KHỞI ĐỘNG

Chương trình vẫn chưa có cải thiện đáng kể về tốc độ, cụ thể là test số 5 vẫn rất chậm. Việc điều chỉnh cần được thực hiện ở mức thuật toán.

Có thể thấy rằng để sản xuất q liều với tốc độ p liều một ngày thì cần ngày. Vì vậy để tính số ngày k, ta không cần dùng vòng lặp mà có thể tính:

k = math.ceil(q/p)

Hoặc dùng công thức sau để tránh phép chia số thực:

k= (q + p -1)//p

……………..

HOẠT ĐỘNG LUYỆN TẬP

Từ nội dung bài học,GV yêu cầu HS luyện tập làm bài:

Câu 1: Công cụ Debug dùng để:

  • A. Chạy chương trình.
  • B. Lưu chương trình.
  • C. Mở chương trình.
  • D. Gỡ lỗi.

Câu 2: Đâu là mô tả đúng về lỗi ngữ nghĩa?

  • A. lỗi câu lệnh viết không theo đúng quy định của ngôn ngữ lập trình.
  • B. lỗi xảy ra khi chương trình đang chạy, một lệnh nào đó không thể thực hiện được. Lỗi này sẽ được thông báo ngay trên màn hình.
  • C. lỗi mặc dù các câu lệnh viết đúng quy định của ngôn ngữ nhưng sai trong thao tác xử lí nào đó.
  • D. Đáp án khác.

Câu 3: Có mấy loại lỗi khi lập trình?

  • A. 1
  • B. 2
  • C. 3
  • D. 4 

Câu 4: Để kiểm thử những trường hợp thường gặp trong thực tế ta chọn bộ dữ liệu như thế nào?

  • A. Có kích thước đủ nhỏ.
  • B. Có kích thước lớn.
  • C. Có kích thước lớn nhất có thể.
  • D. Có kích thước bất kì.

Câu 5: Hệ thống sẽ báo lỗi nào trong các lỗi sau?

  • A. Lỗi cú pháp
  • B. Lỗi ngoại lệ (Exceptions Error)
  • C. Lỗi ngữ nghĩa
  • D. Cả A và B

Sản phẩm dự kiến:

Câu 1 - DCâu 2 - CCâu 3 -CCâu 4 -ACâu 5 -D

HOẠT ĐỘNG VẬN DỤNG

Vận dụng kiến thức, GV yêu cầu HS trả lời câu hỏi:

Câu 1: Nếu chương trình chạy bị lỗi với thông báo lỗi là ZeroDivisionError thì đó là lỗi gì và em cần sửa lỗi như thế nào? Chọn phương án đúng nhất.

Câu 2: Điểm dừng (breakpoint) trong các phần mềm soạn thảo lập trình có ý nghĩa gì?

Trên chỉ là 1 phần của giáo án. Giáo án khi tải về có đầy đủ nội dung của bài. Đủ nội dung của học kì I + học kì II

Hệ thống có đầy đủ các tài liệu:

  • Giáo án word (350k)
  • Giáo án Powerpoint (400k)
  • Trắc nghiệm theo cấu trúc mới (200k)
  • Đề thi cấu trúc mới: ma trận, đáp án, thang điểm..(200k)
  • Phiếu trắc nghiệm câu trả lời ngắn (200k)
  • Trắc nghiệm đúng sai (250k)
  • Lý thuyết bài học và kiến thức trọng tâm (200k)
  • File word giải bài tập sgk (150k)
  • Phiếu bài tập để học sinh luyện kiến thức (200k)
  • ....

Có thể chọn nâng cấp lên VIP đê tải tất cả ở tài liệu trên

  • Phí nâng cấp VIP: 800k

=> Chỉ gửi 450k. Tải về dùng thực tế. Nếu hài lòng, 1 ngày sau mới gửi phí còn lại

Cách nâng cấp:

  • Bước 1: Chuyển phí vào STK: 1214136868686 - cty Fidutech - MB(QR)
  • Bước 2: Nhắn tin tới Zalo Fidutech - nhấn vào đây để thông báo và nhận tài liệu

Xem toàn bộ: Trọn bộ giáo án và PPT Tin học 10 cánh diều

TIN HỌC 10 KẾT NỐI TRI THỨC

Giáo án chuyên đề Tin học 10 theo định hướng tin học ứng dụng kết nối tri thức
Giáo án chuyên đề Tin học 10 theo định hướng khoa học máy tính kết nối tri thức
Soạn giáo án Tin học 10 kết nối tri thức theo công văn mới nhất
Giáo án tin học 10 kết nối tri thức (bản word)
Giáo án điện tử tin học 10 kết nối tri thức
Giáo án powerpoint tin học 10 kết nối tri thức
Đề thi tin học 10 kết nối tri thức
Trắc nghiệm tin học 10 kết nối tri thức

TIN HỌC 10 CÁNH DIỀU

Giáo án chuyên đề Tin học 10 theo định hướng khoa học máy tính 10 cánh diều
Giáo án chuyên đề Tin học 10 theo định hướng tin học ứng dụng cánh diều
Soạn giáo án Tin học 10 cánh diều theo công văn mới nhất
Giáo án tin học 10 cánh diều (bản word)
Giáo án điện tử tin học 10 cánh diều
Giáo án powerpoint tin học 10 cánh diều
Đề thi tin học 10 cánh diều
Trắc nghiệm tin học 10 cánh diều

Tài liệu giảng dạy

Xem thêm các bài khác

Chat hỗ trợ
Chat ngay