Giáo trình lập trình cấu trúc pascal

91 877 0
Giáo trình lập trình cấu trúc pascal

Đ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

TRUNG TÂM ĐÀO TẠO TRỰC TUYẾN - ĐẠI HỌC KINH DOANH & CÔNG NGHỆ H À NỘI Lời nói đầu! Ngôn ngữ Pascal giáo sư N Wirth đưa năm 1970, m ột ngôn ngữ có cấu trúc, thường dùng để giảng dạy cho Sinh viên Học sinh bước vào lĩnh vực học lập trình Chúng ta học Pascal lý sau: · Ngôn ngữ Pascal Việt nam phổ biến · Tạo cho người học tác phong "kỷ luật lập tr ình" cấu trúc · Làm quen với số liệu, đặc biệt l liệu có cấu trúc giúp cho ng ười học tiếp tục tìm hiểu tiếp C ++, Visual Basic v Java giáo trình sau Đây phần nhất, giáo trình không vào phần cấp phát động hướng đối tượng vì: thứ số trình học phần không nhiều; thứ C ++ Java dạy học kỳ sau có chứa đựng nội dung đó; thứ ba tác giả muốn nhấn mạnh tư tưởng “Lập trình cấu trúc” nên không muốn làm “loãng” Giáo trình chạy phiên Turbo Pascal 5.0, 5.5, 6.0 v 7.0 Tất nhiên cần phải nói thêm Turbo Pascal 7.0 có gây l ỗi vi xử lý Pentium II, III, v.v có tốc độ lớn, ông chủ (Borland) không cập nhật ý muốn chuyển sang dòng ngôn ngữ khác Tuy bạn đừng lo, bạn tự sửa lỗi thao tác đ ơn giản, né tránh không dùng lệnh gây lỗi Các bạn nên tập trung bước đầu làm quen với "lập trình cấu trúc" này, cầu nối tốt giúp bạn sau học lập tr ình ngôn ngữ khác môi trường Windows Khi thực hành máy bạn cung cấp tập Pascal mà tập theo trật tự phần lý thuyết Chúc bạn thành đạt! ELEC Trang TRUNG TÂM ĐÀO TẠO TRỰC TUYẾN - ĐẠI HỌC KINH DOANH & CÔNG NGHỆ H À NỘI Chương Các thành phần ngôn ngữ 1.1 Bộ ký tự, từ khoá, tên gọi Các ngôn ngữ xây dựng dựa ký tự, từ ký tự mà từ có nghĩa tạo thành Tiếp theo qui tắc để tạo thành câu để diễn tả hành vi, việc nghĩa phải tuân thủ cú pháp (syntax) v ngữ pháp (grammar) ngôn ngữ Ngôn ngữ Pascal theo quy cách a Bộ ký tự: Bộ chữ la tinh: 26 chữ cá i lớn A, B, C, D Z 26 chữ nhỏ a, b, c, d, , z Ký tự gạch nối _ Các chữ số thập phân: 0, 1, 2, 3, 4, 5, 6, 7, 8, Các ký tự toán học: +, -, *, /, = , , (, ) Các ký tự đặc biệt: , ;, :, [, ], ?, %, @, Dấu cách: (Space) dùng để ngăn cách từ b Một số từ Pascal gọi từ khoá (keyword) Các từ khoá bao gồm:  Từ khoá chung: Program, Begin, End, Procedure, Function  Từ khoá để khai báo: Conts, Var, Label, Type, Array, String, Record, File of  Từ khoá lệnh điều kiện, chọn v lặp: if then else , Case of For to For Downto While Repeat until  Từ khoá điều khiển: With, Goto  Từ khoá toán tử: And, Or, Not, In, Div, Mod V.v Các từ khoá viết chữ to chữ nhỏ, pha lẫn ví dụ: Begin, BEGIN, begin d Tên (định danh - identifier): Tên định danh dùng để tên hằng, biến, kiểu, tên chương trình Tên tạo thành từ chữ chữ số chữ đầu phải chữ (có thể dùng thêm dấu gạch dưới) Nên đặt tên cho có ý nghĩa dễ nhận biết Ví dụ để đặt tên biến diện tích hình tròn ta nên dùng: S ho ặc DienTichHinhTron Dien _Tich_Hinh_tron v.v Các t ên viết sau sai, Pascal không chấp nhận: ELEC Trang TRUNG TÂM ĐÀO TẠO TRỰC TUYẾN - ĐẠI HỌC KINH DOANH & CÔNG NGHỆ H À NỘI #DienTich Sai tên bắt đầu ký tự không phép BEGIN Sai tên trùng với từ khoá Dien Tich Sai có dấu cách (Space) 3XY Sai tên bắt đầu chữ số, Một số tên dùng cho tên hàm EXP, SIN, COS, ) đư ợc gọi tên chuẩn Sự khác tên chuẩn từ khoá là: người sử dụng định nghĩa lại tên chuẩn vào việc khác cần Còn từ khoá không phép Một số tên chuẩn Pascal: Boolean, Char, Integer, Real, Byte, Text False, True, MaxInt Abs, artctan, Chr, Cos, Sin, Eof, Eoln, Exp, Ln, Odd, Ord, Round, Trunc, Sqr, Sqrt, Pred, Succ Dispose, New, Get, Put, Read, Realn, Write, Writeln, Reset, Rewrite 1.2 Ngăn cách lệnh Dấu chấm phẩy ";" dùng để ngăn cách câu lệnh Pascal 1.3 Lời thích (Comment) Lời thích đưa vào vị trí chương trình mà không ảnh hưởng đến phần khác Lời thích l dành cho người đọc, máy bỏ qua gặp Lời thích đặt bên mở đóng móc {và} cụm dấu (*và v*) Trong chương trình nên viết lời thích v vị trí thích hợp giúp cho người dễ dàng kiểm tra chương trình 1.4 Cấu trúc chung chương trình Pascal Chương trình dãy lệnh, dẫn cho máy thực m ột nhiệm vụ Chương trình Pascal gồm phần:  Tiêu đề chương trình  Phần gọi đơn vị (Unit) chương trình  Phần khai báo: hằng, biến, kiểu chương trình  Thân chương trình chứa lệnh Trước hết xem chương trình đơn giản tính tổng hai số sau: Program TongHaiSo; (*Tiêu đề chương trình *) Uses Crt; (*gọi đơn vị Crtg *) Var Tong,a,b: Real; (*Khai báo ba biến thực) Begin ClrScr; (*Xoá hìnhX *) Write('Hãy vào số thứ a = '); ELEC Trang TRUNG TÂM ĐÀO TẠO TRỰC TUYẾN - ĐẠI HỌC KINH DOANH & CÔNG NGHỆ H À NỘI Readln(a); (*Vào giá trị a *) Write('Hãy vào số thứ hai b = '); Readln(b); (*Vào giá trị b *) Tong:= a+b; (*Tính tổng hai số *) (*Hiển thị kết lên hình *) Writeln(' Tổng hai số là:', Tong); End Như cấu trúc tổng quát ch ương trình đầy đủ gồm phần sau: Program TenChuongTrinh ; (*Dòng tiêu đề *) Uses CRT, Printer; (*Lời gọi sử dụng đơn vị chương trìnhL *) (*Phần khai báo liệu chương trình *) Label Const Type Var Procedure {Có thể có nhiều Procedure nhiều Function } Function (*Thân chương trình *) Begin (*Các lệnh viết *) End Phần tiêu đề chương trình: Phần khoá Program, tên người lập trình đặt theo ý nghĩa nội dung chương trình Cuối phần tên dấu chấm phẩy";" Phần tiêu đề · Phần khai báo: Phần dùng để mô tả đối tượng liệu Có thể có khai báo sau: Uses (*Khai báo sử dụng UnitK *) Label (*Khai báo nhãnK *) Const (*Khai báo *) Type (*Mô tả kiểu liệu M *) Var (*Khai báo biến K *) Procedure (*Khai báo thủ tụcK *) Function (*Khai báo hàmK *) ELEC Trang TRUNG TÂM ĐÀO TẠO TRỰC TUYẾN - ĐẠI HỌC KINH DOANH & CÔNG NGHỆ H À NỘI Các phần khai báo có không, tuỳ theo thực tế b ài toán Phần thân chương trình: Thân chương trình nằm hai từ khoá Begin End Sau từ khoá End dấu chấm "." để báo kết thúc chương trình Không có thân bất thành chương trình, thân chứa lệnh để xử lý đối t ượng liệu mô tả phần khai báo Ví dụ chương trình sau có thân: Begin Writeln (' Chào bạn đến với Turbo Pascal 7.0'); End 1.5 Các bước soạn chương trình Để soạn chương trình ngôn ngữ Pascal Thông th ường trải qua bước sau: Bước 1: Bước soạn thảo chương trình Dùng chương trình soạn thảo văn để soạn chương trình Khi soạn xong ta lưu chương trình lên đĩa Chương trình viết ngôn ngữ Pascal gọi chương trình nguồn (source program) Tên tệp (file) chứa chương trình nguồn Pascal có dạng chung *.Pas Bước 2: Bước dịch chương trình Dùng chương trình dịch (compiler) Pascal để dịch ch ương trình nguồn sang mã máy (chứa tệp * COM, *.EXE, *.OBJ) Giai đoạn n ày cho phép ta phát lỗi cú pháp viết ch ương trình Nếu có lỗi, chương trình dịch báo lỗi Ta phải quay bước để sửa quay lại bước Nếu lỗi cú pháp, ta sang bước Bước 3: Chạy chương trình (Ta thực bước liên tục toàn giáo trình này) ELEC Trang TRUNG TÂM ĐÀO TẠO TRỰC TUYẾN - ĐẠI HỌC KINH DOANH & CÔNG NGHỆ H À NỘI Chương 2: Các kiểu liệu sở 2.1 Kiểu Logic (Boolean) Trong sống thường hay gặp loại liệu có hai giá trị: (True) sai (False) Ví dụ ta viết 10>25 th ì mệnh đề có giá trị False Hoặc 13) XOR (43) XOR (4>7) cho kết FALSE NOT (1>9) cho kết TRUE NOT (1[...]... câu lệnh Pascal không bắt buộc phải viết mỗi câu lệnh một dòng Vấn đề là phải trình bầy chương trình sao cho đẹp, rõ ràng, mô tả được thuật toán Ví dụ: Chúng ta có thể viết liền nhau tr ên một dòng chương trình: A='Chao anh'; B:=TRUE;C :=12; Hoặc viết thành từng dòng: A='Chao anh'; B:=TRUE; C:=12; Các lệnh có cấu trúc sẽ được đề cập ở các chương sau Còn thủ tục sẽ được đưa vào cùng với các cấu trúc dữ... không Ctrl_L lặp lại công việc Ctrl _Q F hoặc Ctrl _Q A cuối c ùng 6.3 Dịch và chạy chương trình Sau khi soạn xong chương trình ta cho dịch và chạy chương trình bằng lệnh: Ctrl+F9 Dịch (Compile) chương trình vừa soạn thảo (gọi là chương trình nguồn) thành chương trình đích (executable), sau đó là ch ạy chương trình (Run) Hai bước này có thể được thực hiện bằng việc gõ Ctrl+F9 ELEC Trang 28 TRUNG TÂM... có phần lệnh (instruction) của ch ương trình Phần này quy định các công việc mà chương trình phải thực hiện để xử lý các dữ liệu Các lệnh (hay cũng gọi là câu lệnh) cách nhau bởi dấu chấm phẩy Câu lệnh được chia ra hai loại: Câu lệnh đơn giản và câu lệnh có cấu trúc · Câu lệnh đơn giản bao gồm: Lệnh gán (:=), lời gọi thủ tụcl, lệnh nhẩy GOTO · Câu lệnh có cấu trúc bao gồm: Câu lệnh ghép (lệnh hợp thànhl):... có tệp chứa chương trình còn lại như sau: Program BaoHam; ELEC Trang 30 TRUNG TÂM ĐÀO TẠO TRỰC TUYẾN - ĐẠI HỌC KINH DOANH & CÔNG NGHỆ H À NỘI Var X,y:Real; {$I ThuTucA.Pas}; {$I ThuTucB.Pas}; Begin End Bài tập: Hãy dùng các thao tác soạn thảo để lập trình tìm nghiệm phương trình bậc hai, sau đó cho chạy chương trình và quan sát lỗi nếu có Hãy làm quen với bao hàm tệp bằng cách lập 3 thủ tục ứng với... ương trình không được vượt ra khỏi giới hạn của khoảng con Đây l à tác dụng chủ yếu của kiểu khoảng con Một số ví dụ về kiểu khoảng con Type Ngay = (ChuNhat, Hai, Ba, Tu, Nam, Sau, Bay); ChuCaiIn = 'A' 'Z'; Var Ch: ChuCaiIn; NgayLamViec: Hai Bay; Bài tập: 1 Hãy cho một ví dụ đơn giản về lập trình trong đó có dùng dữ liệu liệt kê, hãy viết chương trình và chạy thử 2 Hãy cho một ví dụ đơn giản về lập trình. .. sửa đổi th ì lần sau máy sẽ không phải dịch lại Unit đó nữa Ch ương trình chính được Turbo Pascal đặt trong tệp có tên là Primary file · Primary file là tên file chứa chương trình chính (chứ không phải là Unit) Nếu chương trình chỉ có một file, không có Unit th ì không phải quan tâm tới mục Primary file Build là dịch toàn bộ chương trình chính (Primary file) cùng các Unit liên quan, cho dù các Unit... chức năng Build Sau khi dịch xong không chạy chương trình như Ctrl +F9 · Make là chức năng dịch, nhưng chỉ dịch đúng một Unit mà ta đang soạn thảo Sau khi dịch xong Unit sẽ được lưu với file *.PTU (Turbo Pascal Unit) 6.4 Khả năng bao hàm tệp Khi soạn thảo một chương trình quá dài, hoặc những đoạn chương trình đã hoàn chỉnh, ta có thể cắt đoạn chương trình đó ra các file khác được gọi là các file bao... sử dụng Turbo Pascal 1 Khởi động Turbo Pascal C:\>CD TP C:\TP>TURBO Màn hình soạn thảo sẽ hiện ra và bạn có thể soạn thảo một ch ương trình nào đó (như các hệ soạn thảo văn bản khác)  Menu Bar gồm: File, Edit, Run, Compile, Option, Debug, Break/Watch, chọn bằng cách ấn Alt đồng thời với chữ cái đầu, ví d ụ Alt +F v.v  Sau Menu Bar là dòng tr ạng thái: báo cho người lập trình biết tọa... một thứ tự tự nhiên Khi khai báo một biến là kiểu vô hướng nào đó, nó có thể nhận một giá trị trong tập các giá trị đó Pascal c òn cho phép người lập trình có thể tự định nghĩa ra các kiểu vô h ướng mới bằng cách liệt k ê các giá trị của kiểu vô hướng thông qua các tên do người lập trình đặt ra Danh sách các giá trị n ày được đặt trong ngoặc đơn và được mô tả bằng một tên kiểu trong phần mô tả kiểu... Min:=a; End; Hãy dùng CASE OF lập một chương trình xem thời gian biểu hàng ngày của ban Dòng lệnh sau sai ở chỗ nào? Var R:Real; Begin Readln(R); Case R OF 12.34: Writeln('Đây là số thực nhỏ hơn 20'); End; ELEC Trang 26 TRUNG TÂM ĐÀO TẠO TRỰC TUYẾN - ĐẠI HỌC KINH DOANH & CÔNG NGHỆ H À NỘI Chương 6: Thực hành Turbo Pascal 6.1 Nên dùng Turbo Pascal v ới Version nào? Turbo Pascal có nhiều phiên bản (Version) ... chương trình nên viết lời thích v vị trí thích hợp giúp cho người dễ dàng kiểm tra chương trình 1.4 Cấu trúc chung chương trình Pascal Chương trình dãy lệnh, dẫn cho máy thực m ột nhiệm vụ Chương trình. .. Bước soạn thảo chương trình Dùng chương trình soạn thảo văn để soạn chương trình Khi soạn xong ta lưu chương trình lên đĩa Chương trình viết ngôn ngữ Pascal gọi chương trình nguồn (source program)... vị chương trình (Unit) Trong Turbo Pascal có nhi ều đơn vị chương trình (Unit) chứa chương trình mà cần đến người lập trình cần gọi chúng tên cụ thể Ví dụ đơn vị CRT Unit chứa chương trình xử

Ngày đăng: 19/03/2016, 15:45

Từ khóa liên quan

Tài liệu cùng người dùng

Tài liệu liên quan