Menu
Coddy logo textTech

Descripción general del proyecto

Parte de la sección Lógica y Flujo del Journey de Swift de Coddy — lección 33 de 56.

Vas a construir un pequeño seguidor de hábitos. El estado reside en un único diccionario que mapea el nombre de un hábito con su historial de días completados de la semana:

var habits: [String: [Int]] = [
    "read": [1, 3, 5],          // completado el lun, mié, vie
    "workout": [2, 4]           // completado el mar, jue
]

Los días son números enteros 1...7 para Lun...Dom. A lo largo de las próximas cuatro lecciones, añadirás funciones una a una:

  • Añadir un hábito y marcarlo como completado
  • Calcular rachas a lo largo de la semana
  • Imprimir una cuadrícula semanal
  • Comparar dos semanas

Cada lección es independiente, volverás a declarar el diccionario al principio de cada archivo. El estado tiene la misma forma, por lo que los métodos que escribas se transfieren entre lecciones.

challenge icon

Desafío

Principiante

Para poner en marcha el proyecto, escribe el código de configuración de datos:

  1. Inicializa un diccionario habits vacío ([String: [Int]])
  2. Imprime el recuento de hábitos
  3. Imprime si el diccionario está vacío

La salida esperada es:

0
true

Hoja de referencia

Un rastreador de hábitos puede modelarse como un diccionario que mapea nombres de hábitos a arreglos de números de días completados (1...7 para lun–dom):

var habits: [String: [Int]] = [
    "read": [1, 3, 5],    // hecho el lun, mié, vie
    "workout": [2, 4]     // hecho el mar, jue
]

Propiedades útiles de los diccionarios:

habits.count    // número de entradas
habits.isEmpty  // verdadero si no hay entradas

Pruébalo tú mismo

// TODO: declara un [String: [Int]] vacío, luego imprime count y isEmpty
quiz iconPonte a prueba

Esta lección incluye un breve cuestionario. Empieza la lección para responderlo y registrar tu progreso.

Todas las lecciones de Lógica y Flujo