Seite anzeigenÄltere VersionenLinks hierherCopy this pageFold/unfold allNach oben Diese Seite ist nicht editierbar. Du kannst den Quelltext sehen, jedoch nicht verändern. Kontaktiere den Administrator, wenn du glaubst, dass hier ein Fehler vorliegt. ====== 2Ma & 2Mdz 2022-2023 ====== [[gf_informatik:sca|Zurück zu GFIF sca]] ===== Jahr 2M ===== ==== Semester 2 (2M,FS) ==== ++++Vergangenheit| === Mo. 05.02.2024 (2Mdz) - Do. 08.02.2024 (2Ma) === (Mo-Lektion von 2Ma fällt aus wegen Theater) * Info: * 2 Prüfungen: * Mo 18.3.24 * Mo 10.6.24 * Ausblick Themen: * Web: * Social Engineering * Authentifizierung * Verschlüsselung * Daten * ... * **Neues kurzes Thema: Social Engineering** * [[gf_informatik:web_sca:social_engineering#lektion_1|Social Engineering Lektion 1]] * Ablauf: Siehe Slides **HA:** * restliche Artikel von Auftrag lesen === Mo. 05.02.2024 (2Mdz) & Mo. 12.02.2024 (2Ma) === * [[gf_informatik:web_sca:social_engineering#lektion_2|Social Engineering L2]] **HA:** * Auftrag 1 fertig, einige Beiträge werden per Zufall für Präsentation ausgewählt * Familie belehren über Social Engineering. === Mo. 12.02.2024 (nur 2Mdz) === 1. einige Lösungen von Auftrag 1 (Social Engineering) präsentieren lassen 1. Kurz besprechen [[https://www.inside-it.ch/post/fin7-bande-verschickt-usb-sticks-mit-ransomware-20220111]] 1. [[gf_informatik:web_sca:social_engineering#lektion_3_optional|Social Engineering Attacke planen]] === Mo. 12.02.2024 (2Mdz) & Do. 15.02.2024 (2Ma) === * Neues Thema: **[[gf_informatik:web_sca:authentifizierung]]** * Märchenstunde * Slides zu Lektion 1 === Mo. 19.02.2024 (beide) === * **Authentifizierung** * Themen: Brute Force, richtiges Python installieren, KI sinnvoll verwenden * Übersicht **2 Lektionen**: * Hack-Challenge zeigen:[[https://if.ksr.ch/sca/hackme/|Online]] & Offline * benötigen richtiges Python (TJ reicht nicht) * KI als Tutor\\ \\ * **KI** als Tutor: * Zitat Unbekannt: "KI wird die Gescheiten gescheiter machen und die Dummen dümmer." * -> Lerne, die KI sinnvoll einzusetzen. Sie soll dir nicht die Arbeit abnehmen (-> dümmer), sondern dir helfen, dass du sie besser erledigen kannst (-> gescheiter). \\ \\ * Benötigte Programmierkonzepte: * am wichtigsten: * Schleifen (`while` oder `for`), engl. 'loop' * Strings und Manipulation von Strings (Strings zusammensetzen, einzelne Zeichen auslesen, ...) * auch nützlich: * Listen (Elemente hinzufügen, entfernen, auslesen, ...) * Funktionen * falls Themen oben alle klar: * Text-Files einlesen und schreiben\\ \\ * wähle ein Thema, welches dich interessiert ... * ... und lasse es dir von der KI erklären. Führe mit der KI eine **Konversation**.\\ \\ * Mögliche **Prompts**: * "Bitte erkläre mir, was ... in Python ist." * "Mache ein paar Beispiele dazu." * "Erkläre mir dies einfacher." * "Ich verstehe den Teil zu ... nicht. Bitte erkläre mir das genauer." * "Stelle mir eine einfache Aufgabe zum Thema." * Falls Level nicht angemessen, gib KI mehr Infos zu dir: "Ich bin 16 jähriger Schüler mit Grundkenntnissen im Programmieren. * Falls dein Code einen Fehler (Bug) hat oder nicht tut, was er soll: "Was ist an diesem Code falsch? <Code einfügen>" * Tipp: Alles auf **Englisch** -> bessere Antworten.\\ \\ * **[[gf_informatik:web_sca:authentifizierung#brute-force_attacke|Aufgaben zu Brute Force lösen]]** * Aufgabe 0: Python einrichten * Aufgaben 1-3: Hack === Mo. 19.02.2024 (2Mdz) & Do. 22.02.2024 (2Ma) === * 2Mdz: intallieren * 2Ma: * bereits alles installiert, mit Hack beginnen * [[gf_informatik:web_sca:authentifizierung#brute-force_attacke|Aufgaben 1 & 2 hacken]] **HA:** * 2Mdz: Hack Passwort mit PW drei Grossbuchstaben * 2Ma: Aufgaben 1&2 fertig === Mo. 26.02.2024 (beide) === * Auftrag 2L * **Brute-Force** [[https://sca.ksr.ch/doku.php?id=gf_informatik:web_sca:authentifizierung#aufgabe_1zufaellige_zeichenkette|Aufgabe 1]] und [[https://sca.ksr.ch/doku.php?id=gf_informatik:web_sca:authentifizierung#aufgabe_2deutsches_wort|Aufgabe 2]] selbständig programmieren können und verstehen * dabei selbständig **Programmierdefizite** aufarbeiten: * **Wichtigste Konzepte / Themen:** * Schleifen (while, for) * Verzweigungen (if, if-else, if-elif-else) * Listen (Unterschied Listen & Elemente verstehen, Elemente auslesen, verändern, entfernen, anfügen, ...) * Strings (einzelne Buchstaben auslesen, Zusammensetzen, ...) * Funktionen (Argumente/Parameter mit und ohne Rückgabewerte) * **Hilfe-Quellen:** * [[https://sca.ksr.ch/doku.php?id=gf_informatik:programmieren_ii_sca]] * KI als Tutor verwenden. "Liebes ChatGPT, erkläre mir bitte, was Listen sind in Python, wozu man sie verwendet und mache konkrete Beispiele." * YouTube-Tutorials, z.B. von Kanal [[https://www.youtube.com/@ProgrammierenStarten]] Gibt aber noch viele mehr, gerade auf Englisch. * Lehrer * Falls fertig mit A1 & A2, wähle selbst: * [[https://www.codewars.com]] * [[https://sca.ksr.ch/doku.php?id=gf_informatik:web_sca:authentifizierung#aufgabe_3_optional|Optionale Aufgaben zu Brute-Force]] (Reihenfolge egal) === Mo. 26.02.2024 (2Mdz) & Do. 29.02.2024 (2Ma) === weiter an Auftrag von letzter Lektion === Mo. 04.03.2024 (beide) === * **Multifaktor-Authentifizierung:** * [[https://sca.ksr.ch/doku.php?id=gf_informatik:web_sca:authentifizierung#multifaktor-authentifizierung|Multifaktor-Authentifizierung]] * Slides * Aufgabe / Diskussion auf Slides * falls Zeit: bereits mit Aufgabe von nächster Lektion beginnen, keine HA === Mo. 04.03.2024 (2Mdz) & Do. 07.03.2024 (2Ma) === * [[https://sca.ksr.ch/doku.php?id=gf_informatik:web_sca:authentifizierung#aufgabe_1_pruefe_und_verbessere_deine_it-sicherheit|Aufgabe Eigene IT-Sicherheit analysieren & verbessern (10')]] * letzte Lektion zu Programmieraufgaben (Brute-Force) * Aufgaben besprechen, insb. Wortlistenhack * falls alles klar: Aufgabe 3 * **HA:** * Aufgabe zu eigener IT-Sicherheit fertig machen === Mo. 11.03.2024 (beide) - Verschlüsselung L1 === **Neues Thema:** * letztes grosses Oberthema: **Daten** * erstes Thema davon: **Verschlüsselung** Lektion heute * Slides: Rätsel & Einführung Verschlüsselung * Aufgaben: * Optional: [[https://sca.ksr.ch/doku.php?id=gf_informatik:python_vscode_setup_sca#jupyter-notebooks_optional|Jupyter Notebooks verwenden]] * [[gf_informatik:daten_sca:verschluesselung#aufgabe_a1|Aufgabe A1]] * wenn fertig: A2 & Zusatzaufgabe * **HA:** keine === Mo. 11.03.2024 (2Mdz) & Do. 14.03.2024 (2Ma) - Q&A === **Q&A Prüfung** === Mo. 18.03.2024 (beide) - PRÜFUNG I/II === PRÜFUNG zu folgenden Themen: * [[gf_informatik:web_sca:fakenews]] * [[gf_informatik:web_sca:social_engineering]] * [[gf_informatik:web_sca:authentifizierung]] Info: * 45' * isTest2 * keine Hilfsmittel ausser TigerJython Online * Fragetypen: verschiedene, z.B. * Wissen abfragen, z.B. Multiple-Choice * Sachen erklären * Programmieren * ... === Mo. 18.03.2024 (2Mdz) & Do. 21.03.2024 (2Ma) - Verschlüsselung L2 === * Warm-Up: Nachricht an Person mit Caesar verschlüsseln, Verschiebung nicht angeben, Empfänger soll selbst herausfinden. Bsp. Jede Person schreibt Nachricht an die Person, die um 10 Positionen weiter rechts sitzt. * Weiter mit [[gf_informatik:daten_sca:verschluesselung#aufgabe_a1|Aufgabe A1]] * [[gf_informatik:daten_sca:verschluesselung#aufgabe_a2|Aufgabe A2]] * falls fertig: * [[gf_informatik:daten_sca:verschluesselung#zusatzaufgabe|Zusatzaufgabe]] * Dann weiter im nächsten Kapitel: [[gf_informatik:daten_sca:verschluesselung#weitere_einfache_verschluesselungsverfahren|Weitere einfache Verschlüsselungsverfahren]] * **HA:** Aufgaben 1 fertig === Mo. 25.03.2024 (beide) - Verschlüsselung L3 === * Slides Vigenere und Monoalph. Verschlüsselung * Aufgaben B (weiter in 2. Lektion) === Mo. 25.03.2024 (2Mdz) & Do. 28.03.2024 (2Ma) - Verschlüsselung L4 === * weiter Aufgaben B * **HA:** * mind bis und mit B5 * empfohlen auch B6 * Tipp: Gib Codes per Teams ab, resp. Frage dort um Hilfe, um Codes selbst hinzukriegen === FRÜHLINGSFERIEN / SPRING HOLIDAYS === === Mo. 22.04.2024 (beide) === 2Mdz: 1. Slides Häufigkeitsanalyse 1. Gruppenarbeit: Aufgabe C1 1. Häufigkeitsanalyse von Geheimtext gegeben 1. Knacke nun 1. Restliche Aufgaben C 2Ma: 1. Slides Häufigkeitsanalyse (bis und mit Häufigkeitsanalyse von monoalph. VS) 1. Gruppenarbeit: Aufgabe C1 1. Häufigkeitsanalyse von Geheimtext gegeben 1. Knacke nun 1. Aufgabe C 1.5 1. HA: C1.5 fertig === Mo. 22.04.2024 (2Mdz) & Do. 25.04.2024 (2Ma) === 2Ma: * Slides: Kasiski-Test (Vigenere knacken) * Problem: Praktisch niemand hat HA (C1.5) gemacht * Aufgabe C1.5 lösen * Aufgabe C2 lösen * **HA:** C1.5 fertig, weiter mit C2, werden noch etw. Zeit erhalten für C2 2Mdz: * Weiter Aufgaben C * HA: * Am Morgen: Aufgabe C2 fertig, Empfehlung: Per Teams-Chat abgeben * Ergänzung Nachmittag: Alternativ kann auch neue Aufgabe 1.5 machen === Mo. 29.04.2024 (beide) === * Vigenere-Game === Mo. 29.04.2024 (2Mdz) & Do. 02.05.2024 (2Ma) === 2Ma: * letztes Mal an Codes C 2Mdz: * Codes Aufgaben C (primär 1.5 & 2) * letztes Mal dazu * empfohlene HA: weiter an Codes, Abgabe per Teams ++++ === Mo. 06.05.2024 (beide) === * Zeichencodierung I * Aufgaben D1-D3 (D4 optional) 2Ma: **HA:** D3 Beachte: **Ausfall wegen Ferien:** * Do. 09.05.2024 (FERIEN) (2Ma) * Mo. 20.05.2024 (FERIEN) (2Mdz) === Mo. 06.05.2024 (2Mdz) & Do. 23.05.2024 (FERIEN) (2Ma) === * Zeichencodierung II * restliche Aufgaben D **HA:** Aufgaben D fertig === Mo. 27.05.2024 (beide) === 2Mdz: * Slides **XOR** (gesamt) 2Ma: * Slides bis und mit "XOR mit Python" * Aufgaben E1 & E2 * **HA:** E1 & E2 === Mo. 27.05.2024 (2Mdz) & Do. 30.05.2024 (2Ma) === 2Ma: * Slides XOR fertig * Aufgaben E3-... * **HA:** bis und mit E3, Empfehlung: Code von E3 abgeben 2Mdz: * Aufgaben E (XOR) * **HA:** bis und mit E3, Empfehlung: Code von E3 abgeben === Mo. 03.06.2024 (beide) === * Slides "Moderne Verschlüsselungsverfahren" * Aufgaben: * F1 * (F2 auslassen, ist dann aber gute Prüfungsvorbereitung) * F3 & F4 === Mo. 03.06.2024 (2Mdz) & Do. 06.06.2024 (2Ma) === * weiter an Aufgaben * ev. Q&A === Mo. 10.06.2024 (beide) - PRÜFUNG II/II === THEMEN: alles seit und inkl. Verschlüsselung isTest, 45' === Mo. 10.06.2024 (2Mdz) & Do. 13.06.2024 (2Ma) === * Neues Thema: **[[gf_informatik:daten_sca:spreadsheets|Spreadsheets]]** * Keine richtige Informatik, eher "Büromatik" * Kurze Demo: Meine Notentabelle * Zellen Formatieren * Zellenbezüge/verweise * Rechnungen * Auftrag A * **HA:** Auftrag A fertig, also inkl. d) === Mo. 17.06.2024 (beide) === * Warm-up Funktionen gemeinsam * Aufgabe B: Notentabelle === Mo. 17.06.2024 (2Mdz) & Do. 20.06.2024 (2Ma) === * Zusammen Geburtstagsrechner (Zusatzaufgabe) * weiter an Notentabelle === Mo. 24.06.2024 (beide) === AUSFALL === Mo. 24.06.2024 (2Mdz) & Do. 27.06.2024 (2Ma) === AUSFALL ++++Semester 1 (2M,HS)| ==== Semester 1 (2M,HS) ==== === L1 (LMC 1/7) 14.08.23 (2Mdz) & 15.08.23 (2Ma) === * Kurzes Wort zu [[unterricht_bei_sca:start|Unterricht bei sca (Classroom Rules usw.)]] (genau studieren als HA) * **Slides:** * kurze Übersicht GFIF in 2M * **neues Thema: [[gf_informatik:computerarchitektur_sca:start|Computerarchitektur]]** * Slides zu Lektion 1 (Ziele, CPU, Maschinensprache, Assemblersprache, LMC, Befehlssatz) * [[gf_informatik:computerarchitektur_sca:aufgaben_a|]] * falls fertig: mit Aufgaben B beginnen * **HA:** * [[unterricht_bei_sca:start|Unterricht bei sca (Classroom Rules usw.)]] genau studieren * Aufgaben A fertig === L2 (LMC 2/7) 18.08.23 (beide) === * [[gf_informatik:computerarchitektur_sca:start|Slides zu Lektion 2: Erste Computer, Von-Neumann Architektur]] * Auftrag: [[gf_informatik:computerarchitektur_sca:aufgaben_b|]] * falls fertig: [[gf_informatik:computerarchitektur_sca:aufgaben_c|]] * **HA:** * Aufgaben B fertig === L3 (LMC 3/7) 21.08.23 (2Mdz) & 22.08.23 (2Ma) === * Fragen zu HA ([[gf_informatik:computerarchitektur_sca:aufgaben_b|]])? * [[gf_informatik:computerarchitektur_sca:start|Slides zu Lektion 3: Von-Neumann-Zyklus]] * Fragen zu [[gf_informatik:computerarchitektur_sca:aufgaben_b|HA (Aufgaben B)]] * Auftrag: [[gf_informatik:computerarchitektur_sca:aufgaben_c|]] * falls fertig: [[gf_informatik:computerarchitektur_sca:aufgaben_d|]] * **HA:** * Aufgaben C bis und mit A4-I (Verdoppler) fertig === L4 (LMC 4/7) 25.08.23 (beide) === * Fragen zu HA ([[gf_informatik:computerarchitektur_sca:aufgaben_c|Aufgaben C bis und mit Verdoppler]])? * [[gf_informatik:computerarchitektur_sca:start|Slides zu Lektion 4: Branches]] * Auftrag: [[gf_informatik:computerarchitektur_sca:aufgaben_d|]] * falls fertig: [[gf_informatik:computerarchitektur_sca:zusatzaufgaben|]] * **HA:** * Aufgaben D1 fertig machen * Lösung von D1 genau studieren, beinhaltet Zusatzinformationen * D1 muss komplett verstanden sein, bei Unklarheiten per Teams nachfragen === L5 (LMC 5/7) 28.08.23 (2Mdz) & 29.08.23 (2Ma) === == 2Ma == sca abwesend, Arbeitsauftrag: 1. **Studiere die Lösungen** zu den HA ([[gf_informatik:computerarchitektur_sca:aufgaben_d|Aufgabe D1]]) ganz genau. Diese beinhalten zusätzliche Erklärungen dazu, wie man mit den Branch-Befehlen arbeitet. 1. [[gf_informatik:computerarchitektur_sca:aufgaben_d|Aufgaben D2-D3]] 1. wenn fertig: [[gf_informatik:computerarchitektur_sca:zusatzaufgaben|]] 1. **HA:** 1. D2 & D3 1. Abgabe per Teams (nur eigenen Code mit kurzer Rückmeldung) bis Mittwochabend == 2Mdz == * Besprechung HA (D1) * [[gf_informatik:computerarchitektur_sca:aufgaben_d|Aufgaben D2-D3]] * wenn fertig: [[gf_informatik:computerarchitektur_sca:zusatzaufgaben|]] * **HA:** * D2 & D3 * Abgabe per Teams (wie gehabt) bis Mittwochabend === L6 (LMC 6/7) 01.09.23 (beide) === * Rückmeldung HA: * verwende z.B. `BRP JMP` anstelle `BRP 9` * Schleifen: Bedingung am Anfang vs. Ende von Codeblock überprüfen (siehe unten) * Slides **"Zeichentabellen & Symbole im LMC"** * *konkrete* Fragen zu HA? * Auftrag: * zuerst Auftrag auf Slides ("KSR" ausgeben) * [[gf_informatik:computerarchitektur_sca:aufgaben_e|]] * falls fertig: [[gf_informatik:computerarchitektur_sca:zusatzaufgaben]] * **HA:** * Aufgaben E fertig * falls HA auf heute (D2 & D3) noch nicht (gut) gemacht **Schleifen mit LMC:** <code> // Bedingung am Ende vom Codeblock überprüfen // Problem: erster Durchlauf kann nicht verhindert werden ... LOOP ... ... BRP LOOP HLT </code> <code> // Bedingung am Anfang vom Codeblock überprüfen ... LOOP ... BRZ END // am Anfang von Loop eine Bedingung prüfen ... BRA LOOP END HLT </code> === L7 (LMC 7/7) 04.09.23 (2Mdz) & 05.09.23 (2Ma) === * **letzte Lektion zu Computerarchitektur / LMC** * Kahoot zu LMC * Fragen zu Aufgaben? * **[[gf_informatik:computerarchitektur_sca:zusatzaufgaben#schnapps-aufgabe]]** zusammen lösen (nur wer will, zuerst alleine, dann LP löst vor): * BenutzerIn gibt Alter ein * LMC gibt aus, welchen Alkohol sie trinken dar: H für Himbeersirup, B für Bier, S für Schnapps * Aufgaben lösen: * falls noch nicht gemacht: [[gf_informatik:computerarchitektur_sca:aufgaben_c#ii_3xaddition|3xAddition]] * [[gf_informatik:computerarchitektur_sca:zusatzaufgaben]] === L8 (HTML 1/) 08.09.23 (beide) === **Neues grosses Überthema: [[gf_informatik:web_sca:start]]** * Starten heute mit Thema **[[gf_informatik:web_sca:websites]]** * erstes Kapitel: [[gf_informatik:web_sca:websites#grundgeruest_einer_website]] * Slides "web\_01\_websites\_01\_html" * Auftrag "Grundgerüst einer Website" (VSCode installieren uws. ) * falls fertig: mit nächstem Kapitel "Website erstellen mit HTML" beginnen * **HA:** * Auftrag fertig === 11.09.23 (HTML 2/) (2Mdz) & 12.09.23 (2Ma) === * **Ziele:** * wichtigsten HTML-Elemente kennenlernen * damit Website nachbauen * **[[gf_informatik:web_sca:websites#website_erstellen_mit_html|Auftrag II (Website erstellen mit HTML)]]** * Idee: Selber Theorie studieren ... * ... ausprobieren ... * ... auf Website anwenden. * Genaue Anweisungen im Auftrag. * falls fertig: Im nächsten Schritt werden wir unsere Seite mit CSS stylen. Informiere dich im Web darüber, was CSS ist, wie es funktioniert (Beispiele) und wie man es in eine existierende HTML-Website einbindet. * **HA:** Auftrag fertig === 15.09.23 (HTML 3/) (beide) === * **[[gf_informatik:web_sca:websites#website_stylen_mit_css|Slides zu CSS]]** * [[https://sca.ksr.ch/doku.php?id=gf_informatik:web_sca:websites#auftrag_iii|Auftrag III (Website vom letzten Auftrag mit CSS stylen):]] * Theorie in Slides und auf [[gf_informatik:web_sca:websites#theorie_css|Wiki]] * nutze Google, AI, ... zur Hilfe * **HA:** * Auftrag III fertig, Inhalt von CSS (Screenshot oder als Code-Snippet) per Teams schicken bis SO-Abend === 18.09.23 (HTML 4/) (2Mdz) & 19.09.23 (2Ma) === * Bemerkungen zu Auftrag III: * Um Abstände zu regeln wurde meist mit *padding* gearbeitet. Verwende auch *margin* * Hauptproblem: Slogan und Link am Anfang zentrieren -> Tricky! * kurzer Input zu **IDs und Classes** * [[gf_informatik:web_sca:websites#projekt_ivlebenslauf|Auftrag Lebenslauf I/II]] * Zeit: 2 Lektionen * Infos zu Abgabe, Bewertung usw. bei Projektbeschrieb * Deadline Abgabe: kommender Freitag * Fragen zu HTML & CSS? === 22.09.23 (HTML 5/) (beide) === * [[gf_informatik:web_sca:websites#projekt_ivlebenslauf|Auftrag Lebenslauf II/II]] === 25.09.23 (HTML 6/) (2Mdz) & 26.09.23 (2Ma) === * **Q&A zur Prüfung:** selbständige Vorbereitung, Fragen?\\ \\ * Rückmeldung Auftrag Lebenslauf: * Falls noch nicht gut: Korrigieren und nochmals abgeben bis heute Abend * Zu viele leere Zeilen, setzte diese nur sehr spärlich ein. Typischerweise nur eine Leerzeile vor Überschriften. * **Pfade:** * **Vermeide Sonderzeichen & Leerschläge** in Pfaden (Dateinamen und Ordnernamen). Wird z.B. auf Windows angezeigt aber nicht auf Mac (und umgekehrt). Faustregel: Nur a-z, A-Z, 0-9, Striche (-,\_) verwenden * Files sinnvoll (um)benennen (`"MicrosoftTeams-image (2).jpg"` -> `"malediven_strand.jpg"`) * **Keine absoluten** Pfade wie: `src="C:\Users\Fritzli\OneDrive\lebenslauf\images\malediven_beach.jpg"`. * Stattdessen **relative Pfade**: `\images\malediven_beach.jpg"` (relativ von `index.html` aus). {{ :gf_informatik:files_folders_relative_path.png?400 |}} * **Tags:** * Doppeltags meist falsche Lösung. `<h1><u>I Überschrift</u></h1>` -> `<h1>I Überschrift</h1>` und passe Layout von h1 im CSS an. * Was aber ok ist: `<p>Ich spiele gerne <strong>Fussball</strong></p>` * Inflationäre Verwendung von <p>: `<p><h1>I Überschrift</h1></p>` -> `<h1>I Überschrift</h1>`, h1 ist bereits Block-Element. Verwende <p> wirklich nur für einen Absatz Fliesstext. * **HA:** Auftrag Lebenslauf verbessern falls nötig, bis heute Abend === 29.09.23 (beide) - PRÜFUNG === PRÜFUNG Themen: 1. [[gf_informatik:computerarchitektur_sca:start]] 1. [[gf_informatik:web_sca:websites]] Hilfsmittel: Instructionset LMC (**selbst mitbringen!**) ohne weitere Notizen Lernziele: Siehe Seiten zu Themen Organisatorisches: * Prüfung per IsTest & SafeExamBrowser (SEB) * LMC funktioniert im SEB und kann angewendet werden * HTML & CSS: kann nicht ausprobiert werden, muss mit Stift geschrieben werden === 02.10.23 (2Mdz) & 03.10.23 (2Ma) === * **JavaScript** * Vorzeigen-Nachmachen: Arbeiten mit JavaScript * **HA:** Schnapps-Bier-Sirup fertig, verwende ChatGPT usw. === 06.10.23 (beide) === * Weiter an JavaScript Website (Lektion 2/2) === HERBSTFERIEN === === NW 1 - Mo. 23.10.2023 (2Mdz) & Di. 24.10.2023 (2Ma) === * Besprechung Prüfung: * Programmiere in LMC: Buchstabe M ausgeben * Bespreche Relevanz von HLT, Bsp.: LMC Aufgabe mit Unicode Symbol 600 * Einsicht Prüfung im SEB, keine Handy usw.! * **neues Thema:** **[[gf_informatik:web_sca:netzwerke]]** * Slides **Teil 1: Das Internet** * [[gf_informatik:web_sca:netzwerke:aufgaben_a]] === Fr. 27.10.2023 (beide) === * **Arbeitsauftrag:** sca absent * Im kommenden Semester wird das **Programmieren** wieder eine zentrale Rolle spielen. Im heutigen Auftrag geht es deshalb darum, unsere Programmierskills zu verbessern. Dies machen wir auf einer der Programmierplattformen **Codewars** oder **CodinGames**. Dort kann man auf spielerische Art und Weise Programmieren lernen und trainieren, indem man Challenges löst. * *Entscheide* dich für eine der beiden Websites: * **[[gf_informatik:programmieren_training_websites#codewars|Codewars]]:** **Empfohlen für die Meisten** * **[[gf_informatik:programmieren_training_websites#codinggames|CodingGames]]:** Nur für diejenigen, die bei Programmierprüfungen immer sehr gut abgeschnitten haben und die Herausforderung suchen. * Vorgehen: Erstelle einen Account auf der jeweiligen Programmierplattform, hier findest du Anweisungen: * **[[gf_informatik:programmieren_training_websites#codewars|Codewars]]** * **[[gf_informatik:programmieren_training_websites#codinggames|CodingGames]]** * Löse nun Challenges. Für den ganzen Auftrag solltest du sicher **40min** aufwenden. * Sobald du es erledigt hast, schreibe bis spätestens am **27.10.2023 um 23.59** der Lehrperson auf **Teams** (privater Chat) folgende Info: * *Plattform:* Hast du dich für Codewars oder CodinGames entschieden? * *Benutzernamen:* Welchen Benutzernamen hast du gewählt? * Auflistung der *Namen* der gelösten Aufgaben / Challenges / Puzzles === NW 2 - Mo. 30.10.2023 (2Mdz) & Di. 31.10.2023 (2Ma) === * Rückmeldung **CodeWars:** * Super Übung um Programmierskills aufzufrischen, festigen, Defizite aufarbeiten * werden ab und zu machen * **Empfehlung:** Selbständig trainieren * **Vorschlag:** Freiwillige **Challenge**? Z.B. bis Weihnachten jede Woche mind. 2 Aufgaben lösen (zusätzlich von denen im Unterricht), könnte sich auch selbst Challenge setzen. * Tipps zu CodeWars: * Setze Standardprogrammiersprache: Oben rechts / Training Setup / Base Programming Language: Python * Erkläre Idee: * Code programmieren * Testen: Code kann nicht von Menschen beurteilt werden, deshalb muss dies *automatisiert* geschehen: Dein Code wird mehreren Tests unterzogen und wenn alle erfolgreich (-> grün) waren, gilt der Code als richtig. * Dann kann man diesen 'abgeben': "Attempt" und dann "Submit" * Tags: Beim Auswählen einer Aufgabe kann man unter "Tags" eingeben, was man trainieren möchte, z.B. Fundamentals, Strings, Logic, Lists, Arrays (sind das Gleiche wie Lists in Python), Mathematics, ... * Fortschritt teilen: https://www.codewars.com/users/meinbenutzername * weiter Slides **Teil 1: Das Internet** * 2Mdz: weiter mit Slides ab Protokoll zu Tod von Queen * 2Ma: weiter mit Slides ab Client & Server * [[gf_informatik:web_sca:netzwerke:aufgaben_a]] (notiere deine Lösungen auf OneNote) * wenn fertig: Aufgaben auf CodeWars (damit ist immer auch CodinGames gemeint) * **HA:** * [[gf_informatik:web_sca:netzwerke:aufgaben_a]] fertig machen * Auf [[http://codewars.com/]] Aufgaben lösen für 10' resp. mind. 1 Aufgabe abschliessen === NW 3 - Fr. 03.11.2023 (beide) === * A2 besprechen für $30$ Mia. Geräte * Slides "Teil 2: Netzwerke im Internet" * [[gf_informatik:web_sca:netzwerke:aufgaben_a]] * B1 besprechen * **HA:** bis und mit B4 === NW 4 - Mo. 06.11.2023 (2Mdz) & Di. 07.11.2023 (2Ma) === * Rechnungen auf OneNote: von Hand (empfohlen!), Formel-Editor * Achtung: Aufgaben ab B5 wurden umgestellt * Subnetzmaske mit CIDR-Suffix: (20') * kurze Übersicht an WT * Aufgaben B5 & B6 lösen ([[gf_informatik:web_sca:netzwerke:aufgaben_b]]) * wenn fertig: Zusatzaufgabe Programmieren (super Programmierübung!) * Slides **Teil 3: Schichtenmodell** * **HA:** * Aufgaben B5 & B6 fertig === NW 5 - Fr. 10.11.2023 (beide) === * Slides Schichtenmodell fertig: * 2Ma: ab "Schichtenmodell für Aufruf von Website" * 2Mdz: ab Zusammenfassung Schichtenmodell Analogie (S.31) * [[gf_informatik:web_sca:netzwerke:aufgaben_c]] * Falls fertig, wähle aus: * Zusatzaufgaben in [[gf_informatik:web_sca:netzwerke:aufgaben_b]] * [[https://www.codewars.com/]] * **HA:** Aufgaben C fertig === NW 6 - Mo. 13.11.2023 (2Mdz) & Di. 14.11.2023 (2Ma) === == 2a 14.11. == 1. [[https://sca.ksr.ch/lib/exe/fetch.php?media=gf_informatik:web_sca:web_02_netzwerke.pdf|Slides]] Slides: Kapitel "Teil 4: Vom Subnetz zum Internet" 1. Alle [[gf_informatik:web_sca:netzwerke:aufgaben_d|Aufgaben D lösen]] 1. **HA:** 1. Aufgaben D1 & D2 fertig lösen 1. Lösung von D2 per Teams schicken bis Mi-Abend, Schritte müssen ersichtlich sein (nicht nur Resultat) == 2Mdz 13.11. == **sca absent, Arbeitsauftrag:** 1. [[https://sca.ksr.ch/lib/exe/fetch.php?media=gf_informatik:web_sca:web_02_netzwerke.pdf|Slides]] studieren, Kapitel "Teil 4: Vom Subnetz zum Internet" 1. Alle [[gf_informatik:web_sca:netzwerke:aufgaben_d|Aufgaben D lösen]] und ... 1. ... Lösungen der Aufgaben abgeben per Teams-Abgabe (nicht im Chat) bis **spätestens 13.11.2023 @23.59** === NW 7 - Fr. 17.11.2023 (beide) === **sca absent, Arbeitsauftrag:** * [[gf_informatik:web_sca:netzwerke:aufgaben_d|Aufgaben D]] lösen: * D3 (nur 2Ma, 2Mdz bereits gemacht) * D4 (nichts neues, nur Repetition) * D5 * Muss am Freitag 17.11. gelöst werden * Falls alles klar ist, muss nichts abgegeben werden. Bei **Unklarheiten** muss man sich am Freitag noch **per Teams-Chat** an die LP wenden: Schicke deine bisherige Lösung/Rechnung und erkläre, was unklar ist. === NW 8 - Mo. 20.11.2023 (2Mdz) & Di. 21.11.2023 (2Ma) === 1. Kahoot 1. Rückmeldung HA: 1. IP(v4) besteht aus 4-Bytes 1. lokale vs. globale IP ermitteln 1. Slides: Teil 4 (NAT & DNS) 1. optional: Kurze Besprechung Adressen in Subnetz: Mit "IP Subnet Calculator" generiere random IP & Mask plus 2. IP: 1. Bestimme ob 2. IP im NW ist 1. Bestimmt Netzwerk- & Broadcastadresse 1. Verwende Python / TJ 1. [[gf_informatik:web_sca:netzwerke:zusatzaufgaben_1|Zusatzaufgaben Umrechnungen lösen]]\\ (Interesse an weiteren solchen Aufgaben? Lasse es mich wissen!) 1. **HA:** Falls noch Probleme, Zusatzaufgaben lösen === NW 9 - Fr. 24.11.2023 (beide) === * Slides Routing * [[gf_informatik:web_sca:netzwerke:aufgaben_e|]] * Falls fertig: * Zusatzaufgaben von letzter Lektion * Python-Code schreiben: * der IP binär in IP 4-Byte und umgekehrt umrechnet * z.B. "11101100.00000011.01111101.11100111" -> "236.3.125.231" * Tipps: `join` und `split` (frage LP oder ChatGPT für mehr Infos). * **HA:** Aufgabe E1 fertig === NW 10 - Mo. 27.11.2023 (2Mdz) & Di. 28.11.2023 (2Ma) === * **Routing-Game I** === Fr. 01.12.2023 (beide) === * **Routing-Game II** === Mo. 04.12.2023 (2Mdz) & Di. 05.12.2023 (2Ma) === * Wireshark Installieren * kurze Demo: zeige, was bei Seitenaufruf für laralei.ch alles passiert * selber ausprobieren * Bemerke: TCP -> ? * Slides TCP & UDP * **HA:** Wireshark einrichten, falls noch nicht geklappt hat === Fr. 08.12.2023 (beide) === * Info Prüfung: siehe unten * [[gf_informatik:web_sca:netzwerke:netzwerktools#ping|Ping]] * kurze Übersicht [[https://oinf.ch/interactive/tcp-ip-visualisierung/|TCP/IP-Visualisierung]] * [[gf_informatik:web_sca:netzwerke:aufgaben_f|Aufgabe 3 zu TCPI/IP-Visualisierung]] * **HA:** Aufgabe 3 fertig === Mo. 11.12.2023 (2Mdz) & Di. 12.12.2023 (2Ma) === **Q&A** === Fr. 15.12.2023 (beide) PRÜFUNG === PRÜFUNG * IsTest * 45 min * Inhalt: Netzwerke (siehe Lernziele dort) * Hilfmittel: TigerJython (kann beliebig verwendet werden) === Mo. 18.12.2023 (2Mdz) & Di. 19.12.2023 (2Ma) === [[gf_informatik:statistische_sprachmodelle_sca]] === Fr. 22.12.2023 (beide) === * Besprechung Prüfung * [[gf_informatik:christmas_art]] === WEIHNACHTSFERIEN / CHRISTMAS HOLIDAYS === === Mo. 08.01.2024 (2Mdz) & Di. 09.01.2024 (2Ma) === * **neues Thema: Fake News** * **Lektion 1: I Troll:** Website manipulieren * **HA:** Screenshot von manipulierter Seite per Teams schicken bis **Mittwochabend**. === Fr. 12.01.2024 (beide) === 1. Fake News der SuS anschauen 1. **Lektion 2: Warum Fake News?**: Slides zusammen durchgehen, Gruppenarbeiten === Mo. 15.01.2024 (2Mdz) & Di. 16.01.2024 (2Ma) === 1. **Lektion 3: Fake News entlarven**: Slides zusammen durchgehen, Gruppenarbeiten 1. [[gf_informatik:web_sca:fakenews#details_gruppenarbeit_v|Details Gruppenarbeit V]] === Fr. 19.01.2024 (AUSFALL) (beide) === ++++ ===== Jahr 1M ===== ++++Semester 2 (1M,FS)| ==== Semester 2 (1M,FS) ==== === Prüfungen === Zwei Prüfungen: * Do 16.3.23 (Programmieren, mit IsTest und TigerJython Online) * Do 08.6.23 === MB L4: Do 29.06.2023 === 1. Slides "Radio" 1. [[gf_informatik:microbit_programmieren_grundlagen#radio|Theorie Radio Studieren]] 1. Warm-Up Aufgabe (siehe Wandtafel) 1. [[gf_informatik:microbit_sca#aufgaben_e_radio|Aufgaben E1-E3]] === MB L3: Fr 23.06.2023 (1Mdz) - Mi 28.06.2023 (1Ma) === Fr. 23.06.: FERNUNTERRICHT **1Mdz:** * Arbeitsauftrag ohne VK, kann irgendwann am Tag erledigt werden * Fragen an sca per Teams (werden ev. nicht umgehend beantwortet) **Auftrag (beide Klassen):** * Löse [[gf_informatik:microbit_sca#aufgabe_b4|Aufgabe B4]] * Studiere dann [[gf_informatik:microbit_programmieren_grundlagen#beschleunigungssensor|Theorie zu Beschleunigungssensor]] * Aufgaben C1-C3 * **HA: ** auf heute Abend: Aufgaben fertig lösen (C2 kann auslassen), C3 Abgabe per Teams (wie immer) * falls fertig: Weitere Aufgaben C === MB L2: Do 22.06.2023 === * FERNUNTERRICHT * Arbeitsauftrag ohne VK, LP ist aber am Computer und steht für **Fragen zur Verfügung** (per Chat oder VideoCall) * Löse [[gf_informatik:microbit_sca#aufgabe_a3|Aufgaben A3, B1 & B2 (A4 optional)]] * Erinnerung TALITs (und alle anderen, denen Programmieren gut läuft) lösen Advanced Aufgaben * **HA: ** auf heute Abend: Aufgaben fertig lösen, B2 Abgabe per Teams (wie immer) === MB L1: Fr 16.06.2023 (1Mdz) - Mi 21.06.2023 (1Ma) === 1. Einführung Microbit (Slides) 1. Aufgaben A1-A2 1. **HA:** Aufgaben fertig === Do 15.06.2023 === (Einige Nachprüfungen) **For-Schleifen 2. Lektion** 1. Aufgaben B zu for-Schleifen 1. Zusatzaufgaben lösen von vorherigen Themen, z.B. 1. [[gf_informatik:zahlensysteme|Zahlensysteme (siehe Dossier, letztes Kapitel)]] 1. [[gf_informatik:suchen_und_sortieren_sca|Zusatzaufgaben zu Suchen und Sortieren]] **HA:** Aufgabe B1 fertig === Fr 09.06.2023 (1Mdz) - Mi 14.06.2023 (1Ma) === (sca abwesend) **For-Schleifen 1. Lektion** Zwei Programme, wähle das passende. == Programm 1: Für alle, die for-Schleifen noch nicht (gut) kennen == 1. Studiere die [[gf_informatik:for_loops_sca#einfache_for-schleife|Theorie zu for-Schleifen]] ... 1. und löse die Aufgaben A1-A4 dazu. 1. **HA:** Aufgaben fertig **Tipps:** * Die Lösungen sind direkt bei den Aufgaben verfügbar. Versuche aber zuerst immer, die Aufgaben ohne Lösungen zu lösen. * Nicht verstanden, was for-Schleifen sind? * **Helft** euch gegenseitig! Es gibt bereits SchülerInnen in der Klasse, die for-Schleifen verstehen! * Studiere ein **YouTube-Tutorial** zu for-Schleifen. * Lasse dir diese von **ChatGPT** erklären. Möglicher Prompt: "Erkläre mir bitte, was for-Schleifen in Python sind und mache Beispiele dazu." == Programm 2: Für for-Schleifen Profis == Löse Zusatzaufgaben aus dem [[https://sca.ksr.ch/lib/exe/fetch.php?media=gf_informatik:gfif_zahlensysteme_dossier.pdf| Zahlensysteme-Dossier, Kapitel 5]] === ZS L11: Do (1Ma) 08.06.23, Do (1Mdz) .23 PRÜFUNG === PRÜFUNG * **Themen:** * Suchen und Sortieren * Zahlensysteme * **Aufgabentypen:** * Wissensfragen, z.B. "Erkläre ...", Multiple Choice, ... * Rechenaufgaben, z.B. "Addiere die beiden Binärzahlen von Hand." * Codes (zu Suchen, Sortieren und Zahlensystemen) * **erlaubte Hilfsmittel:** keine, also kein TR (dafür TigerJython) * **Lernziele:** bei jeweiligen Seiten * **1Mdz:** OHNE Hexadezimalsystem === ZS L10: Mi (1Ma) 07.06.23, --- (nicht für 1Mdz) === Trainingsprogramm: **Option 1 (einfacher)** Schreibe ein Trainingsprogramm, um die **binäre Addition** zu trainieren. Alternativ: binäre Subtraktion, Multiplikation oder 2er-Komplement. Wichtig: Du benötigst eine korrekte Funktion `binary_add`. Falls deine nicht läuft, kannst du die Lösung der Lehrperson nehmen. 1. Schreibe eine Funktion, die dir eine zufällige 8-Bit Binärzahl generiert. Stichwort `import random` 1. Um das Programm beliebig lange spielen zu können, wird Code unten in Endlosschleife `while True` gepackt. 1. Generiere darin zwei zufällige 8-Bit Binärzahlen, z.B. '10010011' und '10101001' mithilfe deiner Funktion von oben. 1. Fordere Benutzerin auf, Summe dieser beiden Zahlen zu berechnen und einzugeben. 1. Code berechnet richtiges Resultat (verwende dazu deine `binary_add` Funktion und vergleiche die eingegebene Lösung mit der richtigen. 1. Gebe Score bisher aus, z.B. "Korrekt: 5, Falsch: 2" **Option 2 (anspruchsvoller)** Schreibe ein Trainingsprogramm, um die Umwandlung **Hex -> Bin** zu trainieren: Wie Option 1, nur soll Benutzerin zufällig generierte Hex-Zahl in Binärzahl umwandeln. *Optional:* Auch Umkehrung Bin -> Hex in Game einbauen. <code python> import random def binary_add(b1,b2): b1 = b1.replace(" ","") # remove all blanks b2 = b2.replace(" ","") # remove all blanks # make sure strings have same length while len(b1) < len(b2): b1 = '0' + b1 while len(b1) > len(b2): b2 = '0' + b2 # add binary string summe = '' i = len(b1) - 1 carry = '0' while i >= 0: if b1[i] == '0' and b2[i] == '0' and carry == '0': summe = '0' + summe carry = '0' elif b1[i] == '1' and b2[i] == '1' and carry == '1': summe = '1' + summe carry = '1' elif (b1[i] == '1' and b2[i] == '1' and carry == '0') or (b1[i] == '1' and b2[i] == '0' and carry == '1') or (b1[i] == '0' and b2[i] == '1' and carry == '1'): summe = '0' + summe carry = '1' else: summe = '1' + summe carry = '0' i = i - 1 if carry == '1': summe = '1' + summe return summe def rand_nr(n): nr = '' i = 0 while i < n: nr = nr + str(random.randint(0,1)) i = i + 1 return nr while True: b1 = rand_nr(4) b2 = rand_nr(4) answer = str(input("Berechne: " + b1 + " + " + b2)) # Eingabe von Spielerin result = binary_add(b1,b2) # Korrektes Resultat, berechnet mit meiner binary_add Funktion # vergleiche jetzt Eingabe Spielerin mit korrektem Resultat if answer == result: print("richtig!") else: print("falsch!") </code> === ZS L9: Do (1Ma) 01.06.23, --- (nicht für 1Mdz) === **Q&A - Vorbereitungslektion Prüfung** 1. eigenständiges Vorbereiten 1. isTest Probetest (Zahlensysteme II) (Bin Add, Sub, Mul und 2er-Komplement) 1. Besprechung Codes (falls Interesse) === ZS L8: Mi (1Ma) 31.5.23, Fr (1Mdz) 02.06.23 === == 1Mdz == **Q&A** Vorbereitungslektion * Lösungen zu allen Codes online == 1Ma == **Hexadezimalsystem** 1. FYI: [[gf_informatik:zahlensysteme#erklaerung_negative_binaerzahlen_subtraktion]] 1. Warm-Up: Kahoot 1. Slides Lektion 8: Hexadezimalsystem 1. Aufgaben: 4.1 & 4.2 1. Wenn fertig, wähle aus: 1. Aufgabe 4.3 1. zusätzliche Programmieraufaben in Kapitel 5 (falls nicht in gedruckter Version vorhanden, siehe PDF auf Wiki) 1. **HA:** A4.1 & 4.2 fertig === ZS L7: Do (1Ma) 25.5.23, Do (1Mdz) 01.06.23 === **binäre Multiplikation** == 1Ma == 1. Tipps HA: 1. verwende keinen Code (von ChatGPT), den du nicht zu 100% verstehst 1. Tipps auf Wiki: konkretes Beispiel zur Subtraktion und Tipps zum zugehörigen Code 1. Slides 1. **Auftrag:** 1. Aufgabe 3.13 (schriftliche Multiplikation) 1. **isTest Übung** 1. 5 Fragen, autocorrect 1. wähle "Im Prüfungsmodus absolvieren" 1. Hauptziel: Von Hand **mit Stift** Rechnung lösen 1. alte HA verbessern/neu machen (binäre Subtraktion) 1. **HA: Auftrag fertig:** 1. Rechenaufgaben selbst korrigieren 1. Codes **abgeben bis Sa** 1. isTest **ausfüllen bis Sa** == 1Mdz == 1. Slides 1. **Auftrag:** 1. Aufgabe 3.13 (schriftliche Multiplikation) 1. **isTest Übung** 1. 5 Fragen, autocorrect 1. wähle "Im Prüfungsmodus absolvieren" 1. Hauptziel: Von Hand **mit Stift** Rechnung lösen 1. alte HA verbessern/neu machen (binäre Subtraktion) 1. **HA: Auftrag fertig:** 1. Rechenaufgaben selbst korrigieren 1. isTest Übung (nicht Test) fertig === ZS L6: Mi (1Ma) 24.5.23, Fr (1Mdz) 26.5.23 === * Warm-Up: Binäruhr lesen & Subtraktion * Aufgaben 3.10 - 3.11 (Negative Zahlen & Subtraktion, keine Codes) * Aufgaben 3.12 (Codes dazu, siehe Tipps [[gf_informatik:zahlensysteme|]]) * **HA:** Aufgaben oben fertig, Codes **Abgabe bis Sa** === ZS L5: Mi (1Ma) 17.5.23, Do (1Mdz) 25.5.23 === * HA *nicht* optional, können bei Rundung (nicht zwingend streng mathematisch) berücksichtigt werden (1Mdz am 11.5. mitgeteilt) * **2. Prüfung um 2 Wochen vorverlegt** * Slides: * Wamp-Up * negative Zahlen, 2er-Komplement, Subtraktion * Besprechung Code: Binäre Addition: * Tipps zum Fall, dass Summanden ungleiche Länge haben * Tipps zur Addition / Vorlösen * Aufgaben: * 3.9 - 3.11 (keine Codes) * Code Binäre Addition fertig machen / verbessern * Zusatzaufgabe: 3.12 (Code für 2er-Komplement & Subtraktion) * **HA:** * Aufgabe 3.9 fertig (auf nächste Lektion, selbst korrigieren) * Code Binäre Addition mit Summanden *ungleicher Länge*, **Abgabe** bis morgen Abend (Adana bis Mo) === ZS L4: Do (1Ma) 11.5.23 und Fr (1Mdz) 12.5.23 === * ChatGPT * Problemthema: Funktionen, siehe Links zu Tutorial [[gf_informatik:programmieren_ii_sca#funktionen|Funktionen]] * Slides Lektion 4 * Thema: Binäre Addition * Auftrag: * Aufgabe 3.7 (Schriftliches Addieren, dezimal und binär) * Aufgabe 3.8 (Code für binäre Addition), siehe Tipps unten: * reicht für zwei gleich lange Binärzahlen, z.B. $1110 + 1010$ * **HA**: * Aufgaben fertig * A3.8 Abgabe per Teams bis Fr (1Ma), resp. Sa (1Mdz) Tipps zu A3.8 (Code bin Add)| * *Tipp 1:* Gehe zuerst einmal davon aus, dass die beiden Binärzahlen gleich lang sind (z.B. `binary_add('101010,'111100')`) . Wenn der Code funktioniert, erweitere ihn so, dass er für beliebige Binärzahlen funktioniert. * *Tipp 2:* Gehe die beiden Binärzahlen gemeinsam von rechts nach links durch. Addiere an jeder Stelle die beiden Ziffern und addiere den Rest des vorherigen Schrittes hinzu. === ZS L3: Mi (1Ma) 10.5.23, Do (1Mdz) 11.5.23 === * Lösungen für letztes Thema sind jetzt verfügbar * Problemthema: Funktionen, siehe Links zu Tutorial [[gf_informatik:programmieren_ii_sca#funktionen]] * Slides Lektion 3 * Auftrag: * Umrechnung Dezimalzahl -> Binärzahl verstehen * Aufgabe 3.3 * Aufgaben 3.5-3.6 * HA auf heute verbessern * **HA:** * Auftrag von heute fertig * Abgeben per Teams * Code A3.3 (falls noch nicht gemacht, bis **Fr**) * Code A3.6 (bis **heute**) === ZS L2: Do (1Ma) 4.5.23, Fr (1Mdz) 5.5.23 === * Slides: Warm-Up * Aufgaben * A3.4: zu Bytes * A3.3: Code: Binärzahl zu Dezimalzahl * Zusatzaufgaben: * 5.1 & 5.3 (Achtung: nicht im Dossier von 1Ma, siehe digitale Version auf Wiki) * **HA:** * Aufgaben fertig * **Code zu A3.3 abgeben** (neue Abgaberegeln) bis Fr. (1Ma), resp. Sa. (1Mdz) === ZS L1: Mi (1Ma) 3.5.23, Do (1Mdz) 4.5.23 === * Neues Thema: **Zahlensysteme** * Arbeiten mit *Dossier auf Papier* (immer mitbringen!) Lektion: 1. Gemeinsam durch Slides bis zu Aufgaben 1. Aufgaben 2.1,3.1,3.2 lösen 1. **HA: Aufgaben fertig machen** (müssen nicht abgegeben werden) === L15: Do 27.4. (1Ma), Fr 28.4 (1Mdz) === * **Abschlusslektion Suchen & Sortieren** * Bubble Sort besprechen (vorprogrammieren) * Probetest: Selbst Lösungen studieren (isTest), Fragen dazu? * Allgemeine Fragen? * Falls fertig: Implementiere den [[gf_informatik:suchen_und_sortieren_sca#aufgabe_4insertionsort_zusatzaufgabe|Insertion Sort Algorithmus]] * **HA:** Bubble Sort fertig machen, abgeben bis Freitag (1Ma), Samstag (1Mdz) === L14: Mi 26.4 (1Ma), Do 27.4. (1Mdz) === * **Info zu Abgaben:** * bitte ab jetzt *nicht mehr per Screenshot* ... * ... sondern: Formatieren (Button unten links mit 'A' und Stift) / Button </> / Python auswählen / Code einfügen * alles andere bleibt gleich: per Teams, immer mit kurzer Rückmeldung (funktioniert? Fehler, Probleme?) * 1Ma: Animationen Selection Sort * Besprechung **Selection Sort** (Vorprogrammieren) * Besprechung **Bubble Sort** mit Kärtchen (Aufgabe 3, Teil I) * Auftrag: * Selection Sort verbessern, abgeben * Bubble Sort mit **Python** programmieren (Aufgabe 3, Teil II) * Falls fertig Zusatzaufgaben: * einfach: Zufallsliste erzeugen * anspruchsvoll: Insertionsort * **HA:** Aufgaben 2 & 3 fertig (bis heute Abend) === Do 20.04.2023: freiwillige Nachprüfung === freiwilliges Angebot: * **zusätzliche Programmierprüfung** (gleicher Inhalt wie letzte Prüfung) * *Durchschnitt* der beiden Prüfungen zählt, wird aber bei *Note 4 gedeckelt* (keine höheren Noten möglich). * Beispiel: 1. Prüfung: 3, 2. Prüfung: 6, Durchschnitt ist 4.5, tatsächliche finale Note ist aber 4 * **Deadline Anmeldung: 31.03.2023, 23.59** (Teams-Nachricht an sca) * Bei Absenz: Prüfung kann nur nachgeholt werden, wenn ärztliches Zeugnis vorgelegt wird. === L13: Mi 19.4. (1Ma), Fr 21.4. (1Mdz) === 1. Nach finden: **Sortieren**, wichtig z.B. für binäre Suche 1. Aufgabe 1: Sortieren 1. Selection Sort: 1. Erklärung und Animation 1. Aufgabe 2 1. **HA:** A2 fertig, Python-Code an sca bis Fr (1Ma), resp. Sa (1Mdz) === FRÜHLINGSFERIEN === === L12: Do 23.3. (1Ma), Fr. 24.3. (1Mdz) === 1. Info zu: Freiwillige Repetitionsprüfung (siehe oben) 1. Besprechung Algorithmus/Code Binäre Suche in Python 1. Aufgaben B4-5 lösen 1. **HA: ** Aufgaben bis und mit B5 bis Freitagabend (Abgabe empfohlen) 1. Zusatzaufgabe: B6 (Binäre Suche rekursiv) === L11: Mi 22.3 (1Ma), Do 23.3. === * Info zu: Freiwillige Repetitionsprüfung (siehe oben) * Info: * Code Testen * Animation Binäre Suche * Binäre Suche in Python (B3) * falls fertig: weitere Aufgaben B4 - ... * **HA:** B3 fertig (Abgabe bis Freitag) === Prüfung 16.3. (1Ma & 1Mdz) === * Programmierprüfung * **Inhalt:** * Python Grundlagen * [[gf_informatik:programmieren_ii_sca]] * Format: * IsTest2 & Save Exam Browser * Programmieren im Webbrowser: https://webtigerjython.ethz.ch * Zusätzliche Aufgaben zur Vorbereitung: * [[gf_informatik:programmieren_ii_sca#weitere_aufgaben_i]] * [[gf_informatik:programmieren_repetitionsdossier#grundlagen_ii]] * **Tipps/Listen:** * In Funktionen wird sehr selten geprintet. Resultate werden typischerweise **zurückgegeben**. * Funktionen sollen in der Regel **allgemein gültig** sein. Spezifische Informationen werden deshalb als Argumente übergeben. * Beispiel: Die Funktion `count_element_in_list(li,el)` soll zählen, wie oft das Element `el` in der Liste `li` vorkommt. Die spezifische Liste, in der du Elemente zählen möchtest, soll dann eben *nicht* in der Funktion vorkommen. Stattdessen übergibst du diese der Funktion im Funktionsaufruf (z.B. `count_element_in_list(numbers,'7')`. In der Funktion wird die übergebene Liste (hier `numbers`) dann in der Variablen `li` gespeichert. * Mache keine Verwechslungen zwischen **Position/Index** und **Element** in Listen. **Ausnahme: Prüfung Tiya:** * Inhalt: * TurtleGraphics: alles (ausser optional) * Python Grundlagen, bis und mit: * Theorie: bis und "Verzweigungen im Detail" * Aufgaben: bis und mit Aufgabe D2 * gleiches Format wie oben === L10: Mi 15.3. (1Ma), Fr 17.3. (1Mdz) === 1. Besprechung: [[gf_informatik:suchen_und_sortieren_sca#binaere_suche|Binäre Suche]] 1. zusammen Aufgabe B1 - B2 1. **HA:** auf erste Lektion nächste Woche: B2 === L9: Do 9.3. (1Ma), Fr 10.3. (1Mdz) === 1. 1Ma: spontane Challenge (siehe ISY), Tipps zur Prüfung 1. Besprechung A3 (wichtig: Suchfunktion muss *allgemein verwendbar* sein.) 1. Aufgabe A4 1. falls fertig: Zusatzaufgabentextanalyse: 1. Passt thematisch sehr gut, da ein String oder gar ein ganzes Dokument nach etwas bestimmtem abgesucht wird. 1. Link: https://sca.ksr.ch/doku.php?id=gf_informatik:programmieren_ii_sca#zusatzaufgaben_htextanalyse 1. **HA:** A4 fertig und abgeben bis Freitag (1Ma) === L8: Mi 8.3. (1Ma), Do 9.3. (1Mdz) === 1. Info Prüfung (siehe oben) 1. spontane Challenge (siehe ISY) 1. Neues Thema: **Suchen** in [[gf_informatik:suchen_und_sortieren_sca]] 1. Zusammen Aufgaben 1 & 2 1. Aufgabe 3 (Programmieren) 1. Falls fertig: mit Aufgabe 4 beginnen 1. **HA:** A3 fertig (Abgabe bis heute, wie immer) === L7: Mo 27.02.2023 (1Mdz) & Do 02.03.2023 (1Ma) === 1Mdz: Vorverlegt von Do auf Mo, als Arbeitsauftrag (sca krank) * Letzte Lektion vor neuem Thema * Aufgaben: * neue Aufgaben H4 & H5 * Zusatzaufgaben * Fragen klären * **HA:** Aufgaben 4 & 5 fertig (Abgabe wie gehabt bis Freitag (1Ma)) === L6: Fr 24.02.2023 (1Md) & Mi 01.03.2023 (1Ma) === * Theorie [[gf_informatik:programmieren_ii_sca#strings_im_detail|Strings im Detail]]: * Kurzer Input: grobe Übersicht * selbständig Theorie studieren * Aufgaben H2 und H3 lösen. * Weitere Aufgaben im Kapitel H lösen * **HA:** H2 & H3, Abgabe wie gehabt (1Mdz: bis Samstag, 1Ma: bis heute Mittwoch) === L5: Do 23.02.2023 (1Ma&d) === **Ausblick:** Mit dieser noch 3 Lektionen für Python Grundlagen. In den Lektionsbeschrieben hier wird jeweils das *Minimalziel* genannt. Es ist aber empfehlenswert, vorzuarbeiten, damit noch Zeit für Zusatzaufgaben bleibt. * Aufgaben G zu Listen fertig * Theorie Logikoperatoren studieren * Aufgabe H1 * HA: Aufgaben ferig, bis heute abgeben (Teams) === L4: Fr 17.02.2023 (1Md) & Mi 22.02.2023 (1Ma) === * Slides: **Listen** * Aufgaben: G1-G3 * Zusatzaufgabe: https://sca.ksr.ch/doku.php?id=gf_informatik:programmieren_zusatzaufgaben#lotto * **HA:** G1, Abgabe bis Sonntag (1Mdz), heute (1Ma) === L3: Do 16.02.2023 (1Ma&d) === 1. Einstieg: Typische Fehler (siehe unten) 1. Aufgaben: F4-F6 1. Wenn fertig: Theorie zu *Listen* studieren und Aufgaben aus Kapitel G lösen 1. **HA:** F4-F5 fertig, Abgabe per Teams, Deadline: morgen Freitag **Tipps und typische Fehler zu Funktionen:** **Fehler 1:** Funktionen müssen **in sich geschlossen** sein, z.B. `i = 0` IN Funktion: Alles was zur Funktion gehört, gehört in diese hinein. <code python> # FALSCH """ Problem: Gibt Fehlermeldung Grund: Variable i wird AUSSERHALB von Funktion deklariert. Innerhalb einer Funktion hat man nicht das Recht, diese zu verändern, was man mit i = i + 1 versucht. """ ... i = 0 def square(l): while i < 4: t.fd(l) t.right(90) i = i + 1 square(120) </code> <code python> # KORREKT ... def square(l): i = 0 while i < 4: t.fd(l) t.right(90) i = i + 1 square(120) </code> **Fehler 2:** **Überschreiben von Argumenten** von Funktion verhindern: <code python> # FALSCH """ Problem: Wert, den man bei Funktionsaufruf (hier: 120) eingibt, ist völlig irrelevant, da die Variable immer mit einer Zufallszahl überschrieben wird, bevor sie verwendet wird. """ ... def circle(r): r = random.randint(50,150) turt.leftArc(r,360) circle(120) </code> <code python> # KORREKT ... def circle(r): turt.leftArc(r,360) radius = random.randint(50,150) circle(radius) </code> **Tipp 1:** **Zuerst alle Funktionen** deklarieren, erst **dann aufrufen**. Man kann auch zwischen Funktionsdeklarationen Funktionen aufrufen, es macht den Code einfach unübersichtlich (Ist also nicht Fehler, sondern schlechter Programmierstil). <code python> # SCHLECHTER PROGRAMMIERSTIL def square(...): ... square(20,65,100) square(-120,0,34) def circle(...): ... circle(60,60,100) def triangle(...): ... triangle(-200,-150,70) </code> <code python> # GUTER PROGRAMMIERSTIL ## zuerst alle Funktionen def square(...): ... def circle(...): ... def triangle(...): ... ## dann alle Funktionsaufrufe square(20,65,100) square(-120,0,34) circle(60,60,100) triangle(-200,-150,70) </code> **Tipp 2:** Weniger (Variablen) ist manchmal mehr: <code python> import math ## Funktionen deklarieren # Option 1: mit zusätzlichen Variablen def pythagoras_1(a,b): c2 = a*a + b*b c = math.sqrt(c2) return c # Option 2: direkt berechnen und ausgeben def pythagoras_2(a,b): return math.sqrt(a*a + b*b) ## Funktionen aufrufen # Option 1: Resultat in Variable speichern (macht Sinn, wenn Resultat nachher noch gebraucht wird) hypo = pythagoras_1(3,4) print(hypo) # Option 2: Direkt ausgeben (macht Sinn, wenn Resultat nachher NICHT mehr gebraucht wird) print(pythagoras_1(3,4)) </code> **Tipp 3:** Hoch-Operator für Potenzen <code python> # Hoch 3 rechnen, Variante 1: v = x * x * x # Hoch 3 rechnen, Variante 2: v = x**3 </code> === L2: Fr 10.02.2023 (1Mdz), Mi 15.02.2023 (1Ma) === * **Einstieg:** * Schreibe eine Funktion `area_rectangle(...)`, die die beiden Seitenlängen eines Rechtecks entgegennimmt, dessen **Fläche** berechnet und in einem formatierten String aus gibt. Beispiel: Der Funktionsaufruf `area_rectangle(4,6)` produziert die Ausgabe "Die Flaeche eines Rechtecks mit Seitenlaengen 4 und 6 ist 24." * Falls fertig, studiere Beispiel 3 in https://sca.ksr.ch/doku.php?id=gf_informatik:programmieren_ii_sca#funktionen * Diskussion: **Rückgabewert** (Was ist? Und warum in diesem Beispiel sinnvoller?) * **Theorie:** Beispiele 3 und 4 unter https://sca.ksr.ch/doku.php?id=gf_informatik:programmieren_ii_sca#funktionen * **Aufgaben** F1-F3 * **HA:** * Aufgaben fertig * Abgabe per Teams wie gehabt * Abgabe bis kommenden **Dienstag (1Mdz) / Mittwoch (1Ma)** (Teams, Screenshot, Kommentar) === L1: Do 09.02.2023 (1Ma & 1Mdz) === * Einstieg I: Was ist das Problem mit dem Code unten? Wie verbessern? <code python> import random r = random.randint(1,2) def head_or_tail(): if r == 1: print("Head!") else: print("Tail!") </code> * Aufgaben: restliche Aufgaben E * **HA:** * Aufgaben bis und mit E5 (Challenge Teil optional) * E4 & E5 per Teams an sca bis **Fr. 10.2.23 @23.59** (wie gehabt: Screenshot, Kommentar, ...) ++++ ++++Semester 1 (1M,HS)| ==== Semester 1 (1M,HS) ==== === Do 19.12.22 === - Besprechung Prüfung - **Theorie: Funktionen**, Live Demo (mit/ohne Argument(e), aber ohne Rückgabewerte) - Aufgaben: E1 & E2 - **HA** bis morgen: - Aufgaben fertig - E2 per Teams an LP schicken (wie gehabt) === Mo 16.01.23 === **Prüfung: Python** **Info Prüfung:** * Themen: Programmieren I (TurtleGraphics), Algorithmen & Struktogramme, Programmieren II (Grundlagen Python, bis und mit "Verzweigungen im Detail") * IsTest * Fokus auf Programmieraufgaben, auch Fragen zu Struktogrammen oder Theoriefragen möglich **Editor:** * Arbeiten mit Online-Editor (https://webtigerjython.ethz.ch), gibt ein paar kleine Unterschiede zum regulären TigerJython. * "from turtle import *" anstelle "from gturtle import *" (ohne "g") * "hideTurtle()" funktioniert nicht, verwende stattdessen "ht()" * Die Turtle bewegt sich standardmässig nach rechts anstelle nach oben. * Kopiere deinen Code vom Online-Editor in das Antwort-Fenster, bevor du zur nächsten Aufgabe gehst oder die Prüfung beendest. Ansonsten verlierst du deine Antworten. * Gehe immer wieder zurück zur letzten Übung um zu überprüfen, dass das Hineinkopieren der Lösung korrekt geklappt hat. **Regeln:** * Verwende nur die im Unterricht gelernten Elemente. Noch nicht besprochene Elemente wie for, Listen, Funktionen oder verknüpfte Bedingungen (and, or) dürfen nicht verwendet werden. * Verwende nie repeat sondern while. * Bewertet wird nicht nur, ob der Code funktioniert, sondern auch wie programmiert wurde (Programmierstil). Wurden z.B. Schleifen verwendet um Codewiederholungen zu vermeiden? * Die Turtle muss mit dem Befehl `Turtle()` erzeugt werden und nicht mit `makeTurtle`. === Do 12.12.22 === * Prüfung Q & A: * Selbständiges Vorbereiten * Fragen stellen * zusammen Aufgaben anschauen === Mo 09.01.23 === * Info Prüfung (siehe oben bei Datum von Prüfung) * Test Prüfung IsTest * wenn fertig: Selbständiges Vorbereiten auf Prüfung === Do 22.12.22 === * Weiter am Auftrag von letzter Lektion * heute: Deadline Anmeldung Christmas Challenge === Mo 19.12.22 === * Info Christmas Challenge (siehe unten) * Erinnerung: Anmeldung TALIT * Auftrag 2L: * Aufgabe D3 fertig * Aufgabe D4 * optional: Zusatzaufgaben * Aufgaben *alleine* programmieren * Aufgaben D3 & D4 müssen **abgegeben** werden bis kommenden Freitag (per Teams, Screenshot mit kurzer Rückmeldung) **Christmas Challenge:** * Selber **Einsatz** bestimmen. Muss 'gezahlt' werden, wenn Challenge nicht zu 100% erfüllt. Beispiel: Muffins backen für ganze Klasse oder andere Personen, die Challenge gemacht haben (inkl. Lehrperson!) * **Freiwillig**, bis 22.12.22 bei sca per Teams anmelden (mit Einsatz und welcher Challenge) * **Basics-Challenge**: * von 24.12.22 bis und mit Fr. 06.01.2023 jeden Tag eine Programmieraufgabe lösen * und am jeweiligen Tag Screenshot mit kurzer Rückmeldung an sca schicken per Teams * 1 Joker: kann an einem Tag nichts machen, resp. eine Aufgabe verspätet abgeben * **Advanced-Challenge**: * Wähle drei anspruchsvolle Zusatzaufgaben, die du noch nicht gelöst hast und löse diese. * Bis an folgenden Daten muss ein nächstes Programm abgegeben werden (Code als File inkl. Rückmeldung): * 28.12.2022 (Abgabe erstes Programm) * 02.01.2023 (Abgabe zweites Programm) * 07.01.2023 (Abgabe drittes Programm) * Sonderlösungen (z.B. kann 3 Tage nichts machen, weil in einem Lager) sind möglich, müssen aber vorgängig abgesprochen sein. {{ :gf_informatik:santa_programmer.jpg?500 |}} **Basic Challenge:** 5 SuS **Advanced Challenge:** 5 SuS === Do 15.12.22 === * Diplome Biber * Slides "Verzweigungen im Detail" * **HA:** bis und mit Aufgabe D3, Teil I === Mo 12.12.22 === weiter am Auftrag vom letzten Montag === Do 08.12.22 === Info: Matura Talenta IT (TALIT) mit Pacifico == Rubik's Cube == Tutorial Rubik's Cube: https://ruwix.com/the-rubiks-cube/how-to-solve-the-rubiks-cube-beginners-method Tipps: 1. Löse erste Ebene (normalerweise weiss) ohne auswendig gelernte Methode. Beachte, dass auch Seiten stimmen. 2. Löse zweite (mittlere) Ebene (Schritt "3 Second Layer" im Tutorial). 3. Löse dritte Ebene (Schritte 4-7 im Tutorial) === Mo 05.12.22 === 1. Abgabe Korrektur Prüfung 1. **Auftrag:** 1. Zeit: 2 Lektionen (heute und kommenden Montag) 1. Ziel: Grundlagen der Programmieren festigen 1. Aufgaben B fertig und ... 1. Aufgaben C 1. Arbeitsform: *Alleine* programmieren (natürlich darf man mit Kolleg:in sprechen, aber alleine programmieren) 1. Sende von jeder Aufgabenserie (B und C) mind. eine deiner Lösungen per Teams an LP 1. wenn fertig: Siehe Zusatzaufgabe C (Uhr mit TurtleGraphics) === Do 30.11.22 === 1. **Prüfung verbessern**: 1. Eigentliche Verbesserung (Seite 1 auf Schluss verschieben, auf Struktogramme fokussieren) 1. Seite 1 (TigerJython) verbessern 1. Struktogramme von Prüfung in *Python* programmieren 1. Weiter an **Aufgaben B**: B4-... 1. **HA:** 1. Prüfungskorrektur fertig (ohne Übersetzung in Python) 1. abgeben bis nächste Lektion (falls z.B. in Heft gemacht, kann auch guten Scan machen und per Teams schicken) === Mo 28.11.22 === 1. Gruppenpuzzle zu "Weitere Grundlagne" (ca. 30') 1. Auftrag: 1. Aufgaben A korrigieren (Lösungen sind online) 1. Aufgaben B1-3 1. **HA Mi 18.00:** 1. Lösungen von B1-3 Teams schicken (Screenshot, direkt sichtbar, Kommentar ob funktioniert resp. wo Probleme liegen). 1. **Schicke mit keinen kopierten Code!** 1. Prüfung mitnehmen (für Prüfungsbesprechung) === Do 24.11.22 === 1. Besprechung HA (A1-A2) 1. Aufgaben A3-A4 1. **HA:** 1. A3-A4 1. Screenshot von Lösung einer Aufgabe an sca schicken per Teams. Bild so einfügen, dass *direkt angezeigt* wird. === Mo 21.11.22 === * Neues Thema: **Programmieren II** * Slides: "Von Strukogrammen zu Python" * Aufgaben A * **HA: A1-A2** === Do 17.11.22 === Durchführung **Informatik-Biber** === Mo 14.11.22 === * Ausfall Krankheit sca * Auftrag: auf Biber vorbereiten === Do 10.11.22 === * Info & Vorbereitung **Informatik-Biber** * [[gf_informatik:biber|]] === Mo 07.11.22 === **Prüfung: TurtleGraphics & Algorithmen** **Info:** * Komplett auf Papier (also nicht am Computer) * keine Hilfsmittel **Inhalt:** * Alles zu den folgenden Themen * [[gf_informatik:programmieren_i|]] * [[gf_informatik:algorithmen_i_sca|]] **Typische Aufgaben (aber NICHT ausschliesslich!)** * TigerJython: Gegebene Figur reproduzieren (Achtung: Auf Papier!) * TigerJython: Figur zu gegebenem Code skizzieren (Achtung: Auf Papier!) * Algorithmus als Struktogramm schreiben * Struktogramm evaluieren * Erkennen, welcher Algorithmus in Struktogramm umgesetzt wird. **Tipps:** * Struktogramme: Halte dich zu 100% an die vorgegebenen **Notationen und Konventionen**. * Bei diesem Thema kann man nicht viel auswendig lernen. Man muss es **verstehen** und auf **neue Situationen anwenden** können. Tipp: Üben, sich selbst Aufgaben ausdenken, mit Kolleg:innen diskutieren, ... * Sende mir (rechtzeitig, nicht zu kurzfristig) Fotos von deinen **Lösungen**, damit ich dir eine **Rückmeldung** schicken kann. === Do 03.11.22 === Weiter an Auftrag von Montag, Prüfungsvorbereitung === Mo 31.10.22 === 1. Info Prüfung: Siehe Lektion zu Prüfung 1. Slides: Evaluation von Struktogrammen 1. Besprechung HA (Aufgaben C1-C3) 1. Auftrag bis und mit kommende Lektion (alles prüfungsrelevant): 1. HA C1-C3 verbessern 1. D1-D3 1. C4-C5 === Do 27.10.22 === 1. Slides (1Ma ab Doppelgleich, 1Mdz ab Ausgabe) 1. Aufgaben C: Auf Papier lösen 1. Falls fertig: 1. Zusatzaufgaben in den Aufgaben C 1. Käferstruktogramme: https://sca.ksr.ch/doku.php?id=gf_informatik:algorithmen_i_sca#kaefer-struktogramme 1. HA: Aufgaben C1 bis und mit C3 fertig, falls Probleme, frage rechtzeitig (nicht erst am Tag vor nächster Lektion) per Teams nach === Mo 24.10.22 === 1. Prüfung zurück 1. Besprechung HA: B2 & B3 1. Verbesserung HA (wenig Zeit in Lektion, Rest HA) 1. Slides (Eingabe, Ausgabe, Einzelgleich vs. Doppelgleich, Text/Strings) 1. **HA:** 1. Verbesserung B2 & B3 1. ... Nächste Lektion: * 1Ma: weiter Slides, Doppelgleich * 1Mdz: weiter Slides, Ausgabe === HERBSTFERIEN === === Do 29.9.22 === 1. Rückmeldung Prüfung Hardware 1. Besprechung HA (Wasserhahn-Algo als Struktogramm) 1. Aufgaben B2 & B3 (Struktogramme für Karamell-Bonbons & Subtraction Game) 1. **HA:** Aufgaben B2 & B3 fertig machen === Mo 26.9.22 === **Werden in nächsten Lektionen auf Papier arbeiten: Bringe Papier mit, Empfehlung: Heft!** 1. Subtraction Game 1. Einführung Struktogramme 1. **HA:** 1. Aufgabe A2: Algorithmus Subtraction Game in menschl. Sprache (NICHT Struktogramme) fertig 1. Aufgabe B1: Algorithmus Wasserhahn in Struktogramm umwandeln. === Do 22.9.22 === neues Thema: **Algorithmen I** 1. Slides zu Algorithmen (Definition, Beispiele) 1. Aufgabe Wasserhahn inkl. Zusatzaufgabe === Mo 19.9.22 === **Prüfung Hardware I** === Do 15.9.22 === letzte Lektion zu Programmieren I 1. Info: https://hackathon-thurgau.ch/jugend-challenge/ 1. Aufgaben besprechen, Probleme lösen 1. Kapitel 4 Farben: Theorie studieren 1. Kunst machen (Kandinsky-Style) 1. Kunstwettbewerb (Abstimmung) {{ :gf_informatik:kandinsky.jpg?400 |}} === Mo 12.9.22 === 1. Besprechung HA 1. Copy-paste vs. repeat 1. Aufgabe A4 1. Theorie zu Kreisbogen (studiere selbständig) 1. Aufgaben B1-B5 1. Zusatzaufgaben: optionales Kapitel zu Farben 1. **HA: bis und mit B5** === Do 8.9.22 === **Neues Thema: Programmieren I:** https://sca.ksr.ch/doku.php?id=gf_informatik:programmieren_i 1. Einführung: 1. Um was geht es? 1. Ordner anlegen für Aufgaben, erstes File 1. Aufgaben lösen 1. **HA:** bis und mit Aufgabe A3 1. **Info Prüfung:** NUR Hardware I === Mo 05.09.2022 === Letzte Lektion Hardware 1. Auftrag "Ich und mein Computer" fertig 1. In 4er Gruppen mit LP Computer anschauen 1. **HA:** 1. TigerJython muss laufen in nächster Lektion 1. Einführung zu Programmieren I lesen === Do 01.09.2022 === 1. Slides Spezifikationen 1. Auftrag 3 1. **HA: 10min weiter an Auftrag (nachher noch 1 Lektion)** === Mo 29.08.2022 === 1. Fertig besprechen: Slides zum Innenleben von Computer 1. Aufgabe 2 (Speichergrössen) 1. **HA:** Aufgabe 2 fertig (vergleiche selbst am Schluss mit Lösungen auf Slide) === Do 25.05.2022 === 1. Besprechung Schnittstellen (Slides) 1. Slides zum Innenleben von Computer (bis und mit Mainboard) === Mo 22.08.2022 === 1. Einführung: 1. Vorstellung 1. Was ist Informatik? Warum Programmieren? 1. Umfrage zu Vorkenntnissen (siehe unten) 1. Übersicht 1. Quartal 1. Slides: Was ist ein Computer? 1. Auftrag "Mein Computer (Teil I)" https://sca.ksr.ch/doku.php?id=gf_informatik:hardware_i_sca 1. **HA:** 1. Umfrage fertig ausfüllen 1. Auftrag 1 "Mein Computer (Teil I)" fertig ++++ gf_informatik/m_ad_2022_23.txt Zuletzt geändert: 2024-06-17 21:35von sca