Menu
Coddy logo textTech

Rückblick – Kalender-Grid

Teil des Abschnitts Logik & Kontrollfluss der Swift-Journey von Coddy — Lektion 11 von 56.

challenge icon

Aufgabe

Mittel

Lies drei Ganzzahlen aus drei Zeilen: days (die Gesamtzahl der Tage in einem Monat, 28 bis 31), start_dow (0 = Montag … 6 = Sonntag, der Wochentag, auf den der 1. fällt) und cols (die Anzahl der zu druckenden Spalten).

Gib ein Kalendergitter aus:

  • Fülle die erste Zeile mit -- Einträgen auf, bis der Wochentag ausgerichtet ist (ein -- pro führendem Platzhalter)
  • Gib jeden Tag von 1 bis days aus, zwei Zeichen breit (verwende ein führendes Leerzeichen für einstellige Tage, z. B. 1, 10)
  • Verwende ein einzelnes Leerzeichen zwischen den Zellen in einer Zeile
  • Beginne nach jeweils cols Einträgen (einschließlich der Platzhalter) eine neue Zeile

Für die Eingabe 30 / 2 / 7 ist die Ausgabe:

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

Probier es selbst

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

// TODO: Erstelle ein flaches Array von Zellen ("--" + Tages-Strings),
// drucke dann Zeilen von `cols` Zellen, verbunden durch ein einzelnes Leerzeichen

Alle Lektionen in Logik & Kontrollfluss