Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 27 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
27
Dung lượng
3,56 MB
Nội dung
I, I, Đôi nét về pascal: Đôi nét về pascal: Pascal là tên của một trong các ngôn ngữ lập trình cấp cao thông dụng. Ngôn ngữ lập trình PascalPascal là tên của một trong các ngôn ngữ lập trình cấp cao thông dụng. Ngôn ngữ lập trình Pascal được giáo sư Niklaus Wirth ở trường Ðại học Kỹ thuật Zurich (Thụy sĩ) thiết kế và công bố vào được giáo sư Niklaus Wirth ở trường Ðại học Kỹ thuật Zurich (Thụy sĩ) thiết kế và công bố vào năm 1970. Niklaus Wirth đặt tên cho ngôn ngữ này là Pascal để tưởng nhớ đến nhà Toán học và năm 1970. Niklaus Wirth đặt tên cho ngôn ngữ này là Pascal để tưởng nhớ đến nhà Toán học và Triết học Pháp ở thế kỷ 17 là Blaise Pascal, người đã phát minh ra một máy tính cơ khí đơn giản Triết học Pháp ở thế kỷ 17 là Blaise Pascal, người đã phát minh ra một máy tính cơ khí đơn giản đầu tiên của con người. đầu tiên của con người. Blaise Pascal Niklaus Wirth Ban đầu, Pascal là một ngôn ngữ được hướng để dùng trong giảng dạy về lập trình có cấu trúc, và nhiều thế hệ sinh viên đã "vào đời" thông qua việc học Pascal như ngôn ngữ vỡ lòng trong các chương trình học đại cương. Nhiều biến thể của Pascal ngày nay vẫn còn được sử dụng khá phổ biến, cả trong giảng dạy lẫn trong công nghiệp phát triển phần mềm. Ngôn ngữ Pascal được dùng hiện nay có nhiều điểm khác biệt với chuẩn Pascal nguyên thủy của Giáo sư Wirth. Tùy theo quốc gia hoặc công ty đã phát triển cho ra đời các chương trình biên dịch ngôn ngữ Pascal như: · ISO PASCAL (International Standards Organization) của Châu Âu · ANSI PASCAL (American National Standards Institute) của Mỹ · TURBO PASCAL của hãng BORLAND (Mỹ) · IBM PASCAL của hãng Microsoft (Mỹ) · v.v . Ðến nay, ngôn ngữ Pascal đã phát triển đến phiên bản Turbo Pascal Version 7. Cấu trúc chương trình Theo quy ước, cấu trúc một chương trình được mô tả như sau: Phần tiêu đề [<phần khai báo>] <phần thân> (*) Phần tiêu đề Phần này bắt đầu bằng từ khoá program, sau đó nhất định là một khoảng trắng và một tên do người dùng tự đặt, cuối cùng kết thúc bằng dấu chấm phẩy ( ; ). Ví dụ : Program Btap1; hoặc : Program Giai_pt_bac2; Phần tiêu đề chiếm một dòng, còn gọi là phần đầu của chương trình (nó có thể không có cũng được.) (*) Phần khai báo Phần khai báo có nhiệm vụ giới thiệu và mô tả các đối tượng, các đại lượng sẽ tham gia trong chương trình, giống như ta giới thiệu các thành viên trong một cuộc họp. Nó gồm khai báo sử dụng thư viện chuẩn, khai báo nhãn, khai báo hằng, khai báo kiểu dữ liệu mới, khai báo biến, và khai báo các chương trình con. Tùy theo yêu cầu cụ thể mà mỗi khai báo này có thể có hoặc không. Khai báo nhãn (Label) chỉ dùng khi trong chương trình có sử dụng lệnh nhảy vô điều kiện GOTO. Nhược điểm của lệnh GOTO là làm mất tính cấu trúc của chương trình, trong khi có thể thay thế nó bằng các câu lệnh có cấu trúc của Pascal. (*)Phần thân Đây là phần chủ yếu nhất của một chương trình, bắt buộc phải có. Thân chương trình bắt đầu bằng từ khoá BEGIN và kết thúc bằng END. (có dấu chấm ở cuối). Giữa khối BEGIN và END là các lệnh. Mỗi lệnh phải kết thúc bằng dấu chấm phẩy (;). Một lệnh, nếu dài, thì có thể viết trên hai hay nhiều dòng, ví dụ : Writeln( ‘Phuong trinh co hai nghiem la X1=‘ va X2= ‘) ; Ngược lại, một dòng có thể viết nhiều lệnh miễn là có dấu ( ; ) Write( ‘Nhap A, B, C:’ ) ; Readln(A,B,C) ; Thông thường mỗi dòng chỉ nên viết một lệnh để dễ đọc, dễ kiểm tra lỗi. Các kiểu dữ liệu 1. Kiểu logic 1. Kiểu logic - Từ khóa: BOOLEAN - Từ khóa: BOOLEAN - miền giá trị: (TRUE, FALSE). - miền giá trị: (TRUE, FALSE). - Các phép toán: phép so sánh (=, <, >) và các phép toán logic: - Các phép toán: phép so sánh (=, <, >) và các phép toán logic: AND, OR, XOR, NOT. AND, OR, XOR, NOT. Trong Pascal, khi so sánh các giá trị boolean ta tuân theo qui tắc: Trong Pascal, khi so sánh các giá trị boolean ta tuân theo qui tắc: FALSE < TRUE FALSE < TRUE . . 2.Kiểu số nguyên 2.Kiểu số nguyên 2.1 các kiểu số nguyên 2.1 các kiểu số nguyên Tên kiểu Tên kiểu Phạm vi Phạm vi Dung lượng Dung lượng Shortint Shortint -128 → 127 -128 → 127 1 byte 1 byte Byte Byte 0 → 255 0 → 255 1 byte 1 byte Integer Integer -2 -2 15 15 →2 →2 15 15 - 1 - 1 2 byte 2 byte Word Word 0 →2 0 →2 16 16 – 1 – 1 2 byte 2 byte LongInt LongInt -2 -2 31 31 →2 →2 31 31 - 1 - 1 4 byte 4 byte 2.2. Các phép toán trên kiểu số nguyên 2.2. Các phép toán trên kiểu số nguyên 2.2.1. Các phép toán số học: 2.2.1. Các phép toán số học: +, -, *, / (phép chia cho ra kết quả là số thực). +, -, *, / (phép chia cho ra kết quả là số thực). Phép chia lấy phần nguyên: DIV (Ví dụ : 34 DIV 5 = 6). Phép chia lấy phần nguyên: DIV (Ví dụ : 34 DIV 5 = 6). Phép chia lấy số dư: MOD (Ví dụ: 34 MOD 5 = 4). Phép chia lấy số dư: MOD (Ví dụ: 34 MOD 5 = 4). 2.2.2. Các phép toán xử lý bit: 2.2.2. Các phép toán xử lý bit: Trên các kiểu ShortInt, Integer, Byte, Word có các phép toán: Trên các kiểu ShortInt, Integer, Byte, Word có các phép toán: NOT, AND, OR, XOR. NOT, AND, OR, XOR. 3. Kiểu số thực 3. Kiểu số thực Tên kiểu Tên kiểu Phạm vi Phạm vi Dung lượng Dung lượng Real Real 0 h 0 h oặc có giá trị tuyệt đối nằm oặc có giá trị tuyệt đối nằm trong phạm vi từ 10 trong phạm vi từ 10 -38 -38 đến 10 đến 10 38 38 6 byte 6 byte Extended Extended 0 ho 0 ho ặc có giá trị tuyệt đối nằm ặc có giá trị tuyệt đối nằm trong phạm vi từ 10 trong phạm vi từ 10 -4932 -4932 đến 10 đến 10 4932 4932 10 byte 10 byte 4. Kiểu ký tự 4. Kiểu ký tự - Từ khoá: CHAR. - Từ khoá: CHAR. - Kích thước: 1 byte. - Kích thước: 1 byte. - Để biểu diễn một ký tự, ta có thể sử dụng một trong số các cách sau đây: - Để biểu diễn một ký tự, ta có thể sử dụng một trong số các cách sau đây: Đặt ký tự trong cặp dấu nháy đơn. Ví dụ 'A', '0'. Đặt ký tự trong cặp dấu nháy đơn. Ví dụ 'A', '0'. Dùng hàm CHR(n) (trong đó n là mã ASCII của ký tự cần biểu diễn). Ví dụ Dùng hàm CHR(n) (trong đó n là mã ASCII của ký tự cần biểu diễn). Ví dụ CHR(65) biễu diễn ký tự 'A'. CHR(65) biễu diễn ký tự 'A'. Dùng ký hiệu #n (trong đó n là mã ASCII của ký tự cần biểu diễn). Ví dụ Dùng ký hiệu #n (trong đó n là mã ASCII của ký tự cần biểu diễn). Ví dụ #65. #65. - Các phép toán: =, >, >=, <, <=,<>. - Các phép toán: =, >, >=, <, <=,<>. * Các hàm trên kiểu ký tự: * Các hàm trên kiểu ký tự: - UPCASE(ch): Trả về ký tự in hoa tương ứng với ký tự ch. Ví dụ: UPCASE('a') - UPCASE(ch): Trả về ký tự in hoa tương ứng với ký tự ch. Ví dụ: UPCASE('a') = 'A'. = 'A'. - ORD(ch): Trả về số thứ tự trong bảng mã ASCII của ký tự ch. Ví dụ - ORD(ch): Trả về số thứ tự trong bảng mã ASCII của ký tự ch. Ví dụ ORD('A')=65. ORD('A')=65. - CHR(n): Trả về ký tự tương ứng trong bảng mã ASCII có số thứ tự là n. Ví - CHR(n): Trả về ký tự tương ứng trong bảng mã ASCII có số thứ tự là n. Ví dụ: CHR(65)='A'. dụ: CHR(65)='A'. - PRED(ch): cho ký tự đứng trước ký tự ch. Ví dụ: PRED('B')='A'. - PRED(ch): cho ký tự đứng trước ký tự ch. Ví dụ: PRED('B')='A'. - SUCC(ch): cho ký tự đứng sau ký tự ch. Ví dụ: SUCC('A')='B'. - SUCC(ch): cho ký tự đứng sau ký tự ch. Ví dụ: SUCC('A')='B'. III. Lệnh trong Pascal III. Lệnh trong Pascal 1. Câu lệnh (statement) 1. Câu lệnh (statement) a. a. Trong một chương trình Pascal, sau phần mô tả dữ liệu là phần Trong một chương trình Pascal, sau phần mô tả dữ liệu là phần mô tả các câu lệnh. Các câu lệnh có nhiệm vụ xác định các công mô tả các câu lệnh. Các câu lệnh có nhiệm vụ xác định các công việc mà máy tính phải thực hiện để xử lý các dữ liệu đã được mô việc mà máy tính phải thực hiện để xử lý các dữ liệu đã được mô tả và khai báo. tả và khai báo. b. b. Câu lệnh được chia thành câu lệnh đơn giản và câu lệnh có cấu Câu lệnh được chia thành câu lệnh đơn giản và câu lệnh có cấu trúc. trúc. - Câu lệnh đơn giản - Câu lệnh đơn giản + Vào dữ liệu : Read, Readln + Vào dữ liệu : Read, Readln + Ra dữ liệu : Write, Writeln + Ra dữ liệu : Write, Writeln + Lệnh gán : := + Lệnh gán : := + Lời gọi chương trình con (gọi trực tiếp tên của + Lời gọi chương trình con (gọi trực tiếp tên của chương trình con) chương trình con) + Xử lý tập tin : RESET, REWRITE, ASSIGN . + Xử lý tập tin : RESET, REWRITE, ASSIGN . - Câu lệnh có cấu trúc - Câu lệnh có cấu trúc + Lệnh ghép : BEGIN END + Lệnh ghép : BEGIN END + Lệnh chọn : IF THEN ELSE + Lệnh chọn : IF THEN ELSE CASE OF . CASE OF . + Lệnh lặp : FOR TO DO + Lệnh lặp : FOR TO DO REPEAT UNTIL REPEAT UNTIL WHILE DO WHILE DO c. c. Các câu lệnh phải được ngăn cách với nhau bởi dấu chấm phẩy ( ; ) và Các Các câu lệnh phải được ngăn cách với nhau bởi dấu chấm phẩy ( ; ) và Các câu lệnh có thể viết trên một dòng hay nhiều dòng. câu lệnh có thể viết trên một dòng hay nhiều dòng. 2. Cấu trúc tuần tự 2. Cấu trúc tuần tự a. Lệnh gán (Assignment statement) a. Lệnh gán (Assignment statement) Một trong các lệnh đơn giản và cơ bản nhất của Pascal là lệnh gán. Mục đích Một trong các lệnh đơn giản và cơ bản nhất của Pascal là lệnh gán. Mục đích của lệnh này là gán cho một biến đã khai báo một giá trị nào đó cùng kiểu với của lệnh này là gán cho một biến đã khai báo một giá trị nào đó cùng kiểu với biến. biến. * Ý nghĩa: * Ý nghĩa: Biến và các phát biểu gán là các khái niệm quan trọng của một họ các ngôn ngữ lập Biến và các phát biểu gán là các khái niệm quan trọng của một họ các ngôn ngữ lập trình mà Pascal là một đại diện tiêu biểu. Chúng phản ánh cách thức hoạt động của trình mà Pascal là một đại diện tiêu biểu. Chúng phản ánh cách thức hoạt động của máy tính hiện nay, đó là: máy tính hiện nay, đó là: - Lưu trữ các giá trị khác nhau vào một ô nhớ tại những thời điểm khác nhau. - Lưu trữ các giá trị khác nhau vào một ô nhớ tại những thời điểm khác nhau. - Một quá trình tính toán có thể coi như là một quá trình làm thay đổi giá trị của một - Một quá trình tính toán có thể coi như là một quá trình làm thay đổi giá trị của một (hay một số) ô nhớ nào đó, cho đến khi đạt được giá trị cần tìm. (hay một số) ô nhớ nào đó, cho đến khi đạt được giá trị cần tìm. [...]...b Lệnh ghép (Compound statement) Một nhóm câu lệnh đơn được đặt giữa 2 chữ BEGIN và END sẽ tạo thành một câu lệnh ghép Trong Pascal ta có thể đặt các lệnh ghép con trong các lệnh ghép lớn hơn bao ngoài của nó và có thể hiểu tương tự như cấu trúc ngoặc đơn trong các biểu thức toán học. Sơ đồ: BEGIN Công việc 1 ; Công việc 2... UNTIL thường được sử dụng trong lập trình, nhất là lúc người sử dụng muốn tiếp tục bài toán ở trường hợp thay đổi biến mà không phải trở về chương trình và nhấn tổ hợp phím Ctrl + F9 lại Một số ví dụ bài toán đơn giản trong pascal Program Tinh_can_bac_hai_tong_binh_phuong_2_so; Uses Crt; var a, b: real; Begin Write('nhap so a');readln(a); Write('nhap so b');readln(b); Write('Can bac hai cua tong binh phuong... ; Begin Clrscr; Write( ‘Nhap chieu dai :’ ); Readln(a); Write( ‘Nhap chieu rong :’ ); Readln(b); S:=a*b; P:=2* (a+b); Writeln ( ‘Dien tich =‘ ); Writeln ( ‘Chu vi =‘ ); Readln; End Một số hình ảnh về pascal Cám ơn bạn các bạn đã theo dõi Tạm biệt . I, Đôi nét về pascal: Đôi nét về pascal: Pascal là tên của một trong các ngôn ngữ lập trình cấp cao thông dụng. Ngôn ngữ lập trình Pascal Pascal là tên. ngữ Pascal như: · ISO PASCAL (International Standards Organization) của Châu Âu · ANSI PASCAL (American National Standards Institute) của Mỹ · TURBO PASCAL