Tin học 8 Bài thực hành 2: Viết chương trình để tính toán
Nội dung của Bài thực hành 2: Viết chương trình để tính toán dưới đây, các em sẽ làm bài tập thực hành về cách chuyển biểu thức toán học sang biểu diễn trong Pascal, sử dụng phép toán DIV và MOD, tìm hiểu về các lệnh in dữ liệu ra màn hình và tạm ngừng chương trình,... Mời các em cùng theo dõi nội dung chi tiết của bài thực hành.
Mục lục nội dung
1. Mục đích, yêu cầu
-
Luyện tập soạn thảo, chỉnh sửa chương trình, biên dịch, chạy và xem kết quả hoạt động của chương trình trong môi trường Turbo Pascal.
-
Thực hành với các biểu thức số học trong chương trình Pascal.
2. Nội dung
Hoạt động 1: Luyện gõ các biểu thức số học trong môi trường Pascal.
a) Viết các biểu thức sau dưới dạng biểu thức trong Pascal.
a. \(15 \times4 - 30+12 ;\)
b. \(\frac{15 + 5 }{3+1}-\frac{18}{5+1};\)
c. \(\frac{(10+2)^{2}}{(3+1)};\)
d. \(\frac{(10+2)^{2}-24}{(3+1)};\)
Lưu ý: chỉ sử dụng dấu ngoặc đơn để nhóm các phép toán.
b) Khởi động Pascal và gõ chương trình sau để tính các biểu thức trên.
Begin
writeln ('15*4 – 30 + 12 = ', 15*4-30+12);
writeln ('(10+5)/(3+1)-18/(5+1) = ‘, (10+5)/(3+1)-18/(5+1));
writeln ('(10+2)*(10+2)/(3+6) = ' , (10+2)*(10+2)/(3+6));
End.
Lưu ý: Các biểu thức Pascal được đặt trong câu lệnh writeln để in ra kết quả. Em sẽ có cách viết khác sau khi làm quen với khái niệm biến ở bài 4.
c) Lưu chương trình với tên CT2.pas. Dịch, chạy chương trình và kiểm tra kết quả nhận được trên màn hình.
Hướng dẫn giải:
a) Viết các biểu thức trên dưới dạng biểu thức trong Pascal:
a. = 15*4 - 30 + 12 => Câu lệnh: Writeln('15*4-30+12= ', 15*4-30+12);
b. = (10+5)/(3+1)-18/(5+1) => Câu lệnh: Writeln('(10+5)/(3+1) - 18/(5+1)= ',(10+5)/(3+1) - 18/(5+1));
c. = (10+2)*(10+2)/(3+6) => Câu lệnh: Writeln('(10+2)*(10+2)/(3+1)= ', (10+2)*(10+2)/(3+1));
d. = ((10+2)*(10+2)-24)/(3+1) => Câu lệnh: Writeln('((10+2)*(10+2)-24)/(3+1)= ', ((10+2)*(10+2)-24)/(3+1));
b) Khởi động Pascal và gõ chương trình mẫu ở trên:
Để khởi động Pascal, các em thực hiện một trong hai cách sau:
-
Cách 1: Nháy đúp chuột vào biểu tượng Turbo Pascal trên màn hình nền.
-
Cách 2: Nháy đúp chuột vào tên tệp Turbo. Exe trong thư mục chứa tệp này (thường là thư mục con TP\BIN).
Trước khi gõ chương trình mẫu, các em thực hiện: Vào bảng chọn File, chọn New để mở cửa sổ mới và bắt đầu soạn thảo chương trình.
c) Lưu chương trình với tên CT2.pas, dịch, chạy chương trình và kiểm tra kết quả nhận được trên màn hình.
-
Lưu chương trình:
-
Cách 1: Nhấn F2.
-
Cách 2: Chọn File/ Save, hộp thoại hiện ra gõ tên cần lưu trong ô Name gõ tên CT2, chọn OK hoặc nhấn Enter.
-
-
Dịch chương trình: Nhấn tổ hợp phím Alt+F9.
-
Chạy chương trình: Nhấn tổ hợp phím Ctrl+F9.
-
Kiểm tra kết quả: Nhấn tổ hợp phím Alt+F5
Hoạt động 2: Tìm hiểu các phép chia lấy phần nguyên, chia lấy phần dư với số nguyên. Sử dụng các câu lệnh tạm ngừng chương trình.
a) Mở tệp mới và gõ chương trình sau:
Uses crt;
Begin
clrscr;
writeln (’16/3 = ‘ , 16/3);
writeln (’16 div 3 = ‘ , 16 div 3);
writeln (’16 mod 3 = ‘ , 16 mod 3);
writeln (’16 mod 3 = ‘ , 16 - (16 div 3)*3);
writeln (’16 div 3 = ‘ , (16-(16 mod 3))/3);
End.
b) Dịch, chạy chương trình. Quan sát các kết quả nhận được và cho nhận xét về các kết quả đó.
c) Thêm các câu lệnh tạm dừng màn hình sau mỗi câu lệnh writeln để xem kết quả.
d) Thêm câu lệnh Readln vào trước từ khóa end, chạy và kiểm tra kết quả hoạt động của chương trình.
Hướng dẫn giải:
a) Mở tệp mới và gõ chương trình mẫu: Tương tự câu b Bài 1 ở trên.
b) Dịch, chạy chương trình và kiểm tra kết quả: Tương tự câu c Bài 1 ở trên.
Nhận xét kết quả:
writeln (’16/3 = ‘ , 16/3) => Kết quả = 5.333333333...
writeln (’16 div 3 = ‘ , 16 div 3) => Kết quả = 5;
writeln (’16 mod 3 = ‘ , 16 mod 3) => Kết quả = 1;
writeln (’16 mod 3 = ‘ , 16 - (16 div 3)*3) => Kết quả = 1;
writeln (’16 div 3 = ‘ , (16-(16 mod 3))/3) => Kết quả = 5.
DIV: phép chia lấy phần nguyên;
MOD: phép chia lấy phần dư.
c) Thêm các câu lệnh tạm dừng màn hình sau mỗi câu lệnh writeln
Uses Crt;
Begin
Clrscr;
Writeln (‘16/3=’,16/3); Delay(5000);
Writeln (’16 div 3 =’,16 div 3); Delay(5000);
Writeln (’16 mod 3 =’, 16 mod 3); Delay(5000);
Writeln (’16 mod 3 =’,16-(16 div 3)*3); Delay(5000);
Writeln (’16 div 3 =’,(16-(16 mod 3))/3); Delay(5000);
End.
Nhận xét: Lệnh Delay(5000): tạm ngừng chương trình trong 5000 phần nghìn giây, sau đó chạy tiếp.
d) Thêm câu lệnh Readln vào trước từ khóa end
Uses Crt;
Begin
Clrscr;
Writeln (‘16/3=’,16/3);
Writeln (’16 div 3 =’,16 div 3);
Writeln (’16 mod 3 =’, 16 mod 3);
Writeln (’16 mod 3 =’,16-(16 div 3)*3);
Writeln (’16 div 3 =’,(16-(16 mod 3))/3);
Readln
End.
Hoạt động 3: Tìm hiểu thêm về cách in dữ liệu ra màn hình.
Mở tệp CT2.pas và sửa 3 dòng lệnh cuối (trước từ khóa end) như bên dưới. Sau đó dịch, chạy lại chương trình xem kết quả.
writeln ('15*4 – 30 + 12 = ' , 15*4-30+12 : 4 : 2);
writeln ('(10+5)/(3+1)-18/(5+1) = ' , (10+5)/(3+1)-18/(5+1) :4 : 2);
writeln ('(10+2)*(10+2)/(3+6) = ' , (10+2)*(10+2)/(3+6) : 4 : 2);
Hướng dẫn giải:
Để mở tệp CT2.pas, các em thực hiện: Vào bảng chọn File, chọn Open mở tệp chương trình đã lưu trong đĩa.
3. Luyện tập
Câu 1: Biểu thức toán học (a2 + b)(1 + c)3 được biểu diễn trong Pascal như thế nào?
A. (a*a + b)(1+c)(1 + c)(1 + c)
B. (a.a + b)(1 + c)(1 + c)(1 + c)
C. (a*a + b)*(1 + c)*(1 + c)*(1 + c)
D. (a2 + b)(1 + c)3
Câu 2: Các phép toán nào sau đây không dùng cho kiểu số thực?
A. +, -, *, /
B. <, >, >=, <=, < >, =
C. Mod và div
D. +, -, *, / và <, >, >=, <=, < >, =
Câu 3: Biểu thức toán học - được biễu diễn trong TURBO PASCAL:
A. x+5/a+3-y/b+5
B. x+5\a+3-y\b+5
C. (x+5)/(a+3)-y/(b+5)
D. (x+5)\(a+3)-y\(b+5)
Câu 4: Lệnh nào sử dụng để tạm ngừng chương trình trong x phần nghìn giây, sau đó chạy tiếp?
A. Delay(x);
B. Read (x);
C. Readln(x)
D. Writeln(n)
Câu 5: Lệnh nào tạm ngừng chương trình cho tới khi nhấn phím Enter?
A. Write hoặc Writeln
B. Read hoặc Readln
C. Cả câu A và B đều đúng
D. Cả câu A và B đều sai
4. Kết luận
Sau khi học xong Bài thực hành 2: Viết chương trình để tính toán, các em cần ghi nhớ các nội dung:
-
Các kí hiệu của các phép toán số học trong Pascal là: +, -, *, /, mod. Div.
-
Lệnh tạm dừng chương trình:
-
Delay(x): tạm ngừng chương trình trong x phần nghìn giây, sau đó chạy tiếp.
-
read hoặc readln tạm ngừng chương trình cho tới khi nhấn phím enter
-
-
Câu lệnh writeln(< giá trị thực ) : n : m) được dùng để điều khiển cách in số thực trên màn hình. Trong đó giá trị thực là số hay biểu thức số thực và m, n là các số tự nhiên. n quy định độ rộng in số, m là số chữ số thập phân. Lưu ý rằng các kết quả in ra màn hình được căn thẳng lề phải.
Tham khảo thêm
- doc Tin học 8 Bài thực hành 3: Khai báo và sử dụng biến
- doc Tin học 8 Bài 5: Từ bài toán đến chương trình
- doc Tin học 8 Bài 6: Câu lệnh điều kiện
- doc Tin học 8 Bài thực hành 4: Sử dụng câu lệnh điều kiện If…Then
- doc Tin học 8 Bài 7: Câu lệnh lặp
- doc Tin học 8 Bài thực hành 5: Sử dụng lệnh lặp For…Do
- doc Tin học 8 Bài 8: Lặp với số lần chưa biết trước
- doc Tin học 8 Bài thực hành 6: Sử dụng lệnh lặp While…Do
- doc Tin học 8 Bài 9: Làm việc với dãy số
- doc Tin học 8 Bài thực hành 7: Xử lý dãy số trong chương trình
- doc Tin học 8 Bài 1: Máy tính và chương trình máy tính
- doc Tin học 8 Bài 2: Làm quen với chương trình và ngôn ngữ lập trình
- doc Tin học 8 Bài thực hành 1: Làm quen với Turbo Pascal
- doc Tin học 8 Bài 3: Chương trình máy tính và dữ liệu
- doc Tin học 8 Bài 4: Sử dụng biến trong chương trình