Tin[Lớp 11] Lập trình Pascal

Hoàng Thị Nhung

Học sinh chăm học
Thành viên
16 Tháng tám 2017
544
223
76
22
Vĩnh Phúc
Trường THPT Tam Dương I
[TẶNG BẠN] TRỌN BỘ Bí kíp học tốt 08 môn
Chắc suất Đại học top - Giữ chỗ ngay!!

ĐĂNG BÀI NGAY để cùng trao đổi với các thành viên siêu nhiệt tình & dễ thương trên diễn đàn.

Em đang học lớp 10 nhưng em thi vượt cấp học chương trình tin học 11 và lớp 12 liên quan tới lập trình ngôn ngữ Pascal. Mọi người có thể chỉ cho e những cái cần nắm chắc không ạ, bởi hiện tại pascal em học qua từ lớp 8 rồi ,không có nhớ trong khi đó đầu tháng 11 em thi tin lớp 11 rồi ạ, cuối tháng 11 em thi tin lớp 12.
Cảm ơn mn...
 

Lê Văn Đông

Học sinh tiến bộ
Thành viên
17 Tháng mười 2015
1,422
1,477
244
TP Hồ Chí Minh
ᴳᵒᵈ乡bőýfŕíéńd
Em đang học lớp 10 nhưng em thi vượt cấp học chương trình tin học 11 và lớp 12 liên quan tới lập trình ngôn ngữ Pascal. Mọi người có thể chỉ cho e những cái cần nắm chắc không ạ, bởi hiện tại pascal em học qua từ lớp 8 rồi ,không có nhớ trong khi đó đầu tháng 11 em thi tin lớp 11 rồi ạ, cuối tháng 11 em thi tin lớp 12.
Cảm ơn mn...
đọc xong vẫn không hiểu cậu hỏi cái gì, nêu rõ hơn ra đi
 

Lê Văn Đông

Học sinh tiến bộ
Thành viên
17 Tháng mười 2015
1,422
1,477
244
TP Hồ Chí Minh
ᴳᵒᵈ乡bőýfŕíéńd

Lann Anhh

Học sinh mới
Thành viên
19 Tháng chín 2017
15
10
6
Vĩnh Phúc
* Bộ chữ viết - Biểu thức- Câu lệnh - Từ khóa
a. Bộ chữ viết
Bộ chữ viết trong Pascal gồm:
+ 26 chữ la tinh lớn: A, B, C,…Z
+ 26 chữ la tinh nhỏ: a, b, c,…z
+ Dấu gạch dưới: _
5

+ Bộ chữ số thập phân: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9
+ Ký hiệu toán học: +, -, *, / ,< >, ( ),..
+ Ký tự đặc biệt: @, #, !, $, %,…
+ Dấu khoảng trắng
b. Biểu thức (expression) là công thức tính toán mà trong đó bao gồm các
phép toán, các hằng, các biến, các hàm và các dấu ngoặc đơn.
Trong một biểu thức, thứ tự ưu tiên của các phép toán được liệt kê theo thứ tự sau:
+ Lời gọi hàm.
+ Dấu ngoặc ()
+ Phép toán một ngôi (NOT, -).
+ Phép toán *, /, DIV, MOD, AND.
+ Phép toán +, -, OR, XOR
+ Phép toán so sánh =, <, >, <=, >=, <>, IN
c. Câu lệnh
+ Câu lệnh đơn giản:
Câu lệnh gán :)=): :=;
Lời gọi hàm, thủ tục.
+ Câu lệnh có cấu trúc
Câu lệnh ghép: BEGIN ... END;
Các cấu trúc điều khiển:
IF.., CASE..., FOR..., REPEAT..., WHILE...
+ Các lệnh xuất nhập dữ liệu
Lệnh xuất dữ liệu
Để xuất dữ liệu ra màn hình, ta sử dụng ba dạng sau:
(1)

WRITE( [, ,...]);

(2)

WRITELN( [, ,...]);

(3)

WRITELN;

Nhập dữ liệu
Để nhập dữ liệu từ bàn phím vào các biến có kiểu dữ liệu chuẩn (trừ các
biến kiểu BOOLEAN), ta sử dụng cú pháp sau đây:
READLN(, ,..., );
d. Từ khóa
6

Là các từ riêng của Pascal, có ngữ nghĩa đã được xác định, không được dùng
nó vào các việc khác hoặc đặt tên mới trùng với các từ khóa: Array, Begin, Const,
Div, Do, Else, End, For, If, Mod, Program, String, Then, To,Var, While...
- Từ khóa chung:
PROGRAM, BEGIN, END
- Từ khóa để khai báo: biến, hằng, mảng, xâu kí tự:
VAR, CONST, ARRAY, STRING
- Từ khóa của lệnh lựa chọn: Câu lệnh điều kiện
IF ... THEN ... ELSE
- Từ khóa của lệnh lặp với số lần biết trước
FOR... TO... DO (đi từ giá trị nhỏ đến giá trị lớn)
FOR... DOWNTO... DO (đi từ giá trị lớn đến giá trị bé)
- Từ khóa của lệnh lặp với số lần chưa biết trước
WHILE... DO
- Từ khóa toán tử:
DIV: Chia lấy phần nguyên
MOD: Chia lấy phần dư
- Lệnh dịch chương trình: ALT + F9
- Lệnh chạy chương trình: CTRL +F9
- Để thay đổi vị trí lưu kết quả biên dịch trong bộ nhớ hay tạo tệp chạy trực tiếp ta
dùng lệnh: Destination trong bảng chọn Complite.
3.2. Giới thiệu chung về các bước viết một chương của ngôn ngữ lập
trình Pascal
Phương pháp cơ bản giải các bài toán trong tin học không chỉ dùng để giải
một bài toán cụ thể mà còn giải một lớp các bài toán cụ thể thuộc cùng một loại.
Bài toán được cấu tạo từ các yếu tố cơ bản:
Thông tin vào
Xử lý thông tin
Thông tin ra.
(Output)
(Input)
(Process)
Phương pháp tổng quát để giải một bài toán bằng máy vi tính dựa trên ngôn
ngữ Pascal thì cần thực hiện được các bước cụ thể như sau:
Bước 1. Xác định các bài toán:
Là xác định xem ta phải giải quyết vấn đề gì?, với giả thiết nào đã cho và lời
giải cần phải đạt những yêu cầu gì. Khác với bài toán thuần tuý toán học chỉ cần
xác định rõ giả thiết và kết luận chứ không cần xác định yêu cầu về lời giải, vì thế
7

từ phát biểu của bài toán, các em phải xác định được đâu là thông tin đã cho
(Input) và đâu là thông tin cần tìm (Output). Xác định đúng yêu cầu bài toán là rất
quan trọng bởi nó ảnh hưởng tới cách thức giải quyết và chất lượng một lời giải.
Một bài toán thực tế thường cho những thông tin khá mơ hồ và hình thức, ta phải
phát biểu lại một cách chính xác và chặt chẽ để hiểu đúng bài toán.
Bước 2. Mô tả thuật toán:
Khi giải một bài toán ta cần phải định nghĩa tập hợp dữ liệu để biểu diễn tình
trạng cụ thể. Việc lựa chọn này tuỳ thuộc vào vấn đề cần giải quyết và những thao
tác sẽ tiến hành trên dữ liệu vào. Có những thuật toán chỉ thích ứng với một cách tổ
chức dữ liệu nhất định, đối với cách tổ chức dữ liệu khác thì kém hiệu quả và
không thể thực hiện được. Chính vì thế bước xây dựng cấu trúc dữ liệu không thể
tách rời bước tìm kiếm thuật toán giải quyết vấn đề. Bởi thuật toán là một hệ thống
chặt chẽ và rõ ràng các quy tắc nhằm xác định một dãy thao tác trên cấu trúc dữ
liệu sao cho: Với một bộ dữ liệu vào, sau một số hữu hạn bước thực hiện các thao
tác đã chỉ ra, ta đạt được mục tiêu đã định. Từ đó tìm cách giải bài toán và diễn tả
bằng các lệnh cần phải thực hiện.
Bước 3. Viết chương trình:
Dựa vào mô tả thuật toán ở bước 2trên, ta viết chương trình bằng một ngôn
ngữ lập trình mà các em đã học (Cụ thể là dùng ngôn ngữ lập trình Turbo Pascal để
viết chương trình)
3.3. Phân tích chi tiết nội dung cần viết chương trình:
A. XÁC ĐỊNH BÀI TOÁN
1. Khái niệm bài toán
Đối với học sinh lớp 8 chương trình học toán của các em đã biết đến các giải
phương trình bậc nhất là cao nhất. Nên việc đưa các lớp bài toán vào giải cho các
em đang còn một phần nào bị hạn chế. Nhưng bất kỳ một bài toán nào thì chúng ta
cũng đọc đề rồi xác địnhđược giả thiết và kết luận: A ® B.
Trong đó:
A là giải thiết: Điều kiện ban đầu hoặc cái đã cho, đã biết khi bắt đầu giải bài toán.
B là kết luận: Mục tiêu cần đạt được hay cái phải tìm, phải làm ra hay là
đáp án khi kết thúc bài toán .
®: Suy luận: giải pháp cần xác định hay một chuỗi các thao tác thực hiện từ A đến
B.
2. Cách giải bài toán trên máy vi tính
Cách giải bài toán trên máy cũng mang đầy đủ các tính chất của bài toán
tổng quát trên, nhưng nó lại được diễn đạt theo một ngôn ngữ khác.
A: là đưa thông tin vào (Input )
8

B: là đưa thông tin ra (Output)
®: là chương trình tạo từ các lệnh cơ bản của máy tính cho phép biến đổi từ A đến B.
B. TÌM THUẬT TOÁN
Thuật toán là một quá trình gồm một dãy hữu hạn các thao tác đơn giản
được sắp xếp theo một trình tự xác định sao cho theo đó từ Input của bài toán sẽ
tìm ra được Output của bài toán.
Một bài toán ta có 3 cách thể hiện thuật toán: Các bước xác định bằng lời,
lập sơ đồ khối, dùng một ngôn ngữ lập trình (Pascal)
Ví dụ về câu lệnh lặp với số lần biết trước. Thể hiện thuật toán với các cách:
Cách 1: Các bước xác định bằng lời:
Cho biến đếm gán bởi giá trị đầu thì thực hiện câu lệnh lần 1.
Tiếp tục tăng biến đếm lên thì thực hiện câu lệnh lần 2.
Tương tự cho đến khi biến đếm bằng giá trị cuối, thực hiện câu lệnh lần cuối
và kết thúc thuật toán.
Cách 2: Lập sơ đồ khối:

Biến đếm:=giá trị đầu

Biến đếm>=giá
trị cuối

Sai

Đúng
Lệnh cần lặp biến đếm giảm 1

Cách 3: Dùng ngôn ngữ lập trình:
For:= to do (câu lệnh);
Ví dụ về câu lệnh lặp với số lần chưa biết trước:
Thể hiện thuật toán theo các cách sau:
9

Cách1: Các bước xác định bằng lời:
Kiểm tra điều kiện của biến, nếu đúng thì thực hiện câu lệnh lần 1.
Sau khi thực hiện câu lệnh xong, tiếp tục kiểm tra điều kiện đúng thì thực
hiện câu lệnh lần 2.
Lặp đi lặp lại câu lệnh đó cho đến khi kiểm tr điều kiện thấy sai kết thúc
thuật toán.
Cách 2: Lập sơ đồ khối:

Sai
Điều kiện

Đúng
Câu lệnh

Cách 3 Dùng ngôn ngữ lập trình:
While <điều kiện> do
C. VIẾT CHƯƠNG TRÌNH
Viết chương trình (lập trình) là dùng ngôn ngữ máy vi tính cụ thể là ngôn ngữ
lập trình Turbo Pascal để diễn tả thuật toán, cấu trúc dữ liệu thành câu lệnh để máy
tính có thể thực hiện được và giải quyết đúng bài toán mà người lập trình mong muốn.
1. Kỹ năng lập trình
·

Rèn luyện được cho học sinh kỹ năng viết chương trình thành công nhờ thuật
toán bằng một ngôn ngữ lập trình. Đã gọi là kỹ năng thì chỉ có thể có được thông qua
rèn luyện tích cực. Kinh nghiệm cho thấy một thuật toán do viết chương trình vụng
về, lộn xộn thì khi chạy trên máy tính có thể cho kết quả không như mong muốn.
2. Phát triển chương trình bằng cách tinh chế từng bước
Một bài toán ta có thể đưa ra nhiều cách giải khác nhau, song là một giáo
viên thì chúng ta cần giúp học sinh viết chương trình làm sao người xem nhìn vào
có thể dễ hiểu được bài toán đó là gì? Do đó, việc tinh chỉnh các bước cho bài toán
trong máy tính là phương pháp khoa học, có hệ thống giúp ta phân tích các thuật
toán và cấu trúc dữ liệu từ đó thành một chương trình. Muốn lập trình giỏi không
phải chỉ cần nắm vững ngôn ngữ lập trình là đủ. Mà vấn đề cốt yếu là biết phương
pháp phát triển dần dần để chuyển các ý tưởng ra thành chương trình hoàn chỉnh.

10

3. Phương pháp tinh chế từng bước
Phương pháp tinh chế từng bước là một thể hiện của tư duy giải quyết vấn đề
từ trên xuống, giúp cho người lập trình có được một định hướng thể hiện trong
phong cách viết chương trình tránh việc mò mẫm, xoá đi viết lại nhiều lần. Vì thế
một chương trình bắt đầu được viết bằng lời tự nhiên (tiếng việt) thể hiện sự phân
tích tổng thể của người lập trình, được thể hiện ở từng bước sau các câu lệnh được
phân tích chi tiết hơn. Bằng những lời khác nhau, tương ứng với sự phân tích công
việc thành các việc nhỏ, chi tiết hơn, dễ hiểu và chỉnh xác hơn. Người lập trình có
thể đưa ra phương pháp tinh chỉnh từng bước, thể hiện tư duy để giải quyết những vấn
đề của bài toán từ trên xuống. Trong đó, các bước hướng về phương pháp lập trình tối
ưu, sáng sửa làm cho bài toán được giải một cách gọn gàng nhất, chính xác nhất.
D. CÁC VÍ DỤ MINH HOẠ
Trước khi để học sinh viết được một chương trình hoàn chỉnh bằng ngôn
ngữ lập trình Pascal, giáo viên cần yêu cầu học sinh cần phải nắm vững các kiến
thức cơ bản như: việc dùng từ khoá là phải dùng đúng theo qui tắc đề ra như các từ
khoá: Begin, End, Program. Nắm vững cấu trúc của một chương trình viết bằng
ngôn ngữ lập trình Turbo Pascal gồm có ba phần:
- Phần tiêu đề
- Phần khai báo
- Phần thân chương trình
(Gồm các thủ tục và các câu lệnh)
Được quy định bằng cú pháp sau:
Program.....; (Đặt tên cho chương trình)
Uses.....; (khai báo các unit sử dụng trong chương trình)
Const...; (Khai báo các hằng trong chương trình)
Type...; (Định nghĩa các kiểu biến)
Var...;(khai báo các biến sử dụng trong chương trình)
Procedure...;(Các chương trình con sử dụng trong chương trình)
Function...; (Các hàm sử dụng trong chương trình)
Cách sử dụng đúng các câu lệnh trong một chương trình Pascal, sau phần
mô tả dữ liệu là phần mô tả các câu lệnh. Các câu lệnh có nhiệm vụ xác định các
công việc mà máy tính phải thực hiện để xử lý các dữ liệu đã được mô tả và khai báo.
Câu lệnh được chia thành câu lệnh đơn giản và câu lệnh có cấu trúc.
- Câu lệnh đơn giản

11

+ Vào dữ liệu : Read, Readln
+ Ra dữ liệu : Write, Writeln
+ Lệnh gán : ":= "
- Câu lệnh có cấu trúc
+ Lệnh ghép : BEGIN .. END
+ Lệnh chọn : IF .. THEN .. ELSE
+ Lệnh lặp : FOR .. TO .. DO
WHILE .. DO
Các câu lệnh phải được ngăn cách với nhau bởi dấu chấm phẩy ( ; ) và các
câu lệnh có thể viết trên một dòng hay nhiều dòng.
Hiểu và sử dụng đúng các cách khai báo biến, khai báo hằng như:
Khai báo hằng
- Hằng là một đại lượng có giá trị không thay đổi trong suốt chương trình.
- Cú pháp:
CONST

= ;

Khai báo biến
- Biến là một đại lượng mà giá trị của nó có thể thay đổi trong quá trình thực
hiện chương trình.
- Cú pháp:
VAR [,,...] : ;
Từ đó mới hình thành cho các em kỹ năng viết chương trình bằng ngôn ngữ
lập trình thông qua việc nắm bắt các khái niệm cơ bản, quy trình viết một chương
trình hoàn chỉnh.
Một số ví dụ minh hoạ từ các bài toán đã được học trong chương trình môn
toán ở các lớp 6,7,8.
Ví dụ 1: Tính diện tích hình chữ nhật.
1. Ta cần xác định cho bài toán:
+ Input (Thông tin vào): Chiều dài là cạnh a, chiều rộng là cạnh b
+ Output (Thông tin ra): Kết quả diện tích khi đưa a, b vào
+ Các thông tin cần chế biến thông tin như:
( Ví dụ: Lần lượt đưa a, b vào cho a=3, b=4)
Áp dụng công thức tính diện tích hình chữ nhật: a*b
Kết quả in ra là 12.
12

2. Ta cần viết thuật toán của bài toán:
Bước 1: CD
a, CR b
Bước 2: s a*b và kết thúc
Ở đây chương trình bắt đầu bằng lời tiếng việt như:
CD
a, có nghĩa là gán chiều dài bằng a (hay là nhập chiều dài)
CR
b có nghĩa là gán chiều rộng bằng a (hay là nhập chiều dài)
Giáo viên phân tích chi tiết cụ thể, từ đó mới bắt đầu hướng dẫn các em viết
một chương trình cụ thể bằng ngôn ngữ lập trình thông qua phân tích trên
3. Viết chương trình cho bài toán sử dụng ngôn ngữ lập trình Pascal:

Sau khi học sinh đã xác định được bài toán, viết được chương trình, giáo
viên cho học sinh thực hành trên máy tính, chạy thử để kểm tra kết quả và từ đó
khắc sâu kiến thức viết một chương trình đơn giản cho học sinh. Để viết được
chương trình cần bám sát vào các bước của thuật toán: ở bước 1 để nhập được
chiều dài và chiều rộng của hình chữ nhật, trước hết cần khai báo biến chiều dài,
chiều rộng sử dụng lệnh khai bóa biến là var a,b:integer; để nhập chiều dài và chiều
rộng sử dụng lệnh readln(a,b); ở bước 2 tính diện tích sử dụng lệnh gán s:=a*b; lệnh
in ra màn hình write(s);. Tiếp theo giáo viên bắt đầu đưa ra các bài toán khó hơn.
Ví dụ 2: Cho 2 số tự nhiên a, b. Tìm ước số chung lớn nhất của chúng.
1. Xác định bài toán:
+ Xác định thông tin vào (Input): hai số tự nhiên a, b
13

+ Xác định thông tin ra (Output): số tự nhiên d thoả mãn:
d là ước của a và d là ước của b
d là số lớn nhất trong tập các ước chung của a, b
+ Xác định các thao tác chế biến thông tin
Xây dựng hữu hạn các thao tác cho phép tính được d từ a và b.
( Ví dụ: Nhập a =16; b= 24 và d =8)
2. Viết thuật toán của bài toán
Bước 1: Nhập 2 số nguyên dương là a, b
Bước 2: So sánh giá trị a và b. Nếu a bằng b thì sang bước 3, ngược lại a
khác b thì sang bước 4
Bước 3: Tìm được ước số chung là a và kết thúc chương trình
Bước 4: Nếu a lớn hơn b thì ước số chung lớn nhất là a và quay trở lại bước 2.
Ngược lại ước số chung là b và quay trở lại bước 2
3. Viết chương trình hoàn chỉnh (dùng ngôn ngữ lập trình Pascal). Giáo viên
giải thích việc sử dụng các bước của thuật toán để viết chương trình là rất quan trọng:

Sử
Sửdụng
dụngbước
bước1 1của
củathuật
thuậttoán
toán
Sử dụng bước 2 của thuật toán
Sử dụng bước 4 của thuật toán
Sử dụng bước 3 của thuật toán

Ở ví dụ 2 giáo viên lại khắc sâu cho các em chú ý về việc sử dụng câu lệnh
điều kiện và câu lệnh lặp trong khi viết chương trình, cần đọc kỹ đề bài và từ đó
xây dựng thuật toán một cách chính xác trước khi viết chương trình hoàn chỉnh.
14

Lưu ý trong khi viết chương trình thì câu lệnh, hay từ khoá viết bằng chữ thường hay
chữ in hoa đều được. Ở ví dụ 1 chương trình cách viết các câu lệnh và từ khoá dùng
bằng chữ thường, ở ví dụ 2 các câu lệnh và từ khoá được dùng viết bằng chữ in hoa.
Trong quá trình sử dụng thuật toán để viết chương trình đôi khi các em cần
phải chú ý từng bước của thuật toán để bài toán khi chạy có kết quả đúng.
Ví dụ 3: Viết chương trình giải phương trình bậc nhất ax+b=0 với a, b
được nhập vào từ bàn phím.
1. Xác định bài toán:
+ Input: Cho hai số a, b
+ Output: Nghiệm của phương trình bậc nhất
2. Viết thuật toán:
Bước 1: Nhập hai số a, b
Bước 2: Nếu b= 0 chuyển tới bước 4
Bước 3: Tính nghiệm của phương trình x= -b/a và chuyển tới bước 5
Bước 4: Nếu c ≠ 0, thông báo phương trình đã cho vô nghiệm, ngược lại
(c =0), thông báo phương trình vô số nghiệm.
Bước 5: Kết thúc.
3. Viết chương trình hoàn chỉnh (dùng ngôn ngữ lập trình Pascal)

15

Với chương trình trên hoàn toàn có thể chạy được song kết quả sẽ không
đúng khi nhập dữ liệu a, b vào vì các em đã sử dụng sai các bước của thuật toán,
sau khi nhập dữ liệu ở bước 1 cần xét điều kiện b=0 ở bước 2 nhưng ở chương
trình các em lại sử dụng bước 3 trước bước 2 do đó khi chạy cho kết quả sai. Do
vậy khi viết chương trình các em phải tuân thủ theo từng bước mà đã viết từ thuật
toán, ở chương trình trên khi nhập a, b vào thì không kiểm tra hết các điều kiện của
a, b nên đưa ra kết quả sai, vì vậy ta cần phải sắp xếp lại thuật toán để cho một kết
quả đúng như yêu cầu, giáo viên hướng dẫn học sinh cách thực hiện thông qua
thuật toán đã xác định được trên. Vậy trong quá viết chương trình, sau khi dịch
chương trình mặc dầu máy vẫn báo kết quả dịch đúng, nhưng cần phải chạy thử
một vài trường hợp, nếu kết quả sai thì cần phải xem lại cách sắp xếp thứ tự câu
lệnh trong chương trình, từ đó giáo viên hướng dẫn cho học sinh viết lại chương
trình để cho ra kết quả luôn đúng.

Với các nội dung cơ bản về lý thuyết và từng bước hình thành kỹ năng lập
trình, giáo viên yêu cầu học sinh phải từng bước nắm chắc kỹ năng lập trình tuần
tự theo các bước thông qua sơ đồ sau:
1
2

3

16

Sau khi nhắc lại các bước giải giáo viên lại tiếp tục lấy một số ví dụ mà học
sinh đã được học qua môn toán các lớp 6, 7, 8.
Ví dụ 4: Viết chương trình nhập b số dương a, b, c từ bàn phím kiểm tra
và in ra màn hình kết quả kiểm tra ba số đó có thể là độ dài cạnh của một tam
giác hay không?
1. Xác định bài toán:
+ Input: Cho ba số dương a, b, c
+ Output: Thông báo “a, b, c có thể là ba cạnh của một tam giác” hoặc thông báo
“a, b, c không thể là ba cạnh của một tam giác”
2. Viết thuật toán:
Bước 1: Nhập ba số a > 0, b > 0, c > 0;
Bước 2: Tính a + b. Nếu a + b ≤ c; chuyển tới bước 6.
Bước 3: Tính b + c. Nếu b + c ≤ a; chuyển tới bước 6.
Bước 4: Tính a + c. Nếu a + c ≤ b; chuyển tới bước 6.
Bước 5: Thông báo “a, b, c có thể là ba cạnh của một tam giác” và kết thúc
thuật toán.
Bước 6: Thông báo “a, b, c không thể là ba cạnh của một tam giác” và kết
thúc thuật toán.
3. Viết chương trình hoàn chỉnh (dùng ngôn ngữ lập trình Pascal)

17

Ví dụ 5: Viết chương trình tính tổng các số tự nhiên từ 1 đến N (với N
được nhập từ bàn phím).
1. Xác định bài toán:
+ Input: Nhập n số tự nhiên
+ Output: Tính tổng n số tự nhiên đó.
2. Viết thuật toán
Bước 1: S
0; i
0;
Bước 2: i
i + 1;
Bước 3: Nếu i ≤ n; thì s

s + i và quay lại bước 2, ngược lại kết thúc

Giáo viên chú ý cho học sinh i trong thuật toán là một biến đếm vì trong
chương trình yêu cầu nhập N số tự nhiên, nên cần một biến đếm đi từ 1 cho đến N
để tính tổng (giáo viên giải thích: ban đầu tổng S = 0, biến đếm i =0, sau khi tăng
biến đếm lên 1 thì tổng = 0 + 1 = 1; tổng S =1, tăng biến đếm lên 2 thì tổng = 1 + 2
= 3, tổng S = 3; tương tự như thể cho đến n).
3. Viết chương trình hoàn chỉnh (dùng ngôn ngữ lập trìn Pascal)

Ví dụ 6: Về hình học: Ba số a, b, c được gọi là bộ ba số Py-ta-go nếu
a +b =c2. Số tự nhiên n ≥ 3 là số Py-ta-go nếu n2=(n - 1)2 + (n - 22.
2

2

a, Viết chương trình để nhập một số tự nhiên từ bàn phím và in ra màn hình
thông báo số đó có phải là số Py-ta-go hay không.
18

b, Viết chương trình để nhập ba số tự nhiên a, b, c từ bàn phím và in ra màn
hình thông báo chúng có là bộ ba số Py-ta-go hay không.
Câu a:
1. Xác định bài toán
Input: Nhập một sốnguyên
Output: Các số k ≤ n thỏa mãn k2 = (k - 2)2 + (k - 1)2
2. Viết thuật toán
a, Bước 1: Nhập số n
Bước 2: Nếu n ≤ 2, thông báo " n ≤ 2, không hợp lệ" và chuyển tới bước 8.
Bước 3: k
3 và i
0 (i đếm các số Py-ta-go tìm được)
2
Bước 4: Nếu k = (k - 2)2 + (k - 1)2, in ra số k và i i+1.
Bước 5: Gán k k+1.
Bước 6: Nếu k ≤ n quay về bước 4.
Bước 7: Thông báo " Có i số Py-ta-go nhỏ hơn hoặc bằng n".
Bước 8: Kết thúc thuật toán.

P/s: đây là những kiến thức chi tiết mà mình cop được cho bạn, bạn hãy thử tham khảo nhé <3
 

Hoàng Thị Nhung

Học sinh chăm học
Thành viên
16 Tháng tám 2017
544
223
76
22
Vĩnh Phúc
Trường THPT Tam Dương I
* Bộ chữ viết - Biểu thức- Câu lệnh - Từ khóa
a. Bộ chữ viết
Bộ chữ viết trong Pascal gồm:
+ 26 chữ la tinh lớn: A, B, C,…Z
+ 26 chữ la tinh nhỏ: a, b, c,…z
+ Dấu gạch dưới: _
5

+ Bộ chữ số thập phân: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9
+ Ký hiệu toán học: +, -, *, / ,< >, ( ),..
+ Ký tự đặc biệt: @, #, !, $, %,…
+ Dấu khoảng trắng
b. Biểu thức (expression) là công thức tính toán mà trong đó bao gồm các
phép toán, các hằng, các biến, các hàm và các dấu ngoặc đơn.
Trong một biểu thức, thứ tự ưu tiên của các phép toán được liệt kê theo thứ tự sau:
+ Lời gọi hàm.
+ Dấu ngoặc ()
+ Phép toán một ngôi (NOT, -).
+ Phép toán *, /, DIV, MOD, AND.
+ Phép toán +, -, OR, XOR
+ Phép toán so sánh =, <, >, <=, >=, <>, IN
c. Câu lệnh
+ Câu lệnh đơn giản:
Câu lệnh gán :)=): :=;
Lời gọi hàm, thủ tục.
+ Câu lệnh có cấu trúc
Câu lệnh ghép: BEGIN ... END;
Các cấu trúc điều khiển:
IF.., CASE..., FOR..., REPEAT..., WHILE...
+ Các lệnh xuất nhập dữ liệu
Lệnh xuất dữ liệu
Để xuất dữ liệu ra màn hình, ta sử dụng ba dạng sau:
(1)

WRITE( [, ,...]);

(2)

WRITELN( [, ,...]);

(3)

WRITELN;

Nhập dữ liệu
Để nhập dữ liệu từ bàn phím vào các biến có kiểu dữ liệu chuẩn (trừ các
biến kiểu BOOLEAN), ta sử dụng cú pháp sau đây:
READLN(, ,..., );
d. Từ khóa
6

Là các từ riêng của Pascal, có ngữ nghĩa đã được xác định, không được dùng
nó vào các việc khác hoặc đặt tên mới trùng với các từ khóa: Array, Begin, Const,
Div, Do, Else, End, For, If, Mod, Program, String, Then, To,Var, While...
- Từ khóa chung:
PROGRAM, BEGIN, END
- Từ khóa để khai báo: biến, hằng, mảng, xâu kí tự:
VAR, CONST, ARRAY, STRING
- Từ khóa của lệnh lựa chọn: Câu lệnh điều kiện
IF ... THEN ... ELSE
- Từ khóa của lệnh lặp với số lần biết trước
FOR... TO... DO (đi từ giá trị nhỏ đến giá trị lớn)
FOR... DOWNTO... DO (đi từ giá trị lớn đến giá trị bé)
- Từ khóa của lệnh lặp với số lần chưa biết trước
WHILE... DO
- Từ khóa toán tử:
DIV: Chia lấy phần nguyên
MOD: Chia lấy phần dư
- Lệnh dịch chương trình: ALT + F9
- Lệnh chạy chương trình: CTRL +F9
- Để thay đổi vị trí lưu kết quả biên dịch trong bộ nhớ hay tạo tệp chạy trực tiếp ta
dùng lệnh: Destination trong bảng chọn Complite.
3.2. Giới thiệu chung về các bước viết một chương của ngôn ngữ lập
trình Pascal
Phương pháp cơ bản giải các bài toán trong tin học không chỉ dùng để giải
một bài toán cụ thể mà còn giải một lớp các bài toán cụ thể thuộc cùng một loại.
Bài toán được cấu tạo từ các yếu tố cơ bản:
Thông tin vào
Xử lý thông tin
Thông tin ra.
(Output)
(Input)
(Process)
Phương pháp tổng quát để giải một bài toán bằng máy vi tính dựa trên ngôn
ngữ Pascal thì cần thực hiện được các bước cụ thể như sau:
Bước 1. Xác định các bài toán:
Là xác định xem ta phải giải quyết vấn đề gì?, với giả thiết nào đã cho và lời
giải cần phải đạt những yêu cầu gì. Khác với bài toán thuần tuý toán học chỉ cần
xác định rõ giả thiết và kết luận chứ không cần xác định yêu cầu về lời giải, vì thế
7

từ phát biểu của bài toán, các em phải xác định được đâu là thông tin đã cho
(Input) và đâu là thông tin cần tìm (Output). Xác định đúng yêu cầu bài toán là rất
quan trọng bởi nó ảnh hưởng tới cách thức giải quyết và chất lượng một lời giải.
Một bài toán thực tế thường cho những thông tin khá mơ hồ và hình thức, ta phải
phát biểu lại một cách chính xác và chặt chẽ để hiểu đúng bài toán.
Bước 2. Mô tả thuật toán:
Khi giải một bài toán ta cần phải định nghĩa tập hợp dữ liệu để biểu diễn tình
trạng cụ thể. Việc lựa chọn này tuỳ thuộc vào vấn đề cần giải quyết và những thao
tác sẽ tiến hành trên dữ liệu vào. Có những thuật toán chỉ thích ứng với một cách tổ
chức dữ liệu nhất định, đối với cách tổ chức dữ liệu khác thì kém hiệu quả và
không thể thực hiện được. Chính vì thế bước xây dựng cấu trúc dữ liệu không thể
tách rời bước tìm kiếm thuật toán giải quyết vấn đề. Bởi thuật toán là một hệ thống
chặt chẽ và rõ ràng các quy tắc nhằm xác định một dãy thao tác trên cấu trúc dữ
liệu sao cho: Với một bộ dữ liệu vào, sau một số hữu hạn bước thực hiện các thao
tác đã chỉ ra, ta đạt được mục tiêu đã định. Từ đó tìm cách giải bài toán và diễn tả
bằng các lệnh cần phải thực hiện.
Bước 3. Viết chương trình:
Dựa vào mô tả thuật toán ở bước 2trên, ta viết chương trình bằng một ngôn
ngữ lập trình mà các em đã học (Cụ thể là dùng ngôn ngữ lập trình Turbo Pascal để
viết chương trình)
3.3. Phân tích chi tiết nội dung cần viết chương trình:
A. XÁC ĐỊNH BÀI TOÁN
1. Khái niệm bài toán
Đối với học sinh lớp 8 chương trình học toán của các em đã biết đến các giải
phương trình bậc nhất là cao nhất. Nên việc đưa các lớp bài toán vào giải cho các
em đang còn một phần nào bị hạn chế. Nhưng bất kỳ một bài toán nào thì chúng ta
cũng đọc đề rồi xác địnhđược giả thiết và kết luận: A ® B.
Trong đó:
A là giải thiết: Điều kiện ban đầu hoặc cái đã cho, đã biết khi bắt đầu giải bài toán.
B là kết luận: Mục tiêu cần đạt được hay cái phải tìm, phải làm ra hay là
đáp án khi kết thúc bài toán .
®: Suy luận: giải pháp cần xác định hay một chuỗi các thao tác thực hiện từ A đến
B.
2. Cách giải bài toán trên máy vi tính
Cách giải bài toán trên máy cũng mang đầy đủ các tính chất của bài toán
tổng quát trên, nhưng nó lại được diễn đạt theo một ngôn ngữ khác.
A: là đưa thông tin vào (Input )
8

B: là đưa thông tin ra (Output)
®: là chương trình tạo từ các lệnh cơ bản của máy tính cho phép biến đổi từ A đến B.
B. TÌM THUẬT TOÁN
Thuật toán là một quá trình gồm một dãy hữu hạn các thao tác đơn giản
được sắp xếp theo một trình tự xác định sao cho theo đó từ Input của bài toán sẽ
tìm ra được Output của bài toán.
Một bài toán ta có 3 cách thể hiện thuật toán: Các bước xác định bằng lời,
lập sơ đồ khối, dùng một ngôn ngữ lập trình (Pascal)
Ví dụ về câu lệnh lặp với số lần biết trước. Thể hiện thuật toán với các cách:
Cách 1: Các bước xác định bằng lời:
Cho biến đếm gán bởi giá trị đầu thì thực hiện câu lệnh lần 1.
Tiếp tục tăng biến đếm lên thì thực hiện câu lệnh lần 2.
Tương tự cho đến khi biến đếm bằng giá trị cuối, thực hiện câu lệnh lần cuối
và kết thúc thuật toán.
Cách 2: Lập sơ đồ khối:

Biến đếm:=giá trị đầu

Biến đếm>=giá
trị cuối

Sai

Đúng
Lệnh cần lặp biến đếm giảm 1

Cách 3: Dùng ngôn ngữ lập trình:
For:= to do (câu lệnh);
Ví dụ về câu lệnh lặp với số lần chưa biết trước:
Thể hiện thuật toán theo các cách sau:
9

Cách1: Các bước xác định bằng lời:
Kiểm tra điều kiện của biến, nếu đúng thì thực hiện câu lệnh lần 1.
Sau khi thực hiện câu lệnh xong, tiếp tục kiểm tra điều kiện đúng thì thực
hiện câu lệnh lần 2.
Lặp đi lặp lại câu lệnh đó cho đến khi kiểm tr điều kiện thấy sai kết thúc
thuật toán.
Cách 2: Lập sơ đồ khối:

Sai
Điều kiện

Đúng
Câu lệnh

Cách 3 Dùng ngôn ngữ lập trình:
While <điều kiện> do
C. VIẾT CHƯƠNG TRÌNH
Viết chương trình (lập trình) là dùng ngôn ngữ máy vi tính cụ thể là ngôn ngữ
lập trình Turbo Pascal để diễn tả thuật toán, cấu trúc dữ liệu thành câu lệnh để máy
tính có thể thực hiện được và giải quyết đúng bài toán mà người lập trình mong muốn.
1. Kỹ năng lập trình
·

Rèn luyện được cho học sinh kỹ năng viết chương trình thành công nhờ thuật
toán bằng một ngôn ngữ lập trình. Đã gọi là kỹ năng thì chỉ có thể có được thông qua
rèn luyện tích cực. Kinh nghiệm cho thấy một thuật toán do viết chương trình vụng
về, lộn xộn thì khi chạy trên máy tính có thể cho kết quả không như mong muốn.
2. Phát triển chương trình bằng cách tinh chế từng bước
Một bài toán ta có thể đưa ra nhiều cách giải khác nhau, song là một giáo
viên thì chúng ta cần giúp học sinh viết chương trình làm sao người xem nhìn vào
có thể dễ hiểu được bài toán đó là gì? Do đó, việc tinh chỉnh các bước cho bài toán
trong máy tính là phương pháp khoa học, có hệ thống giúp ta phân tích các thuật
toán và cấu trúc dữ liệu từ đó thành một chương trình. Muốn lập trình giỏi không
phải chỉ cần nắm vững ngôn ngữ lập trình là đủ. Mà vấn đề cốt yếu là biết phương
pháp phát triển dần dần để chuyển các ý tưởng ra thành chương trình hoàn chỉnh.

10

3. Phương pháp tinh chế từng bước
Phương pháp tinh chế từng bước là một thể hiện của tư duy giải quyết vấn đề
từ trên xuống, giúp cho người lập trình có được một định hướng thể hiện trong
phong cách viết chương trình tránh việc mò mẫm, xoá đi viết lại nhiều lần. Vì thế
một chương trình bắt đầu được viết bằng lời tự nhiên (tiếng việt) thể hiện sự phân
tích tổng thể của người lập trình, được thể hiện ở từng bước sau các câu lệnh được
phân tích chi tiết hơn. Bằng những lời khác nhau, tương ứng với sự phân tích công
việc thành các việc nhỏ, chi tiết hơn, dễ hiểu và chỉnh xác hơn. Người lập trình có
thể đưa ra phương pháp tinh chỉnh từng bước, thể hiện tư duy để giải quyết những vấn
đề của bài toán từ trên xuống. Trong đó, các bước hướng về phương pháp lập trình tối
ưu, sáng sửa làm cho bài toán được giải một cách gọn gàng nhất, chính xác nhất.
D. CÁC VÍ DỤ MINH HOẠ
Trước khi để học sinh viết được một chương trình hoàn chỉnh bằng ngôn
ngữ lập trình Pascal, giáo viên cần yêu cầu học sinh cần phải nắm vững các kiến
thức cơ bản như: việc dùng từ khoá là phải dùng đúng theo qui tắc đề ra như các từ
khoá: Begin, End, Program. Nắm vững cấu trúc của một chương trình viết bằng
ngôn ngữ lập trình Turbo Pascal gồm có ba phần:
- Phần tiêu đề
- Phần khai báo
- Phần thân chương trình
(Gồm các thủ tục và các câu lệnh)
Được quy định bằng cú pháp sau:
Program.....; (Đặt tên cho chương trình)
Uses.....; (khai báo các unit sử dụng trong chương trình)
Const...; (Khai báo các hằng trong chương trình)
Type...; (Định nghĩa các kiểu biến)
Var...;(khai báo các biến sử dụng trong chương trình)
Procedure...;(Các chương trình con sử dụng trong chương trình)
Function...; (Các hàm sử dụng trong chương trình)
Cách sử dụng đúng các câu lệnh trong một chương trình Pascal, sau phần
mô tả dữ liệu là phần mô tả các câu lệnh. Các câu lệnh có nhiệm vụ xác định các
công việc mà máy tính phải thực hiện để xử lý các dữ liệu đã được mô tả và khai báo.
Câu lệnh được chia thành câu lệnh đơn giản và câu lệnh có cấu trúc.
- Câu lệnh đơn giản

11

+ Vào dữ liệu : Read, Readln
+ Ra dữ liệu : Write, Writeln
+ Lệnh gán : ":= "
- Câu lệnh có cấu trúc
+ Lệnh ghép : BEGIN .. END
+ Lệnh chọn : IF .. THEN .. ELSE
+ Lệnh lặp : FOR .. TO .. DO
WHILE .. DO
Các câu lệnh phải được ngăn cách với nhau bởi dấu chấm phẩy ( ; ) và các
câu lệnh có thể viết trên một dòng hay nhiều dòng.
Hiểu và sử dụng đúng các cách khai báo biến, khai báo hằng như:
Khai báo hằng
- Hằng là một đại lượng có giá trị không thay đổi trong suốt chương trình.
- Cú pháp:
CONST

= ;

Khai báo biến
- Biến là một đại lượng mà giá trị của nó có thể thay đổi trong quá trình thực
hiện chương trình.
- Cú pháp:
VAR [,,...] : ;
Từ đó mới hình thành cho các em kỹ năng viết chương trình bằng ngôn ngữ
lập trình thông qua việc nắm bắt các khái niệm cơ bản, quy trình viết một chương
trình hoàn chỉnh.
Một số ví dụ minh hoạ từ các bài toán đã được học trong chương trình môn
toán ở các lớp 6,7,8.
Ví dụ 1: Tính diện tích hình chữ nhật.
1. Ta cần xác định cho bài toán:
+ Input (Thông tin vào): Chiều dài là cạnh a, chiều rộng là cạnh b
+ Output (Thông tin ra): Kết quả diện tích khi đưa a, b vào
+ Các thông tin cần chế biến thông tin như:
( Ví dụ: Lần lượt đưa a, b vào cho a=3, b=4)
Áp dụng công thức tính diện tích hình chữ nhật: a*b
Kết quả in ra là 12.
12

2. Ta cần viết thuật toán của bài toán:
Bước 1: CD
a, CR b
Bước 2: s a*b và kết thúc
Ở đây chương trình bắt đầu bằng lời tiếng việt như:
CD
a, có nghĩa là gán chiều dài bằng a (hay là nhập chiều dài)
CR
b có nghĩa là gán chiều rộng bằng a (hay là nhập chiều dài)
Giáo viên phân tích chi tiết cụ thể, từ đó mới bắt đầu hướng dẫn các em viết
một chương trình cụ thể bằng ngôn ngữ lập trình thông qua phân tích trên
3. Viết chương trình cho bài toán sử dụng ngôn ngữ lập trình Pascal:

Sau khi học sinh đã xác định được bài toán, viết được chương trình, giáo
viên cho học sinh thực hành trên máy tính, chạy thử để kểm tra kết quả và từ đó
khắc sâu kiến thức viết một chương trình đơn giản cho học sinh. Để viết được
chương trình cần bám sát vào các bước của thuật toán: ở bước 1 để nhập được
chiều dài và chiều rộng của hình chữ nhật, trước hết cần khai báo biến chiều dài,
chiều rộng sử dụng lệnh khai bóa biến là var a,b:integer; để nhập chiều dài và chiều
rộng sử dụng lệnh readln(a,b); ở bước 2 tính diện tích sử dụng lệnh gán s:=a*b; lệnh
in ra màn hình write(s);. Tiếp theo giáo viên bắt đầu đưa ra các bài toán khó hơn.
Ví dụ 2: Cho 2 số tự nhiên a, b. Tìm ước số chung lớn nhất của chúng.
1. Xác định bài toán:
+ Xác định thông tin vào (Input): hai số tự nhiên a, b
13

+ Xác định thông tin ra (Output): số tự nhiên d thoả mãn:
d là ước của a và d là ước của b
d là số lớn nhất trong tập các ước chung của a, b
+ Xác định các thao tác chế biến thông tin
Xây dựng hữu hạn các thao tác cho phép tính được d từ a và b.
( Ví dụ: Nhập a =16; b= 24 và d =8)
2. Viết thuật toán của bài toán
Bước 1: Nhập 2 số nguyên dương là a, b
Bước 2: So sánh giá trị a và b. Nếu a bằng b thì sang bước 3, ngược lại a
khác b thì sang bước 4
Bước 3: Tìm được ước số chung là a và kết thúc chương trình
Bước 4: Nếu a lớn hơn b thì ước số chung lớn nhất là a và quay trở lại bước 2.
Ngược lại ước số chung là b và quay trở lại bước 2
3. Viết chương trình hoàn chỉnh (dùng ngôn ngữ lập trình Pascal). Giáo viên
giải thích việc sử dụng các bước của thuật toán để viết chương trình là rất quan trọng:

Sử
Sửdụng
dụngbước
bước1 1của
củathuật
thuậttoán
toán
Sử dụng bước 2 của thuật toán
Sử dụng bước 4 của thuật toán
Sử dụng bước 3 của thuật toán

Ở ví dụ 2 giáo viên lại khắc sâu cho các em chú ý về việc sử dụng câu lệnh
điều kiện và câu lệnh lặp trong khi viết chương trình, cần đọc kỹ đề bài và từ đó
xây dựng thuật toán một cách chính xác trước khi viết chương trình hoàn chỉnh.
14

Lưu ý trong khi viết chương trình thì câu lệnh, hay từ khoá viết bằng chữ thường hay
chữ in hoa đều được. Ở ví dụ 1 chương trình cách viết các câu lệnh và từ khoá dùng
bằng chữ thường, ở ví dụ 2 các câu lệnh và từ khoá được dùng viết bằng chữ in hoa.
Trong quá trình sử dụng thuật toán để viết chương trình đôi khi các em cần
phải chú ý từng bước của thuật toán để bài toán khi chạy có kết quả đúng.
Ví dụ 3: Viết chương trình giải phương trình bậc nhất ax+b=0 với a, b
được nhập vào từ bàn phím.
1. Xác định bài toán:
+ Input: Cho hai số a, b
+ Output: Nghiệm của phương trình bậc nhất
2. Viết thuật toán:
Bước 1: Nhập hai số a, b
Bước 2: Nếu b= 0 chuyển tới bước 4
Bước 3: Tính nghiệm của phương trình x= -b/a và chuyển tới bước 5
Bước 4: Nếu c ≠ 0, thông báo phương trình đã cho vô nghiệm, ngược lại
(c =0), thông báo phương trình vô số nghiệm.
Bước 5: Kết thúc.
3. Viết chương trình hoàn chỉnh (dùng ngôn ngữ lập trình Pascal)

15

Với chương trình trên hoàn toàn có thể chạy được song kết quả sẽ không
đúng khi nhập dữ liệu a, b vào vì các em đã sử dụng sai các bước của thuật toán,
sau khi nhập dữ liệu ở bước 1 cần xét điều kiện b=0 ở bước 2 nhưng ở chương
trình các em lại sử dụng bước 3 trước bước 2 do đó khi chạy cho kết quả sai. Do
vậy khi viết chương trình các em phải tuân thủ theo từng bước mà đã viết từ thuật
toán, ở chương trình trên khi nhập a, b vào thì không kiểm tra hết các điều kiện của
a, b nên đưa ra kết quả sai, vì vậy ta cần phải sắp xếp lại thuật toán để cho một kết
quả đúng như yêu cầu, giáo viên hướng dẫn học sinh cách thực hiện thông qua
thuật toán đã xác định được trên. Vậy trong quá viết chương trình, sau khi dịch
chương trình mặc dầu máy vẫn báo kết quả dịch đúng, nhưng cần phải chạy thử
một vài trường hợp, nếu kết quả sai thì cần phải xem lại cách sắp xếp thứ tự câu
lệnh trong chương trình, từ đó giáo viên hướng dẫn cho học sinh viết lại chương
trình để cho ra kết quả luôn đúng.

Với các nội dung cơ bản về lý thuyết và từng bước hình thành kỹ năng lập
trình, giáo viên yêu cầu học sinh phải từng bước nắm chắc kỹ năng lập trình tuần
tự theo các bước thông qua sơ đồ sau:
1
2

3

16

Sau khi nhắc lại các bước giải giáo viên lại tiếp tục lấy một số ví dụ mà học
sinh đã được học qua môn toán các lớp 6, 7, 8.
Ví dụ 4: Viết chương trình nhập b số dương a, b, c từ bàn phím kiểm tra
và in ra màn hình kết quả kiểm tra ba số đó có thể là độ dài cạnh của một tam
giác hay không?
1. Xác định bài toán:
+ Input: Cho ba số dương a, b, c
+ Output: Thông báo “a, b, c có thể là ba cạnh của một tam giác” hoặc thông báo
“a, b, c không thể là ba cạnh của một tam giác”
2. Viết thuật toán:
Bước 1: Nhập ba số a > 0, b > 0, c > 0;
Bước 2: Tính a + b. Nếu a + b ≤ c; chuyển tới bước 6.
Bước 3: Tính b + c. Nếu b + c ≤ a; chuyển tới bước 6.
Bước 4: Tính a + c. Nếu a + c ≤ b; chuyển tới bước 6.
Bước 5: Thông báo “a, b, c có thể là ba cạnh của một tam giác” và kết thúc
thuật toán.
Bước 6: Thông báo “a, b, c không thể là ba cạnh của một tam giác” và kết
thúc thuật toán.
3. Viết chương trình hoàn chỉnh (dùng ngôn ngữ lập trình Pascal)

17

Ví dụ 5: Viết chương trình tính tổng các số tự nhiên từ 1 đến N (với N
được nhập từ bàn phím).
1. Xác định bài toán:
+ Input: Nhập n số tự nhiên
+ Output: Tính tổng n số tự nhiên đó.
2. Viết thuật toán
Bước 1: S
0; i
0;
Bước 2: i
i + 1;
Bước 3: Nếu i ≤ n; thì s

s + i và quay lại bước 2, ngược lại kết thúc

Giáo viên chú ý cho học sinh i trong thuật toán là một biến đếm vì trong
chương trình yêu cầu nhập N số tự nhiên, nên cần một biến đếm đi từ 1 cho đến N
để tính tổng (giáo viên giải thích: ban đầu tổng S = 0, biến đếm i =0, sau khi tăng
biến đếm lên 1 thì tổng = 0 + 1 = 1; tổng S =1, tăng biến đếm lên 2 thì tổng = 1 + 2
= 3, tổng S = 3; tương tự như thể cho đến n).
3. Viết chương trình hoàn chỉnh (dùng ngôn ngữ lập trìn Pascal)

Ví dụ 6: Về hình học: Ba số a, b, c được gọi là bộ ba số Py-ta-go nếu
a +b =c2. Số tự nhiên n ≥ 3 là số Py-ta-go nếu n2=(n - 1)2 + (n - 22.
2

2

a, Viết chương trình để nhập một số tự nhiên từ bàn phím và in ra màn hình
thông báo số đó có phải là số Py-ta-go hay không.
18

b, Viết chương trình để nhập ba số tự nhiên a, b, c từ bàn phím và in ra màn
hình thông báo chúng có là bộ ba số Py-ta-go hay không.
Câu a:
1. Xác định bài toán
Input: Nhập một sốnguyên
Output: Các số k ≤ n thỏa mãn k2 = (k - 2)2 + (k - 1)2
2. Viết thuật toán
a, Bước 1: Nhập số n
Bước 2: Nếu n ≤ 2, thông báo " n ≤ 2, không hợp lệ" và chuyển tới bước 8.
Bước 3: k
3 và i
0 (i đếm các số Py-ta-go tìm được)
2
Bước 4: Nếu k = (k - 2)2 + (k - 1)2, in ra số k và i i+1.
Bước 5: Gán k k+1.
Bước 6: Nếu k ≤ n quay về bước 4.
Bước 7: Thông báo " Có i số Py-ta-go nhỏ hơn hoặc bằng n".
Bước 8: Kết thúc thuật toán.
P/s: đây là những kiến thức chi tiết mà mình cop được cho bạn, bạn hãy thử tham khảo nhé <3
Đối với học sinh lớp 8 chương trình học toán của các em đã biết đến các giải
phương trình bậc nhất là cao nhất. ???????
 

kingsman(lht 2k2)

Mùa hè Hóa học|Ngày hè tuyệt diệu
Thành viên
TV BQT tích cực 2017
Em đang học lớp 10 nhưng em thi vượt cấp học chương trình tin học 11 và lớp 12 liên quan tới lập trình ngôn ngữ Pascal. Mọi người có thể chỉ cho e những cái cần nắm chắc không ạ, bởi hiện tại pascal em học qua từ lớp 8 rồi ,không có nhớ trong khi đó đầu tháng 11 em thi tin lớp 11 rồi ạ, cuối tháng 11 em thi tin lớp 12.
Cảm ơn mn...
hiện tại bạn đừng nghĩ tới chương trình 11 làm gì ..cứ chắc thuật toán của toán 10 trước
khi nào chắc chắn rồi thì học vẫn chưa muộn
tại sao đầu tháng 11 bạn thì tin 11 (ban học bồi dưỡng à)
..bạn cần giải thích dễ hiểu tí ,,...........
trước khi mình tư vấn cho bạn về cách học pascal .....
 

Hoàng Thị Nhung

Học sinh chăm học
Thành viên
16 Tháng tám 2017
544
223
76
22
Vĩnh Phúc
Trường THPT Tam Dương I
hiện tại bạn đừng nghĩ tới chương trình 11 làm gì ..cứ chắc thuật toán của toán 10 trước
khi nào chắc chắn rồi thì học vẫn chưa muộn
tại sao đầu tháng 11 bạn thì tin 11 (ban học bồi dưỡng à)
..bạn cần giải thích dễ hiểu tí ,,...........
trước khi mình tư vấn cho bạn về cách học pascal .....
ừm đầu tháng 11 thì mk thi mà,mk thi vượt cấp
 
  • Like
Reactions: kingsman(lht 2k2)

kingsman(lht 2k2)

Mùa hè Hóa học|Ngày hè tuyệt diệu
Thành viên
TV BQT tích cực 2017
ừm đầu tháng 11 thì mk thi mà,mk thi vượt cấp
rồi làm thử mấy bài này nhé
bài 1 : tìm max trong 4 số a,b,c,d( a,b,c, d nhập từ bàn phím )
bài 2: viết ct giải phương trình bậc nhất (ax+b>0)
bài 3: viết chương trình giải ot bậc hai (a#0)
rồi ..bạn từ làm mấy bài test đơn giản này nhé ....5ting
 

Hoàng Thị Nhung

Học sinh chăm học
Thành viên
16 Tháng tám 2017
544
223
76
22
Vĩnh Phúc
Trường THPT Tam Dương I
rồi làm thử mấy bài này nhé
bài 1 : tìm max trong 4 số a,b,c,d( a,b,c, d nhập từ bàn phím )
bài 2: viết ct giải phương trình bậc nhất (ax+b>0)
bài 3: viết chương trình giải ot bậc hai (a#0)
rồi ..bạn từ làm mấy bài test đơn giản này nhé ....5ting
mấy bài này mk làm rồi cậu,hôm trc cô cx dùng mấy bài này test loại người
 
  • Like
Reactions: kingsman(lht 2k2)

Hoàng Thị Nhung

Học sinh chăm học
Thành viên
16 Tháng tám 2017
544
223
76
22
Vĩnh Phúc
Trường THPT Tam Dương I
rồi làm thử mấy bài này nhé
bài 1 : tìm max trong 4 số a,b,c,d( a,b,c, d nhập từ bàn phím )
bài 2: viết ct giải phương trình bậc nhất (ax+b>0)
bài 3: viết chương trình giải ot bậc hai (a#0)
rồi ..bạn từ làm mấy bài test đơn giản này nhé ....5ting
mk cx giải bất pương trình rồi
 
Top Bottom