Bài giảng môn Tin học Khối 10 - Bài 6: Giải bài toán trên máy tính

ppt 28 trang phanha23b 29/03/2022 3110
Bạn đang xem 20 trang mẫu của tài liệu "Bài giảng môn Tin học Khối 10 - Bài 6: Giải bài toán trên máy tí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:

  • pptbai_giang_mon_tin_hoc_khoi_10_bai_6_giai_bai_toan_tren_may_t.ppt

Nội dung text: Bài giảng môn Tin học Khối 10 - Bài 6: Giải bài toán trên máy tính

  1. Câu 1: Ngôn ngữ lập trình là gì? a) Là ngôn ngữ biểu diễn thuật toán bằng sơ đồ khối; b) Là ngôn ngữ biểu diễn thuật toán theo cách liệt kê; c) Là một ngôn ngữ biểu diễn thuật toán thành một chương trình trên máy tính; d) Tất cả đều đúng.
  2. Câu 2: Có mấy loại ngôn ngữ lập trình? a) 1 loại; b) 2 loại; c) 3 loại; d) 4 loại.
  3. Câu 3: Chương trình dịch dùng để làm gì? a) Dịch chương trình viết bằng hợp ngữ và ngôn ngữ bậc cao sang chương trình viết bằng ngôn ngữ máy; b) Dùng để diệt Virus. c) Diễn đạt các thao tác của thuật toán; d) Biểu diễn thuật toán bằng sơ đồ khối;
  4. BÀI TOÁN ĐẶT VẤN ĐỀ Tìm ước số chung lớn nhất của 2 số nguyên dương M và N Với các giá trị: M = 25; N = 5. M = 21; N = 15. M = 997; N = 827. M = 2006; N=1998.
  5. Hãy chỉ ra những ưu điểm của việc giải bài toán bằng máy tính so với giải toán thông thường?
  6. NỘI DUNG BÀI HỌC 1. Xác định bài toán 2. Lựa chọn hoặc thiết kế thuật toán 3. Viết chương trình 4.Hiệu chỉnh 5.Viết tài liệu 8
  7. 1. XÁC ĐỊNH BÀI TOÁN Là xácTrong định toán Input học và Output của bài toán lA trước khi giải một bài toán việc đầu Ví dụ:Xáctiên Bàichúng định toán tabài phải tìm toán ƯCLN là xác của định 2 nhữngsố nguyên yếu dươngtố nào? M và N?làm gì? Input: 2Input số nguyên : ??? dương M và N Output:OutputƯCLN của: ??? M và N Xác định bài toán 9
  8. 2. LỰA CHỌN HOẶC THIẾT KẾ THUẬT TOÁN a) Lựa chọn thuật toán - Cần thiết kế hoặc chọn một thuật toán phùOUTPUT hợp đã có đểINPUT giải bài toán cho trước.Thuật toán 1 - Cần quan tâm đến các tài nguyên như: Thuật toán 2 + Thời gian thực hiện; BÀI TOÁN KẾT QUẢ + Số lượng ô nhớ. + Thuật toán ít phức tạp. Thuật toán n Chúng ta lựa chọn thuật toán nào giải bài toán trên?
  9. 2. LỰA CHỌN HOẶC THIẾT KẾ THUẬT TOÁN b) Diễn tả thuật toán: Diễn tả Thuật toán Diễn giải bằng Diễn tả bằng cách liệt kê sơ đồ khối
  10. Bài toán: Tìm ước chung lớn nhất (ƯCLN) của 2 số nguyên dương M và N?  Xác định bài toán: + Input: 2 số nguyên dương M và N; + Output: ƯCLN của M và N  Ý tưởng: + Nếu M=N thì ƯCLN(M,N)=M hoặc ƯCLN(M,N)=N; + Nếu M>N thì ƯCLN(M,N)= ƯCLN(M-N,N); + Nếu M<N thì ƯCLN(M,N)= ƯCLN(M,N-M);
  11. DIỄN TẢ THUẬT TOÁN BẰNG CÁCH LIỆT KÊ Bước 1: Nhập M và N; Bước 2: Nếu M=N thì lấy giá trị chung làm ƯCLN; rồi chuyển đến bước 5; Bước 3: Nếu M>N thì M←M-N rồi quay lại bước 2; Bước 4: N←N-M rồi quay lại bước 2; Bước 5: Thông báo ƯCLN; kết thúc;
  12. DIỄN TẢ THUẬT TOÁN BẰNG SƠ ĐỒ KHỐI Nhập M ,N Đúng M =N ? Đưa ra M ; Kết thúc Sai Đúng M > N ? M M - N Sai N N - M 14
  13. MÔ PHỎNG THUẬT TOÁN TÌM ƯCLN Lượt 1 2 3 NhậpM= 25, MN =,N 10 M 25 15 5 5 N 10 10 10 5 Đúng 2515M55 = ===N10105 ? ?? ĐưaƯCLNra M(25,10) ; Kết = thúc5 Sai Đúng M25155 >>>10 10N ?? M  2515M - -10N Sai N = 10N 5M
  14. MÔ PHỎNG THUẬT TOÁN TÌM ƯCLN Lượt 1 2 3 NhậpM= 24, MN =,N 18 M 24 6 6 6 N 18 18 12 6 Đúng 624M 6=6 = 18=N=12186 ? ?? ĐưaƯCLNra M(24,18) ; Kết = thúc6 Sai Đúng M2466 > >>18 12 N ?? M  24M - -18N Sai NN 1812N 6M6
  15. 3. VIẾT CHƯƠNG TRÌNH Viết chương trình là sự tổng hợp giữa: - Việc lựa chọn cách tổng hợp dữ liệu: - Sử dụng ngôn ngữ lập trình để diễn đạt thuật toán.
  16. 4. HIỆU CHỈNH Sử dụng các bộ Input đặc trưng cho bài toán để thử tính đúng đắn của chương trình. TEST M = 8; N = 8 → ƯCLN = 8 M = 17; N = 13 → ƯCLN = 1 M = 88; N = 121 → ƯCLN = 11
  17. 5. VIẾT TÀI LIỆU Công ty lập trình Chi nhánh - Giúp ích cho việc Mụcnghiên cứuđích và củađề xuất khả năng hoàn thiện chương trình. việcMở viết rộng tài - Giúp ích cho người sửliệu dụng là trong gì? quá trình sử dụng chương trình. Viết phần mềm
  18. ĐI TÌM ẨN SỐ
  19. Câu 1: Tiêu chuẩn lựa chọn thuật toán là gì? a) Thuật toán phải phù hợp với bài đã cho. b) Thời gian thực hiện nhanh, ít tốn bộ nhớ. c) Khi viết chương trình ít phức tạp nhất. d) Cả 3 ý trên đều đúng.
  20. Câu 2: Kiểm tra tính đúng đắn của chương trình giải phương trình bậc hai ax2+bx+c=0 (a#0), xác định bộ Input để phương trình có 2 nghiệm phân biệt? a) a=1, b=-5, c=6. b) a=1, b=4, c=8. c) a=1, b=-4, c=4. d) a=2, b=2, c=7.
  21. Câu 3: Tìm ƯCLNcủa 2 số M=78, N=102; a) 24. b) 12. c) 6. d) 5.
  22. Câu 4: Nội dung và mục đích của việc hiệu chỉnh? a) Kiểm tra lỗi về thuật toán. b) Kiểm tra cú pháp của ngôn ngữ lập trình. c) Dùng các bộ Test khác nhau để kiểm tra . d) Cả 3 ý trên đều đúng.
  23. 6. HƯỚNG DẪN HỌC BÀI - Học thuộc các bước giải bài toán trên máy tính. - Làm bài 1,2,3 – SGK trang 51. -Đọc trước bài 7+8: Phần mềm máy tính. Những ứng dụng của tin học.