OOP (2) - Lập trình cấu trúc

Bài trước: OOP (1) - Lập trình tuần tự
-----

2.1.1       Lập trình cấu trúc


Trong phương pháp lập trình tuần tự, chương trình sẽ được thực thi tuần tự từng lệnh, từ trên xuống dưới. Phương pháp lập trình này không thể giải quyết được những bài toán phức tạp.

Để giải quyết những bài toán phức tạp đòi hỏi chương trình không những chỉ xử lý theo tuần tự mà còn phải có khả năng ra quyết định hoặc thực hiện lặp lại một khối lệnh cụ thể.

Phương pháp lập trình cấu trúc[1] là phương pháp lập trình không những cho phép xử lý các câu lệnh theo kiểu tuần tự từ trên xuống, mà còn có thể xử lý tùy theo tình huống và lặp lại nhiều lần. Phương pháp này sử dụng các cấu trúc điều khiển (if…else), cấu trúc lặp (while, for), các khối lệnh (block structures), và các chương trình con (subroutine).

Ví dụ, viết chương trình để thực hiện các chức năng sau:

Nhập một số nguyên dương n (n >= 0):

– Kiểm tra đầu vào, nếu không hợp lệ, cho người dùng nhập lại

– Xuất dãy số từ 1 đến n

– Tính tổng từ 1 đến n

– Tính tổng các số lẻ

– Tính tổng các số chẵn

[C++]

[C#]

[JavaScript]

-----
Cập nhật: [28/02/2020]
-----
Xem thêm: OOP (3) -
Xem thêm: Danh sách bài học

OOP (1) - Lập trình tuần tự

1.1       Lập trình là gì?


Lập trình gọi đầy đủ là lập chương trình máy tính hay lập trình máy tính (computer program). Lập trình là tạo ra chương trình cho máy tính, để thực hiện một công việc xử lý thông tin nào đó.

Chương trình là một tập các lệnh (chỉ thị) được tổ chức theo một trình tự nhất định để máy tính thực hiện.

Để lập trình cần sử dụng ngôn ngữ lập trình.

Có ba loại ngôn ngữ lập trình:

– Mã máy

– Hợp ngữ

– Ngôn ngữ cấp cao: C, C++, C#, Java, PHP, Python, JavaScript, Ruby, SQL và nhiều ngôn ngữ khác

1.2       Các phương pháp lập trình


Một số phương pháp lập trình:

– Lập trình tuần tự

– Lập trình cấu trúc

– Lập trình hướng sự kiện

– Lập trình hướng đối tượng

Lập trình tuần tự

Lập trình tuần tự (sequential programming), là cách lập trình theo kiểu tuần tự, chương trình chỉ là một dãy các lệnh được thực hiện tuần tự từ đầu đến cuối (đơn luồng).

Kiểu lập trình này đơn giản, tuy nhiên phương pháp này không thể xử lý được các bài toán phức tạp.

Cả chương trình chỉ có một hàm.

Đọc thêm về lập trình PLC (Programmable Logic Controller – bộ điều khiển logic có thể lập trình được). Lập trình PLC được sử dụng trong điều khiển máy in, máy đánh sợi, máy se chỉ, máy chế biến thực phẩm, máy cắt tốc độ cao, hệ thống phân bổ giám sát trong dây chuyền sản xuất.

Ví dụ một chương trình để điều khiển một hệ thống tự động:[1]

Khi bạn nhấn Start. Nếu có phôi ở vị trí cấp phôi thì quy trình sẽ diễn ra theo trình tự như sau:

1 Tay gắp đi qua vị trí trạm 2

2 Xy lanh đẩy phôi đi ra và kẹp phôi

3 Tay gắp quay về phía trạm 1

4 Bật giác hút lên để hút phôi

5 Xy lanh lui về (không kẹp phôi nữa)

6 Tay gắp đi về phía trạm 2

7 Nhả phôi ra

8 Tay gắp trở lại vị trí ban đầu (trạm 1) để không làm cản trở hoạt động của trạm 2

Kết thúc chu trình. Chu trình có thể tiếp tục khi bạn nhấn nút Start

Ví dụ: Viết chương trình theo kiểu tuần tự để đoán số bạn đang nghĩ trong đầu?

Thuật toán:

1. Bạn tự nghĩ ra một số (bí mật)

2. Lấy số đó cộng với 5

3. Lấy kết quả nhân với 2

4. Lấy kết quả trừ 10

5. Lấy kết quả nhân 3

6. Lấy kết quả cộng 66

7. Lấy kết quả chia 6

Nói kết quả, giáo viên sẽ nói cho bạn biết bạn đã nghĩ số nào trong đầu.

Bài tập: viết chương trình “đoán số” trên theo kiểu tuần tự bằng các ngôn ngữ lập trình C++, C# và JavaScript.

Trước khi viết một chương trình bất kì, luôn đặt ra hai câu hỏi?

– Viết mã nguồn bằng chương trình nào?

– Dùng chương trình nào để biên dịch/thông dịch mã nguồn?

Mã nguồn tham khảo,

[C++]

Muốn lập trình bằng ngôn ngữ C++, bạn có thể sử dụng chương trình Visual Studio để vừa viết mã nguồn, vừa biên dịch mã nguồn và tạo ra tập tin thực thi.

– Mở Visual Studio, vào menu File > New > Project > trong khung Templates (bên trái), chọn Visual C++ > trong khung ở giữa, chọn Empty Project > để mọi thứ mặc định, bấm OK để tạo dự án

– Trong cửa sổ Solution Explorer (khung bên phải) > chuột phải vào Source Files > chọn Add  > New > Item… > chọn C++ File (.cpp) > bấm Add để thêm tập tin mã nguồn cho dự án và sẵn sàng để nhập đoạn mã chương trình

– Nhập đoạn mã nguồn sau:

#include <iostream>
using namespace std;

void main()
{
            int n;
            cout << "Ban hay nhap mot so (bi mat): ";
            cin >> n;
            n = n + 5;
            n = n * 2;
            n = n - 10;
            n = n * 3;
            n = n + 66;
            n = n / 6;
            cout << "Ket qua la: " << n;
            system("pause"); // dung man hinh
}

– Bấm F5 hoặc Fn + F5 hoặc vào menu Debug > Start Debugging để chạy chương trình và xem kết quả. Đem kết quả tới hỏi giáo viên để biết bạn đã nghĩ số mấy trong đầu.

[C#]

Muốn lập trình bằng ngôn ngữ C#, bạn có thể sử dụng chương trình Visual Studio để vừa viết mã nguồn, vừa biên dịch mã nguồn và tạo ra tập tin thực thi.

Để tiện cho việc học C++ và C# cùng lúc, bạn nên thêm luôn vào solution đã tạo project C++ ở bước trên một project C# mới. Như vậy, một solution sẽ có hai project (một C++ và một C#). Muốn biên dịch và chạy project nào thì chuột phải vào project đó (trong cửa sổ Solution Explorer) chọn Set as StartUp Project.

– Cách thêm project C#: trong cửa sổ Solution Explorer (khung bên phải) > chuột phải vào Solution ‘tên solution’ > Add > New Project > ở khung bên trái, chọn Visual C# > ở khung giữ chọn Console Application > bấm OK để hoàn thành việc tạo project mới, sẵn sàng nhập mã nguồn.

­– Nhập đoạn mã nguồn sau:

static void Main(string[] args)
        {
            int n;
            Console.Write("Ban hay nhap mot so (bi mat): ");
            n = Int32.Parse(Console.ReadLine());
            n = n + 5;
            n = n * 2;
            n = n - 10;
            n = n * 3;
            n = n + 66;
            n = n / 6;
            Console.WriteLine("Ket qua la: " + n);
            Console.ReadLine(); // dung man hinh
        }

– Bấm F5 hoặc Fn + F5 hoặc vào menu Debug > Start Debugging để chạy chương trình và xem kết quả. Đem kết quả tới hỏi giáo viên để biết bạn đã nghĩ số mấy trong đầu.

[JavaScript]

Muốn lập trình bằng ngôn ngữ JavaScript, bạn có thể sử dụng chương trình Visual Studio Code để viết mã nguồn, dùng trình duyệt để thông dịch và thực thi mã nguồn.

– Mở VS code hoặc Sublime Text hoặc notepad hoặc một code editor bất kì

– Nhập vào đoạn mã JavaScript sau, lưu thành tập tin .html (ví dụ index.html):

<script>
            var n;
            n = prompt("Ban hay nhap mot so (bi mat): ");
            n = parseInt(n);
            n = n + 5;
            n = n * 2;
            n = n - 10;
            n = n * 3;
            n = n + 66;
            n = n / 6;
            console.log("Ket qua la: " + n);
</script>

– Mở tập tin index.html bằng trình duyệt, mở Developer Tools của trình duyệt > chọn tab Console để xem kết quả.




[1] http://www.dientuvietnam.net

-----
Cập nhật: [28/02/2020]
-----
Bạn muốn tự học HTML bài bản? Xem thêm