Bài giảng môn Tin học Lớp 8 - Bài 5: Từ bài toán đến chương trình

pptx 31 trang phanha23b 26/03/2022 3820
Bạn đang xem 20 trang mẫu của tài liệu "Bài giảng môn Tin học Lớp 8 - Bài 5: Từ bài toán đến chương trình", để tải tài liệu gốc về máy bạn click vào nút DOWNLOAD ở trên

Tài liệu đính kèm:

  • pptxbai_giang_mon_tin_hoc_lop_8_bai_5_tu_bai_toan_den_chuong_tri.pptx

Nội dung text: Bài giảng môn Tin học Lớp 8 - Bài 5: Từ bài toán đến chương trình

  1. GIÁO ÁN ĐIỆN TỬ TIN HỌC 8
  2. 1. Bài toán và xác định bài toán HãyBài quan toán sátlà gcácì Bài toán 1: Tính diện tích của một tam giác biết một bài toánnhỉ ?sau ! cạnh và đờng cao tơng ứng với cạnh đó. Bài toán 2: Lập một bảng điểm để quản lí kết quả học tập của học sinh trong một lớp.  Bài toán là một công việc hay một nhiệm vụ cần phải giải quyết Bài toán 3: Tìm các cách khắc phục tắc nghẽn giao thông trong giờ cao điểm
  3.  Để giải quyết một bài toán cụ thể , ta cần xác định bài toán ❖ Điều kiện cho trớc ❖ Kết quả thu đợc Bài toán 1 Điều kiện cho trớc: Một cạnh và đờng cao tơng ứng với cạnh đó Kết quả thu đợc: Diện tích hình tam giác Bài toán 2 Điều kiện cho trớc: Thông tin của học sinh trong lớp (Họ tên. điểm các môn ) Kết quả thu đợc: Kết quả học tập của học sinh  Xác định bài toán là bớc đầu tiên và là bớc rất quan trọng trong việc giải bài toán.
  4. 2. Quá trình giải bài toán trên máy tính? Máy tính có thể tự giải các bài toán ồ không! Tôi chỉ làm không? theo sự chỉ dẫn thôi!!!!
  5.  Để máy tính có thể giải các bài toán, ta cần hớng dẫn máy tính thực hiện một dãy hữu hạn các thao tác để từ các điều kiện cho trớc ta nhận đợc kết quả cần thu đợc. Dãy hữu hạn các thao tác để giải một bài toán thờng đợc gọi là thuật toán
  6. Hãy nhớ! Máy tính không thể tự mình tìm ra lời giải của các bài toán. Lời giải của một bài toán cụ thể, tức thuật toán, là t duy sáng tạo của con ngời Kết quả
  7. Quá trình giải bài toán trên máy tính 1 Xác định bài toán: xác định điều kiện ban đầu (input) và kết quả cần xác định (output). 2 Xây dựng thuật toán: Lựa chọn và mô tả các thao tác sẽ thực. 3 Viết chơng trình: Diễn đạt thuật toán bằng một ngôn ngữ lập trình sao cho máy tính có thể hiểu và thực hiện đợc.
  8. 3. Thuật toán và mô tả thuật toán VD1 Thuật toán pha trà mời khách Input: Trà, nớc sôi, ấm và chén Output: Chén trà đã pha để mời khách Các bớc thực hiện để pha Bớc 1: Tráng ấm chén bằng nớc sôi; trà mời khách ntn nhỉ ? Bớc 2: Cho một nhúm trà vào ấm; Bớc 3: Tráng trà; Bớc 4: Rót nớc sôi vào ấm và đợi trong 3 – 4 phút; Bớc 5: Rót trà ra chén để mời khách;
  9. Ví dụ 2: Thuật toán “Làm món trứng tráng” INPUT: Trứng, dầu ăn, muối và hành. OUTPUT: Trứng tráng. Bớc 1. Đập trứng, tách vỏ và cho trứng vào bát. Bớc 2. Cho một chút muối và hành tơi thái nhỏ vào bát trứng. Dùng đũa quấy mạnh cho đến khi đều. Bớc 3. Cho một thìa dầu ăn vào chảo, đun nóng đều rồi đổ trứng vào. Đun tiếp trong khoảng 1 phút. Bớc 4. Lật mặt trên của miếng trứng úp xuống dới. Đun tiếp trong khoảng 1 phút. Bớc 5. Lấy trứng ra đĩa.
  10. VD3 Thuật toán giải phơng trình bậc nhất tổng quát bx + c = 0 Bớc 1: Nếu b = 0 chuyển tới bớc 3; c Bớc 2: Tính nghiệm của phơng trình x = rồi chuyển− tới bớc b 4; Bớc 3: Nếu c 0 thông báo phơng trình vô nghiệm, ngợc lại (c = 0) thông báo phơng trình vô số nghiệm. Bớc 4: Kết thúc thuật toán.
  11. Các bớc của ba thuật toán trên có thay đổi trình tự đợc không ? Thuật toán là dãy các thao tác cần thực hiện theo một trình tự xác định để thu đợc kết quả cần thiết từ những điều kiện cho trớc.
  12. 4. Một số ví dụ về thuật toán Ví dụ 1. Một hình A đợc ghép từ một hình chữ nhật với chiều rộng 2a, chiều dài b và một hình bán nguyệt bán kính a nh hình dới đây: Xác định Input và Output của bài toán b a a hình A
  13. - INPUT: Số a là 1/2 chiều rộng của hình chữ nhật và là bán kính của hình bán nguyệt, b là chiều dài của hình chữ nhật. - OUTPUT : Diện tích của hình A. 1 Tính S1 = 2a b {(Tính S hình CN)}; 2 Tính S2 = a2/2 {(S hình bán nguyệt)}; 3 Tính S = S1 + S2 và kết thúc. Lu ý: Trong biểu diễn thuật toán kí hiệu  để chỉ phép gán một giá trị cho biến. VD S  0 – gán giá trị 0 cho biến S
  14. Ví dụ 2: Tính tổng của 100 số tự nhiên đầu tiên liên tiếp S = 1 + 2 + 3 + 4 + + 100 Xác định Input và Output của bài toán - INPUT: Dãy 100 số tự nhiên đầu tiên: 1, 2, 100. - OUTPUT : Tổng của dãy số trên.
  15. Cùng tìm thuật toán S = 0 + 1 + 2 + 3 + +100 . . . . . . . . . . . . . . . . . . . . S = 0 Nhận xét: S1 = S + 1 Bắt đầu từ S1 việc tính S đợc lặp đi S2 = S1 + 2 lặp lại 100 lần theo quy luật S = S + i S3 = S2 + 3 sau trớc với i tăng lần lợt từ 1 đến100 S100 = S99 + 100
  16. Thuật toán tính tổng Bớc 1: S  0; i  0; Bớc 2: i  i + 1 Bớc 3: Nếu i <= 100 thì S  S + i; và quay lại bớc 2. trong trờng hợp ngợc lại thông báo kết quả rồi kết thúc thuật toán.
  17. Bài toán đổi giá trị hai biến Làm cách nào Cốc A Cốc B đây? Cốc A chứa nớc màu đỏ, cốc B chứa nớc màu xanh. Làm cách nào để tráo đổi cốc A có nớc màu xanh, cốc B có nớc màu đỏ? (Giả thiết cốc A và cốc B có thể tích nh nhau)
  18. Bài toán đổi giá trị hai biến 1. Lấy một cốc C rỗng có thể tích nh A và B Cốc A Cốc B Cốc C
  19. Bài toán đổi giá trị hai biến 2. Đổ nớc màu đỏ ở cốc A sang cốc C Cốc A Cốc B Cốc C
  20. Bài toán đổi giá trị hai biến 3. Đổ nớc màu xanh ở cốc B sang cốc A Cốc A Cốc B Cốc C
  21. Bài toán đổi giá trị hai biến 4. Đổ nớc màu đỏ ở cốc C sang cốc B Cốc A Cốc B Cốc C
  22. Ví dụ 3: Đổi giá trị hai biến x và y Input: Hai biến x và y có giá trị tơng ứng là a, b Output: Hai biến x và y có giá trị tơng ứng là b, a Bớc 1: z  x {Sau bớc này giá trị của z sẽ bằng a} Bớc 2: x  y {Sau bớc này giá trị của x sẽ bằng b} Bớc 3: y  z {Sau bớc này giá trị của y sẽ bằng giá trị của z, chính là giá trị ban đầu a của biến x}
  23. Ví dụ 4: Cho hai số thực a và b. Hãy cho biết kết quả so sánh hai số đó dới dạng “a lớn hơn b”,”a nhỏ hơn b” hoặc “a=b” Input: Hai số thực a và b Output: Kết quả so sánh Hãy tìm chỗ cha đúng trong thuật toán sau Bớc 1: So sánh a và b. Nếu a>b, cho kết quả “a lớn hơn b” Bớc 2: Nếu a<b, cho kết quả “a nhỏ hơn b”; ngợc lại, cho kết quả “a = b” và kết thúc thuật toán.
  24. NhTang thấy, trong sau b ớcbớc hai, 1 Thử lại với a=6 và khita kiểm đợc trakết a<bquả thì b=5 kết quả là  a lớn hơn b  a = b
  25. Thuật toán so sánh 2 số thực Bớc 1: So sánh a và b. Nếu a>b, cho kết quả “a lớn hơn b“ và chuyển đến bớc 3 Bớc 2: Nếu a<b, cho kết quả “a nhỏ hơn b“; ngợc lại, cho kết quả “a = b“ Bớc 3: Kết thúc thuật toán
  26. Ví dụ 5: Tìm số lớn nhất trong dãy A các số a1, a2, , an. INPUT: Số nguyên dơng N và dãy N số nguyên a1,a2, aN. (ai với i: 1→n) OUTPUT: Số lớn nhất (Max) của dãy số.
  27. Thuật toán tìm max 3 Ngời ta đặt 5 quả bóng có kích thớc khác nhau trong hộp đã đợc đậy nắp nh hình bên.Chỉ dùng tay hãy tìm ra quả bóng có kích thớc lớn nhất .
  28. Quả này mới lớn nhất ồ!T Quảìm ra này quả Quả này lớn lớnlớn nhất hơn rồi! nhất MAX
  29. ý tởng: - Đặt giá trị Max= a1 - Lần lợt cho i chạy từ 2 đến N, so sánh giá trị ai với giá trị Max, nếu ai> Max thì Max nhận giá trị mới là ai.
  30. Thuật toán tìm max Bớc 1: Max  a1 ; i  1 Bớc 2: i i +1 Bớc 3: Nếu i > N, chuyển đến bớc 5 Bớc 4: Nếu ai > Max thì Max  ai rồi quay lại bớc 2 trờng hợp ngợc lại giữ nguyên Max và quay lại bớc 2 Bớc 5: Kết thúc thuật toán
  31. Ghi nhớ! ❖ Xác định bài toán là việc xác định các điều kiện ban đầu( thông tin vào-ra INPUT) và các kết quả cần thu đợc( thông tin ra ( OUTPUT) ❖ Giải bài toán trên máy tính nghĩa là hớng dẫn cho máy tính dãy hữu hạn các thao tác đơn giản( thuật toán) mà nó có thể thực hiện đợc để cho ta kết quả. ❖ Quá trình giải một bài toán trên máy tính gồm các bớc: xác định bài toán; xây dựng thuật toán; lập chơng trình. ❖ Thuật toán: là dãy hữu hạn các thao tác cần thực hiện theo một trình tự xác định để thu đợc kết quả cần thiết từ những điều kiện cho trớc.