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

Bài giảng Lập trình căn bản: Phần 1 GIỚI THIỆU VỀ CẤU TRÚC DỮ LIỆU VÀ GIẢI THUẬT - Võ Duy Tín

26 819 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 26
Dung lượng 651,46 KB

Nội dung

Bài giảng Lập trình căn bản: Phần 1 - Võ Duy Tín

LẬP TRÌNH CĂN BẢN Phần GIỚI THIỆU VỀ CẤU TRÚC DỮ LIỆU VÀ GIẢI THUẬT Nội dung chương • • • • • Từ toán đến chương trình Giải thuật Kiểu liệu Khái niệm ngơn ngữ lập trình Chương trình dịch Từ Bài Tốn Đến Chương Trình Mơ tả bước giải tốn Vẽ sơ đồ xử lý Viết chương trình xử lý ngơn ngữ giả Chọn ngơn ngữ lập trình chuyển chương trình từ ngơn ngữ giả sang ngơn ngữ lập trình Thực chương trình: nhập vào tham số, nhận kết Giải Thuật • • • • • • Khái niệm giải thuật Các đặc trưng giải thuật Ngôn ngữ biểu diễn giải thuật Một số giải thuật Các cấu trúc suy luận giải thuật Từ giải thuật đến chương trình Khái Niệm Giải Thuật – Ví dụ: Hốn đổi chất lỏng bình A (nước mắm) B (rượu): • • • • u cầu phải có thêm bình thứ ba gọi bình C Bước 1: Đổ rượu từ bình A sang bình C Bước 2: Đổ nước mắm từ bình B sang bình A Bước 3: Đổ rượu từ bình C sang bình B – “Giải thuật dãy thao tác liệu vào cho sau hữu hạn bước ta thu kết tốn ” Ngơn Ngữ Biểu Diễn Giải Thuật Ngôn ngữ sơ đồ Biểu Diễn Giải Thuật Ngôn ngữ tự nhiên Ngôn ngữ giả Ngôn Ngữ Tự Nhiên • Là ngơn ngữ • Ví dụ: Giải thuật giải phương trình bậc ax+b=0 Bước 1: Nhận giá trị tham số a, b Bước 2: Xét giá trị a xem có hay khơng? Nếu a=0 làm bước 3, a khác khơng làm bước Bước 3: (a 0) Nếu b => pt vô số nghiệm Nếu b khác => pt vô nghiệm Bước 4: b/a ( a khác 0) Ta kết luận phương trình có nghiệm x=- Ngơn Ngữ Sơ Đồ (1) • Mơ tả giải thuật sơ đồ hình khối (quy ước trước) Ngơn Ngữ Sơ Đồ (2) • Ví dụ: Dùng lưu đồ để biểu diễn giải thuật tìm UCLN nêu sau: Ngơn Ngữ Giả • Là kết hợp ngơn ngữ tự nhiên với cấu trúc câu lệnh ngơn ngữ lập trình • Ví dụ: Giải thuật giải phương trình bậc ax+b=0 • Nhập vào a, b • If a==0 then If b==0 then Kết luận phương trình vơ số nghiệm else Kết luận phương trình vơ nghiệm else Kết luận phương trình có nghiệm x=-b/a Một Số Giải Thuật Cơ Bản (2) • Ví dụ 2: Yêu cầu: – Nhập vào số a b hệ số pt: ax+b=0 – Cho biết nghiệm phương trình Các Cấu Trúc Suy Luận Cơ Bản Của Giải Thuật (1) Tuần tự (Sequential): Cấu Trúc Suy Luận Cơ Bản Cấu trúc lặp (Repeating) Cấu trúc lựa chọn (Selection) Giải thuật • Nói chuyện với người, dễ hiểu • Dùng ngơn ngữ đơn giản (English) – khơng viết mã Chương trình • Nói chuyện với máy tính • Có thể xem diễn tả hình thức (formal expression) giải thuật Từ Giải Thuật Đến Chương Trình Kiểu Dữ Liệu • Ví dụ: int x,y; float r=3.25; • “Kiểu liệu tập hợp giá trị có tính chất tập hợp phép tốn thao tác giá trị đó” • Có loại – Kiểu liệu sơ cấp – Kiểu liệu có cấu trúc Kiểu Dữ Liệu Sơ Cấp • “Kiểu liệu sơ cấp kiểu liệu mà giá trị đơn nhất” • Ví dụ: Kiểu int C • kiểu sơ cấp • gồm số nguyên từ -32768 32767 • phép toán: +, -, *, /, %… Kiểu Dữ Liệu Có Cấu Trúc • “Kiểu liệu có cấu trúc kiểu liệu mà giá trị kết hợp giá trị khác” • Ví dụ : Kiểu chuỗi ký tự C • kiểu có cấu trúc • Ví dụ: char *chuoi = “Chao cac ban!”; Ngơn Ngữ Lập Trình • Khái niệm ngơn ngữ lập trình • Chương trình dịch Khái Niệm Về Ngơn Ngữ Lập Trình • Ngơn ngữ lập trình ngơn ngữ dùng để viết chương trình cho máy tính Ngơn Ngữ Máy (machine language) • Là thị dạng nhị phân, can thiệp trực tiếp vào mạch điện tử • Có thể thực không cần qua bước trung gian • Tuy nhiên chương trình viết ngơn ngữ máy dễ sai sót, cồng kềnh khó đọc, khó hiểu tồn số Machine Language 10100110 01110110 00100110 00000000 11111010 11111010 01001110 10100110 11100110 10010110 11001110 00101110 10100110 01001110 11111010 01100110 01001110 10000110 etc Hợp Ngữ (Assembly language) • Bao gồm tên câu lệnh quy tắc viết câu lệnh • Tên câu lệnh bao gồm hai phần: – Phần mã lệnh (English) phép toán cần thực – Phần địa chứa toán hạng phép tốn • Để máy thực chương trình viết hợp ngữ chương trình phải dịch sang ngôn ngữ máy Công cụ thực việc dịch gọi Assembler Assembly Language INPUT a ; Nhập giá trị cho a từ bàn phím LOAD a ; Đọc giá trị a vào ghi tổng A PRINT a; Hiển thị giá trị a hình INPUT b ADD b ; Cộng giá trị ghi tổng A ;với giá trị b Ngơn Cấp Cao (High level language ) • Rất gần với ngơn ngữ người • Một chương trình viết ngôn ngữ cấp cao gọi chương trình nguồn (source programs) • Để máy tính "hiểu" thực lệnh chương trình nguồn phải có chương trình dịch để dịch chương trình nguồn thành dạng chương trình có khả thực thi Các ngơn ngữ lập trình phổ biến Chương Trình Dịch • Được dùng để chuyển chương trình nguồn sang chương trình đích • Có dạng: • Thơng dịch (interpreter): – Dịch lệnh một, dịch tới đâu thực tới – Ví dụ: ngơn ngữ LISP • Biên dịch (compiler): – Dịch tồn chương trình nguồn thành chương trình đích sau thực – Ví dụ: Pascal, C Hết chương ... Language 10 10 011 0 011 1 011 0 0 010 011 0 00000000 11 111 010 11 111 010 010 011 10 10 10 011 0 11 10 011 0 10 010 110 11 0 011 10 0 010 111 0 10 10 011 0 010 011 10 11 111 010 011 0 011 0 010 011 10 10 00 011 0 etc Hợp Ngữ (Assembly language)... Nhập vào số a b hệ số pt: ax+b=0 – Cho biết nghiệm phương trình Các Cấu Trúc Suy Luận Cơ Bản Của Giải Thuật (1) Tuần tự (Sequential): Cấu Trúc Suy Luận Cơ Bản Cấu trúc lặp (Repeating) Cấu trúc. .. Các đặc trưng giải thuật Ngôn ngữ biểu diễn giải thuật Một số giải thuật Các cấu trúc suy luận giải thuật Từ giải thuật đến chương trình Khái Niệm Giải Thuật – Ví dụ: Hốn đổi chất lỏng bình A (nước

Ngày đăng: 25/05/2014, 19:35

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w