Viết Chương Trình Pascal Lớp 11 Cơ Bản Hay Nhất - TopLoigiai
Có thể bạn quan tâm
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:
- 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:
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: [n1..n2]
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ụ:
Giá trị S | Thao tác | Kết quả |
‘abcdef’ | delete(S,5,2) | ‘abcd’ |
‘Dat nuoc’ | delete(S,5,4) | ‘Dat’ |
- 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ụ:
S1 | S2 | Thao tác | Kết quả |
‘PC’ | ‘IBM486’ | insert(S1,S2,4) | ‘IBM PC 486’ |
‘’ | ‘Tinhoc’ | insert(S1,S2,4) | ‘Tin hoc’ |
‘lop’ | ‘11C’ | insert(S1,S2,4) | ‘lop11C’ |
- 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ụ:
Giá trị S | Thao tác | Kết quả |
‘Bai hoc dau tien’ | copy(S,9,8) | ‘dau tien’ |
‘Hoc ki 1’ | copy(S,4,5) | ‘ki 1’ |
- 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ụ:
Giá trị S | Thao tác | Kết quả |
‘Kim Dong’ | length(S) | 8 |
‘Van hoc’ | length(S) | 7 |
- 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ụ:
Giá trị S | Giá trị S2 | Thao tác | Kết quả |
‘Nang’ | ‘Nang dong’ | pos(S1,S2) | 1 |
‘Bung’ | ‘Tot bung’ | pos(S1,S2) | 5 |
- Hàm upcase(S)
Ý nghĩa: Trả về kết quả viết in hoa 1 chữ cái có trong S.
Ví dụ:
Giá trị S | Thao tác | Kết quả |
‘a’ | upcase(S) | ‘A’ |
‘b’ | upcase(S) | ‘B’ |
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.
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:
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:
Ví dụ 3: Cho bài toán về tháp Hà Nội.
Cách giải:
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.
Từ khóa » Viết Chương Trình Free Pascal
-
[Cơ Bản] Cách Viết Một Chương Trình Pascal | Vivu
-
Cách Viết Chương Trình Pascal Có Giải, Từ Dễ Đến Khó, Tổng Hợp ...
-
HƯỚNG DẪN SỬ DỤNG PHẦN MỀM FREE PASCAL - Tinhte
-
Tổng Hợp Bài Tập Pascal Có Giải, Từ Dễ đến Khó
-
Viết Chương Trình Hello World Với Pascal - Freetuts
-
Hướng Dẫn Cài đặt Và Sử Dụng Free Pascal
-
Viết Chương Trình "chào Mừng" Trên Free Pascal - YouTube
-
Cách Chạy Chương Trình Trong Pascal Trên Máy Tính - Thủ Thuật
-
Lý Thuyết Và Bài Tập Viết Chương Trình Pascal - DINHNGHIA.VN
-
(ngôn Ngữ Lập Trình Free Pascal)Viết Chương Trình Nhập Số Tự ...
-
Hướng Dẫn Sử Dụng Free Pascal Của Tin Học 8 Mới #1 - YouTube