1. Trang chủ
  2. » Giáo án - Bài giảng

bai giang tin hoc 10

12 336 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 12
Dung lượng 740 KB

Nội dung

TRƯỜNG PTNT THAN UYÊN TRƯỜNG PTNT THAN UYÊN KIỂM TRA BÀI CŨ 1. Em hãy so sánh ngôn ngữ máy và ngôn ngữ lập trình bậc cao? 2. Chương trình dịch dùng để làm gì? Hướng dẫn trả lời Ngôn ngữ máy Ngôn ngữ bậc cao - Viết bằng mã nhị phân, - Máy tình hiểu ngay, -Mỗi loại máy có một ngôn ngữ riêng. - Viết bằng ngôn ngữ gần với ngôn ngữ tự nhiên, -Muốn máy hiểu được phải chuyển sang ngôn ngữ máy, - Không phụ thuộc vào loại máy, Chương trình dịch dùng để dịch từ chương trình viết bằng ngôn ngữ khác sang ngôn ngữ máy. B1. Xác định bài toán B2. Lựa chọn hoặc thiết kế thuật toán B3. Viết chương trình B4. Hiệu chỉnh B5. Viết tài liệu NOÄI DUNG TIẾT 18: TIẾT 18: GIẢI BÀI TOÁN TRÊN MÁY TÍNH GIẢI BÀI TOÁN TRÊN MÁY TÍNH NỘI DUNG 1. XÁC ĐịNH BÀI TOÁN NỘI DUNG 1. XÁC ĐịNH BÀI TOÁN 1. XÁC ĐỊNH BÀI TOÁN Ví dụ: Cho bài toán tìm ước chung lớn nhất của hai số M và N là 2 số nguyên dương. Input cho M,N Output tìm UCLN(M,N)  Việc xác định bài toán là xác định rõ hai thành phần: Input Output Output Hãy xác định bài toán trên? TIẾT 18: TIẾT 18: GIẢI BÀI TOÁN TRÊN MÁY TÍNH GIẢI BÀI TOÁN TRÊN MÁY TÍNH 2. LỰA CHỌN HOẶC THIẾT KẾ THUẬT TOÁN a. Lựa chọn thuật toán Có thể có nhiều cách giải (thuật toán) BÀI TOÁN Cách 1 Cách 2 Cách 3 . . . Cần phải chọn cách giải (Thuật toán) sao cho : - Thuật toán cần ít thời gian thực hiện, chiếm ít ô nhớ, thực hiện ít phép toán. . . - Thuật toán ít phức tạp, NỘI DUNG 1. XÁC ĐỊNH BÀI TOÁN 2. LỰA CHỌN HOẶC THIẾT KẾ THUẬT TOÁN a. Lựa chọn thuật toán NỘI DUNG 1. XÁC ĐỊNH BÀI TOÁN 2. LỰA CHỌN HOẶC THIẾT KẾ THUẬT TOÁN a. Lựa chọn thuật toán - Lựa chọn thuật toán và tổ chức dữ liệu. TIẾT 18: TIẾT 18: GIẢI BÀI TOÁN TRÊN MÁY TÍNH GIẢI BÀI TOÁN TRÊN MÁY TÍNH KẾT QUẢ 2. LỰA CHỌN HOẶC THIẾT KẾ THUẬT TOÁN b. Diễn tả thuật toán NỘI DUNG 1. XÁC ĐỊNH BÀI TOÁN 2. LỰA CHỌN HOẶC THIẾT KẾ THUẬT TOÁN a. Lựa chọn thuật toán b. Diễn tả thuật toán NỘI DUNG 1. XÁC ĐỊNH BÀI TOÁN 2. LỰA CHỌN HOẶC THIẾT KẾ THUẬT TOÁN a. Lựa chọn thuật toán b. Diễn tả thuật toán Tìm ước chung lớn nhất của hai số nguyên dương M,N. Nếu M=N thì giá trị chung là UCLN Nếu M>N thì UCLN(M,N)=UCLN(M-N,N) Nếu M<N thì UCLN(M,N)=UCLN(M,N-M) Chia M cho N lấy dư là R Nếu R=0 thì UCLN(M,N)=N Nếu khác 0 thì gán N cho M gán R cho N Tiếp tục chia M cho N. Trình bày ý tưởng một vài cách giải Xác định bài toán TIẾT 18: TIẾT 18: GIẢI BÀI TOÁN TRÊN MÁY TÍNH GIẢI BÀI TOÁN TRÊN MÁY TÍNH 2. LỰA CHỌN HOẶC THIẾT KẾ THUẬT TOÁN b. Diễn tả thuật toán ? Thuật toán B1: Nhập M, N B2: Chia M cho N lấy dư là R B3: Nếu R=0 thì UCLN(M,N)=N rồi kết thúc B4: M N , N R chuyển sang B2 B1:Nhập M,N B2: Nếu M=N thì giá trị chung là UCLN rồi kết thúc B3:Nếu M>N thì M M-N chuyển sang B2 B4: N N-M chuyển sang B2 NỘI DUNG 1. XÁC ĐỊNH BÀI TOÁN 2. LỰA CHỌN HOẶC THIẾT KẾ THUẬT TOÁN a. Lựa chọn thuật toán b. Diễn tả thuật toán NỘI DUNG 1. XÁC ĐỊNH BÀI TOÁN 2. LỰA CHỌN HOẶC THIẾT KẾ THUẬT TOÁN a. Lựa chọn thuật toán b. Diễn tả thuật toán TIẾT 18: TIẾT 18: GIẢI BÀI TOÁN TRÊN MÁY TÍNH GIẢI BÀI TOÁN TRÊN MÁY TÍNH 2. LỰA CHỌN HOẶC THIẾT KẾ THUẬT TOÁN b. Diễn tả thuật toán Thuật toán Nhập M,N N N-M M=N Đưa KQ KT M>N S Đ S M M-N Đ Nhập M,N Chia M cho N lấy dư R R=0 M N N R Đưa KQ KT Nên lựa chọn cách giải (thuật toán) nào để viết chương trình? Giải thích tại sao? Đ S 2 1 NỘI DUNG 1. XÁC ĐỊNH BÀI TOÁN 2. LỰA CHỌN HOẶC THIẾT KẾ THUẬT TOÁN a. Lựa chọn thuật toán b. Diễn tả thuật toán NỘI DUNG 1. XÁC ĐỊNH BÀI TOÁN 2. LỰA CHỌN HOẶC THIẾT KẾ THUẬT TOÁN a. Lựa chọn thuật toán b. Diễn tả thuật toán TIẾT 18: TIẾT 18: GIẢI BÀI TOÁN TRÊN MÁY TÍNH GIẢI BÀI TOÁN TRÊN MÁY TÍNH 3. VIẾT CHƯƠNG TRÌNH Thuật toán+ Ngôn ngữ lập trình=chương trình Program Tin UCLN; Var M, N, R:integer; Begin Write(‘Nhap vao M,N); Read(M,N); R:=M mod N; While N<>0 and R<>0 do Begin M:=N; N:=R; end; Write(‘ uoc chung lon nhat la:’, N); End. Program Tin UCLN; Var M, N, R:integer; Begin Write(‘Nhap vao M,N); Read(M,N); While M<>N do IF M>N THEN M:=M-N; ELSE N:=N-M; Write(‘ uoc chung lon nhat la:’, M); End. NỘI DUNG 1. XÁC ĐỊNH BÀI TOÁN 2. LỰA CHỌN HOẶC THIẾT KẾ THUẬT TOÁN a. Lựa chọn thuật toán b. Diễn tả thuật toán 3. VIẾT CHƯƠNG TRÌNH NỘI DUNG 1. XÁC ĐỊNH BÀI TOÁN 2. LỰA CHỌN HOẶC THIẾT KẾ THUẬT TOÁN a. Lựa chọn thuật toán b. Diễn tả thuật toán 3. VIẾT CHƯƠNG TRÌNH TIẾT 18: TIẾT 18: GIẢI BÀI TOÁN TRÊN MÁY TÍNH GIẢI BÀI TOÁN TRÊN MÁY TÍNH 4. HIỆU CHỈNH M=9,N=15; NỘI DUNG 1. XÁC ĐỊNH BÀI TOÁN 2. LỰA CHỌN HOẶC THIẾT KẾ THUẬT TOÁN a. Lựa chọn thuật toán b. Diễn tả thuật toán 3. VIẾT CHƯƠNG TRÌNH 4. HIỆU CHỈNH NỘI DUNG 1. XÁC ĐỊNH BÀI TOÁN 2. LỰA CHỌN HOẶC THIẾT KẾ THUẬT TOÁN a. Lựa chọn thuật toán b. Diễn tả thuật toán 3. VIẾT CHƯƠNG TRÌNH 4. HIỆU CHỈNH 3 3 6 9 15 N UCLN(M,N) 064 393 6152 991 RMLẦN ? Chạy thử chương trình với các bộ Input tiêu biểu để tìm ra Output: Nhập M,N Chia 9 cho 15 lấy dư 9 9=0 M 15 N 9 S Chia 15 cho 9 lấy dư 6 6=0 M 9 N 6 Chia 9 cho 6 lấy dư 3 3=0 M 6 N 3 Chia 6 cho 3 lấy dư 0 0=0 Đ KQ LÀ 3 KT TIẾT 18: TIẾT 18: GIẢI BÀI TOÁN TRÊN MÁY TÍNH GIẢI BÀI TOÁN TRÊN MÁY TÍNH Nhập M,N N N-M M=N Đưa KQ KT M>N S Đ S M M-N Đ Nhập M,N Chia M cho N lấy dư R R=0 M N N R Đưa KQ KT Đ S 4. HIỆU CHỈNH ? Chạy 2 thuật toán trên theo từng bước và điền vào phiếu học tập với bộ Input(M, N): M=6, N=1 để có được Output Phiếu học tập NỘI DUNG 1. XÁC ĐỊNH BÀI TOÁN 2. LỰA CHỌN HOẶC THIẾT KẾ THUẬT TOÁN a. Lựa chọn thuật toán b. Diễn tả thuật toán 3. VIẾT CHƯƠNG TRÌNH 4. HIỆU CHỈNH NỘI DUNG 1. XÁC ĐỊNH BÀI TOÁN 2. LỰA CHỌN HOẶC THIẾT KẾ THUẬT TOÁN a. Lựa chọn thuật toán b. Diễn tả thuật toán 3. VIẾT CHƯƠNG TRÌNH 4. HIỆU CHỈNH TIẾT 18: TIẾT 18: GIẢI BÀI TOÁN TRÊN MÁY TÍNH GIẢI BÀI TOÁN TRÊN MÁY TÍNH . Tin UCLN; Var M, N, R:integer; Begin Write(‘Nhap vao M,N); Read(M,N); R:=M mod N; While N<>0 and R<>0 do Begin M:=N; N:=R; end; Write(‘ uoc chung lon nhat la:’, N); End. Program Tin

Ngày đăng: 12/02/2015, 02:00

w