Rückblick – Kalender-Raster
Teil des Abschnitts Logik & Kontrollfluss der Swift-Journey von Coddy. Lektion 11 von 56.
Aufgabe
MittelLies 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
1bisdaysaus, 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
colsEinträ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 30Probier 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
1Strings im Detail
Zählen und IndizesGroß-/Kleinschreibung und TrimSuchen in StringsAufteilen und ZusammenfügenTeilstrings ersetzenRückblick – Benutzernamen prüfen4Mengen
Mengen erstellenVereinigung und SchnittmengeSubtraktion und symmetrische DifferenzTeilmenge und ObermengeWiederholung – Tag-Filter7Projekt – Gewohnheitstracker
ProjektübersichtAls erledigt markieren2Bereiche & Schrittweiten
Geschlossen vs. halboffenSchrittweiteBereichsmethodenBereiche in SwitchRückblick – Kalender-Raster5Funktionen höherer Ordnung Teil 1
MapFilterReduceVerketten von Map, Filter und ReduceRückblick – WortstatistikÜbe selbstständig: Swift-Playground