Menu
Coddy logo textTech

Récapitulatif - Grille de calendrier

Fait partie de la section Logique et Flux du Journey Swift de Coddy — leçon 11 sur 56.

challenge icon

Défi

Moyen

Lisez trois entiers à partir de trois lignes : days (le nombre total de jours dans un mois, de 28 à 31), start_dow (0 = lundi … 6 = dimanche, le jour de la semaine où tombe le 1er), et cols (le nombre de colonnes à afficher).

Affichez une grille de calendrier :

  • Remplissez la première ligne avec des entrées -- jusqu'à ce que le jour de la semaine soit aligné (un -- par emplacement vide au début)
  • Affichez chaque jour de 1 à days, sur deux caractères de large (utilisez un espace au début pour les jours à un seul chiffre, par exemple 1, 10)
  • Utilisez un seul espace entre les cellules d'une ligne
  • Passez à une nouvelle ligne après chaque cols entrées (incluant le remplissage)

Pour l'entrée 30 / 2 / 7, la sortie est :

-- --  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

Essayez vous-même

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

// TODO : construire un tableau plat de cellules ("--" + chaînes de jours),
// puis imprimer des rangées de `cols` cellules jointes par un seul espace

Toutes les leçons de Logique et Flux