Ví dụ về cách lập trình trong chương trình học Pascal. Nguyên tắc cơ bản của lập trình Pascal cho sinh viên

Trong bài viết này tôi sẽ cho bạn biết về các nguyên tắc cơ bản khi làm việc với ngôn ngữ. Pascal. Thông tin được đăng ở đây rất đơn giản và dễ hiểu đối với những người mới lập trình. Sau khi nghiên cứu bài viết này, bạn sẽ có kiến ​​thức cơ bản về Pascal và quá trình tiếp theo việc học sẽ dễ dàng hơn rất nhiều.

Pascal- một trong những thứ nhất ngôn ngữ đã biết lập trình. Được tạo ra vào năm 1968 - 1969 bởi nhà khoa học người Thụy Sĩ Niklaus Wirth, nó được đặt theo tên của nhà toán học và vật lý người Pháp Blaise Pascal, và được sử dụng để dạy lập trình cho đến ngày nay.

1. Chuẩn bị đi làm

Vì vậy, bạn quyết định học cách lập trình và bắt đầu với ngôn ngữ phù hợp nhất cho việc này - Pascal. Để bắt đầu, bạn phải mua (tải xuống) một trình biên dịch.

Chính xác thì đây là gì "trình biên dịch"? Cái này chương trình đặc biệt, đọc mã chương trình và sau đó dịch nó sang ngôn ngữ mã máy. Về bản chất, tất cả các ngôn ngữ lập trình đều là một cách “giao tiếp” với máy tính và trình biên dịch giúp dịch “lời nói” của chúng ta thành thứ mà nó hiểu được.

Có nhiều trình biên dịch cho Pascal, nổi tiếng nhất trong số đó: Pascal ABC, Pascal miễn phí, Pascal ABC.NET, Turbo Pascal. Tất cả các chương trình này đều tốt theo cách riêng của chúng, nhưng đối với cá nhân tôi (tác giả), Pascal ABC (hoặc Pascal ABC.NET) rất tiện lợi vì nó có rất nhiều ưu điểm. giao diện thân thiện với người dùng, trợ giúp chi tiết và thậm chí cả tập hợp các vấn đề được chuẩn bị đặc biệt cho người mới bắt đầu.

2. Bắt đầu

Chà, cửa sổ trình biên dịch đang mở trước mặt chúng ta. Một tờ giấy sạch, màu trắng (hoặc xanh?). Đây là nơi các chương trình đầu tiên của chúng tôi sẽ ra đời. Trước khi bạn bắt đầu, hãy nhớ rằng ngôn ngữ Pascal là sự kết hợp của ba thành phần: bảng chữ cái, cú pháp (quy tắc viết các đối tượng ngôn ngữ) và ngữ nghĩa (quy tắc sử dụng các đối tượng này).
Bảng chữ cái Pascal bao gồm:
  1. Chữ hoa và chữ viết thường Chữ Latinh: A...Z, a...z;
  2. Chữ số: 0...9;
  3. Ký tự đặc biệt: + - */ =< >.,:; ‘ # () ( ) và sự kết hợp của chúng: “>=” “
Nhiệm vụ của cú pháp và ngữ nghĩa là viết chính xác một phần của chương trình và soạn thảo chính xác cấu trúc của nó, nếu không chương trình của chúng ta sẽ hoạt động không chính xác (hoặc hoàn toàn không hoạt động!).
Có lẽ bạn rất nóng lòng muốn đến phần thú vị nhất, vì vậy bây giờ chúng tôi sẽ thử viết chương trình đầu tiên của bạn.

Cấu trúc chương trình trông như thế này:

Chương trình "tên chương trình"; - tên chương trình;
(Lưu ý: cuối dòng có dấu chấm phẩy, không phải tất cả mà là hầu hết)
Công dụng (tên thư viện); các thư viện cung cấp Tính năng bổ sung khi tạo chương trình;
Nhãn(tên nhãn); ở đây, nếu cần, các nhãn được viết cho phép bạn truy cập Những nơi khác nhau các chương trình (sẽ nói thêm về chúng sau);
Const ở đây chúng ta chỉ ra các biến có giá trị không đổi, ví dụ p=3,14;
Var ở đây chúng tôi liệt kê tất cả các biến được phân tách bằng dấu phẩy, sau đó cho biết loại dữ liệu (Ví dụ: Var: K, L, M: số nguyên; N, O: real; (nếu có nhiều loại));
Bắt đầu (không có dấu chấm phẩy ở đây)
Tiếp theo là khối chính của chương trình;
kết thúc. – kết thúc chương trình (cần có dấu chấm sau “kết thúc”, trừ khi đây là phần cuối của chương trình chứ không phải dấu ngoặc toán tử).

3. Tạo các chương trình đầu tiên

Bây giờ bạn đã quen với cấu trúc cơ bản của chương trình. Cần lưu ý rằng trong số các phần trên, chỉ có “Var”, “Bắt đầu” và “kết thúc” là bắt buộc, trong khi các phần còn lại có thể được sử dụng nếu được yêu cầu trong quá trình thực hiện nhiệm vụ.

Mở cửa sổ trình biên dịch của bạn và nhập các dòng sau:

Chương trình Chương trình1;
bắt đầu
kết thúc.

Nhấp vào nút "Chạy". Chẳng có gì xảy ra? Đúng rồi, vì chương trình của chúng ta “trống” nên chúng ta không chỉ rõ nó phải làm gì nên không có gì xảy ra. Thông thường, nguyên lý hoạt động của một chương trình viết bằng Pascal bao gồm ba giai đoạn: nhập dữ liệu – xử lý dữ liệu – xuất dữ liệu. Bây giờ chúng ta hãy làm quen với toán tử "ghi". Nó chỉ phục vụ cho việc xuất dữ liệu mà không cần chuyển sang dòng mới. Hãy thử áp dụng nó, từ đó làm cho chương trình của chúng ta phức tạp và thú vị hơn một chút:

Chương trình Chương trình1;
bắt đầu
write(" Pascal ");
kết thúc.

Trên thực tế, đây là cách nó được sử dụng. Giữa các dấu nháy đơn, chúng ta có thể nhập bất kỳ văn bản nào, trên bất kỳ bố cục nào và sau khi thực hiện chương trình, nó sẽ xuất hiện trong cửa sổ đầu ra (hoặc trong dòng lệnh, tùy thuộc vào trình biên dịch bạn có). TRONG trong trường hợp này, từ "Pascal" sẽ xuất hiện.

3.1. Các toán tử viết, writeln, read, readln
Bây giờ hãy nói về việc nhập dữ liệu. Chúng ta đã thấy toán tử ghi nhưng cũng có những toán tử khác. Ví dụ: Writeln được sử dụng để xuất dữ liệu bằng dòng mới. Để làm gì? Vâng, ví dụ, để gán một giá trị cho một biến nào đó:

Chương trình Chương trình1;
var A: số nguyên;
bắt đầu
writeln("A="); đọc một); (nhập một giá trị và “gắn” nó vào biến A)
viết(A); (Xuất giá trị của biến A)
kết thúc.

Như bạn có thể thấy, tôi đã mô tả ngắn gọn từng hành động trong dấu ngoặc nhọn. Điều này được gọi là một bình luận. Trong tương lai tôi cũng sẽ sử dụng chúng để giải thích.
Trong ví dụ này, để gán giá trị được nhập từ bàn phím cho một biến, hãy sử dụng toán tử đọc. Chúng ta thấy rằng khi được thực thi, nó đọc chuỗi thành biến A. Và toán tử còn lại, readln, hoạt động khác. Sử dụng nó chúng ta có thể nhập ngay dòng mong muốn, và nó sẽ được đọc vào biến:

Chương trình Chương trình1;
var A: số nguyên;
bắt đầu
readln(A);
write("A=", A); (dòng sẽ có dạng như sau: “A = “đã nhập giá trị A” `)
kết thúc.

Bây giờ bạn đã biết một chút về việc nhập dữ liệu, hãy nói về dữ liệu có thể là gì và cách xử lý dữ liệu đó.

3.2. Các kiểu dữ liệu trong Pascal
Khi bạn đang đọc bài viết này, có thể bạn đã gặp một số nguyên mà đôi khi bạn không hiểu. Sau khi nghiên cứu kỹ cấu trúc cơ bản của chương trình, chắc hẳn bạn đã nhận ra đây là một kiểu dữ liệu. Nhưng cái đó nghĩa là gì? Chúng ta hãy xem xét kỹ hơn về điều này.

Dữ liệu nguồn được nhập từ bàn phím hoặc đọc từ tệp, được đặt trong các biến và lần lượt chúng được lưu trữ trong bộ nhớ truy cập tạm thời. Kiểu dữ liệu xác định loại dữ liệu nào có thể được lưu trữ và nó sẽ chiếm bao nhiêu RAM. Các kiểu dữ liệu là số nguyên và số thực.

Kiểu dữ liệu số nguyên (đối với số nguyên):
- byte
Dung lượng lưu trữ cho các giá trị thuộc loại này là 1 byte. Phạm vi giá trị của loại này là từ 0 đến 255.
- từ
Các giá trị thuộc loại này đã chiếm 2 byte bộ nhớ và phạm vi giá trị đã lớn hơn: từ 0 đến 65535.
- số nguyên (đã quen thuộc với chúng ta)
Các giá trị cũng chiếm 2 byte bộ nhớ, phạm vi có cùng kích thước nhưng bao gồm số âm: -32786…32787.
- LongInt
Lượng bộ nhớ bị chiếm bởi một giá trị loại là 4 byte. Phạm vi giá trị hoàn toàn tương ứng với tên của kiểu dữ liệu: từ -2147483648 đến 2147483647
-ShortInt
Giá trị loại tiêu tốn 1 byte bộ nhớ, phạm vi tương đối nhỏ: -128…127.

Các kiểu dữ liệu thực (đối với các số có phần phân đoạn):
- Thực tế
Bị chiếm bởi một giá trị loại – 6 byte. Số chữ số có nghĩa là 11-12. (những con số quan trọng là con số chính xác, I E. không làm tròn). Phạm vi giá trị loại: từ 2,9*10-39 đến 1,7*1038.
-Gấp đôi
Kích thước giá trị loại là 8 byte. Số chữ số có nghĩa là 15-16. Phạm vi: 5.0*10324…1.7*10308.
- Mở rộng
Chiếm 10 byte. Số chữ số có nghĩa là 19-20. Phạm vi: 3,4*10-4932…1,1*104932.
Ngoài những loại này, còn có kiểu dữ liệu ký tự (char) và thậm chí cả kiểu dữ liệu logic (boolean), các biến trong đó chỉ có thể lấy giá trị đúng hoặc sai.

Vì vậy, chúng ta đã học được rất nhiều về đầu vào và đầu ra dữ liệu. Bây giờ hãy chuyển sang phần khó nhất - xử lý dữ liệu.

3.3. Xử lí dữ liệu. Các hoạt động toán học. Điều kiện. Các hoạt động logic.
Chúng ta đã học cách nhập dữ liệu vào chương trình, bây giờ chúng ta hãy thử tìm hiểu cách xử lý dữ liệu đó. Điều đầu tiên và quan trọng nhất sẽ hữu ích cho chúng ta trong vấn đề này là toán tử gán. Nó được biểu thị như sau: “:=”, và được sử dụng để gán giá trị cho một biến. Ví dụ: A:=1,5; B:=2+A. Bây giờ chúng ta đã quen với toán tử gán, chúng ta có thể xem xét các phép toán của Pascal:
  1. Phép cộng (+);
  2. Phép trừ (-);
  3. Phép nhân (*);
  4. Phân công(/);
  5. Phép chia số nguyên (div) – trả về phần nguyên của phép chia (Ví dụ: 10 div 3 = 3);
  6. Phần dư của phép chia (mod) – chỉ trả về phần dư của phép chia (Ví dụ: 5 mod 2 = 1);
Ngoài các thao tác trên, còn có các thao tác và hàm sau để làm việc với số:

Abs(x) – trả về mô đun của x;
sin(x) – sin của góc x (tính bằng radian);
cos(x) – cosin của góc x (tính bằng radian);
int(x) – trả về phần nguyên của x;
ngẫu nhiên(số) – số ngẫu nhiên từ 0 đến một số nhất định;
sqr(x) – hình vuông x;
sqrt(x) – Căn bậc hai x;
inc(x) – tăng x lên 1;
dec(x) – giảm x đi 1.

Điều kiện
Các điều kiện trong Pascal đóng vai trò rất quan trọng, đặc biệt nếu thuật toán thực thi chương trình được phân nhánh. Điều kiện được xây dựng như sau:

Nếu (điều kiện 1) thì (hành động 1 - chính) khác (hành động 2 - thay thế)
(nếu – nếu, thì – thì, khác – ngược lại)

Khi xây dựng các điều kiện, hãy sử dụng các phép toán logic and, not, or, xor:

Và là toán hạng kết hợp nhiều điều kiện thành một. Hành động sẽ chỉ được thực hiện nếu tất cả các điều kiện được liệt kê là đúng.
Điều kiện chương trình;
var a: số nguyên;
bắt đầu
đọcln(a);
nếu (2*2=4) và (3+2=5) thì a:=a+1 nếu không thì a:=a-1;
viết(a);
kết thúc.

Trong ví dụ này, chúng ta thấy rằng tất cả các điều kiện được liệt kê đều đúng, do đó chỉ có hành động đầu tiên, trải qua hơn, được thực hiện. Nếu ít nhất một điều kiện không đúng thì hành động thứ hai sẽ được thực thi.

Not – một hành động logic với điều kiện từ một phần. Nếu điều kiện sai thì hành động chính (đầu tiên) sẽ được thực hiện, nếu đúng thì hành động thay thế (thứ hai).

Điều kiện chương trình;
var b: số nguyên;
bắt đầu
đọcln(b);
nếu không phải 5=4 thì b:=b+1 nếu không thì b:=b-1;
viết(b);
kết thúc.

Điều kiện 5=4 không đúng nên hành động đầu tiên sẽ được thực hiện.

Hoặc (hoặc) – toán tử logic cho một điều kiện nhiều phần. Hành động chính sẽ được thực hiện nếu có ít nhất một điều kiện đúng.
Điều kiện chương trình;
var d: số nguyên;
bắt đầu
đọcln(d);
nếu (5=4+1) hoặc (5=4) thì d:=d+1 nếu không thì d:=d-1;
viết(d);
kết thúc.

Một trong các điều kiện là đúng nên chương trình sẽ đi đến hành động chính. Điều tương tự sẽ xảy ra lần nữa nếu tất cả các điều kiện đều đúng. Nếu cả hai điều kiện đều không đúng thì một hành động thay thế sẽ được thực hiện.

Xor – Với toán tử này, hành động chính được thực hiện nếu chỉ có một điều kiện đúng. Nếu có nhiều hơn một điều kiện đúng hoặc không có điều kiện nào đúng thì một hành động thay thế sẽ được thực hiện.

Điều kiện chương trình;
var n: số nguyên;
bắt đầu
đọcln(n);
nếu (6=4) xor (3=5-2) thì n:=n+1 ngược lại n:=n-1;
viết(n);
kết thúc.

(Lưu ý: Đừng quên rằng mức độ ưu tiên của các phép toán logic cao hơn các phép toán, do đó, nếu một số phép toán kết hợp với các phép toán khác thì nên tách các phép toán bằng dấu ngoặc để không xảy ra lỗi trong quá trình thực hiện chương trình.)

Bây giờ chúng ta đã quen với những điều cơ bản về xử lý dữ liệu. Vẫn còn phải nói về một số thủ tục bổ sung và các chức năng quản lý chương trình, những chức năng này sẽ hữu ích nhiều lần trong quá trình đào tạo thêm về Pascal của bạn.

3.4. Thủ tục và chức năng quản lý chương trình
Hãy nói về nhãn hiệu được đề cập trước đó. Quy trình này rất dễ sử dụng và cho phép, nếu cần, đi đến bất kỳ phần nào của chương trình, “bỏ qua” một trong các phần sau hoặc ngược lại, quay lại phần trước. Đăng ký nhãn rất đơn giản: đầu tiên chúng ta mô tả nhãn trong phần nhãn (xem đoạn 3. Bắt đầu. Cấu trúc chương trình), sau đó chỉ định vị trí chuyển tiếp và toán tử mong muốn được đánh dấu bằng nhãn.

Dấu chương trình;
nhãn 1,2;
var A, B: số nguyên;
bắt đầu
readln(A);
2: nếu A=5 thì đạt 1; (2: - hành động sau khi di chuyển đến nhãn tương ứng,)
Đ:=A+1; (goto - đi tới nhãn)
đi 2;
1: viết(A);
kết thúc.

TRÊN trong ví dụ này, chương trình sẽ tăng số đã nhập thêm 1 cho đến khi nó bằng năm. Ở đây chúng ta có thể theo dõi tác dụng của nhãn hiệu.

Độ trễ (thời gian) – dừng chương trình với độ trễ, thời gian trong dấu ngoặc kép được biểu thị bằng mili giây.
Readkey – dừng chương trình trước khi nhấn phím, giá trị của hàm là mã của phím được nhấn.
Thoát - hoàn thành sớm thủ tục.
Cần lưu ý để delay, readkey, exit hoạt động thì phải kết nối module crt (dùng crt).

Đồng thời xem video: Pascal từ đầu - chương trình đầu tiên.

4. Kết luận

Sau khi đọc bài viết này, bạn đã có được kiến ​​thức cơ bản về ngôn ngữ Lập trình Pascal. Các khái niệm và nguyên tắc cơ bản khi làm việc với ngôn ngữ này đã được trình bày ở đây dưới dạng công thức dễ hiểu và dễ tiếp cận. Bây giờ vấn đề nằm trong tay bạn. Nếu bạn sử dụng thông tin này một cách chính xác và tiếp tục học ngôn ngữ Pascal, bạn sẽ sớm có thể thành thạo nó một cách hoàn hảo.

Khi hiểu được nguyên tắc làm việc với Pascal, bạn sẽ có thể nghiên cứu các ngôn ngữ lập trình khác và trong tương lai sẽ viết được nhiều chương trình “nghiêm túc” hơn những chương trình bạn đã làm quen khi nghiên cứu bài viết này. Hãy tiếp tục học hỏi! Chúc may mắn!

tái bản lần thứ 2. - St.Petersburg: 2011. - 320Với.

Cuốn sách này không phải là một cuốn sách giáo khoa mà là một trợ giúp giúp bạn nắm vững ngôn ngữ lập trình Pascal, ngôn ngữ mà tất cả học sinh được làm quen trong các bài học về khoa học máy tính. Nó bao gồm các bài học về những vấn đề thiết thực lập trình và giải quyết vấn đề. Nhiều ví dụ cho phép bạn hiểu rõ hơn cách phát triển thuật toán, viết chương trình riêng, định dạng văn bản của nó một cách chính xác. Những lời khuyên và ghi chú giúp người đọc chú ý đến những chi tiết quan trọng, tránh cạm bẫy và viết chương trình hiệu quả hơn. Sách được biên soạn bởi các giáo viên khoa học máy tính của trường có kinh nghiệm dày dặn nhiều năm công việc thực tế. Phiên bản thứ hai bổ sung thêm một số chương mới về bản ghi, biến động, ngăn xếp, hàng đợi và danh sách. Cũng được chiếu sáng là một trong những chủ đề khó trong lập trình - xây dựng thuật toán đệ quy.

Định dạng: pdf(2011, tái bản lần thứ 2, 320 trang)

Kích cỡ: 14,5MB

Xem, tải về: docs.google.com

Nội dung
Lời nói đầu của ấn bản thứ hai 15
Giới thiệu 16
Từ nhà xuất bản 16
CHỦ ĐỀ 1. Cách viết một chương trình đơn giản trên Pascal 17
Bài học 1.1. Chúng tôi hiển thị thông báo trên màn hình hiển thị 18
Bài học 1.2. Cách cài đặt chương trình này trên máy tính 19
Các giai đoạn tạo chương trình máy tính 20
Bài học 1.3. Định dạng văn bản trên màn hình 28
Kết luận 34
Câu hỏi kiểm tra 34
CHỦ ĐỀ 2. Cách kết hợp dữ liệu số vào công việc của bạn 36
Bài học 2.1. Hãy bắt đầu với một điều đơn giản: số nguyên 37
Khái niệm biến 38
Nhập số nguyên. Toán tử gán. Hiển thị 38
Các phép toán với kiểu Số nguyên 40
Các hàm tiêu chuẩn của loại Số nguyên 42
Cách biểu diễn các biến kiểu số nguyên
trong bộ nhớ máy tính 43
Bài học 2.2. Hãy để nó hoạt động số thực 45
Sự miêu tả loại thực dữ liệu (thực) 45
Các dạng ghi biến thực 46
Hoạt động vật liệu 46
Hàm tiêu chuẩn loại thực 47
Viết biểu thức toán học 48
Các biến kiểu thực được biểu diễn như thế nào trong bộ nhớ máy tính 50
Bài học 2.3. Cách kết hợp biến số nguyên và biến kiểu thực 51
Chuyển đổi loại 51
Quy tắc ưu tiên trong các hành động được thực hiện 52
Hành động trên dữ liệu các loại khác nhau 53
Bài học 2.4. Dữ liệu đầu vào và đầu ra 56
Nhập biến từ bàn phím 57
Màn hình đẹp 57
Đặt giá trị biến bằng cảm biến Số ngẫu nhiên 61
Bài học 2.5. Tại sao cần có hằng số trong một chương trình? 62
Kết luận 64
Câu hỏi kiểm tra 64
CHỦ ĐỀ 3. Học cách làm việc với ký hiệu 66
Bài học 3.1. Máy tính hiểu các ký hiệu như thế nào 67
Mã số bảng ASCII 67
Mô tả loại Char và tính năng tiêu chuẩn 68
Bài học 3.2. Loại Char - loại thứ tự! 70
Kết luận 71
Câu hỏi kiểm tra 72
CHỦ ĐỀ 4. George Boole và logic của ông 73
Bài học 4.1. Cần thêm một loại nữa - hợp lý! 74
Kiểu dữ liệu Boolean 75
Các phép toán quan hệ 75
Boolean I/O 76
Bài học 4.2. Các phép toán logic (Boolean) 76
Phép nhân logic (kết hợp) 76
Phép cộng logic (phân tách) 77
Độc quyền HOẶC (phép cộng modulo 2) 77
Phủ định logic (đảo ngược) 78
Sử dụng các phép toán logic trong chương trình 78
Ưu tiên hoạt động logic 80
Kết luận 81
Câu hỏi kiểm tra 81
CHỦ ĐỀ 5. Phân tích thực trạng và trình tự thực hiện lệnh 82
Bài học 5.1. Kiểm tra điều kiện và phân nhánh trong Thuật toán 83
Dạng đầy đủ và một phần của câu lệnh if 84
Thiết kế chương trình 86
Bài học 5.2. Khối toán tử 88
Bài học 5.3. Phân nhánh theo một số điều kiện (báo cáo trường hợp) 92
Kết luận 96
Câu hỏi kiểm tra 96
CHỦ ĐỀ 6. Hành động lặp đi lặp lại 98
Bài học 6.1. Nhà điều hành vòng lặp for 99
cho tuyên bố với mức tăng tuần tự của bộ đếm 100 Toán tử với mức giảm tuần tự của bộ đếm 101
Bài học 6.2. Sử dụng vòng lặp với bộ đếm 101
Chu kỳ trong một chu kỳ 102
Dấu vết 103
Tính tổng của chuỗi 105
Kết luận 108
Câu hỏi kiểm tra 109
CHỦ ĐỀ 7. Vòng lặp với điều kiện 110
Bài học 7.1. Vòng lặp với điều kiện trước 111
Mô tả vòng lặp với điều kiện tiên quyết 111
Tính gần đúng tổng của một chuỗi vô hạn 112
Nâng một số lên lũy thừa số nguyên đã chỉ định 115
Bài học 7.2. Vòng lặp với hậu điều kiện 119
Mô tả vòng lặp với điều kiện sau 120
Sử dụng vòng lặp lặp lại và while 120
Tính tương đối của sự lựa chọn câu lệnh while và lặp lại 123
Kết luận 129
Câu hỏi kiểm tra 129
CHỦ ĐỀ 8. Mảng - kiểu dữ liệu có cấu trúc 131
Bài học 8.1. Lưu trữ dữ liệu tương tự dưới dạng bảng 132
Các bước cơ bản làm việc với mảng 133
Mô tả mảng trong Pascal 133
Điền số ngẫu nhiên vào mảng và hiển thị mảng đó ra màn hình 134
Sự sáng tạo loại tùy chỉnh dữ liệu 137
Tìm kiếm phần tử tối đa mảng 140
Tính tổng và số phần tử mảng với thuộc tính cho trước 144
Bài học 8.2. Tìm kiếm trong mảng 148
Xác định sự hiện diện của phần tử âm trong mảng bằng cờ 148
Xác định sự có mặt của các phần tử âm trong mảng bằng cách tính số 149 của chúng
Tìm số phần tử âm của mảng 150
Bài học 8.3. Mảng hai chiều 154
Kết luận 156
Câu hỏi kiểm tra 157
CHỦ ĐỀ 9. Các thuật toán phụ trợ. Thủ tục và chức năng. Lập trình có cấu trúc 1 58
Bài học 9.1. Thiết kế thuật toán từ trên xuống 159
Vấn đề thực tế khi sử dụng thuật toán phụ trợ 160
Bài học 9.2. Ví dụ làm việc với hàm: Tìm phần tử lớn nhất 167
Kết luận 168
Câu hỏi kiểm tra 169
CHỦ ĐỀ 10. Cách làm việc với chuỗi ký tự 170
Bài học 10.1. Làm việc với chuỗi ký tự: gõ String 171
Mô tả biến chuỗi 171
Các thao tác cơ bản với 172 chuỗi
Bài học 10.2. Một số hàm và thủ tục Pascal làm việc với chuỗi 173
Sử dụng quy trình chuỗi thư viện 173
Kết luận 175
Câu hỏi kiểm tra 175
CHỦ ĐỀ 11. Thủ tục và hàm với tham số 176
Bài học 11.1. Ví dụ đơn giản sử dụng chương trình con với tham số 177
Các thủ tục đơn giản nhất với tham số 177
Các tham số hình thức và thực tế 179
Các hàm đơn giản nhất với tham số 179
Bài học 11.2. Các phương thức truyền tham số 181
Kết luận 183
Câu hỏi kiểm tra 184
CHỦ ĐỀ 12. Tệp: lưu kết quả công việc cho lần sau 185
Bài học 12.1. Cách làm việc với file văn bản 186
Mở file để đọc 186
Mở file để viết 188
Bài học 12.2. Sự bảo tồn mảng hai chiều số trong tập tin văn bản 192
Lưu dữ liệu số vào tệp văn bản 192
Lưu mảng số vào file văn bản 192
Thêm thông tin vào cuối file 196
Kết luận 197
Câu hỏi kiểm tra 197
Chủ đề 13. Phương thức hoạt động đồ họa. Mô-đun đồ thị 199
Bài học 13.1. Bật chế độ đồ họa hoạt động 200
Các tính năng làm việc với đồ họa 200
Chuyển sang chế độ đồ họa của bộ điều hợp video 201
Bài học 13.2. Chúng tôi tiếp tục khám phá các khả năng của mô-đun Graph 203
Vẽ đường bằng mô-đun Graph 203
Vẽ vòng tròn bằng mô-đun Graph 205
Kết luận 206
Câu hỏi kiểm tra 207
Chủ đề 14. Các toán tử làm thay đổi dòng chảy tự nhiên của chương trình 208
Bài học 14.1. Sử dụng toán tử nhảy vô điều kiện goto 210
Bài học 14.2. Các câu lệnh thay đổi luồng của vòng lặp 213
câu lệnh ngắt 213
Nhà điều hành tiếp tục 214
Kết luận 215
Câu hỏi kiểm tra 215
Chủ đề 15. Phân nhóm dữ liệu: bản ghi 216
Bài học 15.1. Mô tả bản ghi kiểu dữ liệu 218
Bài học 15.2. Khi nào và làm thế nào để sử dụng 220 bản ghi một cách khôn ngoan
Sự sáng tạo loại riêng dữ liệu - bản ghi 220
Mảng bản ghi 220
Tham gia nhà điều hành với 221
Ví dụ lựa chọn cấu trúc dữ liệu 223
Hồ sơ hồ sơ 224
Kết luận 225
Câu hỏi và bài tập kiểm tra 225
Chủ đề 16. Biến động 226
Bài học 16.1. Cấp phát bộ nhớ 227
Bài học 16.2. Địa chỉ 229
Bài học 16.3. Dấu hiệu 230
Con trỏ tới các biến riêng lẻ 230
Con trỏ tới các khối biến 232
Bài học 16.4. Cấp phát bộ nhớ động 232
Mới và Vứt bỏ 233
Cấp phát bộ nhớ động cho mảng 235
GetMem và FreeMem 236
Truy cập các phần tử của mảng được tạo động 237
Mảng có độ dài thay đổi 238
Kết luận 241
Câu hỏi kiểm tra 242
Chủ đề 17. Cấu trúc động dữ liệu. Ngăn xếp 244
Bài học 17.1. Hãy mô tả kiểu dữ liệu 245
Bài học 17.2. Tạo ngăn xếp và các thao tác ngăn xếp cơ bản 247
Thêm một phần tử vào ngăn xếp (Push) 248
Lấy một phần tử ra khỏi ngăn xếp (Pop) 251
Kiểm tra ngăn xếp xem có trống không (StacklsEmpty) 252
Bài học 17.3. Sử dụng ngăn xếp 253
Lập trình ngăn xếp bằng mảng 255
Kết luận 256
Câu hỏi và bài tập kiểm tra 256
Chủ đề 18. Cấu trúc dữ liệu động. Hàng đợi 258
Bài học 18.1. Nguyên lý hoạt động và mô tả kiểu dữ liệu 259
Bài học 18.2. Hoạt động hàng đợi cơ bản 261
Thêm một phần tử vào hàng đợi (EnQueue) 261
Xóa một phần tử khỏi hàng đợi (DeQueue) 263
Kiểm tra hàng đợi trống (QueuelsEmpty) 264
Bài học 18.3. Sử dụng hàng đợi 264
Lập trình hàng đợi bằng mảng 267
Kết luận 269
Câu hỏi kiểm tra 269
Chủ đề 19. Cấu trúc dữ liệu động. Danh sách một chiều 270
Bài học 19.1. Mô tả kiểu dữ liệu và nguyên lý hoạt động 271
Bài học 19.2. Các thao tác cơ bản với danh sách một chiều 272
Xem tuần tự tất cả các thành phần danh sách 272
Đặt một phần tử vào danh sách 273
Xóa một phần tử khỏi danh sách 275
Bài học 19.3. Xử lý danh sách 276
Tính khả thi của việc sử dụng danh sách một chiều 278
Kết luận 280
Câu hỏi kiểm tra 280
Chủ đề 20. Đệ quy 281
Bài học 20.1. Mô tả nguyên lý 282
Bài học 20.2. Tháp Hà Nội 285
Bài học 20.3. Cấu trúc của chương trình con tuần hoàn 287
Bài học 20.4. Ví dụ về giải pháp lặp lại cho vấn đề không lặp lại 288
Bài học 20.5. Ví dụ về giải pháp tái diễn cho vấn đề tái diễn 289
Kết luận 291
Câu hỏi kiểm tra 291
Phụ lục 1. Các thành phần sơ đồ khối 292
Phụ lục 2. Bài toán 295
Số nguyên. Sự miêu tả. Đi vào. Phần kết luận. Hoạt động 296
Thực tế. Sự miêu tả. Đi vào. Phần kết luận. Hoạt động và chức năng 296
Thực tế. Viết và đánh giá biểu thức 297
Char. Sự miêu tả. Đi vào. Phần kết luận. Chức năng 298
Boolean. Viết biểu thức 298
Boolean. Đánh giá biểu thức 299
Nếu như. So sánh đơn giản. Tối thiểu/tối đa/trung bình 300
Nếu như. Phương trình và bất đẳng thức với 300 tham số
Vì. Chuyển 300
Vì. Tính toán với Bộ đếm vòng lặp 301
Vì. Quá mức cần thiết với sự so sánh 302
Trong khi-Lặp lại. Tìm kiếm 302
Trong khi-Lặp lại. Hàng 303
Nghệ thuật đồ họa. Thẳng 303
Nghệ thuật đồ họa. Vòng kết nối 304
Mảng. Nạp, rút ​​tiền, số tiền/số lượng 305
Mảng. Hoán vị 305
Mảng. Tìm kiếm 306
Mảng. Kiểm tra 307
Mảng. Tối đa 307
Chương trình con không có tham số 307
Dòng. Phần I 308
Dòng. Phần II 309
Các chương trình con có tham số. Phần I 309
Các chương trình con có tham số. Phần II 310
Các chương trình con có tham số. Phần III 310
Tệp 311
Danh sách một chiều 312
Đệ quy 313

Sau khi phát hành ấn bản đầu tiên của cuốn sách, các đồng nghiệp và sinh viên của chúng tôi bắt đầu liên hệ với chúng tôi nhiều hơn với yêu cầu bổ sung thông tin cho ấn bản đầu tiên về các cấu trúc dữ liệu được nghiên cứu và yêu cầu nhiều nhất. Trong ấn bản này, chúng tôi đã bổ sung thêm một số chương về bản ghi, biến động, ngăn xếp, hàng đợi và danh sách. Chúng tôi cũng cố gắng đề cập đến một trong những chủ đề khó nhất trong lập trình - xây dựng thuật toán đệ quy.
Trong ứng dụng, chúng tôi quyết định từ bỏ bộ sưu tập bài tập về nhà với nhiều lựa chọn về một số chủ đề. Thay vào đó, chúng tôi đưa một số lượng lớn vào ứng dụng bài tập chuyên đề, được tổ chức theo khối 5-8 nhiệm vụ. Các nhiệm vụ trong mỗi khối được sắp xếp từ đơn giản đến phức tạp. Chúng tôi sử dụng chúng trong các bài học để tổ chức. lớp học thực hành khi củng cố kiến ​​thức lý thuyết (một bài - một khối).
Các tác giả bày tỏ lòng biết ơn sâu sắc nhất tới một trong những sinh viên xuất sắc nhất của họ, Phó Giáo sư Bộ môn An ninh hệ thông thông tin SPbSUAP, Tiến sĩ. Evgeny Mikhailovich Linsky đã ủng hộ, nhiều người lời khuyên hữu ích và giúp đỡ rất nhiều trong quá trình thực hiện ấn bản thứ hai của cuốn sách.

(dành cho lớp 6-7)

Đôi khi chúng ta nghe học sinh nói rằng Pascal nhàm chán và không thú vị. Trên thực tế, ngôn ngữ Pascal là một loại “bảng cửu chương” dành cho tất cả những ai muốn “nếm thử” lập trình. Dễ dàng và dễ hiểu, nó trở thành nền tảng để thành thạo tất cả các ngôn ngữ lập trình khác.

Ở trường trình độ tin học Comp-As ở Minsk chúng tôi dạy Pascal cho trẻ em. Chúng tôi đã phát triển dự án “Bài học video Pascal miễn phí” để giúp học sinh thấy rằng lập trình rất thú vị và hấp dẫn!

Video hướng dẫn Pascal miễn phí cung cấp những gì?

Các bài học video miễn phí dựa trên chương trình giảng dạy của trường. Ở đây bạn sẽ tìm thấy nhiều vấn đề đã được giải quyết và chuẩn bị bài tập về nhà của bạn một cách dễ dàng.

Bạn có thể học được gì từ lớp học mặt đối mặtỞ trường?

TRÊN Các khóa học máy tínhĐối với học sinh, chúng tôi nghiên cứu sâu hơn về Pascal và các ngôn ngữ lập trình khác: PHP, C, C++ và Java. Bạn có muốn tiếp tục con đường học vấn của mình, trở thành chuyên gia lập trình và trong tương lai có được một công việc đầy hứa hẹn trong lĩnh vực CNTT không? Hãy gọi cho chúng tôi và đến tham gia các khóa học tại Trường Comp-As!

Làm thế nào để học các bài học video miễn phí?

Không thể nói được một ngôn ngữ nếu bạn chỉ học nó từ sách giáo khoa. Tương tự như vậy, bạn không thể trở thành lập trình viên nếu không viết một chương trình nào. Đó là lý do tại sao chúng tôi khuyến nghị, sau khi xem từng video bài học miễn phí, bạn hãy ngay lập tức thực hành - và kiểm tra hoạt động của các chương trình trên máy tính của mình.

lớp 6

Lớp 7

Chúng tôi mời bạn vào cuộc hành trình xuyên qua đất nước lập trình!
“Lập trình có thể được so sánh với một đất nước rộng lớn, đầy những điều kỳ diệu, bất ngờ, những khám phá tuyệt vời và thậm chí cả… nguy hiểm! Một người dùng mới làm quen hoặc một “game thủ” có kinh nghiệm - người chiến thắng quái vật ảo - không phải lúc nào cũng biết rằng, chỉ cần nắm vững những điều cơ bản về lập trình, anh ta có thể khiến máy tính vẽ ra những bức tranh chỉ kém một chút về vẻ đẹp so với những kiệt tác của trò chơi . đô họa may tinh hoặc chơi một giai điệu trong khi nháy mắt bằng đèn báo trên bàn phím.

Chà, đó không phải là một viễn cảnh tuyệt vời - giải pháp cho một vấn đề lập trình phức tạp, một giải pháp mà bạn và không ai khác có thể tìm thấy, và giờ đây chương trình của bạn đã được hàng trăm, hàng nghìn người dùng “tải xuống” qua Internet, mang tên của người tạo ra nó với nhau!

Vâng, còn những nguy hiểm thì sao? Cũng có những nguy hiểm. Lịch sử lập trình được đánh dấu bằng sai lầm của người lập trình viên đã tạo ra chương trình điều khiển cho tàu thăm dò liên hành tinh của Mỹ và “điền vào” một dấu chấm thay vì dấu phẩy. Dấu phẩy bị mất đuôi và tàu thăm dò liên hành tinh đã “bỏ lỡ” Sao Kim vài triệu km. Điều gì sẽ xảy ra nếu điều gì đó tương tự xảy ra trong một chương trình điều khiển chuyến bay của tên lửa chiến đấu chẳng hạn?”