Menu
Coddy logo textTech

Visualizando Tarefas

Parte da seção Lógica & Fluxo do Journey de C++ da Coddy — lição 20 de 56.

challenge icon

Desafio

Fácil

Estenda sua ferramenta de lista de tarefas implementando a funcionalidade de visualização para exibir todas as tarefas em um formato de lista numerada. Isso se baseia na lição anterior, adicionando a capacidade de ver quais tarefas foram armazenadas no sistema.

As seguintes entradas serão fornecidas:

  • Um número inteiro n representando o número de tarefas a serem adicionadas à lista
  • Em seguida, n strings representando as descrições das tarefas

Seu programa deve:

  1. Começar com a mesma configuração da lição anterior (um std::vector<std::string> vazio chamado tasks e a mensagem de boas-vindas)
  2. Ler o número de tarefas e adicionar cada descrição de tarefa ao vetor usando push_back()
  3. Verificar se o vetor de tarefas está vazio usando o método .empty()
  4. Se o vetor estiver vazio, imprimir uma mensagem indicando que não há tarefas
  5. Se o vetor contiver tarefas, iterar por ele usando um loop for tradicional com um índice
  6. Imprimir cada tarefa como uma lista numerada, começando em 1 (não 0)
  7. Exibir o número total de tarefas ao final

Use o seguinte formato de saída exato:

Para lista de tarefas vazia:

Welcome to Task List Tool!

Menu Options:
1. Add Task
2. View Tasks
3. Quit

Task list system initialized and ready!
No tasks available.

Para lista de tarefas não vazia:

Welcome to Task List Tool!

Menu Options:
1. Add Task
2. View Tasks
3. Quit

Task list system initialized and ready!
Your Tasks:
1. [first task]
2. [second task]
3. [third task]
...
Total tasks: [number of tasks]

Use um loop for tradicional com i começando em 0 e indo até tasks.size(). Ao imprimir, exiba i + 1 para mostrar os números das tarefas começando em 1, e acesse cada tarefa usando tasks[i].

Experimente você mesmo

#include <iostream>
#include <vector>
#include <string>
using namespace std;

int main() {
    vector<string> tasks;
    
    cout << "Welcome to Task List Tool!" << endl;
    cout << endl;
    cout << "Menu Options:" << endl;
    cout << "1. Add Task" << endl;
    cout << "2. View Tasks" << endl;
    cout << "3. Quit" << endl;
    cout << endl;
    cout << "Task list system initialized and ready!" << endl;
    
    string taskDescription;
    getline(cin, taskDescription);
    
    tasks.push_back(taskDescription);
    
    cout << "Task \"" << taskDescription << "\" added successfully!" << endl;
    cout << "Total tasks: " << tasks.size() << endl;
    
    return 0;
}

Todas as lições de Lógica & Fluxo