Giáo trình Tin học đại cương Phần 2 - Đại học Thái Bình (Lập trình Pascal)

Giáo trình Tin học đại cương phần 2 - lập trình pascal biên soạn theo chương trình đào tạo chuẩn, phù hợp sinh viên ngành hiện nay

Trường đại học

Trường Đại Học Zurich

Chuyên ngành

Tin Học Đại Cương

Người đăng

Ẩn danh

Thể loại

Giáo trình

1971

65
1
0

Phí lưu trữ

30 Point

Tóm tắt

I. Hướng dẫn toàn diện Giáo trình Tin học đại cương Pascal

Giáo trình Tin học đại cương Phần 2 tập trung vào lập trình Pascal, một ngôn ngữ nền tảng quan trọng trong khoa học máy tính. Được phát triển bởi Giáo sư Niklaus Wirth vào năm 1971, Pascal được thiết kế với mục tiêu chính là giảng dạy lập trình cấu trúc một cách hệ thống. Đây là một tài liệu tin học đại cương không thể thiếu cho sinh viên các ngành kỹ thuật, công nghệ thông tin và khoa học tự nhiên. Việc nắm vững ngôn ngữ lập trình Pascal không chỉ giúp hiểu rõ các khái niệm cốt lõi như thuật toán, cấu trúc dữ liệu, mà còn tạo ra một tư duy logic chặt chẽ, làm tiền đề để tiếp cận các ngôn ngữ lập trình hiện đại khác như C++, Java hay Python. Nội dung giáo trình bao quát từ những khái niệm cơ bản nhất như cấu trúc một chương trình, các kiểu dữ liệu, biến, hằng, cho đến các cấu trúc điều khiển phức tạp, mảng, xâu ký tự và chương trình con. Một trong những ưu điểm lớn nhất của Pascal là cú pháp trong sáng, gần gũi với ngôn ngữ tự nhiên, giúp người mới bắt đầu dễ dàng tiếp thu. Các phiên bản phổ biến như Turbo PascalFree Pascal cung cấp một môi trường phát triển tích hợp (IDE) đơn giản, cho phép người học tập trung hoàn toàn vào việc xây dựng thuật toán và lưu đồ mà không bị phân tâm bởi các công cụ phức tạp. Giáo trình này được biên soạn nhằm cung cấp một lộ trình học tập bài bản, từ lý thuyết đến thực hành, thông qua các ví dụ minh họa và bài tập Pascal có lời giải. Việc hiểu rõ cấu trúc tổng quát của một chương trình Pascal, bao gồm phần tiêu đề (Program), phần khai báo (Uses, Const, Var) và phần thân chương trình (Begin...End), là bước đi đầu tiên và quan trọng nhất để chinh phục ngôn ngữ này. Tài liệu nhấn mạnh rằng: "Ngôn ngữ Pascal được thiết kế nhằm phục vụ công tác giảng dạy cách tiếp cận hệ thống trong công việc lập trình và đặc biệt lần đầu tiên đưa ra khái niệm 'Phương pháp lập trình cấu trúc'". Điều này khẳng định vai trò sư phạm và giá trị nền tảng của Pascal trong giáo dục đại học.

1.1. Giới thiệu tổng quan về ngôn ngữ lập trình Pascal

Ngôn ngữ lập trình Pascal là một ngôn ngữ bậc cao, do Giáo sư Niklaus Wirth thiết kế và công bố năm 1971, đặt theo tên nhà toán học Blaise Pascal. Mục tiêu ban đầu của nó là phục vụ giảng dạy nhập môn lập trình và giới thiệu phương pháp lập trình có cấu trúc. Qua nhiều cải tiến, Pascal đã trở nên mạnh mẽ hơn với nhiều phiên bản thương mại hóa như Turbo Pascal của Borland hay Free Pascal. Cấu trúc của một chương trình Pascal rất rõ ràng, thường bao gồm ba phần chính: phần tiêu đề, phần khai báo và định nghĩa, và phần thân chương trình. Phần thân luôn được bắt đầu bằng từ khóa Begin và kết thúc bằng End.. Đây là cấu trúc bắt buộc, giúp hình thành tư duy tổ chức code một cách logic và khoa học.

1.2. Nền tảng cơ sở lập trình Pascal cho người mới bắt đầu

Để bắt đầu với cơ sở lập trình Pascal, người học cần làm quen với bộ ký tự, từ khóa và tên (định danh). Bộ ký tự bao gồm chữ cái, chữ số, và các ký tự đặc biệt. Từ khóa là những từ dành riêng của Pascal như Begin, End, If, For, Var, không được dùng để đặt tên cho các đối tượng khác. Tên được dùng để định danh cho hằng, biến, hàm, thủ tục và phải tuân thủ quy tắc đặt tên: không bắt đầu bằng số và không chứa ký tự trắng. Nắm vững những quy tắc nền tảng này là điều kiện tiên quyết để viết được những dòng code Pascal cơ bản đầu tiên một cách chính xác, tránh các lỗi cú pháp không đáng có và xây dựng một chương trình có thể biên dịch và thực thi thành công.

II. Vượt qua thách thức khi học cú pháp và kiểu dữ liệu Pascal

Một trong những thách thức lớn nhất khi tiếp cận một ngôn ngữ lập trình mới là nắm vững cú pháp Pascal và hệ thống kiểu dữ liệu của nó. Pascal cung cấp một hệ thống kiểu dữ liệu chặt chẽ, giúp quản lý bộ nhớ hiệu quả và giảm thiểu lỗi logic. Việc hiểu rõ các kiểu dữ liệu Pascal là nền tảng để xử lý thông tin chính xác. Giáo trình chia dữ liệu thành hai loại chính: kiểu đơn giản và kiểu có cấu trúc. Các kiểu đơn giản chuẩn bao gồm số nguyên (Integer, Byte, Word), số thực (Real), logic (Boolean), và ký tự (Char). Mỗi kiểu có một miền giá trị và các phép toán đặc thù. Ví dụ, với số nguyên, ta có các phép toán DIV (chia lấy phần nguyên) và MOD (chia lấy phần dư) mà không tồn tại ở kiểu số thực. Ngược lại, kiểu số thực sử dụng phép chia /. Hiểu sai về miền giá trị có thể dẫn đến lỗi tràn số, một vấn đề phổ biến với người mới học. Ví dụ, kiểu Integer chỉ có thể lưu giá trị trong khoảng -32768 đến 32767. Ngoài các kiểu chuẩn, Pascal còn cho phép người dùng tự định nghĩa kiểu dữ liệu riêng, như kiểu đoạn con hoặc kiểu liệt kê, mang lại sự linh hoạt cao. Đây là một khái niệm quan trọng trong cơ sở lập trình Pascal, giúp chương trình trở nên dễ đọc và dễ bảo trì hơn. Việc khai báo biến Var và hằng Const cũng đòi hỏi sự chính xác tuyệt đối về cú pháp và kiểu dữ liệu tương ứng. Nắm vững các khái niệm này sẽ giúp xây dựng các biểu thức và câu lệnh một cách đúng đắn, tạo tiền đề để giải quyết các bài toán phức tạp hơn.

2.1. Phân loại các kiểu dữ liệu Pascal chuẩn và cấu trúc

Trong các bài giảng lập trình Pascal, hệ thống kiểu dữ liệu được chia làm hai nhóm chính. Nhóm thứ nhất là các kiểu dữ liệu đơn giản, bao gồm các kiểu chuẩn như Integer, Real, Boolean, Char và các kiểu do người dùng định nghĩa. Nhóm thứ hai là các kiểu dữ liệu có cấu trúc, phức tạp hơn, bao gồm Mảng (Array), Tập hợp (Set), Bản ghi (Record) và Tệp (File). Mỗi kiểu dữ liệu được thiết kế để giải quyết một loại vấn đề lưu trữ thông tin cụ thể. Ví dụ, mảng trong Pascal dùng để lưu trữ một danh sách các phần tử cùng kiểu, trong khi Record cho phép nhóm các dữ liệu có kiểu khác nhau thành một thực thể duy nhất.

2.2. Quy tắc khai báo biến hằng và biểu thức trong Pascal

Việc khai báo biến và hằng là một phần không thể thiếu trong cú pháp Pascal. Hằng, được khai báo với từ khóa CONST, là đại lượng có giá trị không đổi trong suốt chương trình. Biến, khai báo với từ khóa VAR, là đại lượng có thể thay đổi giá trị. Mỗi biến phải được gán một kiểu dữ liệu cụ thể, ví dụ Var a, b: Integer;. Một biểu thức là sự kết hợp của các toán hạng (hằng, biến, hàm) và các toán tử (+, -, *, /, AND, OR). Pascal quy định thứ tự ưu tiên rõ ràng cho các phép toán, trong đó các phép toán trong ngoặc được thực hiện trước, tiếp theo là nhân/chia, và cuối cùng là cộng/trừ, đảm bảo kết quả tính toán luôn nhất quán.

III. Bí quyết làm chủ các cấu trúc điều khiển trong lập trình Pascal

Trái tim của mọi chương trình máy tính nằm ở khả năng ra quyết định và lặp lại các tác vụ, và lập trình Pascal cung cấp một bộ công cụ mạnh mẽ để thực hiện điều này thông qua các cấu trúc điều khiển Pascal. Nắm vững các câu lệnh này là bí quyết để xây dựng các thuật toán thông minh và hiệu quả. Giáo trình giới thiệu hai loại câu lệnh có cấu trúc chính: lệnh rẽ nhánh và lệnh lặp. Lệnh rẽ nhánh cho phép chương trình thực hiện các khối lệnh khác nhau tùy thuộc vào một điều kiện logic. Cấu trúc If-Then-Else là dạng phổ biến nhất, cho phép kiểm tra một biểu thức logic và thực thi một trong hai nhánh lệnh. Dạng If-Then là dạng khuyết, chỉ thực thi lệnh khi điều kiện đúng. Một cấu trúc rẽ nhánh mạnh mẽ khác là Case-Of, cho phép lựa chọn một hành động từ nhiều trường hợp khác nhau dựa trên giá trị của một biểu thức, giúp mã nguồn trở nên gọn gàng và dễ đọc hơn so với việc sử dụng nhiều lệnh If lồng nhau. Về các lệnh lặp, vòng lặp trong Pascal cung cấp ba cơ chế khác nhau. Vòng lặp For được sử dụng khi biết trước số lần lặp. Vòng lặp While-Do kiểm tra điều kiện trước khi thực hiện, có nghĩa là khối lệnh có thể không được thực thi lần nào. Ngược lại, vòng lặp Repeat-Until thực hiện khối lệnh ít nhất một lần rồi mới kiểm tra điều kiện. Việc lựa chọn đúng loại vòng lặp cho từng tình huống cụ thể không chỉ giúp chương trình chạy đúng mà còn tối ưu hóa hiệu suất và làm cho thuật toán và lưu đồ trở nên rõ ràng hơn. Đây là kiến thức cốt lõi được nhấn mạnh trong mọi slide lập trình Pascal.

3.1. Hướng dẫn sử dụng lệnh rẽ nhánh If Then Else và Case Of

Lệnh If-Then-Elsecấu trúc điều khiển Pascal cơ bản nhất để xử lý các tình huống có điều kiện. Cú pháp If <điều_kiện> Then <lệnh_1> Else <lệnh_2>; sẽ thực thi <lệnh_1> nếu điều kiện đúng (True) và thực thi <lệnh_2> nếu điều kiện sai (False). Trong khi đó, lệnh Case <biểu_thức> Of là giải pháp tối ưu khi cần kiểm tra một biến với nhiều giá trị hằng khác nhau. Ví dụ, kiểm tra một tháng trong năm để xác định số ngày. Sử dụng Case-Of giúp mã nguồn sạch sẽ, dễ bảo trì hơn so với việc dùng nhiều lệnh If nối tiếp nhau, đây là một kỹ thuật quan trọng trong các bài tập Pascal có lời giải.

3.2. Cách vận dụng hiệu quả các vòng lặp trong Pascal For While

Các vòng lặp trong Pascal cho phép thực hiện một khối lệnh nhiều lần. Vòng lặp For i := start To end Do lý tưởng cho các bài toán cần lặp với số lần xác định, ví dụ như duyệt qua các phần tử của một mảng. Vòng lặp While <điều_kiện> Do phù hợp khi số lần lặp không xác định trước và phụ thuộc vào một điều kiện. Vòng lặp sẽ tiếp tục chừng nào điều kiện còn đúng. Lựa chọn đúng loại vòng lặp là chìa khóa để giải quyết bài toán một cách hiệu quả và tránh các lỗi lặp vô hạn. Đây là một trong những nội dung trọng tâm của ebook tin học cơ sở Pascal.

IV. Phương pháp tổ chức dữ liệu với mảng và chương trình con

Khi các bài toán trở nên phức tạp hơn, việc tổ chức dữ liệu và cấu trúc mã nguồn một cách hiệu quả là cực kỳ quan trọng. Giáo trình Tin học đại cương giới thiệu hai công cụ mạnh mẽ trong Pascal để giải quyết vấn đề này: mảng và chương trình con. Mảng trong Pascal (Array) là một kiểu dữ liệu có cấu trúc, cho phép lưu trữ một tập hợp cố định các phần tử có cùng kiểu dữ liệu dưới một tên chung. Mỗi phần tử được truy cập thông qua một chỉ số. Mảng có thể là một chiều (danh sách), hai chiều (ma trận), hoặc nhiều chiều, cung cấp một phương pháp mạnh mẽ để xử lý các bộ dữ liệu lớn như danh sách sinh viên, bảng điểm, hay ma trận trong toán học. Việc sử dụng mảng giúp đơn giản hóa các thao tác duyệt, tìm kiếm và sắp xếp dữ liệu. Song song với việc tổ chức dữ liệu, việc tổ chức mã nguồn cũng quan trọng không kém. Chương trình con Pascal là một kỹ thuật "phân mảnh" chương trình lớn thành các mô-đun nhỏ hơn, độc lập và có thể tái sử dụng. Có hai loại chương trình con: thủ tục và hàm trong Pascal. Thủ tục (Procedure) được dùng để thực hiện một chuỗi các hành động cụ thể. Hàm (Function) tương tự như thủ tục nhưng luôn trả về một giá trị duy nhất thông qua tên của nó. Việc sử dụng chương trình con giúp chương trình chính trở nên ngắn gọn, dễ hiểu, dễ gỡ lỗi và bảo trì. Đây là nền tảng của phương pháp lập trình Top-Down, một khái niệm cốt lõi trong nhập môn lập trình.

4.1. Khai báo và xử lý mảng trong Pascal Mảng một và hai chiều

Khai báo mảng trong Pascal được thực hiện bằng từ khóa Array. Ví dụ: Var A: Array[1..100] of Integer; khai báo một mảng A có 100 phần tử kiểu số nguyên. Để xử lý dữ liệu trong mảng, người lập trình thường sử dụng vòng lặp For để duyệt qua từng phần tử. Các thao tác phổ biến bao gồm nhập, xuất, tìm kiếm phần tử lớn nhất/nhỏ nhất, và sắp xếp mảng. Đối với mảng hai chiều, thường dùng hai vòng lặp For lồng nhau để truy cập các phần tử theo hàng và cột. Nắm vững kỹ thuật này là yêu cầu cơ bản trong nhiều bài tập Pascal có lời giải.

4.2. Tìm hiểu về thủ tục và hàm trong Pascal Procedure Function

Thủ tục và hàm trong Pascal là các chương trình con Pascal giúp module hóa mã nguồn. Procedure được định nghĩa bằng từ khóa PROCEDURE, dùng để thực thi một tác vụ. Function được định nghĩa bằng từ khóa FUNCTION, dùng để tính toán và trả về một giá trị. Một điểm khác biệt quan trọng là lời gọi hàm có thể được đặt trong một biểu thức, trong khi lời gọi thủ tục là một câu lệnh độc lập. Việc sử dụng tham số (tham trị và tham biến) cho phép truyền dữ liệu vào và ra khỏi chương trình con, tạo ra sự tương tác linh hoạt giữa các bộ phận của chương trình.

V. Giải mã các bài tập Pascal có lời giải từ cơ bản đến nâng cao

Lý thuyết sẽ trở nên vô nghĩa nếu không được áp dụng vào thực tiễn. Phần quan trọng nhất của Giáo trình Tin học đại cương Phần 2 - Lập trình Pascal chính là hệ thống bài tập Pascal có lời giải. Các bài tập này được thiết kế theo một lộ trình từ dễ đến khó, giúp sinh viên củng cố kiến thức và rèn luyện kỹ năng giải quyết vấn đề. Giai đoạn đầu, các bài tập tập trung vào việc sử dụng các câu lệnh đơn giản như gán, nhập/xuất, và các biểu thức số học. Ví dụ kinh điển là chương trình tính chu vi, diện tích hình chữ nhật, hoặc đảo ngược một số có ba chữ số. Những bài toán này giúp người học làm quen với cú pháp Pascal và luồng thực thi của chương trình. Tiếp theo, các bài tập nâng cao hơn yêu cầu vận dụng các cấu trúc điều khiển Pascal. Các bài toán như giải phương trình bậc nhất, bậc hai, tìm ước số chung lớn nhất, hay kiểm tra một số có phải là số nguyên tố hay không đòi hỏi phải sử dụng thành thạo các lệnh If-Then-Else và các loại vòng lặp. Việc phân tích yêu cầu bài toán, xây dựng thuật toán và lưu đồ trước khi viết code là một kỹ năng quan trọng được rèn luyện ở giai đoạn này. Cuối cùng, các bài tập phức tạp hơn liên quan đến xử lý mảng và chuỗi ký tự, như sắp xếp một dãy số, tìm kiếm một phần tử trong danh sách, hay chuẩn hóa một chuỗi họ tên. Các code Pascal cơ bản cho những bài toán này không chỉ là lời giải, mà còn là minh họa cho các phương pháp lập trình hiệu quả. Việc tham khảo các ebook tin học cơ sở Pascal và các tài liệu hướng dẫn sẽ cung cấp thêm nhiều ví dụ và phương pháp tiếp cận khác nhau, làm phong phú thêm kỹ năng lập trình.

5.1. Phân tích thuật toán và lưu đồ cho các bài toán kinh điển

Thuật toán và lưu đồ là bước mô tả cách giải quyết bài toán trước khi viết mã lệnh. Trong nhập môn lập trình, đây là kỹ năng bắt buộc. Ví dụ, để tìm ước số chung lớn nhất (UCLN) của hai số m và n, thuật toán Euclid là một giải pháp hiệu quả: "Chừng nào m khác n, nếu m > n thì gán m = m - n, ngược lại gán n = n - m. UCLN chính là giá trị cuối cùng của m (hoặc n)". Việc vẽ lưu đồ cho thuật toán này giúp hình dung rõ ràng các bước lặp và điều kiện rẽ nhánh, từ đó chuyển thể thành code Pascal cơ bản một cách dễ dàng.

5.2. Tuyển tập code Pascal cơ bản và các ví dụ minh họa chi tiết

Cung cấp các ví dụ code Pascal cơ bản là cách tốt nhất để học. Ví dụ, chương trình tính tổng S = 1 + 2 + ... + n có thể được giải quyết nhanh chóng bằng công thức toán học S := n*(n+1) div 2; hoặc sử dụng vòng lặp For. Một ví dụ khác là chương trình đếm số chữ số của một số nguyên dương n, có thể thực hiện bằng vòng lặp Repeat...Until hoặc While...Do kết hợp với phép toán div 10 để loại bỏ dần từng chữ số. Các ví dụ này minh họa cách áp dụng lý thuyết vào việc giải quyết các vấn đề cụ thể, là một phần không thể thiếu trong các slide lập trình Pascal.

04/10/2025

Trích đoạn nội dung tài liệu

Chƣơng 4 LẬP CHƢƠNG TRÌNH BẰNG PASCAL BÀI 1 TỔNG QUAN VỀ NGÔN NGỮ PASCAL 1. Giới thiệu Pascal là ngôn ngữ lập trình bậc cao, vạn năng do giáo sư Niklaus Wirth ở trường đại học Zurich (Thuỵ sỹ) thiết kế và công bố vào năm 1971. Ông đặt tên cho ngôn ngữ này Pascal để tưởng nhớ đến Blaise Pascal nhà toán học, triết học người Pháp ở thế kỷ 17. Ngôn ngữ Pascal được thiết kế nhằm phục vụ công tác giảng dạy cách tiếp cận hệ thống trong công việc lập trình và đặc biệt lần đầu tiên đưa ra khái niệm ―Phương pháp lập trình cấu trúc‖.

Ngày nay qua nhiều lần cải tiến, bổ sung Pascal đã có nhiều công cụ để giải quyết gần như bất cứ nhiệm vụ nào cho các loại máy tính. Pascal là ngôn ngữ dùng để dạy học là chính. Nhiều hãng phần mềm dựa trên chuẩn mực của ngôn ngữ để thêm bớt và thương mại hoá với nhiều loại khác nhau: ISO Pascal: Pascal chuẩn (International Standard organization) ANSI Pascal: Pascal của viện tiêu chuẩn Hoa kỳ Turbo Pascal: Pascal của hãng Borland IBM Pascal: Pascal của Microsoft. Từ khi ra đời đến nay Pascal đã trải qua nhiều Version khác nhau, mỗi Version được cải tiến và bổ sung thêm những chức năng mới, tốc độ dịch cũng được cải thiện.

Ngày nay Version mới nhất của Pascal là 7.0 (bao gồm cả bản chạy trên DOS và bản chạy trên Windows) Turbo Pascal gồm các file chính sau: Turbo.exe: Là file chương trình soạn thảo, dịch và liên kết với bảng chọn.tpl: Là file thư viện lưu các đơn vị chương trình chuẩn để chạy với Turbo.tpu: Là file chương trình xử lý đồ hoạ.chr: Là các file chứa các font chữ trong chế độ đồ hoạ.bgi: Là file chứa các font chữ màn hình. Ngoài ra còn các file khác với các chức năng riêng biệt. Các khái niệm và các thành phần cơ bản 1.1 Bộ ký tự (dùng để soạn thảo chương trình) Bao gồm các loại ký tự sau đây: - Các chữ cái: a.9 - Các dấu toán: + - * / ^ = < > - Các ký tự đặc biệt: ? ;. - Dấu gạch nối: _ - Các ký tự điều khiển 119 1.

Từ và từ khoá a. Từ: Là một dãy liên tiếp các ký tự không chứa ký tự trắng và ký tự điều khiển. Từ khoá: Là từ dành riêng của Pascal với chức năng và cú pháp được quy định sẵn. Vì vậy khi sử dụng phải theo đúng quy định, và không được sử dụng các từ khoá vào các công việc khác.

Ví dụ: Begin, End, If, Then, Const, Var, Function,… 1.3 Tên và tên chuẩn a. Tên: Tên là một từ bao gồm tối đa 255 ký tự, chỉ được lấy trong các chữ cái, chữ số, và dấu gạch nối, nhưng không được bắt đầu bằng số. Tên dùng để đặt cho các đối tượng trong chương trình như hằng, biến, hàm, thủ tục, kiểu dữ liệu,… b. Tên chuẩn: Là tên mà Turbo Pascal đã định nghĩa sẵn để chỉ các hàm, hằng, biến, thủ tục, thư viện của nó.

Chú ý: Turbo Pascal cho phép người sử dụng có thể định nghĩa lại các tên chuẩn để dùng vào các công việc khác.3 Cấu trúc tổng quát của một chƣơng trình. Một chương trình của Turbo Pascal gồm 3 phần - Tiêu đề - Khai báo và định nghĩa - Thân chương trình Cụ thể: Program Tiêu đề Uses Const Type Var Các khai báo và định nghĩa Procedure Funtion Begin Thân chương trình End 1.1 Phần tiêu đề: Từ khoá để khai báo là Program tiếp đến là tên của chương trình do người dùng tự đặt. Phần này không bắt buộc phải có.2 Phần khai báo và định nghĩa - Uses: Dùng để khai báo các Unit (đơn vị chương trình) của Turbo Pascal. Nếu có nhiều unit thì sử dụng dấu phẩy ―,‖ để ngăn cách.

- Const: Dùng để khai báo các hằng Cú pháp: Tên_hằng: = Giá trị. - Type: Dùng để định nghĩa các kiểu dữ liệu của người dùng. Cú pháp: Tên_kiểu= định nghĩa cụ thể cho từng kiểu. - Var: Khai báo biến.

Cú pháp: Tên biến: Kiểu_dữ liệu; (Hoặc khai báo trực tiếp không thông qua kiểu). Nếu có nhiều biến cùng kiểu thì sử dụng dấu phẩy ―,‖ để ngăn cách. - Procedure: Định nghĩa chương trình con dạng thủ tục. - Function: Định nghĩa chương trình con dạng hàm.

Chú ý: Tuỳ thuộc vào từng chương trình cụ thể mà trong chương trình có thể có các phần khai báo và định nghĩa phù hợp, có những chương trình có phần khai báo, định nghĩa này mà không có khai báo, định nghĩa kia hoặc ngược lại, thậm chí có những chương trình không cần đến một khai báo hay định nghĩa nào cả. Phần thân chương trình: Được bắt đầu bằng từ khoá ―Begin‖ và kết thúc bởi từ khoá ―End‖. Giữa cặp từ khoá này là các câu lệnh của chương trình. Nếu có nhiều câu lệnh thì phải sử dụng dấu ―;‖ để ngăn cách các câu lệnh.

Phần này bắt buộc phải có. Chú ý: - Turbo Pascal cũng sử dụng dấu ―;‖ để kết thúc phần này chuyển qua phần khác cũng như giữa khai báo này qua khai báo khác của chương trình. - Khi soạn thảo chương trình cho phép đưa vào các chú thích nhưng phải được đặt trong cặp dấu móc {…} hoặc (*…*). Các bƣớc lập trình Bƣớc 1: Tìm hiểu mục đích, yêu cầu của bài toán Mỗi bài toán có những mục đích, yêu cầu mà người lập trình phải tìm hiểu thật kỹ mới không bị sai lầm khi viết chương trình.

Sau khi nắm chắc nội dung của bài toán, người lập trình sẽ tìm được các biện pháp, các công cụ để giải bài toán đó. Bƣớc 2: Mô tả giải thuật và vẽ lưu đồ Khi giải 1 bài toán thì ta dùng ngôn ngữ toán học để diễn đạt ý tưởng. Trong lập trình thì ta sẽ sử dụng ngôn ngữ giải thuật đó là những từ ngữ rất ngắn gọn để mô tả cách thức giải bài toán đó 121 Bƣớc 3: Viết chương trình Bước này ta sử dụng các câu lệnh, các cấu trúc của ngôn ngữ lập trình để viết chương trình. (có thể viết nháp ra giấy trước) Bƣớc 4: Nhập và chạy thử chương trình Khởi động chương trình Pascal (C:\TP\BIN\Turbo.exe) Soạn thảo chương trình đã viết nháp ấn tổ hợp Ctrl + F9 để chạy chương trình (nếu có lỗi thì máy sẽ thông báo và phải sửa cho đúng) Nhập các số liệu để tính toán.

Nếu chạy kết quả không đúng thì thoát về chương trình nguồn để kiểm tra. Một số phím chức năng thƣờng dùng  F2: Lưu chương trình đang soạn thảo vào đĩa.  F3: Mở file mới hoặc file đã tồn tại trên đĩa để soạn thảo.  Alt-F3: Đóng file đang soạn thảo.

 Alt-F5: Xem kết quả chạy chương trình.  F8: Chạy từng câu lệnh một trong chương trình.  Alt-X: Thoát khỏi Turbo Pascal.  Alt-<Số thứ tự của file đang mở>: Dịch chuyển qua lại giữa các file đang mở.

 F10: Vào hệ thống Menu của Pascal.  Chọn khối văn bản: Shift + <Các phím >  Ctrl-KY: Xoá khối văn bản đang chọn  Ctrl-Insert: Đưa khối văn bản đang chọn vào Clipboard  Shift-Insert: Dán khối văn từ Clipboard xuống vị trí con trỏ. 122 BÀI 2 CÁC KIỂU DỮ LIỆU ĐƠN GIẢN 2.1 Tổng quan về các kiểu dữ liệu trong Turbo Pascal Trong Turbo Pascal các kiểu dữ liệu được chia làm 2 loại: - Các kiểu dữ liệu đơn giản - Các kiểu dữ liệu có cấu trúc 2. Các kiểu dữ liệu đơn giản: * Kiểu chuẩn: - Logic - Số nguyên - Số thực - Ký tự - Xâu * Kiểu do người dùng định nghĩa - Kiểu đoạn con - Kiểu liệt kê 2.

Các kiểu dữ liệu có cấu trúc - Mảng - Tập hợp - Bản ghi - File 2. Các kiểu dữ liệu đơn giản chuẩn 2. Kiểu logic: * Từ khoá: Boolean. * Miền trị: Chỉ có 2 giá trị là True và False * Các phép toán: AND, OR, NOT, XOR A B A AND B A OR B NOT A A XOR B T T T T F F T F F T F T F T F T T T F F F F T F Phép so sánh: Bằng nhau: ―=‖ Nhỏ hơn: ―<‖ Nhỏ hơn hoặc bằng: ―<=‖ Lớn hơn: ―>‖ Lớn hơn hoặc bằng: ―>=‖ Khác nhau: ―<>‖ 2.

Kiểu số nguyên: Có 5 kiểu số nguyên: * Miền trị của các kiểu đó như sau: Tên Min Max Yêu cầu bộ nhớ Shorint -128 127 1 byte Integer -32.647 4 byte Byte 0 255 1 byte Word 0 65.535 2 byte 123 * Các phép toán: Phép cộng: ―+‖ Phép trừ: ―-‖ Phép nhân ―*‖ Phép DIV: Phép chia hai số nguyên cho nhau cho kết quả là phần nguyên của thương. Phép MOD: Chia hai số nguyên cho nhau cho kết quả là số dư của phép chia đó. * Các phép so sánh: Có đầy đủ các phép so sánh tương tự như kiểu logic. Tuy nhiên ở đây ta đã biết quan hệ thứ tự trên tập hợp các số nguyên.

Trên dữ liệu kiểu số nguyên không tồn tại phép chia thực (/). Thông thường cá số nguyên được biểu diễn trong hệ cơ số thập phân. Nếu muốn biểu diễn trong cơ số 16 thì ta thêm dấu ―$‖ phía trước. Với kiểu số nguyên còn có các phép toán AND, OR, NOT, XOR… 2.

Kiểu số thực: Có 5 kiểu số thực. * Miền trị của chúng được cho bởi bảng sau: Tên Min Max Yêu cầu bộ nhớ -39 38 Real -2. Miền trị của các kiểu dữ liệu được hiểu là lấy trong các đoạn: * [-max, -min] * [min, max] * số 0. Nếu một số <-max hoặc >max thì sẽ không biểu diến được và xem như là tràn số.

Nếu một số >-min nhỏ hơn 0 hoặc lớn 0 nhỏ hơn min thì được xem là 0. Chế độ mặc định của Turbo Pascal là chỉ cho phép làm việc với kiểu số thực REAL. Muốn sử dụng các kiểu khác ta vào bảng chọn OPTION  COMPILER  NUMERIC PROCESING rồi đánh dấu [x] vào mục 8087/80287. Trong máy tính số thực được biểu diễn dưới hai dạng: - Dấu chấm tĩnh, ví dụ: 3.456… - Dấu chấm động (chế độ mặc định), ví dụ: 3.

* Các phép toán: Cộng: ―+‖ Trừ: ―-‖ Nhân ―*‖ Chia ―/‖ * Chú ý: Với kiểu số thực không tồn tại các phép DIV và MOD Các phép so sánh: Tương tự số nguyên gồm: =, <, >, >= (lớn hơn hoặc bằng), <= (nhỏ hơn hoặc bằng), <> (khác nhau). Các hàm trên kiểu số nguyên và số thực: Giả sử x là một số nào đó khi đó ta có các hàm sau đây: ROUND(x) ---- Cho giá trị là số nguyên gần x nhất Kiểu số nguyên TRUNC (x) ---- Cho giá trị là phần nguyên của số x INT(x)----------- Cho giá trị là phần nguyên của số x ABS(x)---------- Cho giá trị là gí trị tuyệt đối của số x SIN(x)----------- Cho giá trị là sinx. Các hàm khác Giả sử var là biến có kiểu vô hướng đếm được.

Nội dung được bảo vệ bản quyền — Tải xuống đầy đủ