4. Các phương pháp biểu diễn thuật toán4.1 Dùng ngôn ngữ tự nhiênDùng ngôn ngữ thường ngày để liệt kê các bước củathuật toán.25Ví dụ: Thuật toán giải phương trình bậcnhất ax+b=0 với a,b là hằng số1. Yêu cầu cho biết giá trị của a,b2. Nếu a=0 thì2.1 Nếu b = 0 thì PT vô số nghiệm.Kết thúc thuật toán2.2 Nếu b ≠ 0 thì PT vô nghiệm.Kết thúc thuật toán3. Nếu a ≠ 0 thì PT có nghiệp x=-b/a.Kết thúc thuật toán264. Các phương pháp biểu diễn thuật toán4.1 Dùng ngôn ngữ tự nhiênKhông có qui tắc cố định, nên thường dài dòng,khó hiểu,đôi khi không thể hiện rõ cấu trúc của thuật toán.274. Các phương pháp biểu diễn thuật toán4.2 Dùng lưu đồ, sơ đồ khốiLưu đồ hay sơ đồ khối là công cụ trực quan để diễn đạt các thuậttoán.Các ký hiệu:Dữ liệu nhập/xuấtBắt đầukết thúcThứ tự thực hiệnĐĐiều kiện lựa chọnSThao tác xử lý28Ví dụ: Thuật toán giải phương trình bậcnhất ax+b=0 với a,b là hằng sốBắt đầua,ba=0Sx = -b/ax29kết thúcĐb=0SPTVNĐPTVĐ4. Các phương pháp biểu diễn thuật toán.4.2 Dùng mã giảVay mượn cú pháp của một ngôn ngữ lập trình nào đó để thể hiệnthuật toánVí dụ: Giải pt ax+b=0 với a,b là hằng số. [5/6]- Nhập a,b- if a=0 thìif b=0 thì : xuất kết quả “Pt vô định”else xuất kết quả “Pt vô nghiệm”else xuất kết quả x = -b/a30Bài tập tổng hợp: Viết thuật toán dạng liệtkê và vẽ lưu đồ các vấn đề sau1.2.3.4.5.6.7.31Tính diện tích, chu vi của hình chữ nhật.Tính diện tích, chu vi của hình tròn.Giải phương trình bậc hai ax2+bx+c=0Tìm số lớn nhất giữa 3 nguyên cho trước được nhập từ bànphím.Nhập vào một tháng trong năm, cho biết tháng đó có baonhiêu ngày.Nhập vào hai số nguyên, cho biết ước chung lớn nhất củachúng.Nhập vào một số nguyên dương, cho biết số đó có nguyên tốhay không?
Học Tập > Tin học đại cương > Giải sách bài tập HUST
Phần II: Giải quyết bài toán
[Bài 149-156][Ấn vào đáp án bạn cho là đúng để xem kết quả]
Copyright : Theza
ღ Lưu ý: Mình chỉ sử dụng Fanpage Theza2 để bình luận. Mọi nick khác đều không phải mình.
Mình hiện tại có những việc riêng phải bận cho cuộc sống của mình, sẽ không còn thường xuyên hồi đáp các bình luận, mong được lượng thứ..
Liên kết hay đáng ghe thăm:
HocTapHay.com:Tổng hợp kiến thức, bải giảng các môn học Trung học cơ sở, Trung học phổ thông,... khá đầy đủ và chi tiết.
February 28, 2011 by huynhngocduc
1.1 Khái niệm thuật toán Thuật toán là một khái niệm cơ bản của Toán học và Tin học. Khi viết một chương trình máy tính, người ta thường cài đặt một phương pháp đã được nghĩ ra trước đó để giải quyết một vấn đề. Từ “thuật toán” được dùng trong khoa học máy tính để để chỉ sự mô tả một phương pháp giải bài toán thích hợp cho việc cài đặt thành các chương trình nhờ các ngôn ngữ lập trình. Một thuật toán thường được thể hiện bởi một thủ tục gồm một dãy hữu hạn bước mà theo đó ta sẽ đạt đến lời giải cho bài toán. Người ta có thể trình bày thuật toán bằng cách liệt kê ra các bước của thuật toán sử dụng ngôn ngữ tự nhiên hay một ngôn ngữ qui ước nào đó chẳng hạn sử dụng một ngôn ngữ lập trình nào đó gần với ngôn ngữ tự nhiên.
Ví dụ 1: thuật toán xác định số n là số chẵn hay lẻ
Trước tiên khi đọc đề thì chúng ta phải xác định đầu vào và đầu ra của bài toán Đầu vào [Input]: Số n Đầu ra [Output]: In ra màn hình dòng thông báo là số chẵn hay lẻChúng ta thực hiện từng bước như sau:
B1: Bắt đầu B2: Nhập n B3. Nếu n chia hết cho 2 [n mod 2 = 0] Nếu đúng thì sang bước 4 Nếu sai thì sang bước 5 B4. In ra thông báo n là số chẵn. Sang bước 6 B5. In ra thông báo n là số lẻ Sang bước 6
B6. Kết thúc chương trình
Biểu diễn thuật toán xem a,b,c có thể tạo thành 3 cạnh của tam giác không? Nếu có thì tính thêm chu vi của tam giác đó Biểu diễn thuật toán tính tổng các số từ 1 đến n. Tổng bằng mấy, i bằng mấy Biểu diễn thuật toán tìm số lớn nhất [nhỏ nhất] trong 3 số a,b,c
Biểu diễn thuật toán tính tổng các số lẻ, chẵn
Lưu đồ thuật toán là công cụ dùng để biểu diễn thuật toán, mô tả nhập [input], dữ liệu xuất [output] và luồng xữ lý thông qua các ký hiệu hình học. Công cụ này rất thích hợp để bạn học cách tư duy phân tích bài toán.
Để vẽ lưu đồ thuật toán, bạn cần nhớ và tuân thủ các ký hiệu sau đây:
Lưu đồ thuật toán được duyệt lưu đồ thuật toán theo trình tự sau:
- Duyệt từ trên xuống.
- Duyệt từ trái sang phải.
Để cho dễ hình dung, chúng ta sẽ tìm hiểu các bài toàn sau:
- Đầu vào: một số nguyên n.
- Đầu ra: giá trị tuyệt đối của số nguyên n.
Bản chất của bài toán này là bạn cần kiểm tra số nguyên n có nhỏ hơn 0 hay không. Nếu nhỏ hơn 0 thì bạn nhân giá trị của n cho -1 để chuyển thành số nguyên dương. Còn nếu n lớn hơn 0 thì bạn không cần làm gì cả. Sau cùng thì bạn in giá trị của n ra, đó cũng chính là giá trị tuyệt đối mà bạn cần.
- Đầu vào: hai số nguyên a và b.
- Đầu ra: nghiệm của phương trình.
Bài 3. Vẽ lưu đồ [flowcharts] cho thuật toán nhập vào độ C [Celsius] và chuyển sang độ F [Fahrenheit]. Biết rằng C/5 = [F-32]/9.
Phân tích: Nhập [Input] vào độ C; Xử lý [Process] là F = C * 1.8 + 32; Hiển thị [Output] độ F
Bài 4. Vẽ lưu đồ cho thuật toán nhập vào điểm toán, điểm lý và điểm hoá. Sau đó tính tổng điểm, điểm trung bình và hiển thị kết quả.
Phân tích:
Nhập vào điểm toán, điểm lý và điểm hóa; Xử lý là tính điểm tổng và điểm trung bình cộng; Hiển thị điểm tổng và điểm trung bình cộng.
Bài 5. Vẽ lưu đồ cho thuật toán tính chu vi, diện tích hình tròn. Hiển thị chu vi và diện tích sau khi tính.
Phân tích:
Nhập vào bán kính r; Xử lý là tính chu vi = 2*PI*r, diện tích = PI*r*r; Hiển thị chu vi và diện tích
Bài 6. Vẽ lưu đồ cho thuật toán tìm số lớn nhất trong 3 số a, b và c.
Phân tích:
Nhập vào 3 số thực; Xử lý tìm số lớn nhất bằng cách so sánh; Hiển thị số lớn nhất
Để vẽ lưu đồ thuật toán thì bạn có thể sử dụng bất kỳ phần mềm nào có khả năng vẽ. Hoặc đơn giản hơn là dùng Word, PowerPoint cũng được. Tuy nhiên để cho dễ dàng thì mình đề nghị 02 phần mềm sau đây:
- Microsoft Visio: đây là phần mềm hỗ trợ vẽ kỹ thuật khá đa năng của Microsoft. Bạn có thể dùng phần mềm này để vẽ các dạng sơ đồ [bao gồm cả flowchart]. Nhưng lưu ý là phần mềm này chỉ hỗ trợ bạn vẽ thôi, không hỗ trợ “chạy” thử trên sơ đồ bạn nhé.
- Crocodile Clips ICT: đây là cũng là phần mềm hỗ trợ việc vẽ sơ đồ và nhiều cái khác nữa. Điểm hay của phần mềm này là cho phép bạn “chạy” thử từng bước trên sơ đồ. Nhờ đó mà bạn sẽ nắm được cách hoạt động của sơ đồ dễ dàng hơn. Do đó mình đề xuất sử dụng phần mềm này để xây dựng sơ đồ trong quá trình học.