logo

Bài tập và thực hành 2

Bài tập và thực hành 2

1. Mục đích, yêu cầu

+ Xây dựng chương tình có sử dụng cấu trúc rẽ nhánh;

+ Làm quen với việc hiệu chỉnh chương tình

2. Nội dung

Bài toán: Bộ số Pi-ta-go.

Biết rằng bộ ba số nguyên dương a,b,c được gọi là bộ số Pi-ta-go nếu tổng các bình phương của hai số bằng bình phương của số còn lại. Viết chương trình nhập từ bàn phím ba số nguyên dương a,b,c và kiểm tra xem chúng có là bộ số Pi-ta-go hay không.

Ý tưởng: Kiểm tra xem có đẳng thức nào trong ba đẳng thức sau đây xảy ra hay không:

a2=b2+c2

b2=a2+c2

c2=a2+b2

a) Gõ chương trình sau:

Giải Tin học 11: Bài tập và thực hành 2 | Giải Tin 11

b) Lưu chương trình với tên PITAGO lên đĩa.

Nhấn File sau đó nhấn Save as…

Giải Tin học 11: Bài tập và thực hành 2 | Giải Tin 11 (ảnh 2)

Sau đó nhập PITAGO.pas sau đó nhấn OK.

Giải Tin học 11: Bài tập và thực hành 2 | Giải Tin 11 (ảnh 3)

c) Nhấn phím F7 để thực hiện từng câu lệnh chương trình, nhập các giá trị a=3, b=3, c=5;

Giải Tin học 11: Bài tập và thực hành 2 | Giải Tin 11 (ảnh 4)

Khi đến câu lệnh readln(a, b, c) chương trình dựng cho ta nhập dữ liệu.

Giải Tin học 11: Bài tập và thực hành 2 | Giải Tin 11 (ảnh 5)

d) Vào bảng chọn Debug để mở cửa sổ hiệu chỉnh xem giá trị a2, b2, c2.

-Nhấn phím Ctrl+F7 để thêm các biến muốn xem giá trị

Giải Tin học 11: Bài tập và thực hành 2 | Giải Tin 11 (ảnh 6)

-Nhấn F7 để chạy tiếp các câu lệnh để nhìn giá trị của các biến.

Giải Tin học 11: Bài tập và thực hành 2 | Giải Tin 11 (ảnh 7)

e) Tiếp tục nhấn phím F7 để thực hiện các câu lệnh tính giá trị.

Nhận được kết quả a2=9, b2=16, c2=25 ở bảng debug

Giải Tin học 11: Bài tập và thực hành 2 | Giải Tin 11 (ảnh 8)

f) Quan sát quá trình rẽ nhánh. Ta thấy nhánh rẽ vào mệnh đề sau then

Giải Tin học 11: Bài tập và thực hành 2 | Giải Tin 11 (ảnh 9)

g) Lặp lại bộ dữ liệu a=700, b=1000, c=800.

Giải Tin học 11: Bài tập và thực hành 2 | Giải Tin 11 (ảnh 10)

h) Nếu thay dãy lệnh

Giải Tin học 11: Bài tập và thực hành 2 | Giải Tin 11 (ảnh 11)

bằng dãy lệnh

Giải Tin học 11: Bài tập và thực hành 2 | Giải Tin 11 (ảnh 12)

thì kết quả không thay đổi so với câu g .

Lý do: nếu ta gán a2:=a sau đó thực hiện nhân a2 với a thì thực ra ta chỉ gán a2:=a*a;

Tương tự như vậy với b2, c2.

Vì vậy kết quả không thay đổi với dữ liệu ở câu g).