Menu
Coddy logo textTech

Resumen - Cuadrícula de calendario

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

challenge icon

Desafío

Intermedio

Lee tres números enteros de tres líneas: days (el total de días en un mes, de 28 a 31), start_dow (0 = lunes … 6 = domingo, el día de la semana en que cae el día 1) y cols (el número de columnas a imprimir).

Imprime una cuadrícula de calendario:

  • Rellena la primera fila con entradas -- hasta que el día de la semana se alinee (un -- por cada espacio inicial)
  • Imprime cada día desde 1 hasta days, con un ancho de dos caracteres (usa un espacio inicial para los días de un solo dígito, por ejemplo, 1, 10)
  • Usa un solo espacio entre las celdas de una fila
  • Salta a una nueva línea después de cada cols entradas (incluyendo el relleno)

Para la entrada 30 / 2 / 7, el resultado es:

-- --  1  2  3  4  5
 6  7  8  9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30

Pruébalo tú mismo

let days = Int(readLine()!)!
let startDow = Int(readLine()!)!
let cols = Int(readLine()!)!

// TODO: construir un array plano de celdas ("--" + cadenas de días),
// luego imprimir filas de `cols` celdas unidas por un solo espacio

Todas las lecciones de Lógica y Flujo