Trần Hữu Phước
Giới thiệu về bản thân
Ngày 50
Thuật toán giải phương trình bậc nhất \(ax + b = 0\)Đầu vào (Input): Hai số thực \(a\) và \(b\).Đầu ra (Output): Nghiệm của phương trình hoặc thông báo số nghiệm (vô nghiệm / vô số nghiệm).Các bước xử lý chi tiết:Bước 1: Nhập hai số thực \(a\) và \(b\).Bước 2: Kiểm tra nếu \(a \neq 0\) thì tính nghiệm \(x = -\frac{b}{a}\), xuất kết quả \(x\) rồi chuyển đến Bước 5.Bước 3: Nếu \(a = 0\), tiếp tục kiểm tra điều kiện của \(b\):Nếu \(b = 0\), xuất thông báo "Phương trình có vô số nghiệm" rồi chuyển đến Bước 5.Nếu \(b \neq 0\), xuất thông báo "Phương trình vô nghiệm" rồi chuyển đến Bước 5.Bước 4: (Bước dự phòng logic).Bước 5: Kết thúc thuật toán.
🍜 Ví dụ: Thuật toán pha mì tôm góiĐầu vào (Input): Một gói mì tôm, 400ml nước sạch, ấm đun nước, bát (tô), đũa.Đầu ra (Output): Một bát mì tôm chín, sẵn sàng để ăn.Các bước xử lý trong thuật toán:Bước 1: Cho 400ml nước vào ấm và đun sôi.Bước 2: Bóc vỏ gói mì, cho vắt mì và các gói gia vị vào bát.Bước 3: Khi nước sôi, rót nước sôi vào bát cho ngập vắt mì rồi đậy nắp lại.Bước 4: Đợi trong khoảng 3 phút để mì chín.Bước 5: Mở nắp, trộn đều gia vị và kết thúc thuật toán.
Các nhánh chính và nhánh con (Main Topics & Subtopics)Định nghĩaDãy các chỉ dẫn rõ ràngCó trình tựGiải quyết vấn đề hoặc nhiệm vụMô tả thuật toánLiệt kê các bước bằng ngôn ngữ tự nhiênSử dụng sơ đồ khốiỨng dụng của thuật toánTrong cuộc sống hàng ngàyNấu ănĐi đườngMua sắm...Trong Tin họcViết chương trìnhXử lí dữ liệu...
Một quy trình thực hiện các bước nhưng không được coi là thuật toán khi nó vi phạm một trong các tính chất cơ bản (như tính xác định hoặc tính hữu hạn).Ví dụ 1 (Vi phạm tính xác định): Hướng dẫn nấu ăn có bước "Cho một lượng muối vừa đủ vào nồi và đợi đến khi thấy ngon thì tắt bếp".Lý do: Cụm từ "vừa đủ" và "ngon" mang tính cảm tính, không rõ ràng và không thể định lượng chính xác để máy tính hay mọi người thực hiện cho ra cùng một kết quả.Ví dụ 2 (Vi phạm tính hữu hạn): Quy trình điều khiển Robot gồm hai bước:Bước 1: Tiến về phía trước 1 bước.Bước 2: Quay lại Bước 1.Lý do: Quy trình này lặp lại mãi mãi và không bao giờ dừng lại.Một quy trình thực hiện các bước nhưng không được coi là thuật toán khi nó vi phạm một trong các tính chất cơ bản (như tính xác định hoặc tính hữu hạn).Ví dụ 1 (Vi phạm tính xác định): Hướng dẫn nấu ăn có bước "Cho một lượng muối vừa đủ vào nồi và đợi đến khi thấy ngon thì tắt bếp".Lý do: Cụm từ "vừa đủ" và "ngon" mang tính cảm tính, không rõ ràng và không thể định lượng chính xác để máy tính hay mọi người thực hiện cho ra cùng một kết quả.Ví dụ 2 (Vi phạm tính hữu hạn): Quy trình điều khiển Robot gồm hai bước:Bước 1: Tiến về phía trước 1 bước.Bước 2: Quay lại Bước 1.Lý do: Quy trình này lặp lại mãi mãi và không bao giờ dừng lại.Một quy trình thực hiện các bước nhưng không được coi là thuật toán khi nó vi phạm một trong các tính chất cơ bản (như tính xác định hoặc tính hữu hạn).Ví dụ 1 (Vi phạm tính xác định): Hướng dẫn nấu ăn có bước "Cho một lượng muối vừa đủ vào nồi và đợi đến khi thấy ngon thì tắt bếp".Lý do: Cụm từ "vừa đủ" và "ngon" mang tính cảm tính, không rõ ràng và không thể định lượng chính xác để máy tính hay mọi người thực hiện cho ra cùng một kết quả.Ví dụ 2 (Vi phạm tính hữu hạn): Quy trình điều khiển Robot gồm hai bước:Bước 1: Tiến về phía trước 1 bước.Bước 2: Quay lại Bước 1.Lý do: Quy trình này lặp lại mãi mãi và không bao giờ dừng lại.
Input: Số nguyên dương \(n\).Output: Tổng \(S = 1 + 2 + ... + n\).Cách 1: Sử dụng phương pháp lặp (Thông dụng trong Tin học)Bước 1: Khởi tạo giá trị ban đầu \(S \leftarrow 0\) và biến đếm \(i \leftarrow 1\).Bước 2: Nếu \(i > n\) thì chuyển đến Bước 5.Bước 3: Cộng thêm $i vào S$ bằng lệnh \(S \leftarrow S + i\).Bước 4: Tăng biến đếm thêm 1 bằng lệnh \(i \leftarrow i + 1\) rồi quay lại Bước 2.Bước 5: Xuất kết quả \(S\) và kết thúc thuật toán.Cách 2: Sử dụng công thức toán học (Tối ưu nhất)Bước 1: Nhập số nguyên dương \(n\).Bước 2: Tính tổng bằng công thức \(S \leftarrow \frac{n \times (n + 1)}{2}\).Bước 3: Xuất kết quả \(S\) và kết thúc thuật toán.
Nhánh chính 1: Khái niệm & Vai trò
Khái niệm: Là cấu trúc điều khiển thực hiện lặp đi lặp lại một hoặc nhiều câu lệnh khi một điều kiện nào đó còn đúng hoặc chưa đủ số lần.
Vai trò:
Giảm bớt công sức viết mã nguồn cho các công việc lặp lại.
Giúp chương trình ngắn gọn, tối ưu và dễ quản lý.
Lặp vô hạn: Là lỗi xảy ra khi điều kiện dừng lặp không bao giờ được thỏa mãn (cần tránh hoặc sử dụng các lệnh thoát vòng lặp như break).
Nhánh chính 2: Phân loại cấu trúc lặp
Lặp với số lần biết trước:
Sử dụng khi ta xác định rõ số lần lặp lại của công việc ngay từ đầu.
Thường gắn liền với khái niệm Biến đếm.
Lặp với số lần chưa biết trước:
Số lần lặp phụ thuộc hoàn toàn vào một Điều kiện cụ thể.
Vòng lặp dừng lại ngay khi điều kiện đó không còn được thỏa mãn.
Nhánh chính 3: Thể hiện trong Ngôn ngữ Lập trình (Ví dụ Python/C++)
Vòng lặp for (Lặp biết trước):
Cú pháp (Python): for i in range(n):
Thành phần: Biến đếm i, vùng giá trị tuần tự range(), khối lệnh lặp.
Vòng lặp while (Lặp chưa biết trước):
Cú pháp (Python): while <điều kiện>:
Hoạt động: Kiểm tra điều kiện trước
Nếu Đúng thì thực hiện khối lệnh bên trong và quay lại kiểm tra
Nếu Sai thì kết thúc vòng lặp.
Nhánh chính 4: Lưu ý khi sử dụng
Phải đảm bảo giá trị của điều kiện thay đổi sau mỗi vòng lặp để tránh vòng lặp vô hạn.
Có thể kết hợp câu lệnh điều khiển mở rộng:
break: Thoát khỏi vòng lặp lập tức.
continue: Bỏ qua các câu lệnh còn lại trong lượt lặp hiện tại để chuyển sang lượt tiếp theo.
Chú mèo đi thẳng 10 bước nối với c. di chuyển 10 bước2. Chú mèo rẽ phải nối với a. xoay phải 30 độ (khối lệnh có mũi tên xoay theo chiều kim đồng hồ)3. Chú mèo đi tiếp 5 bước nối với b. di chuyển 5 bước
Bước 1: Vẽ thân bóng: Chọn công cụ Hình elip (Ellipse tool), nhấn giữ phím Shift (nếu muốn bóng tròn đều) rồi kéo thả chuột để vẽ thân quả bóng bay.Bước 2: Vẽ núm bóng và dây buộc: Chọn công cụ Đường cong (Curve tool) hoặc Hình tam giác nhỏ để vẽ núm bóng ở phía dưới. Sau đó, dùng công cụ Đường cong hoặc Bút vẽ (Pencil tool) để vẽ một đường uốn lượn làm dây buộc bóng.Bước 3: Chọn màu sắc: Nhấp chuột vào hộp màu Color để chọn màu sắc em yêu thích cho quả bóng (ví dụ: đỏ, xanh, vàng...).Bước 4: Tô màu bóng: Chọn công cụ Tô màu (Fill with color / Thùng sơn), sau đó di chuyển chuột vào bên trong thân quả bóng và nhấp chuột trái để đổ màu.
lệnh hoặc khối lệnh được thực hiện lặp đi lặp lại nhiều lần cho đến khi một điều kiện nào đó được thỏa mãn