lehrkraefte:snr:informatik:bruehl-2022:ein-und-ausgabe-variablen

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
lehrkraefte:snr:informatik:bruehl-2022:ein-und-ausgabe-variablen [2022/02/22 16:21]
Olaf Schnürer [Aufgaben]
lehrkraefte:snr:informatik:bruehl-2022:ein-und-ausgabe-variablen [2022/03/17 08:13] (current)
Olaf Schnürer
Line 1: Line 1:
 +~~NOTOC~~
 +
 ====== Ein- und Ausgabe, Variablen ====== ====== Ein- und Ausgabe, Variablen ======
  
Line 17: Line 19:
   * :-) Beim Programmieren immer Sachen ausprobieren, den Code leicht verändern, kreativ sein! So kann man viel lernen. :-)   * :-) Beim Programmieren immer Sachen ausprobieren, den Code leicht verändern, kreativ sein! So kann man viel lernen. :-)
  
-===== Unser Programmier-Ziel heute ===== 
- 
-<WRAP center round important 100%> 
-Ein (kurzes und flexibles) Programm entwerfen, das die folgende "Spirale" zeichnet: 
-<WRAP left round box 100%> 
-{{:lehrkraefte:snr:informatik:bruehl-2022:eck-spirale.png}} 
-</WRAP> 
- 
- 
-<hidden Naive Lösung> 
-Natürlich kann man das "von Hand" machen und alle Linien selbst zeichnen.  
-</hidden> 
-</WRAP> 
- 
-=== Diskussion und Analyse des Problems === 
-Z. B. 
-  * Wie lang ist welche Linie?  
-  * Was sollte die Schildkröte können? Welche Fähigkeit fehlt ihr bisher? 
  
 ===== Lernen am Beispiel und durch Demonstration ===== ===== Lernen am Beispiel und durch Demonstration =====
Line 137: Line 121:
 <WRAP center round todo 100> <WRAP center round todo 100>
  
-**HAUSAUFGABE für die 1AFG** +**HAUSAUFGABE für die 1AFG:** 
 + 
 Abgabe bis **spätestens Sonntagabend 23:59 Uhr** vor der nächsten Doppellektion über den folgenden Link: Abgabe bis **spätestens Sonntagabend 23:59 Uhr** vor der nächsten Doppellektion über den folgenden Link:
  
Line 161: Line 146:
 </code> </code>
  
-Abgabe bis **spätestens Sonntagabend 23:59 Uhr** vor der nächsten Doppellektion über den folgenden Link: 
- 
-  * [[https://bldsg-my.sharepoint.com/:f:/g/personal/olaf_schnuerer_ksbg_ch/Er2yNBSS4o9DpBiQ6TU5uq8B3n9WKibj_BA_HFspdDgQiA|Klasse 1CFP]] 
  
  
Line 169: Line 151:
  
 <WRAP center round todo 100%> <WRAP center round todo 100%>
 +
 +**HAUSAUFGABE für die 1CFP (oder eine der nachfolgenden Aufgaben):**
 +
 +Abgabe bis **spätestens Sonntagabend 23:59 Uhr** vor der nächsten Doppellektion über den folgenden Link:
 +
 +  * [[https://bldsg-my.sharepoint.com/:f:/g/personal/olaf_schnuerer_ksbg_ch/Er2yNBSS4o9DpBiQ6TU5uq8B3n9WKibj_BA_HFspdDgQiA|Klasse 1CFP]]
 +
 Schreibe ein Programm, das eine Zahl (zwischen 1 und 10) entgegennimmt und die entsprechende Spalte in der Kleinen-Einmaleins-Tabelle ausgibt. Schreibe ein Programm, das eine Zahl (zwischen 1 und 10) entgegennimmt und die entsprechende Spalte in der Kleinen-Einmaleins-Tabelle ausgibt.
  
Line 215: Line 204:
  
  
- 
-===== Zurück zur Turtle und zum Spiralproblem ===== 
- 
-<WRAP center round todo 100%> 
-Zeichne mit der Turtle wie folgt eine Spirale.  
- 
-Nach jeder $90^\circ$-Rechtsabbiegung geht die Turtle 10 Pixel weiter geradeaus als zuvor. 
- 
-Am Anfang geht sie ''s = 10'' Pixel geradeaus. 
- 
-Insgesamt soll die Turtle ''n = 12'' mal vorwärts gehen. 
- 
-Bonusaufgabe (freiwillig): Ändere das Programm so, dass es die oben abgebildete Spirale (die sich von der gerade beschriebenen unterscheidet) zeichnet: Auf Häuschen-Papier wird jeder Gitterpunkt besucht. 
-</WRAP> 
- 
- 
-<WRAP center round todo> 
-**Hausaufgabe (die eventuell schon während der Lektion erledigt werden kann)** 
- 
-Schreibe ein Programm, das vom Benutzer eine Zahl ''n'' erfragt und dann entsprechend viele konzentrisch ineinanderliegende Quadrate zeichnet, so dass das kleinste Quadrat Seitenlänge ''s = 10'' hat und die Seitenlängen benachbarter Quadrate sich jeweils um ''differenz = 20'' unterscheiden. 
- 
-Farbe und Stiftdicke darfst du beliebig wählen. Die Stiftdicke darf auch von Quadrat zu Quadrat unterschiedlich sein.  
- 
-Für ''n = 8'' soll die Ausgabe so aussehen: 
- 
-{{:lehrkraefte:snr:informatik:bruehl-2022:konzentrische-quadrate.png?300|}} 
- 
-Abgabe bis **spätestens Sonntagabend 23:59 Uhr** vor der nächsten Doppellektion über den folgenden Link: 
- 
-  * [[https://bldsg-my.sharepoint.com/:f:/g/personal/olaf_schnuerer_ksbg_ch/Eiv_N_pzTfFKhwrL34v63toBqSTCbdsshKmr2ygQqsk9Vg|Klasse 1AFGsK]] 
-  * [[https://bldsg-my.sharepoint.com/:f:/g/personal/olaf_schnuerer_ksbg_ch/Er2yNBSS4o9DpBiQ6TU5uq8B3n9WKibj_BA_HFspdDgQiA|Klasse 1CFP]] 
- 
-<hidden Hinweis:> 
-Verwende eine ''repeat''-Struktur: In jeder Wiederholung wird ein Quadrat gezeichnet (und am Ende die Seitenlänge erhöht für das nächste Quadrat).  
- 
-Damit die Quadrate alle ihren Mittelpunkt in der Mitte haben: Gehe jeweils mit ''home()'' auf die Ausgangsposition, dann um die halbe aktuelle Quadratseitenlänge nach oben und zeichne dann das Quadrat von dort aus. </hidden> 
- 
-Bonus (freiwillig): Du darfst auch konzentrisch ineinanderliegende $n$-Ecke oder Sterne o.ä. zeichnen. 
-</WRAP> 
  
 ==== Zusammenfassung ==== ==== Zusammenfassung ====
Line 267: Line 217:
  
 <hidden Erst selbst überlegen!> <hidden Erst selbst überlegen!>
-  * Eingabe von Zahlen per ''inputInt("...")'', Eingabe von Kommazahlen per ''inputFloat("...")''.+  * Eingabe von Zahlen per ''inputInt("...")'', Eingabe von Kommazahlen per ''inputFloat("...")''. Einfacher geht es mit ''input("...")'', jedoch kann der Benutzer dann auch Zeichenketten (= Text) eingeben und eventuell führt das zum Absturz des Programms.
   * Ausgabe per print(...), etwa von Zeichenketten per ''print("Grüezi")'' oder von Zahlen per ''print(2 * x + 3)''.   * Ausgabe per print(...), etwa von Zeichenketten per ''print("Grüezi")'' oder von Zahlen per ''print(2 * x + 3)''.
   * Variablen werden mit ''x = ...'' erzeugt bzw. verändert.   * Variablen werden mit ''x = ...'' erzeugt bzw. verändert.
Line 305: Line 255:
 </WRAP> </WRAP>
  
-==== Bonusaufgabe (Grafikausgabe) ==== 
- 
-<WRAP center round todo 100%> 
-Verändere das Programm für die Spirale so, dass der Winkel statt der Strecke nach jedem Abbiegen um eine fest Grösse, etwa $1^\circ$, verkleinert (oder vergrössert) wird.  
- 
-Du kannst natürlich auch Winkel und Strecke gleichzeitig verändern.  
- 
-Spiele herum: Verschiedene Längen und Abbiegewinkel am Anfang. Verschieden Winkel- und Längenvergrösserungen. 
- 
-Du solltest etwa ein solches Bild erzeugen können (Strecke konstant, Winkelverkleinerung um $1^\circ$): 
- 
-{{:lehrkraefte:snr:informatik:bruehl-2022:notenschluessel.png?400|}} 
-</WRAP> 
- 
-===== Fragebox - auch zum Besprechen von Programmen während der Lektion (NICHT für Hausaufgaben) ===== 
- 
-Bitte einfach am Anfang des Programms oder der eingereichten Datei die Frage aufschreiben (mit oder ohne Hashtag ''#'' als Kommentareinleitungszeichen am Zeilenanfang). 
- 
-Link bereitstellen SORRY ONEDRIVE MACHT GERADE PROBLEME 
  
  
Line 330: Line 261:
 <hidden Produkt und Summe> <hidden Produkt und Summe>
 <code python> <code python>
-WIRD HAUSAUFGABEFALLS WIR NUR SO WEIT KOMMEN SOLLTEN.....+print("Salü"
 +x = input("Gib eine Zahl ein:"   
 +# input ist es egalob Kommazahl oder Nichtkommazahl oder Text. 
 +# Man kann dies statt inputFloat oder inputInt verwenden. 
 +y = input("Gib eine weitere Zahl ein:"
 + 
 +print("Die eingegebenen Zahlen sind"
 +print(x) 
 +print("und"
 +print(y) 
 +print("") # Gibt eine leere Zeichenkette ausDa "print(..)" nach der Ausgabe immer in die nächste Zeile geht, gibt dies eine Leerzeile aus. 
 + 
 +print("Die Summe dieser beiden Zahlen ist"
 +print(x+y) 
 +print("Das Produkt dieser beiden Zahlen ist"
 +print(x*y) 
 + 
 +print(""
 +print("Uf Wiederluege!")
 </code> </code>
 </hidden> </hidden>
Line 336: Line 285:
 <hidden Spalte kleines Einmaleins> <hidden Spalte kleines Einmaleins>
 <code python> <code python>
-WIRD HAUSAUFGABE, FALLS WIR NUR SO WEIT KOMMEN SOLLTEN.....+x = inputInt("Gib eine Zahl ein!"
 + 
 +vielfaches = 0 
 +repeat 10: 
 +    vielfaches = vielfaches + x 
 +    print(vielfaches) 
 +     
 +# Alternative Lösung: 
 +
 +# print("------------"
 +# i = 0 
 +# repeat 10: 
 +#     i = i + 1 
 +#     print(i * x)
 </code> </code>
 </hidden> </hidden>
Line 342: Line 304:
 <hidden $n$-Eck> <hidden $n$-Eck>
 <code python> <code python>
-einzufuegen+from gturtle import * 
 +makeTurtle() 
 + 
 +n = 7 
 +s = 100 
 + 
 +repeat(n): 
 +    forward(s) 
 +    right(360/7)
 </code> </code>
 </hidden> </hidden>
  • lehrkraefte/snr/informatik/bruehl-2022/ein-und-ausgabe-variablen.1645543312.txt.gz
  • Last modified: 2022/02/22 16:21
  • by Olaf Schnürer