Cách mở trang mỗi trong Pascal

Giải Bài Tập Tin Học 8 – Bài 2: Làm quen với chương trình và ngôn ngữ lập trình giúp HS giải bài tập, giúp cho các em hình thành và phát triển năng lực sử dụng công nghệ thông tin và truyền thông:

  • Sách Giáo Khoa Tin Học Lớp 8

  • Sách Giáo Viên Tin Học Lớp 8

Trả lời:

– Các thành phần cơ bản của ngôn ngữ lập trình bao gồm bảng chữ cái, các quy tắc và ngữ nghĩa, trong đó:

   1. Bảng chữ cái: Các ngôn ngữ lập trình thường gồm các chữ cái tiếng Anh và một số kí hiệu khác như dấu phép toán (+,-,*,/,…), dấu đóng, mở ngoặc, dấu nháy… Nói chung, hầu hết các kí tự có trên bàn phím máy tính đều có mặt trong bảng chữ cái của mọi ngôn ngữ lập trình.

   2. Quy tắc: Mỗi câu lệnh trong chương trình gồm các từ và các kí hiệu được viết theo một quy tắc nhất định. Các quy tắc này quy định cách viết các từ và thứ tự của chúng. Chẳng hạn, các từ được cách nhau bởi một hoặc nhiều dấu cách, một số câu lệnh được kết thúc bằng dấu chấm phẩy, … Mỗi ngôn ngữ lập trình khác nhau thì sẽ có một quy tắc riêng của nó. Nếu câu lệnh bị viết sai quy tắc, chương trình sẽ nhận biết và thông báo lỗi.

   3. Ngữ nghĩa: Mỗi câu lệnh đều có một ý nghĩa riêng xác định các thao tác mà máy tính cần thực hiện.

Trả lời:

– Từ khóa: là những từ dành riêng cho ngôn ngữ lập trình, không được dùng các từ khóa này cho bất kì mục đích nào khác ngoài mục đích sử dụng do ngôn ngữ lập trình quy định.

– Tên: Do người lập trình tự đặt ra, nhưng phải tuân thủ theo 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. Tuy có thể đặt tùy ý tên, nhưng để dễ sử dụng người ta thường đặt sao cho ngắn gọn nhất, dễ nhớ và dễ hiểu nhất.

– Cách đặt tên trong chương trình: Tùy từng ngôn ngữ lập trình khác nhau sẽ có những yêu cầu khác nhau về cách đặt tên, tuy nhiên hầu hết cần phải thỏa mãn những điều sau:

    1. Tên khác nhau đại diện cho với những đại lượng khác nhau.

    2. Tên không được trùng với những từ khóa.

A) a;

B) Tamgiac;

C) 8a;

D)Tam giac;

E) beginprogram;

F) end;

G) b1;

H) abc;

Trả lời:

– Các tên hợp lệ là: A, B, G, H.

– Các tên không hợp lệ:

    C: do có số ở đầu.

    D: do có dấu cách.

    E, F: Do sử dụng từ khóa.

Trả lời:

– Cấu trúc chung mọi chương trình bao gồm:

   1. Phần khai báo thường gồm các câu lệnh:

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

       + Khai báo các thư viện và một số khai báo khác.

2. Phần thân của chương trình gồm các câu lệnh mà máy tính cần thực hiện. Đây là phần bắt buộc phải có.

    Chú ý: Phần khai báo có thể có hoặc không. Tuy nhiên, nếu có phần khai báo thì nó phải được đặt trước phần thân chương trình.

Chương trình 1 begin end. Chương trình 2 Begin Program CT_thu; Writeln(‘Chao cac ban’); end.

Trả lời:

– Chương trình 1 mặc dù thiếu phần khai báo nhưng phần thân của chương trình vẫn đủ và đúng cú pháp câu lệnh, có begin bắt đầu và end kết thúc có dấu “.” ở cuối. Nên chương trình 1 hợp lệ.

– Chương trình 2 do ở trong phần thân chương trình chứa phần khai báo nên chương trình 2 không hợp lệ.

1. Các ưu điểm của ngôn ngữ lập trình Pascal.

2. Khái niệm ngôn ngữ lập trình hướng cấu trúc và tên của một vài ngôn ngữ lập trình loại này.

Trả lời:

– Lúc đầu, mục đích thiết kế Pascal là để phục vụ cho việc giảng dạy lập trình có cấu trúc, do đó Pascal có các đặc điểm sau:

    + Ngữ pháp, ngữ nghĩa đơn giản và có tính logic.

    + Cấu trúc chương trình rõ ràng, dễ hiểu.

   + Dễ sửa chữa và cái tiến.

   + Trên hết, pascal dễ học và dễ đọc nên được không chỉ nhiều trường mà còn được nhiều quốc gia chọn để dạy học trong chương trình học phổ thông.

– Ngôn ngữ lập trình hướng cấu trúc: Trong một chương trình máy tính, các khối chức năng có thể được thực hiện không chỉ theo trình tự mà còn có thể theo các tình huống và lặp lại nhiều lần. Phương pháp lập trình cấu trúc được dựa trên các mô hình toán học của Bohm và Guiseppe, theo đó, một chương trình máy tính có thể được viết dựa trên ba cấu trúc: trình tự, quyết định và vòng lặp:

   + Trình tự nghĩa là các câu lệnh được thực hiện theo trình tự nhất định: trên xuống.

   + Quyết định là sự quy định sẽ thực hiện chương trình như thế nào phụ thuộc vào sự thoả mãn các điều kiện nhất định.

   + Vòng lặp thể hiện sự thực hiện có tính lặp một số đoạn lệnh của chương trình khi các điều kiện nào đó vẫn được thỏa mãn.

– Thông qua các cấu trúc trên, mã chương trình trở nên sáng sủa và dễ đọc.

– Một số ngôn ngữ lập trình hướng cấu trúc: C, Foxpro,…

a. Phép toán
*/ Phép toán trên kiểu số Phép toán Ý nghĩa Ví dụ ------------------------------------------------------ - Lấy đối số Đối số của 2 là -2 + Cộng 10 + 9 -> 19 - Trừ 10 - 9 -> 1 * Nhân 10 * 9 -> 90 / Chia 10 / 4 -> 2.5 Div Chia lấy phần nguyên 10 div 3 -> 3 Mod Chia lấy phần dư 10 mod 3 -> 1 (Div và Mod chỉ áp dụng cho kiểu nguyên).

*/ Một số hàm số, thủ tục

Hàm Ý nghĩa Ví dụ ------------------------------------------------------------ ABS(x) Trị tuyệt đối x Abs(-2) -> 2 SQR(x) Bình phương x Sqr(2) -> 4 SQRT(x) Căn bậc hai x Sqrt(9) -> 3 EXP(x) Hàm e^x Exp(3) -> e^3 LN(x) Hàm ln(x) Ln(2) ->ln2 SIN(x) Hàm lượng giác Sin(PI) -> 0 COS(x) Hàm lượng giác Cos(PI) -> 1 ARCTAN(x) Hàm lượng giác Arctan(0) ->0 INC(x) Tăng x lên 1 đơn vị <=> x:=x+1; DEC(x) Giảm x xuống 1 đơn vị <=> x:=x-1; SUCC(x) Cho giá trị tiếp theo của x succ(5) cho KQ 6 PRED(x) Cho giá trị trước đó của x PRED(5) cho KQ 4 ROUND(x) Làm tròn lên Round(8.6) -> 9 TRUNC(x) Làm tròn xuống Trunc(8.6) -> 8 ORD(x) Lấy mã ASCII ký tự Ord(‘a’) -> 97 CHR(x) Cho ký tự có mã ASCII Chr(65) -> ‘A’ ODD(x) Kiểm chẳn lẽ Odd(5) -> True

*/ Một số phép toán logic
AND, OR, XOR, NOT.

X Y X OR Y X AND Y X XOR Y NOT X --------------------------------------------------------------------- FALSE FALSE FALSE FALSE FALSE TRUE FALSE TRUE TRUE FALSE TRUE TRUE TRUE FALSE TRUE FALSE TRUE FALSE TRUE TRUE TRUE TRUE FALSE FALSE

Lưu ý:

– Các phép toán so sánh (<> khác, = bằng, > lớn hơn, < nhỏ hơn >= lớn hơn hoặc bằng, <= nhỏ hơn hoặc bằng) luôn trả về kiểu Booland.
– Các phép toán logic còn áp dụng trên kiểu số nguyên, trên cớ sở biểu diễn số nhị phân của các số nguyên.

b. Biểu thức – Biểu thức là một phần của câu lệnh bao gồm hằng, biến, hàm liên kết với nhau bằng các phép toán và các dấu ngoặc đơn. Ví dụ: (-b+sqrt(delta))/(2*a)

– Thứ tự thực hiện các phép toán trong biểu thức:

1. Biểu thức trong ngoặc đơn 2. Phép gọi hàm 3. Not, – 4. *, /, DIV, MOD AND 5. +, -, OR, XOR

6. =, <>, <=,>=,<,>,IN

– Quy ước thứ tự ưu tiên

+ Qui tắc 1 : Các phép toán nào có ưu tiên cao hơn sẽ được tính trước.

+ Qui tắc 2 : Trong các phép toán có cùng thứ tự ưu

tiên thì sự tính toán sẽ được thực hiện từ trái sang phải.

+ Qui tắc 3 : Phần trong ngoặc từ trong ra ngoài


được tính toán để trở thành một giá trị.

c. Câu lệnh

– Câu lệnh xác định một công việc mà chương trình phải thực hiện để xử lý các dữ liệu đã được mô tả và khai báo. Có 2 loại câu lệnh: +Câu lệnh đơn: Là câu lệnh không chứa các câu lệnh khác. +Câu lệnh có cấu trúc: gồm các câu lệnh ghép, câu lệnh rẽ nhánh câu lệnh điều khiển lựa chọn, câu lệnh lặp,…

Lưu ý: Câu lệnh ghép là một nhóm các câu lệnh đơn cần thực hiện liên tiếp và được đặt trong cặp từ khóa BEGIN và END; (END kèm theo dấu chấm phẩy).

*/ Một số câu lệnh đơn:
– Lệnh gán:

Cú pháp: :=; Ví dụ: a:=5+4/3;

b:=c+d/e;

Lưu ý: + Khi một giá trị được gán cho biến, nó sẽ thay thế giá trị trước đó của biến đã lưu.

+ Biểu thức ở bên phải và bên trái lệnh gán phải có cùng kiểu dữ liệu.

– Lệnh đọc dữ liệu

Lệnh đọc dữ liệu là lệnh gán giá trị cho biến khi ta nhập từ bàn phím. Có 3 mẫu viết • Read(Biến1, Biến2,…, BiếnN); {có thể dùng dấu cách hoặc phím enter để lần lượt nhập dữ liệu cho các biến} • Readln(Biến1, Biến2,…, BiếnN); {phải dùng phím enter để lần lượt nhập dữ liệ cho các biến} • Readln; {Bắt máy dừng lại chờ nhấp phím enter thường để làm dừng màn hình cho ta xem kết quả}

Lưu ý: Chúng ta không nên dùng lệnh read để nhập dữ liệu cho các biên mà nên nhập bằng lệnh readln vì khi nhập dữ liệu cho các biến bằng lệnh read có thể sẽ dẫn đến tình trạng trôi lệnh (tức là một số lệnh không được thực hiện).

– Lệnh viết dữ liệu ra màn hình:
Có 3 mẫu viết:

• Write(Value1,Value2,…,ValueN); { viết các mục ra, con trỏ nằm ở cuối dòng} • Writeln(Value1,Value2,…,ValueN); { viết các mục ra, con trỏ nằm ở đầu dòng tiếp theo} • Writeln; { chỉ đưa con trỏ xuống dòng tiếp theo} trong đó: các value là các biến, hằng, giá trị hay chuỗi ký tự (phải đặt trong cặp nháy đơn).

{riêng dấu ‘ ta xuất bằng cách ghi 2 dấu ”}

Viết có quy cách: – Đối với kiểu số thực: :<độ rộng>:; Ví dụ: write(a:4:5); – Đối với các kiểu dữ liệu khác: :<độ rộng>; Ví dụ: write(b:4);{với b là số nguyên} Lưu ý: Khi số chữ số của biến nhiều hơn với độ rộng thì số đó sẽ được xuất ra toàn bộ. Ví dụ: b có giá trị là 12345. Khi ta viết lệnh write(b:4);

12345

– Một số lệnh khác • Clrscr; Lệnh xóa màn hình và đưa con trỏ về góc trên bên trái • Gotoxy(x,y); đặt con trỏ tới tọa độ (x,y) x: cột từ 1->80; y: hàng từ 1->25