Menu
CoddyTech

Thiết lập dự án

Thuộc phần Logic và luồng điều khiển trong hành trình GO của Coddy. Bài học 20 trên 68.

challenge icon

Thử thách

Dễ

Trong vài bài học tiếp theo, bạn sẽ xây dựng một ứng dụng danh sách công việc đơn giản chạy trên dòng lệnh, cho phép người dùng thêm, xem, hoàn thành và xóa công việc.

Trong thử thách này, bạn sẽ tạo nền tảng cho một hệ thống quản lý công việc bằng cách thiết lập cấu trúc dữ liệu và giao diện người dùng cơ bản. Đây là bước đầu tiên để xây dựng một ứng dụng danh sách công việc hoàn chỉnh, sẽ được phát triển thêm trong suốt dự án.

Bạn sẽ nhận được hai đầu vào:

  • Một chuỗi biểu thị tên ứng dụng, ví dụ: "MyTasks"
  • Một chuỗi biểu thị tên người dùng, ví dụ: "Alice"

Nhiệm vụ của bạn là:

  1. Định nghĩa một cấu trúc Task với hai trường:
    • Name (chuỗi) : mô tả công việc
    • Completed (bool) : công việc đã hoàn thành hay chưa
  2. Tạo một slice các cấu trúc Task để lưu danh sách công việc của bạn, ban đầu để trống
  3. Hiển thị lời chào theo định dạng: "Welcome to [app_name], [user_name]!"
  4. Hiển thị menu với các tùy chọn sau, mỗi tùy chọn trên một dòng riêng:
    • "1. Add Task"
    • "2. View Tasks"
    • "3. Complete Task"
    • "4. Remove Task"
    • "5. Exit"
  5. In ra số lượng công việc hiện tại theo định dạng: "Current tasks: [count]"

Thử thách này thiết lập cấu trúc cốt lõi làm nền tảng cho mọi chức năng tiếp theo trong hệ thống quản lý công việc của bạn. Cấu trúc Task sẽ là khối xây dựng để lưu từng công việc, còn slice sẽ quản lý tập hợp công việc của bạn. Menu cung cấp giao diện rõ ràng để người dùng biết họ có thể thực hiện những thao tác nào.

Tự làm thử

package main

import "fmt"

func main() {
    // Đọc đầu vào
    var appName string
    var userName string
    fmt.Scanln(&appName)
    fmt.Scanln(&userName)
    
    // TODO: Viết code của bạn bên dưới
    // Định nghĩa struct Task
    // Tạo một slice chứa các struct Task
    // Hiển thị lời chào và menu
    // In ra số tác vụ hiện có
    
}

Tất cả bài học trong Logic và luồng điều khiển

Tự luyện tập: Trình biên dịch Go online