Rückblick – Kalender-Grid
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 TrimmenSuchen in StringsTeilen und ZusammenfügenTeilstrings ersetzenWiederholung – Benutzernamen-Check4Mengen
Mengen erstellenVereinigung und SchnittmengeDifferenz und symmetrische DifferenzTeilmenge und ObermengeRückblick – Tag-Filter7Projekt - Habit Tracker
ProjektübersichtAls erledigt markieren2Bereiche & Schrittweiten
Geschlossen vs. halboffenSchrittweiteRange-MethodenRanges in SwitchRückblick – Kalender-Grid5Funktionen höherer Ordnung Teil 1
MapFilterReduceVerkettung von map, filter, reduceRückblick – Wortstatistiken