1. Trang chủ
  2. » Công Nghệ Thông Tin

Bài giảng Ngôn ngữ lập trình Pascal: Chương 1 - 2 - 3

36 11 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 36
Dung lượng 118,25 KB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Bài giảng Ngôn ngữ lập trình Pascal: Chương 1 - 2 - 3 được biên soạn nhằm trang bị cho các bạn những kiến thức về nguyên nhân cần phải học Pascal, các phần tử cơ bản của Pascal, các kiểu dữ liệu, khai báo hằng, biến, kiểu, biểu thức, câu lệnh.

Trang 1

Biên soạn:

Giảng bài:

Ngôn ngữ lập trình

Trang 2

Vì sao học PASCAL ?

 PASCAL là ngôn ngữ lập trình cao cấp do GS

Niklaus Wirth sáng tác đầu 70

 PASCAL giúp sinh viên viết chương trình có

cấu trúc sáng sủa, rõ ràng, dễ hiểu và dễ đọc

 PASCAL là ngôn ngữ có cấu trúc mạnh mẽ cả

về dữ liệu lẫn chương trình và lệnh

Trang 3

Algorithms+Data Structures=Programs

Thuật giải+Cấu trúc dữ liệu=Chương trình

Trang 4

Chương 1

Các phần tử cơ bản của PASCAL

Bộ chữ viết của PASCAL

 Các chữ cái ‘a’ ’z’, ‘A’ ’Z’

 Không phân biệt chữ thường và hoa

Trang 5

Từ khoá

là các từ của riêng PASCAL

Thí dụ:

Program, Var, For, To, IF

Tên hay Định danh (Indentifier)

là dãy kí tự bắt đầu bằng một chữ cái, dùng để chỉ tên

hằng số, tên một biến, tên kiểu, tên chương trình con

Thí dụ:

ta phải dùng tên Delta thay cho dấu  là kí hiệu không nằm trong bộ chữ viết PASCAL

Trang 6

Các tên đặt sai

1ABC, #DELTA, ARRAY, DEL TA

Dùng dấu gạch nối khi đặt tên

GIAI_PHUONG_TRINH_BAC_HAI thay vì tên đúng song khó hình dung

GIAIPHUONGTRINHBACHAI tên sai GIAI-PHUONG-TRINH-BAC-HAI

Tên bằng tiếng Việt ?

Trang 7

Dấu chấm phẩy ; dùng để ngăn cách câu lệnh

(xem sau)

Lời giải thích (comment) cho rõ ràng hơn

(* Lời giải thích có thể dùng tiếng Việt*)

{ Lời giải thích }

Sai nếu mở - đóng khác kiểu (* Sai }

Có thể viết nhiều dòng giải thích cho đến khi khoá lại

(* Dòng 1

Trang 9

Cấu trúc chung của một chương trình PASCAL

 Phần tiêu đề của chương trình

 Phần khai báo dữ liệu

- hằng, biến ( Const, Var ),

- mô tả kiểu dữ liệu mới (Type)

- khai báo chương trình con

( Procedure, Function )

 Phần thân chương trình

chứa các lệnh để máy tính thực hiện

Trang 10

READLN(R); (* Đọc giá trị của R *)

Dien_Tich := PI*R*R; (* Tính diện tích hình tròn *)

Trang 11

Kết quả chạy chương trình

Bán kính R = 2.56 

Diện tích hình tròn = 2.0588741615E+01 Cạnh hình vuông A = 2.56 

Diện tích hình vuông = 6.5536000000E +00

_

Trang 12

PROGRAM TEN_CHUONG_TRINH; (* Dòng tiêu đề *)

USES CRT, PRINTER; (*Lời gọi Sử dụng các đơn vị chương trình *) (* Phần khai báo dữ liệu và chươ ng trình con *)

Trang 13

Các bước cơ bản khi viết chương trình

Bước 1: Soạn thảo chương trình.

Bước 2: Dịch và kết nối chương trình.

 Biên dịch (compiler)

 Thông dịch (Interpreter) (ít dùng)

Bước 3: Chạy thử và sửa lỗi chương trình

Turbo PASCAL của hãng Borland có môi trườngkhép kín, đảm bảo hoạt động của cả 3 bước trên

trong một chương trình

Trang 14

Bước 1: Thảo chương trình

 Dùng chương trình soạn thảo văn bản (Text

Editor) để viết chương trình với nhiều thao tác

tiện dụng như xen, sửa, xoá, copy

 Máy tính cổ phải viết chương trình bằng cách

đục lỗ giấy

 Kết quả nhận được: các chương trình nguồn

(source code) PASCAL: *.PAS

Trang 15

Bước 2: Dịch và kết nối chương trình

 Biên dịch (compiler)

 Khái niệm về Thông dịch (Interpreter)

 Kết quả của bước dịch là các tệp *.OBJ và

*.TPU

 Tiếp theo phải liên kết các tệp *.OBJ và *.TPUlại để thành chương trình chạy được, đó là tệp

*.EXE

 Nếu có lỗi về mặt cú pháp (syntax error), máy

sẽ báo rõ lỗi loại nào, vị trí lỗi Thí dụ Beginviết thành Began

Trang 16

Bước 3: Chạy thử và sửa lỗi chương trình

 Lỗi về thuật giải

X2 viết nhầm thành X*2

 Máy không thể phát hiện được

 Lỗi về cách trình bầy, chưa đẹp

 Nếu có lỗi, quay về bước 1 để sửa

Trang 17

Lưu đồ lập trình Begin

Dùng chương trình soạn thảo văn bản (EDITOR) để viết và sửa lỗi chương trình

Gọi chương trình dịch COMPILER và chương trình kết

nối LINKER

Có lỗi cú pháp

Chạy thử chương trình vừa được dịch xong

Có lỗi thuật giải?

Có muốn sửa lại cho đẹp? Có

Không

Trang 18

 Dữ liệu là nguồn vật liệu cho máy tính xử lí

 Máy tính chỉ hiểu các dữ liệu được biểu diễn

dưới dạng mã nhị phân

 Trong ngôn ngữ bậc cao, dữ liệu được khái quáthoá thành các kiểu dữ liệu khác nhau

Các kiểu dữ liệu cơ sở.

Trang 19

kiểu logic Bun (Boolean) Kiểu cơ sở kiểu số nguyên (Integer)

kiểu số thực (Real) Kiểu vô hướng kiểu kí tự (Char) (kiểu đơn giản)

(Scalar Type hay kiểu khoảng con Kiểu Simple Type ) kiểu vô hướng (sub-range)

dữ tự định nghĩa

liệu

kiểu liệt kê

(enumerated) DATA

TYPE Kiểu mảng (ARRAY)

Kiểu dữ liệu có cấu trúc Kiểu tập (SET) (Structured Type) Kiểu bản ghi (RECORD)

Kiểu tệp (FILE)

Kiểu xâu kí tự (STRING)

Trang 21

Kiểu logic Boolean

 Có hai giá trị FALSE và TRUE

 Các phép toán AND, OR, XOR, NOT

X Y X AND Y X OR Y X XOR Y FALSE FALSE FALSE FALSE FALSE FALSE TRUE FALSE TRUE TRUE TRUE FALSE FALSE TRUE TRUE TRUE TRUE TRUE TRUE FALSE

Trang 22

Các phép toán quan hệ

 Kết quả luôn luôn là giá trị kiểu Boolean

Kí hiệu phép toán ý nghĩa

Trang 23

Kiểu số nguyên Integer

 Kiểu số nguyên khai báo với từ khoá Integer

 Dùng 2 bytes (số nguyên 16 bít) để biểu diễn nên miềngiá trị: -32768 đến +32767

Thí dụ: -327, -32000, 1, 123

 Các phép tính: + - * / DIV MOD

quan hệ (>, <, <> ), logic (AND, OR )

 Phép chia số nguyên 3 / 2 = 1.5

 Phép chia lấy phần nguyên 11 DIV 3 = ?

 Phép chia lấy số dư nguyên 11 MOD 3 = ?

Trang 24

Một số phép toán cho số nguyên

 Phép toán logic AND, OR, XOR, NOT

Thí dụ: 3 AND 5 = 1 vì

0000 0000 0000 0011 3

AND 0000 0000 0000 0101 5

Kết quả: 0000 0000 0000 0001 1

- Phép dịch trái SHL (Shift Left), dịch phải SHR

(Shift Right) để tính nhanh hơn

3*24= 3 SHL 4, 3 / 24 = 3 SHR 4

Trang 25

Kiểu số nguyên Byte

 Kiểu số nguyên khai báo với từ khoá Byte

 Dùng 1 byte để biểu diễn số nguyên dương nên miềngiá trị: 0 đến 255

 Tiết kiệm ô nhớ

 Các phép tính: giống như Integer

Trang 26

 Kiểu số thực khai báo với từ khoá Real

 Dùng 6 bytes để biểu diễn, dải giá trị: -1.7E-38

Trang 27

 SQR(x) cho x2, SQRT(x) căn bậc hai của x

 SIN(x), COS(x), arctan(x) với x: radian

 Ln(x), Exp(x)

 Succ(n), Pred(n): n nguyên

 Odd(n) là TRUE nếu n lẻ

 Round(x) và Trunc(x) làm tròn hoặc cắt

Trang 28

 Bảng mã ASCII (Americain Standard Code for

Information Interchange) ý nghĩa

 Các hàm ord(‘c’) và chr(n)

 Thứ tự c1 < c2 nếu ord(‘c1’) < ord(‘c2’)

 Hàm Succ và Pred

Kiểu kí tự Char

Trang 29

Kiểu đếm được và không đếm được

Kiểu đếm được:

Integer, Byte, Boolean, Char, đoạn con, liệt kê

Kiểu vô hướng

Kiểu không đếm được:

Real

Trang 31

Khai báo biến

Tên biến là tên của ô nhớ cất dữ liệu Giá trị của

nó có thể thay đổi được

Trang 32

Biểu thức số học cho ta giá trị số

Biểu thức logic cho ta giá trị logic Bun

Trình tự ưu tiên tính toán biểu thức

DÊu ngoÆc ( ) BiÓu thøc trong ngoÆc ®­îc ­u tiªn nhÊt

NOT, - (dÊu trõ) C¸c phÐp to¸n mét to¸n h¹ng

*, /, DIV, MOD, AND C¸c phÐp tÝnh lo¹i nh©n, cïng møc ­u tiªn

+, -, OR, X OR C¸c phÐp tÝnh lo¹i céng, cïng møc ­u tiªn

=, <>, <=, >=, >, <, IN C¸c phÐp to¸n quan hÖ, cã cïng møc ­u tiªn

Trang 35

Tính tương thích của các kiểu dữ liệu

Về nguyên tắc, 2 vế phải cùng kiểu dữ liệu

Biến nguyên I không thể gán := ‘A’;

 Ngoại lệ: biến thực nhận giá trị nguyên

X:= 6;

Ngược lại một biến nguyên không thể nhận một giá

trị thực Muốn nhận phải dùng các hàm Round

hoặc Trunc.

I := Round( SQRT(X));

Ngày đăng: 11/05/2021, 03:29

TỪ KHÓA LIÊN QUAN