Bai tap C++ 1
Chia sẻ bởi Hoàng Văn Triều |
Ngày 25/04/2019 |
55
Chia sẻ tài liệu: bai tap C++ 1 thuộc Tin học 11
Nội dung tài liệu:
BÀI BÁO CÁO WEEK 06
( ( (
Phương pháp lập trình cấu trúc
Lập trình cấu trúc là một phương pháp lập trình có các đặc trưng cơ bản sau : tính đơn thể, cấu trúc điều khiển và tính vào/ra đơn. Tuân thủ theo nguyên tắc lập trình có cấu trúc sẽ giúp các chương trình dễ viết, dễ đọc, dễ hiểu, dễ kiểm lỗi và dễ hiệu chỉnh.
Tính đơn thể (modules) :
Với lập trình cấu trúc, các vấn đề trong lập trình được phân rã (chia nhỏ) thành những phần nhỏ hơn gọi là các đơn thể. Mỗi đơn thể, được gọi là một chương trình con trong các ngôn ngữ lập trình, sẽ thực hiện một nhiệm vụ định trước trong chương trình. Ðiểm lợi chính của kỹ thuật này là nó đơn giản hóa việc phát triển chương trình vì mỗi đơn thể chương trình có thể được phát triển một cách độc lập. Khi các đơn thể được lắp ghép lại, chúng tạo thành một chương trình hoàn chỉnh tạo ra được kết quả mong muốn.
Sơ đồ cấu trúc (structure chart) hay còn gọi là sơ đồ phân cấp (hierarchy chart) thường được dùng để phân rã và biểu diễn cho các đơn thể trong chương trình. Khi một quá trình phân rã chương trình hoàn tất, toàn bộ cấu trúc của chương trình sẽ được biểu diễn bằng một sơ đồ phân cấp.
Cấu trúc điều khiển (control structure) :
Trong lập trình cấu trúc, người ta sử dụng 3 cấu trúc điều khiển để tạo nên logic của chương trình. Mọi vấn đề logic đều có thể giải quyết được bằng cách phối hợp 3 cấu trúc này. 3 cấu trúc này là : cấu trúc tuần tự , cấu trúc chọn và cấu trúc lặp.
/Cấu trúc tuần tự : trong cấu trúc này, việc các quá trình được thực hiện tuần tự, từ quá trình này đến quá trình theo sau nó.
/Cấu trúc chọn : hay còn gọi là cấu trúc nếu … thì …ngược lại (if….then…else) cho phép các lập trình viên diễn đạt được các logic điều kiện trong chương trình. Ý nghĩa của cấu trúc này là nếu điều kiện là đúng thì thực hiện quá trình ứng với điều kiện đúng, ngược lại, thực hiện quá trình ứng với điều kiện sai.
Một dạng khác của cấu trúc chọn là cấu trúc case. Cấu trúc case được dùng khi một điều kiện được kiểm tra có thể dẫn đến 2 hay nhiều quá trình xử lý khác nhau. Trong một chương trình, menu là một ví dụ về cấu trúc case vì nó cung cấp nhiều chọn lựa xử lý khác nhau.
Cấu trúc lặp: cho phép thực hiện nhiều lần một quá trình dựa trên một điều kiện cho trước. Có 2 dạng cơ bản của cấu trúc lặp là cấu trúc lặp for và while. Cấu trúc lặp for cho phép lặp lại một quá trình xử lý một số lần xác định trước. Còn cấu trúc lặp while thì lặp lại quá trình xử lý cho đến lúc điều kiện kiểm tra không còn đúng nữa.
Vào/ra đơn( single entry/exit) :
Đây là một khái niệm quan trọng trong lập trình cấu trúc. Vào/ ra đơn nghĩa là chỉ có một điểm vào và một điểm ra đối với mỗi cấu trúc trong 3 cấu trúc ở trên. Ðiểm vào là điểm bắt đầu cấu trúc điều khiển và điểm ra là điểm kết thúc cấu trúc điều khiển.
Tính chất này cải thiện đáng kể logic của một chương trình, bởi vì, khi đọc một chương trình, lập trình viên có thể đảm bảo rằng cho dù có chuyện gì xảy ra trong cấu trúc đi nữa thì cấu trúc điều khiển chỉ đi ra ở một điểm duy nhất. Trước khi có lập trình cấu trúc, nhiều lập trình viên hay có thói quen chuyển điều khiển đến những phần khác trong chương trình mà không tuân theo luật vào/ra đơn. Ðiều này sẽ dẫn đến một thiết kế chương trình tồi, cực kỳ khó khăn để đọc và kiểm tra lỗi cũng như hiệu chỉnh. Chương trình viết theo lối này sẽ giống như một mớ dây rối !!
Điểm khác biệt giữa thủ tục và hàm
Thủ tục (procedure)
Thủ tục (procedure) là chương trình con thực hiện các thao tác nhất định nhưng không trả về giá trị nào qua tên của nó. Ví dụ các thủ tục vào ra chuẩn: writeln, readln…
Thủ tục có cấu trúc như sau (pascal):
procedure[()];
[]
Begin
[]
End;
Phần đầu thủ tục gồm tên dành riêng procedure, tiếp theo là tên thủ tục. Danh sách tham số có thể có hoặc không.
Phần khai báo dùng để xác định hằng, kiểu, biến và cũng có thể xác định các chương trình con khác được sử dụng tring thủ tục.
Dãy các lệnh được viết giữa cặp tên dành riêng begin và end tạo thành thân cảu thủ tục.
Hàm (
( ( (
Phương pháp lập trình cấu trúc
Lập trình cấu trúc là một phương pháp lập trình có các đặc trưng cơ bản sau : tính đơn thể, cấu trúc điều khiển và tính vào/ra đơn. Tuân thủ theo nguyên tắc lập trình có cấu trúc sẽ giúp các chương trình dễ viết, dễ đọc, dễ hiểu, dễ kiểm lỗi và dễ hiệu chỉnh.
Tính đơn thể (modules) :
Với lập trình cấu trúc, các vấn đề trong lập trình được phân rã (chia nhỏ) thành những phần nhỏ hơn gọi là các đơn thể. Mỗi đơn thể, được gọi là một chương trình con trong các ngôn ngữ lập trình, sẽ thực hiện một nhiệm vụ định trước trong chương trình. Ðiểm lợi chính của kỹ thuật này là nó đơn giản hóa việc phát triển chương trình vì mỗi đơn thể chương trình có thể được phát triển một cách độc lập. Khi các đơn thể được lắp ghép lại, chúng tạo thành một chương trình hoàn chỉnh tạo ra được kết quả mong muốn.
Sơ đồ cấu trúc (structure chart) hay còn gọi là sơ đồ phân cấp (hierarchy chart) thường được dùng để phân rã và biểu diễn cho các đơn thể trong chương trình. Khi một quá trình phân rã chương trình hoàn tất, toàn bộ cấu trúc của chương trình sẽ được biểu diễn bằng một sơ đồ phân cấp.
Cấu trúc điều khiển (control structure) :
Trong lập trình cấu trúc, người ta sử dụng 3 cấu trúc điều khiển để tạo nên logic của chương trình. Mọi vấn đề logic đều có thể giải quyết được bằng cách phối hợp 3 cấu trúc này. 3 cấu trúc này là : cấu trúc tuần tự , cấu trúc chọn và cấu trúc lặp.
/Cấu trúc tuần tự : trong cấu trúc này, việc các quá trình được thực hiện tuần tự, từ quá trình này đến quá trình theo sau nó.
/Cấu trúc chọn : hay còn gọi là cấu trúc nếu … thì …ngược lại (if….then…else) cho phép các lập trình viên diễn đạt được các logic điều kiện trong chương trình. Ý nghĩa của cấu trúc này là nếu điều kiện là đúng thì thực hiện quá trình ứng với điều kiện đúng, ngược lại, thực hiện quá trình ứng với điều kiện sai.
Một dạng khác của cấu trúc chọn là cấu trúc case. Cấu trúc case được dùng khi một điều kiện được kiểm tra có thể dẫn đến 2 hay nhiều quá trình xử lý khác nhau. Trong một chương trình, menu là một ví dụ về cấu trúc case vì nó cung cấp nhiều chọn lựa xử lý khác nhau.
Cấu trúc lặp: cho phép thực hiện nhiều lần một quá trình dựa trên một điều kiện cho trước. Có 2 dạng cơ bản của cấu trúc lặp là cấu trúc lặp for và while. Cấu trúc lặp for cho phép lặp lại một quá trình xử lý một số lần xác định trước. Còn cấu trúc lặp while thì lặp lại quá trình xử lý cho đến lúc điều kiện kiểm tra không còn đúng nữa.
Vào/ra đơn( single entry/exit) :
Đây là một khái niệm quan trọng trong lập trình cấu trúc. Vào/ ra đơn nghĩa là chỉ có một điểm vào và một điểm ra đối với mỗi cấu trúc trong 3 cấu trúc ở trên. Ðiểm vào là điểm bắt đầu cấu trúc điều khiển và điểm ra là điểm kết thúc cấu trúc điều khiển.
Tính chất này cải thiện đáng kể logic của một chương trình, bởi vì, khi đọc một chương trình, lập trình viên có thể đảm bảo rằng cho dù có chuyện gì xảy ra trong cấu trúc đi nữa thì cấu trúc điều khiển chỉ đi ra ở một điểm duy nhất. Trước khi có lập trình cấu trúc, nhiều lập trình viên hay có thói quen chuyển điều khiển đến những phần khác trong chương trình mà không tuân theo luật vào/ra đơn. Ðiều này sẽ dẫn đến một thiết kế chương trình tồi, cực kỳ khó khăn để đọc và kiểm tra lỗi cũng như hiệu chỉnh. Chương trình viết theo lối này sẽ giống như một mớ dây rối !!
Điểm khác biệt giữa thủ tục và hàm
Thủ tục (procedure)
Thủ tục (procedure) là chương trình con thực hiện các thao tác nhất định nhưng không trả về giá trị nào qua tên của nó. Ví dụ các thủ tục vào ra chuẩn: writeln, readln…
Thủ tục có cấu trúc như sau (pascal):
procedure
[
Begin
[
End;
Phần đầu thủ tục gồm tên dành riêng procedure, tiếp theo là tên thủ tục. Danh sách tham số có thể có hoặc không.
Phần khai báo dùng để xác định hằng, kiểu, biến và cũng có thể xác định các chương trình con khác được sử dụng tring thủ tục.
Dãy các lệnh được viết giữa cặp tên dành riêng begin và end tạo thành thân cảu thủ tục.
Hàm (
* Một số tài liệu cũ có thể bị lỗi font khi hiển thị do dùng bộ mã không phải Unikey ...
Người chia sẻ: Hoàng Văn Triều
Dung lượng: |
Lượt tài: 0
Loại file:
Nguồn : Chưa rõ
(Tài liệu chưa được thẩm định)