Giáo án điện tử Khoa học máy tính 11 kết nối Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Bài giảng điện tử Tin học 11 - Định hướng Khoa học máy tính kết nối tri thức. Giáo án powerpoint Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình. Giáo án thiết kế theo phong cách hiện đại, nội dung đầy đủ, đẹp mắt, tạo hứng thú học tập cho học sinh. Thầy, cô giáo có thể tham khảo.

Xem: => Giáo án tin học 11 theo định hướng khoa học máy tính kết nối tri thức

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

Giáo án điện tử Khoa học máy tính 11 kết nối Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình
Giáo án điện tử Khoa học máy tính 11 kết nối Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình
Giáo án điện tử Khoa học máy tính 11 kết nối Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình
Giáo án điện tử Khoa học máy tính 11 kết nối Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình
Giáo án điện tử Khoa học máy tính 11 kết nối Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình
Giáo án điện tử Khoa học máy tính 11 kết nối Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình
Giáo án điện tử Khoa học máy tính 11 kết nối Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình
Giáo án điện tử Khoa học máy tính 11 kết nối Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình
Giáo án điện tử Khoa học máy tính 11 kết nối Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình
Giáo án điện tử Khoa học máy tính 11 kết nối Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình
Giáo án điện tử Khoa học máy tính 11 kết nối Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình
Giáo án điện tử Khoa học máy tính 11 kết nối Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

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

Xem toàn bộ: Giáo án điện tử khoa học máy tính 11 kết nối tri thức

CHÀO MỪNG CÁC EM QUAY TRỞ LẠI VỚI MÔN HỌC!

KHỞI ĐỘNG

Em đã biết thiết kế một số thuật toán và chương trình: tìm kiếm tuần tự, tìm kiếm nhị phân, sắp xếp chèn, sắp xếp nổi bọt.

Thảo luận nhóm 3 - 4 HS

  • Tất cả các thiết kế chương trình đó có điểm nào chung?
  • Theo em, để thiết kế một thuật toán đúng giải một bài toán cho trước cần trải qua các bước như thế nào? Nêu quan điểm của riêng em và trao đổi với các bạn.

Các thuật toán và chương trình như tìm kiếm tuần tự, tìm kiếm nhị phân, sắp xếp chèn, sắp xếp nổi bọt trên đều là các thuật toán cơ bản trong lập trình và giải quyết các vấn đề thông thường. Điểm chung của các bài toán đó là có tính đơn giản và độ phức tạp thấp.

Để thiết kế một thuật toán đúng giải một bài toán cho trước cần trải qua các bước:

BÀI 26: PHƯƠNG PHÁP LÀM MỊN DẦN TRONG THIẾT KẾ CHƯƠNG TRÌNH

NỘI DUNG BÀI HỌC

  1. PHƯƠNG PHÁP THIẾT KẾ LÀM MỊN DẦN

Thảo luận nhóm 3 - 5 HS

Hoạt động 1:

Cùng trao đổi, thảo luận các bước thiết kế chương trình theo thuật toán sắp xếp chèn, từ đó đưa ra phương pháp chính khi thiết kế chương trình. Sau mỗi bước thiết kế cần trao đổi và trả lời các câu hỏi sau:

  1. Bước này đã thực hiện công việc gì?
  2. Kết quả vừa thực hiện với kết quả của bước trước đó khác nhau như thế nào?

Bài toán gốc. Cho trước dãy số A: A[0], A[1],..., A[n–1]. Cần tiến hành sắp xếp dãy trên theo thứ tự tăng dần. Kết quả phải nhận được:

A[0] ≤ A[1] ≤  … ≤  A[n-1]

Ví dụ với bộ dữ liệu vào là dãy [2, 1, 7, 10, 4] thì kết quả thu được dãy [1, 2, 4, 7, 10].

  1. a) Tìm hiểu bài toán

Bài toán gốc là cho trước dãy A, cần sắp xếp lại dãy này theo thứ tự tăng dần.

  1. b) Thiết kế chương trình giải bài toán

Bước 1:

Thiết lập ý tưởng thiết kế ban đầu

Thuật toán ban đầu có thể được mô tả như sau:

  for i in range (1,n):

      <Đặt A[i] vào đúng vị trí của dãy A[0],A[1], …, A[i-1]>

Tại dòng 2 của sơ đồ trên, bài toán được đặt ra là: "Chèn phần tử A[i] vào đúng vị trí của dãy A[0], A[1], …, A[i-1]".

Bước 2:

Làm chi tiết hơn, thực hiện việc "Chèn A[i] vào đúng vị trí"

  • Việc "Chèn A[i] vào đúng vị trí" có thể thực hiện như sau:

Chèn A[i] vào đúng vị trí

1  Nhấc phần tử A[i] lên.

2  Chuyển các phần tử bên trái A[i] và lớn hơn A[i] sang phải.

3  Chèn A[i] vào vị trí trống.

Bước 3:

Nhấc A[i] lên.

Thao tác này được thực hiện đơn giản bằng việc tạo ra một biến mới value để lưu trữ giá trị A[i].

value = A[i]

Bước 4:

Chuyển các phần tử bên trái A[i] và lớn hơn A[i] sang phải.

 j = i – 1

 while j >= 0 and A[j] > value:

     A[j+1] = A[j]

     j = j – 1

Bước 5:

Chèn A[i] vào đúng vị trí trống

Thao tác chèn A[i] vào đúng vị trí có thể được thực hiện bằng các câu lệnh chương trình như sau:

 value A[i]

 j = i – 1

 while j >= 0 and A[j] > value:

        A[j+1] = A[j]

        j = j – 1

 A[j+1] = value

  1. c) Chương trình hoàn chỉnh
  • Chương trình giải bài toán đặt ra được thiết kế hoàn chỉnh dưới dạng hàm InsertionSort(A).

 def InsertionSort(A):

     n = len(A)

     for i in range(1,n):

         value = A[i]

         j = i-1

         while j >= 0 and A[j] > value:

            A[j+1] = A[j]

            j = j - 1

         A[j+1] = value

MỞ RỘNG

Phương pháp thiết kế làm mịn dần (stepwise refinement) trong khoa học máy tính còn có tên gọi là phương pháp thiết kế từ trên xuống (top-down design) là một trong những phương pháp thiết kế lâu đời nhất và được coi là phương pháp tổng quát nhất, chung nhất cho cách lập trình cấu trúc.

Phương pháp thiết kế top-down có thể mô tả bằng sơ đồ ý tưởng sau:

GHI NHỚ

Phương pháp làm mịn dần trong thiết kế chương trình là quá trình chi tiết hóa từ ý tưởng của các bước trước thành những hành động cụ thể hơn ở các bước sau. Ở bước cuối cùng, các hành động tương ứng với các câu lệnh của ngôn ngữ lập trình để viết chương trình hoàn chỉnh.

Câu hỏi củng cố kiến thức

Câu 1 (SGK - tr.120). Trong các bước đã thực hiện của bài toán sắp xếp chèn ở trên, bước nào là đơn giản nhất theo nghĩa có thể thực hiện ngay bằng các lệnh lập trình?

Các bước đơn giản nhất của cách thiết kế trên là bước 3 và 5.

  • Bước 3 được thực hiện bằng một lệnh: value = A[i].
  • Bước 5 được thực hiện bằng 1 lệnh: A[j+1] = value.

Câu 2 (SGK - tr.120). Nếu bài toán đặt ra là sắp xếp dãy A theo thứ tự giảm dần thì các bước thiết kế như trên có cần thay đổi không? Thay đổi như thế nào?

Chỉ thay đổi một từ trong cách mô tả tại bước 4 như sau: Chuyển các phần tử bên trái A[i] và nhỏ hơn A[i] sang phải.

  1. THIẾT KẾ CHƯƠNG TRÌNH BẰNG PHƯƠNG PHÁP LÀM MỊN DẦN

 

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)

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ộ: Giáo án điện tử khoa học máy tính 11 kết nối tri thức

ĐẦY ĐỦ GIÁO ÁN CÁC BỘ SÁCH KHÁC

GIÁO ÁN WORD LỚP 11 KẾT NỐI TRI THỨC

 

GIÁO ÁN POWERPOINT LỚP 11 KẾT NỐI TRI THỨC

GIÁO ÁN CHUYÊN ĐỀ LỚP 11 KẾT NỐI TRI THỨC

GIÁO ÁN DẠY THÊM 11 KẾT NỐI TRI THỨC

CÁCH ĐẶT MUA:

Liên hệ Zalo: Fidutech - nhấn vào đây

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

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

GIÁO ÁN POWERPOINT CHỦ ĐỀ 1. MÁY TÍNH VÀ XÃ HỘI TRI THỨC

Giáo án điện tử Khoa học máy tính 11 kết nối Bài 1: Hệ điều hành
Giáo án điện tử Khoa học máy tính 11 kết nối Bài 2: Thực hành sử dụng hệ điều hành
Giáo án điện tử Khoa học máy tính 11 kết nối Bài 3: Phần mềm nguồn mở và phần mềm chạy trên Internet
Giáo án điện tử Khoa học máy tính 11 kết nối Bài 4: Bên trong máy tính
Giáo án điện tử Khoa học máy tính 11 kết nối Bài 5: Kết nối máy tính với các thiết bị số

GIÁO ÁN POWERPOINT CHỦ ĐỀ 2. TỔ CHỨC LƯU TRỮ, TÌM KIẾM VÀ TRAO ĐỔI THÔNG TIN

Giáo án điện tử Khoa học máy tính 11 kết nối Bài 6: Lưu trữ và chia sẻ tệp tin trên Internet
Giáo án điện tử Khoa học máy tính 11 kết nối Bài 7: Thực hành tìm kiếm thông tin trên Internet
Giáo án điện tử Khoa học máy tính 11 kết nối Bài 8: Thực hành nâng cao sử dụng thư điện tử và mạng xã hội

GIÁO ÁN POWERPOINT CHỦ ĐỀ 3. ĐẠO ĐỨC, PHÁP LUẬT VÀ VĂN HOÁ TRONG MÔI TRƯỜNG SỐ

Giáo án điện tử Khoa học máy tính 11 kết nối Bài 9: Giao tiếp an toàn trên internet

GIÁO ÁN POWERPOINT CHỦ ĐỀ 4. GIỚI THIỆU CÁC HỆ CƠ SỞ DỮ LIỆU

Giáo án điện tử Khoa học máy tính 11 kết nối Bài 10: Lưu trữ dữ liệu và khai thác thông tin phục vụ và quản lí
Giáo án điện tử Khoa học máy tính 11 kết nối Bài 11: Cơ sở dữ liệu
Giáo án điện tử Khoa học máy tính 11 kết nối Bài 12: Hệ quản trị cơ sở dữ liệu và hệ cơ sở dữ liệu
Giáo án điện tử Khoa học máy tính 11 kết nối Bài 13: Cơ sở dữ liệu quan hệ
Giáo án điện tử Khoa học máy tính 11 kết nối Bài 14: SQL - ngôn ngữ truy vấn có cấu trúc
Giáo án điện tử Khoa học máy tính 11 kết nối bài 15: Bảo mật và an toàn cơ sở dữ liệu

GIÁO ÁN POWERPOINT CHỦ ĐỀ 5. HƯỚNG NGHIỆP VỚI TIN HỌC

Giáo án điện tử Khoa học máy tính 11 kết nối Bài 16: Công việc quản trị cơ sở dữ liệu

GIÁO ÁN POWERPOINT CHỦ ĐỀ 6. KĨ THUẬT LẬP TRÌNH

Giáo án điện tử Khoa học máy tính 11 kết nối Bài 17: Dữ liệu mảng một chiều và hai chiều
Giáo án điện tử Khoa học máy tính 11 kết nối Bài 18: Thực hành dữ liệu mảng một chiều và hai chiều
Giáo án điện tử Khoa học máy tính 11 kết nối Bài 19: Bài toán tìm kiếm
Giáo án điện tử Khoa học máy tính 11 kết nối Bài 20: Thực hành bài toán tìm kiếm
Giáo án điện tử Khoa học máy tính 11 kết nối Bài 21: Các thuật toán sắp xếp đơn giản
 
Giáo án điện tử Khoa học máy tính 11 kết nối Bài 22: Thực hành bài toán sắp xếp
Giáo án điện tử Khoa học máy tính 11 kết nối Bài 23: Kiểm thử và đánh giá chương trình
Giáo án điện tử Khoa học máy tính 11 kết nối Bài 24: Đánh giá độ phức tạp thời gian thuật toán
Giáo án điện tử Khoa học máy tính 11 kết nối Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán
Giáo án điện tử Khoa học máy tính 11 kết nối Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình
 
Giáo án điện tử Khoa học máy tính 11 kết nối Bài 27: Thực hành thiết kế chương trình theo phương pháp làm mịn dần
Giáo án điện tử Khoa học máy tính 11 kết nối Bài 28: Thiết kế chương trình theo mô đun
Giáo án điện tử Khoa học máy tính 11 kết nối Bài 29: Thực hành thiết kế chương trình theo mô đun
Giáo án điện tử Khoa học máy tính 11 kết nối Bài 30: Thiết lập thư viện cho chương trình
Giáo án điện tử Khoa học máy tính 11 kết nối Bài 31: Thực hành thiết lập thư viện chương trình

Chat hỗ trợ
Chat ngay