Lý Thuyết Và Bài Tập Viết Chương Trình Pascal - DINHNGHIA.VN

Số lượt đọc bài viết: 41.212

Cách viết phương trình Pascal cũng như giải toán bằng ngôn ngữ lập trình Pascal là chủ đề được nhiều người quan tâm, đặc biệt trong thời đại công nghệ 4.0. Vậy ngôn ngữ lập trình Pascal là gì? Cách viết chương trình pascal lớp 11, lớp 9 để giải giải phương trình ax+b=0?… Hãy cùng DINHNGHIA.VN khám phá nội dung bài viết phương trình Pascal qua những nội dung dưới đây nhé!.

MỤC LỤC

  • Tìm hiểu về ngôn ngữ lập trình 
    • Ngôn ngữ lập trình là gì? 
    • Thành phần trong ngôn ngữ lập trình
    • Từ khóa và tên trong chương trình 
  • Pascal là gì? Ngôn ngữ lập trình Pascal 
  • Đặc điểm của ngôn ngữ lập trình Pascal 
  • Làm quen với Turbo Pascal trong chương trình
    • Ví dụ về chương trình Pascal
    • Chương trình pascal đơn giản lớp 8
  • Cấu trúc của một chương trình Pascal
  • Các dạng câu lệnh trong chương trình Pascal 
    • Câu lệnh if…then…
    • Câu lệnh for…do…
    • Câu lệnh while…do…
  • Tìm hiểu cách viết chương trình pascal lớp 11
    • Những cấu trúc trong chương trình pascal lớp 11
    • Các kiểu quản lý dữ liệu trong chương trình pascal lớp 11
    • Chương trình con trong chương trình pascal lớp 11
  • Một số dạng viết phương trình Pascal thường gặp
    • Bài tập viết phương trình pascal lớp 8
    • Bài tập viết phương trình pascal lớp 11

Tìm hiểu về ngôn ngữ lập trình 

Ngôn ngữ lập trình là gì? 

Ngôn ngữ lập trình theo định nghĩa chính là dạng ngôn ngữ được chuẩn hóa theo một hệ thống với những quy tắc riêng. Khi đó, người lập trình có thể mô tả các chương trình làm việc dành cho thiết bị điện tử mà đồng thời con người cũng như các thiết bị đó đều hiểu được.

Thành phần trong ngôn ngữ lập trình

  • Bảng chữ cái
  • Ký hiệu và phép toán
  • Các quy tắc để viết câu lệnh có ý nghĩa xác định

Từ khóa và tên trong chương trình 

  • Từ khóa được biết đến là những từ dành riêng, không được sử dụng ngoài mục đích ngôn ngữ lập trình quy định. Ví dụ: Program, uses crt, begin, end.
  • Tên do người lập trình đặt, đồng thời cần phải tuân thủ các quy tắc của ngôn ngữ lập trình cũng như của chương trình dịch.
  • Tên trong chương trình sẽ dùng để phân biệt và nhận biết. Tuy có thể đặt tùy ý, tuy nhiên để dễ sử dụng nên đặt tên sao cho ngắn gọn, dễ hiểu và dễ nhớ. Một số lưu ý như tên hợp lệ trong ngôn ngữ lập trình Pascal không được bắt đầu bằng chữ số và không chứa dấu cách (ký tự trống). 

Pascal là gì? Ngôn ngữ lập trình Pascal 

Pascal được hiểu như là ngôn ngữ lập trình máy tính theo dạng lệnh được phát triển bởi giáo sư Niklaus Wirth (trường đại học kĩ thuật Zurich – Thụy Sĩ). Pascal được phát triển từ năm 1970 và là kiểu ngôn ngữ đặc biệt thích hợp cho lối lập trình có cấu trúc. Về bản chất Pascal dựa trên ngôn ngữ lập trình ALGOL và được đặt tên theo nhà toán học và triết học Blaise Pascal (người Pháp). 

Đặc điểm của ngôn ngữ lập trình Pascal 

Những đặc điểm của ngôn ngữ lập trình Pascal:

  • Pascal có ngữ pháp và ngữ nghĩa đơn giản, mang tính logic, cấu trúc chương trình rõ ràng và dễ hiểu.
  • Đây là ngôn ngữ thích hợp cho kiểu lập trình theo cấu trúc, đặc biệt dễ sửa chữa và cải tiến.

Làm quen với Turbo Pascal trong chương trình

Ví dụ về chương trình Pascal

lý thuyết cách viết phương trình pascal

Chương trình pascal đơn giản lớp 8

Các thành phần trên cửa sổ Turbo Pascal

viết phương trình pascal trong chương trình lớp 8

  • Nhấn phím F10 để mở bảng chọn, sử dụng các phím mũi tên (\(\leftarrow\) và \(\rightarrow\)) để di chuyển qua lại giữa các bảng chọn.
  • Nhấn phím Enter để mở một bảng chọn.

tìm hiểu về cách viết phương trình pascal

  • Mở các bảng chọn khác: Nhấn phím tổ hợp phím Alt và phím tắt của bảng chọn (chữ màu đỏ ở tên bảng chọn, ví dụ phím tắt của bảng chọn File là F, bảng chọn Run là R,…)
  • Sử dụng các phím mũi tên lên và xuống (\(\uparrow\) và \(\downarrow\)) để di chuyển giữa các lệnh trong một bảng chọn.
  • Nhấn tổ hợp phím Alt + X để thoát khỏi Turbo Pascal.
  • Để biên dịch chương trình ta nhấn tổ hợp phím Alt + F9.
  • Để chạy chương trình ta nhấn tổ hợp phím Ctrl + F9.

Lưu ý: 

  • Pascal không phân biệt chữ hoa, chữ thường: begin, BeGin hay BEGIN đều đúng.
  • Các từ khóa của Pascal: program, begin, end. 
  • Lệnh kết thúc chương trình là end. (có dấu chấm), các câu lệnh sau lệnh này sẽ bị bỏ qua trong quá trình biên dịch chương trình.
  • Mỗi câu lệnh được kết thúc bằng dấu chấm phẩy (;)
  • Lệnh Writeln: in xong thông tin và đưa con trỏ xuống dòng. Lệnh Write: in xong thông tin nhưng không đưa con trỏ xuống dòng. (Thông tin có thể là văn bản hoặc là số).
  • Lệnh Read(<biến>); : Dùng để đọc biến được nhập từ bàn phím.
  • Lệnh Readln(<biến>);: Dừng nhập các biến từ bàn phím.
  • Lệnh Readln; : Dừng chương trình
  • Lệnh Clrscr; dùng để xóa màn hình kết quả.  

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

Cấu trúc chương trình gồm: 

  • Tên chương trình.
  • Sử dụng lệnh.
  • Kiểu khai báo.
  • Khai báo liên tục.
  • Khai báo biến.
  • Khai báo hàm.
  • Khai báo thủ tục.
  • Khối chương trình chính.
  • Báo cáo và biểu thức trong mỗi khối.

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

Khai báo biến

Khai báo biến được hiểu là khai báo các biến sử dụng trong chương trình. Cách khai báo biến như sau: 

Var <tên các biến>: <kiểu dữ liệu>;

Trong đó: 

  • Tên các biến là tên các biến được đặt tùy ý theo người lập trình (thường được đặt ngắn gọn, dễ nhớ và dễ sử dụng). Nếu có các biến có cùng kiểu dữ liệu thì có thể khai báo cùng nhau và được ngăn cách bởi dấu phẩy. Ví dụ: Var a,b: integer;
  • Kiểu dữ liệu là các loại dữ liệu được máy định sẵn. Ví dụ: integer là kiểu số nguyên, real là kiểu số thực, string là kiểu chữ,….

Các dạng câu lệnh trong chương trình Pascal 

Câu lệnh if…then…

Nếu <Điều Kiện> thì <Câu lệnh>

If <Điều kiện> then <Câu lệnh>

Nếu điều kiện true thì biểu thức sẽ được thực hiện, còn nếu điều kiện false thì biểu thức sẽ không được thực hiện.

Câu lệnh if… then…. được dùng trong trường hợp để so sánh các phép toán hoặc các phép toán có điều kiện.

Ví dụ: So sánh hai số a, b

Nếu a>b thì in số a ra màn hình 

If a>0 then writeln (‘a la so lon hon’);

Câu lệnh for…do…

Câu lệnh for…do…. nghĩa là lặp với số lần biết trước, nếu ta biết được số lần lặp lại của một dãy số, một tổng,… thì ta sẽ sử dụng for…do….

For <biến>:= <giá trị đầu> to <giá trị cuối> do <câu lệnh>

Trong đó: 

  • Biến có kiểu số nguyên integer
  • Giá trị cuối phải lớn hơn giá trị đầu và là kiểu số nguyên.
  • Câu lệnh có thể là câu lệnh đơn (một lệnh) hay lệnh ghép (nhiều lệnh)

Ví dụ: Tính tổng từ 1 tới 10 bằng Pascal

ví dụ tính tổng bằng pascal

Câu lệnh while…do…

Câu lệnh while… do… nghĩa là lặp với số lần chưa biết trước và phụ thuộc vào một điều kiện cụ thể và chỉ dừng lại khi điều kiện đó sai.

Trong Pascal câu lệnh lặp với số lần chưa biết trước là: 

while <điều kiện> do <câu lệnh>;

Ví dụ: Tính S là tổng các số tự nhiên sao cho số S nhỏ nhất để S > 1000

tính tổng các số tự nhiên

Tìm hiểu cách viết chương trình pascal lớp 11

Cấu trúc chung:

[<phần khai báo>]

<phần thân>

  • Phần thân nhất thiết phải có
  • Phần khai báo có thể có hoặc không

Ta quy ước: 

  • Các diễn giải bằng ngôn ngữ tự nhiên được đặt giữa cặp dấu < và >.
  • Các thành phần của chương trình có thể có hoặc không được đặt dấu [ và ]

Phần khai báo bao gồm:

  • Khai báo tên chương trình. 

Program <tên chương trình>;

Tên chương trình: là tên do người lập trình đặt ra theo đúng quy định về tên. Phần khai báo này có thể có hoặc không.

Ví dụ: Program vidu1;

Hay Program UCLN;

  • Khai báo thư viện.

Uses <tên thư viện>;

Đối với pascal thì thư viện crt thường được sử dụng nhất, đây là thư viện các chương trình có sẵn để làm việc với màn hình và bàn phím.

Ví dụ: Uses crt;

  • Khai báo hằng

Const n = giá trị hằng;

Là khai báo thường được sử dụng cho những giá trị xuất hiện nhiều lần trong chương trình.

Ví dụ: Const n = 10;

Hay Const bt = ‘bai tap’;

  • Khai báo biến.

Tất cả các biến dùng trong chương trình đều phải được đặt tên và khai báo cho chương trình dịch biết để lưu trữ và xử lý. Biến chỉ nhận một giá trị tại mỗi thời điểm khai báo được gọi là biến đơn.

Ví dụ: Var i: integer;

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

Begin

[<dãy lệnh>]

End.

Trong đó: 

  • Begin: bắt đầu (tên dành riêng)
  • End: kết thúc (tên dành riêng) 

Những cấu trúc trong chương trình pascal lớp 11

Cấu trúc rẽ nhánh

Cấu trúc rẽ nhánh có dạng: 

  • Dạng thiếu: If <điều kiện> then <câu lệnh> (đã được học ở lớp 8)
  • Dạng đủ If <điều kiện> then <câu lệnh 1> else <câu lệnh 2>

Ở dạng đủ câu lệnh được hiểu như sau: Nếu <điều kiện> đúng thì <câu lệnh 1> được thực hiện, ngược lại thì <câu lệnh 2> được thực hiện.

Ví dụ: Nếu x <= 200 thì số tiền phải trả là x*300 đồng. Nếu không thì số tiền phải trả là x*280 đồng

Đưa vào ngôn ngữ pascal là: 

If x<=200 then 

Writeln (‘So tien phai tra la ’, x*300, ‘dong’)

else 

Writeln (‘So tien phai tra la ’, x*280, ‘dong’);

Cấu trúc lặp

Trong cấu trúc lặp có 2 dạng: 

  • Lặp dạng tiến: 

For <biến đếm> := <giá trị đầu> to <giá trị cuối> do <câu lệnh>;

Ví dụ: 

For i:=1 to 5 do writeln(‘i= ’,i);

Ta được kết quả như sau: 

cấu trúc lặp minh họa

  • Dạng lặp lùi

For <biến đếm> := <giá trị cuối> to <giá trị đầu> do <câu lệnh>;

For i:=10 downto 1 do if sqrt(i)>2 then s:=s+i;

Ta được kết quả như sau: 

minh họa cho dạng lặp lùi

Các kiểu quản lý dữ liệu trong chương trình pascal lớp 11

Kiểu mảng

Mảng một chiều là dãy hữu hạn các phần tử có cùng kiểu dữ liệu.

Có 2 cách để khai báo mảng:

  • Khai báo trực tiếp

Var <DS biến mảng>: array[Kiểu chỉ số] of <Kiểu phần tử>

Chú ý: Kiểu chỉ số thường là một đoạn số nguyên liên tục: \(\left [ n_1.. n_2 \right ]\)

Ví dụ: Khai báo biến mảng lưu giữ giá trị nhiệt độ 7 ngày trong tuần 

Var Day: array [1..7] of real;

  • Khai báo gián tiếp

Type <tên kiểu mảng> = array [Kiểu chỉ số] of <Kiểu phần tử>;

Var <DS biến mảng> : <tên kiểu mảng>;

Ví dụ: Khai báo biến mảng có tên C với kiểu dữ liệu là kiểu mảng có tên kiểu là kmang

TYPE kmang = array[1..7] of real;

Var C : kmang;

Kiểu xâu 

Xâu là dãy các kí tự trong bộ mã ASCII.

Khai báo xâu: 

Var <tên biến> : string[độ dài lớn nhất của xâu]

Ví dụ: Nhập vào họ tên học sinh từ bàn phím

Var hoten : string[30]

Các thao tác xử lý xâu: 

  • Phép ghép xâu: kí hiệu là “+” được sử dụng để ghép nhiều xâu thành một xâu
  • Phép so sánh: =,<>,<,<=,>,>=

Ta quy ước: 

  • Xâu A = B nếu chúng giống hệ nhau

Ví dụ: ‘Tin hoc’ = ‘Tin hoc’

  • Xau A > B nếu ký tự đầu tiên khác nhau giữa chúng kể từ trái sang phải trong xâu A có mã ASCII lớn hơn.

Ví dụ: ‘Ha Noi’ > ‘Ha Nam’ (Do O có mã thập phân lớn hơn A trong bảng mã ASCII)

  • Nếu A và B là các xâu có độ dài khác nhau và A là đoạn đầu của B thì A < B 

Ví dụ: ‘Thanh pho’ < ‘Thanh pho Ho Chi Minh’

Một số thủ tục chuẩn xử lý xâu 

  • Thủ tục delete(st, vt, n)

Ý nghĩa: xóa ký tự của biến xâu st bắt đầu từ vị trí vt

Trong đó: 

  • st: giá trị của xâu.
  • vt: vị trí cần xóa.
  • n: số kí tự cần xóa.

Ví dụ:

một số thủ tục chuẩn xử lý xâu

  • Thủ tục insert(S1, S2, vt)

Ý nghĩa: Chèn xâu S1 vào xâu S2, bắt đầu ở vị trí vt.

Ví dụ:

ý nghĩa việc chuẩn xâu

  • Hàm copy(S, vt, n)

Ý nghĩa: Tạo xâu gồm n kí tự liên tiếp bắt đầu từ vị trí vt của xâu S. Cho giá trị là một xâu ký tự được lấy trong xâu S.

Ví dụ: 

dữ liệu của hàm copy

  • Hàm length(S) 

Ý nghĩa: Trả về giá trị là độ dài của xâu S. Kết quả trả về là một số nguyên

Ví dụ:

tìm hiểu về hàm length

  • Hàm pos(S1,S2)

Ý nghĩa: Trả về kết quả vị trí của xâu S1 trong xâu S2. Kết quả trả về là một số nguyên.

Ví dụ: 

dữ liệu về hàm pos

  • Hàm upcase(S)

Ý nghĩa: Trả về kết quả viết in hoa 1 chữ cái có trong S.

Ví dụ: 

tìm hiểu về hàm upcase

Lưu ý: Kiểu mảng với phần tử thuộc kiểu char khác với kiểu xâu (khai báo bằng từ khóa string) nên không thể áp dụng các thao tác (phép toán, hàm, thủ tục) của xâu cho mảng.

Kiểu bản ghi 

  • Dữ liệu kiểu bản ghi dùng để mô tả các đối tượng có cùng một số thuộc tính mà các thuộc tính có thể có các kiểu dữ liệu khác nhau.
  • Khai báo kiểu bản ghi: 

Type <Tên bản ghi> = record

         <Tên trường 1>: <Kiểu trường 1>;

         < Tên trường 2>: <Kiểu trường 2>;

       ……………….

      <Tên trường k>: <Kiểu trường k>;

End;

  • Biến bản ghi

Var <Tên biến bản ghi> : <Tên kiểu bản ghi>;

Ví dụ: Định nghĩa bản ghi Hocsinh để quản lý thông tin của một học sinh gồm: Hoten, Noisinh, Toan, Van, Anh. Khai báo 2 biến A, B là biến kiểu bản ghi

Type Hocsinh = Record 

Hoten: String[30];

Noisinh: String[15];

Toan, Van, Anh : Real;

end; 

Var A, B : Hocsinh; 

Kiểu dữ liệu tệp

  • Cách khai báo: 

Var <Tên biến tệp>: TEXT;

  • Gắn tên tệp

Assign (<biến tệp>, <tên tệp>);

  • Mở tệp để ghi

Rewrite (<biến tệp>);

  • Ghi tệp văn bản

Writeln (<biến tệp>, <Danh sách kết quả>);

  • Đóng tệp

Close (<tên biến tệp>);

  • Mở tệp để đọc

Reset (<biến tệp>);

  • Đọc dữ liệu từ tệp

Readln (<biến tệp>, <Danh sách biến>);

  • Kiểm tra con trỏ đã ở cuối tệp

EOF (<biến tệp>);

Nếu con trỏ đã ở cuối tệp hàm sẽ trả về giá trị TRUE.

  • Kiểm tra con trỏ đã ở cuối dòng

EOLN (<biến tệp>);

Nếu con trỏ đã ở cuối dòng hàm sẽ trả về giá trị TRUE

Chương trình con trong chương trình pascal lớp 11

Chương trình con

Khái niệm: Chương trình con theo định nghĩa chính là một dãy lệnh mô tả một số thao tác nhất định và có thể được thực hiện (được gọi) từ nhiều vị trí trong chương trình.

Cách khai báo:

Ví dụ: Hãy khai báo một chương trình con dùng để tính lũy thừa.

Function  luythua (x: Real ; k: integer): Real;

Var i : integer;

Begin

luythua:=1.0;

For i:=1 to k do luythua:=luythua*x;

End;

Lợi ích của việc sử dụng chương trình con

  • Giúp tránh được việc phải viết lặp đi lặp lại cùng một dãy lệnh, đồng thời khi cần dùng có thể gọi lại chương trình con đó.
  • Sử dụng chương trình con còn hỗ trợ việc thực hiện các chương trình lớn 
  • Phục vụ cho quá trình trừu tượng hóa. Người lập trình có thể sử dụng kết quả của chương trình con mà không cần quan tâm đến chương trình đó đã được cài đặt thế nào.
  • Mở rộng khả năng ngôn ngữ thành thư viện cho nhiều người dùng.
  • Thuận tiện cho phát triển, nâng cấp chương trình.

Biến toàn cục và biến cục bộ

  • Biến toàn cục chính là biến được khai báo trên phần khai báo của chương trình chính (được khai báo gần chữ Program) được gọi là biến toàn cục và được sử dụng cho toàn bộ chương trình.
  • Biến cục bộ được hiểu là biến được khai báo trong chương trình con. Biến cục bộ chỉ được sử dụng trong chương trình con.

Một số dạng viết phương trình Pascal thường gặp

Bài tập viết phương trình pascal lớp 8

Ví dụ 1: Viết chương trình nhập vào 2 số km (kilômét) và giờ đổi sang m (mét) và phút.

Cách giải: 

bài tập viết phương trình pascal lớp 8

Ví dụ 2: Viết chương trình tính chu vi và diện tích hình chữ nhật có chiều dài hai cạnh là a,b (được nhập từ bàn phím).

Cách giải:

một số dạng toán về chương trình lập trình

Ví dụ 3: Viết chương trình nhập vào số có ba chữ số, in ra các chữ số hàng trăm, hàng chục, hàng đơn vị của số đó.

Cách giải: 

chương trình nhập vào số có ba chữ số

Bài tập viết phương trình pascal lớp 11

Ví dụ 1: Viết phương trình pascal tính diện tích hình tam giác khi biết số đo của 2 cạnh và 1 góc được nhập từ bàn phím.

Cách giải: 

phương trình pascal lớp 11

Ví dụ 2: Viết phương trình pascal giải phương trình ax + b = 0. a,b được nhập từ bàn phím

Cách giải: 

phương trình pascal giải phương trình ax + b = 0

Ví dụ 3: Cho bài toán về tháp Hà Nội.

cho bài toán về tháp hà nội

Cách giải: 

cách giải bài tập lập phương trình đơn giản

Ví dụ 4: Nhập vào mảng A có N phần tử (N < 50). Hãy viết chương trình pascal sắp xếp mảng A theo thứ tự tăng dần.

Cách giải: 

cách sắp xếp theo thứ tự tăng dần

Như vậy, bài viết trên đây của DINHNGHIA.VN đã giúp bạn tổng hợp kiến thức về cách viết phương trình pascal cùng một số nội dung liên quan. Hy vọng rằng với những thông tin mà chúng tôi đã cung cấp sẽ giúp ích cho bạn trong quá trình nghiên cứu và học tập về chuyên đề cách viết phương trình Pascal.

Xem chi tiết qua bài giảng dưới đây nhé:

(Nguồn: www.youtube.com)

  • Chuyên đề Hệ phương trình đẳng cấp cơ bản và nâng cao
  • Phương trình bậc 2 và nghiệm phương trình bậc hai đơn giản
  • Các phương pháp giải Hệ phương trình đối xứng loại 1, loại 2
3/5 - (2 bình chọn) Please follow and like us:errorfb-share-icon Tweet fb-share-icon

Từ khóa » Viết Chương Trình Free Pascal