Kho tàng tài liệu học tập phong phú.

Tin học 10 Cánh diều Bài 18: Lập trình giải quyết bài toán trên máy tính

1.1. Quá trình giải một bài toán bằng lập trình 

Xét Bài toán Quản lí tiền điện

– Bước 1. Xác định bài toán

Cho dãy 12 số nguyên a1, a2, …, a12.

Yêu cầu:

+ Tính tổng các số trong dãy \(s = \sum\limits_{i = 1}^{12} {{a_i}} \)

+ Tính trung bình cộng av = s/12

+ Đưa ra các vị trí i thỏa mãn điều kiên ai > av

– Bước 2. Tìm thuật toán giải bài toán và cách tổ chức dữ liệu

Thuật toán giải bài toán quản lí tiền điện

+ Bước 1: Nhập dãy số tiền t1, t2, …, t12.

+ Bước 2: Chuẩn bị tích lũy tổng: s = 0

+ Bước 3: Tích lũy giá trị các số của dãy vào tổng s

+ Bước 4: Đưa ra giá trị s

+ Bước 5: Tính và đưa ra giá trị trung bình av = s/12

+ Bước 6: Duyệt tuần tự từ t1 đến t12: đưa ra i nếu ti > av (i = 1, 2, …, 12)

– Bước 3. Viết chương trình

Hình 3. Chương trình giải bài toán Quản lí tiền điện

– Bước 4. Kiểm thử, chạy và hiệu chỉnh chương trình

Với chương trình viết xong cần phải chạy thử và kiểm tra xem chương trình có lỗi hay không và nếu tìm thấy thì phải sửa tất cả các lỗi tìm được

1.2. Các bước giải bài toán bằng lập trình

a) Xác định bài toán

– Xác định những giá trị đã cho và các mối quan hệ giữa chúng

b) Tìm thuật toán giải bài toán và cách tổ chức dữ liệu

– Tìm thuật toán dựa trên kết quả quan trọng của bước xác định bài toán, dựa trên mối quan hệ giữa các đại lượng đã cho với những giá trị cần tìm

– Xác định các cách tổ chức dữ liệu có thể sử dụng tương ứng với thuật toán đó

– Ví dụ: xét bài toán Quản lí tiền điện

+ tính tổng tiền điện 12 tháng

+ tính mức chi trung bình tháng

+ so sánh tiền điện mỗi tháng với mức chi trung bình tháng để đưa ra tháng dùng điện nhiều

=> dữ liệu tiền điện hàng tháng được dùng 2 lần => cần phải lưu lại => ta thấy cấu trúc dữ liệu thích hợp là mảng (hay danh sách trong Python)

c) Viết chương trình

– Là mô tả thuật toán bằng ngôn ngữ lập trình

– Có nhiều ngôn ngữ lập trình bậc cao khác nhau, tuy nhiên mỗi ngôn ngữ lập trình bậc cao đều được xây dựng trên những yếu tố cơ bản gồm:

+ Bảng chữ cái

+ Cú pháp

+ Ngữ nghĩa

+ Các kiểu dữ liệu

+ Các câu lệnh, biểu thức, thư viện các hàm cho sẵn

– Để máy tính có thể hiểu và thực hiện được chương trình viết trên ngôn ngữ lập trình bậc cao cần có công cụ dịch chương trình sang ngôn ngữ máy

– Có 2 chế độ dịch chương trình là thông dịch (Interpreter) hoặc biên dịch (Compiler)

d) Kiểm thử, chạy và hiệu chỉnh chương trình

– Viết xong chương trình cần phải tìm lỗi, sửa lỗi, điều chỉnh lại chương trình

– Lưu ý: Dù việc kiểm thử có làm tốt đến mức độ nào đi nữa thì trong hầu hết các trường hợp ta chỉ có thể khẳng định là chương trình cho kết quả đúng với nhiều bộ dữ liệu vào khác nhau.

– Các bước giải bài toán trên máy tính:

+ Xác định bài toán.

+ Tìm thuật toán giải bài toán và cách tổ chức dữ liệu.

+ Viết chương trình: mô tả thuật toán bằng ngôn ngữ lập trình.

+ Kiểm thử chương trình.

– Mỗi ngôn ngữ lập trình bậc cao đều có các yếu tố cơ bản: bảng chữ cái; cú pháp, ngữ nghĩa; các kiểu dữ liệu; các câu lệnh, biểu thức, thư viện các hàm cho sẵn.

– Có hai chế độ dịch chương trình viết trên ngôn ngữ lập trình bậc cao sang ngôn ngữ máy là biên dịch và thông dịch.