Laden im
Google Play
Die moderne industriegesellschaft zwischen fortschritt und krise
Friedensschlüsse und ordnungen des friedens in der moderne
Imperialismus und erster weltkrieg
Der mensch und seine geschichte
Herausbildung moderner strukturen in gesellschaft und staat
Deutschland zwischen demokratie und diktatur
Das 20. jahrhundert
Großreiche
Frühe neuzeit
Europa und globalisierung
Europa und die welt
Die zeit des nationalsozialismus
Das geteilte deutschland und die wiedervereinigung
Bipolare welt und deutschland nach 1953
Demokratie und freiheit
Alle Themen
Entwicklungsperspektiven
Mensch-umwelt-beziehungen
Die subpolare und polare zone
Russland
Herausforderungen an die menschen des 21. jahrhunderts
Europa
Klima und vegetationszonen
Entwicklung in tropischen räumen
Planet erde
China
Globalisierung
Ressourcenkonflikte und ressourcenmanagement
Australien und ozeanien
Klimawandel und klimaschutz
Usa
Alle Themen
24.9.2021
4178
171
Teilen
Speichern
Herunterladen
Programmieren Die Tätigkeit ,,Programmieren" - aus Sicht des EVA-Prinzips: Eine Rechenanlage bzw. Ein Computer ist ein Informationsverarbeitungssystem, welches nach dem EVA-Prinzip arbeitet. - d.h. Programmieren die Beschreibung des Verarbeitungsteils" in der Maschine Eingabe -> Die Programmiersprache Python Historische Entwicklung: - entwickelt von Guido van Rossum Anfang der 1990er Nachfolger von Programmier-Lehrsprache ABC Verarbeitung Ursprünglich für Betriebssystem Amoeba Name: von „Monty Python", englische Komikergruppe Erste Vollversion 1994 (Python 1) - Seitdem: Python 2 (mehrere Versionen), Python 3 (3000) Ziele bei der Entwicklung Pythons: - Größte Einfachheit - Übersichtlichkeit -> weniger Schlüsselwörter - knappe Formulierbarkeit - als Lehrsprache gut nutzbar -> Ausgabe python TM Python Ein- und Ausgabe von Text in Python - Ausgabe = print() - um einen Text auszugeben verwendet man Anführungszeichen - um einen Zeilenumbruch zu erzeugen nutzt man \n um einen Tabulator (Einrücken) zu erzeugen nutzt man \t Bsp.: Bsp2.: E Operationen in Python Addition, Subtraktion Division, Multiplikation Potenzen (hoch 2) Potenzen (hoch n) V print("Hallo Welt") Eingabe = input() |||| - soll dem Anwender ein Hinweis gegeben werden, so wird dies in Anführungszeichen in der Klammer des Befehls geschrieben -> wenn es keinen Hinweis geben soll, lässt man die Klammer leer Bsp1.: A Hallo Welt E Eingabe des eigenen Namens V print(input("Gib deinen Namen ein!")) A Der Name des Anwenders E Name des Anwenders V print("Mein Name ist" + input("Gib deinen Namen ein.")) A Mein Name ist Name des Anwenders (z. B. Mein Name ist Anna Istgleich (=), Ungleich (*) Größergleich (2), kleinergleich (≤) Kleiner, größer Ganzzahlige Division (div) Rest der...
Durchschnittliche App-Bewertung
Schüler:innen lieben Knowunity
In Bildungs-App-Charts in 11 Ländern
Schüler:innen haben Lernzettel hochgeladen
iOS User
Philipp, iOS User
Lena, iOS Userin
ganzzahligen Division (modulo) +,- 1.* **2 **n >=, <= <,> // % 01_HalloWelt.py x 1 print ("Hallo Welt!") 2 print ("Ich schreibe dir ein Programm, ") 3 print ("Weil ich es kann.") 4 print ("Es wird ein kleines Gedicht") 5 print ("Ich hoffe, ich verschreibe mich NICHT!") 6 print ("Mein Name ist " + input ("Gib deinen Namen ein!")) 02_Kommentare_Variablennamen_BMI.py* 1# Programm zur Berechnung von großem Quatsch 2# Autor: Irgendwer 3 # Datum: 27.02.20 4 x 5a = input ("Geben Sie ihre Körpergröße in Zentimetern ein") 6b input ("Geben Sie ihr Gewicht in Kilogramm ein.") 7c = (a/100)^2 8 db / c 9 print (Ihr BMI beträgt: ') 10 print (d) Code-Konventionen - Zu Beginn jedes Programms schreiben wir folgenden Kopf: # Programm zur/für # Autor: # Datum: - zu besseren Lesbarkeit immer eine Leerzeile - um Quellcode besser lesbar und verständlich zu machen, nutzen wir Kommentare = # -> alles was hinter dem # steht wird vom Compiler nicht gelesen - jede Zeile bzw. Jeder Anwendungsblock wird mit einem Kommentar versehen (zur Verständlichkeit) - Variablen werden mit einem Namen versehen, wenn mehrere Wörter nötig wird jedes Wort am Anfang groß geschrieben -> nicht erlaubt für Variablen sind Sonderzeichen (ä, ö, ü, ß, Punkte, Leerzeichen) # Programm zur Berechnung vom Body-Maß-Index 2# Autor: Frau Purucker 3# Datum: 27.02.20 4 5 Groesse = input ("Geben Sie ihre Körpergröße in Zentimetern ein") 6 Gewicht = input ("Geben Sie ihr Gewicht in Kilogramm ein.") 7 GroesseQuadratMeter (Groesse / 100)^2 8 BMI = Gewicht / GroesseQuadratmeter 9 print ('Ihr BMI beträgt: ') 10 print (BMI) Datentyp integer Real, float String Multiline String Beschreibung Ganze Zahlen Reelle Zahlen, werden. auch Gleitkommazahlen genannt Zeichenkette oder auch Text Einzelnes Zeichen Summe zweier Zahlen Variablen: x (Zahl1) Darstellung in Python int(a) float(a) "Hallo" oder 'Hallo' Str() Drei Anführungszei- chen ("""""" oder "...") y (Zahl2, number2) Summe (sum, ...) Beispiel a = 5 a = 3.14 V a= "Hallo" print("""Hallo Hier Bin Ich") E X, Y Bezeichner = rot; Variablenwert = grün Summe = x + y A Summe Verzweigungen in Python - In einer Programmiersprache versteht man unter einer bedingten Anweisung (auch Verzweigung oder IF-Anweisung genannt) Codeteile, die unter bestimmten Bedingungen ausgeführt werden. - ohne Bedingungen wird dieser Code nicht ausgeführt Ja Bedingung Anweisungen1 Anweisungen2 Fallunterscheidungen Bedingung 11 Anweisungen1 Modulo Fallauswahl Bedingung 2 Sonst Anweisungen2 Anweisungen3 Ergebnis = int(Zahl #2 Grgebnis - Ergebnis +5 Nein Ergebnis Ergebnis, *50 513 Zuweisung = Zahl=4 Ergebnis = 1x2 =8 Ergebnis = 8 +5 =13 Ergebnic 1813 Modelo 10/100/1000... 21 mod 10 = 217 mod 100 = 17) 217 mod 1000=(217) 4 if bedingung10 6 else: 7 4 if bedingung1: 5 217 pint("Du willst.") Modulo anweisungen1 anweisungenl 6 elif bedindung2: 7 anweisungen2 8 else: 9 217 -21 Erganis -2007 1 anweisungen2 anweisungen3 3=72) (R₁ 217 mod 100 =17 str(217)[0] 1 Ergebnis Modulo 217 mod 3=1₁ gare Bahlight Division 217 dir 3-72 Ergebnis int(217) print (Du möchtest dein Hobby "+ Str Ergebnis/100) + ausführen und bist" + st Ergebnis % 100 + "Jahre alt") Kurs: If 11, Frau Purucker met Thema: Schleifen in Python Schleifen in Python Name:. Datum: 08.06.2021, Seite 1 von 2 and mare dallin Hann er a 91da) ating Schleifen, werden benötigt, um einen Codeblock, den man auch als Schleifenkörper bezeichnet, wiederholt auszuführen. In Python gibt es zwei Schleifentypen: Die while-Schleife und die for-Schleife. (COM Die meisten Schleifen enthalten einen Zähler oder ganz allgemein Variablen, die im Verlauf der Berechnungen innerhalb des Schleifenkörpers ihre Werte ändern. orio Außerhalb, d.h. noch vor dem Beginn derliau nabag True [da Schleife, werden diese Variablen initialisiert. Vor jedem Schleifendurchlauf wird geprüft, ob ein Ausdruck, in dem diese Variable oder Variablen vorkommen, wahr ist. Dieser Ausdruck bestimmt das Endkriterium der Schleife. Solange die Berechnung dieses Ausdrucks wahr ist, wird der Rumpf der ton hu aus mango boldo4 (8 Schleife ausgeführt. Nachdem alle Anweisungen des Schleifenkörpers durchgeführt worden sind, springt die Programmsteuerung automatisch zum Anfang der Schleife, also zur Prüfung des Endkriteriums zurück und prüft wieder, ob diese nochmals erfüllt ist. Wenn ja, geht es wie oben beschrieben weiter, ansonsten wird der Schleifenkörper nicht mehr ausgeführt und es wird mit dem Rest des Skriptes fortgefahren. Das nebenstehende Diagramm zeigt dies schematisch.iew.dailgy bhie spoon mi 16V ( Die For-Schleife in Python na sib bboo mob nepapriewed alons no i rabarbe] Nouglegrou retrówlanalda) Die For-Schleife wird oft auch Zählschleife genannt. Sie wird benutzt, wenn man bestimmte Anweisungen häufiger iterieren (also ausführen) möchte. Es wird somit bei jedem Schleifendurchlauf "gezählt". A nation grupiow Bedingung Anweisung, Anweisung, Anweisung False Weitere Anweisungen des Programms Eine For-Schleife in Python 3 for (inrange (Startpunkt, Endpunkt) besteht immer aus dem Signalworten for und in. Diese Anweisungen erste Zeile der Schleife nennen wir Schleifenkopf. Außerdem benötigt jede For-Schleife auch eine sogenannte Laufvariable. Meist nutzt man dafür die Buchstaben i, j, m oder n. Aber auch andere Bezeichnungen sind möglich. Diese Laufvariable wird dann bei Aufruf der Schleife hochgezählt. In Python gibt es für For-Schleifen eine Besonderheit: Man gibt durch range() an, welche Werte die Laufvariable annehmen soll. Das klingt zunächst sehr kompliziert, ist es aber nicht. Range bedeutet auf Deutsch Spannweite oder Umfang. Es wird also ein Bereich angegeben, indem die Schleife durchlaufen werden soll. Ihr könnt euch das so vorstellen, wie ein Intervall in Mathematik. Steht im Programmcode range(1,3) dann nimmt die Laufvariable (z.B. i) zunächst den Wert 1 an, dann werden die Anweisungen mit i = 1 ausgeführt. Daraufhin wird i um 1 erhöht. Die Laufvariable hat nun den Wert 2. Danach springt der Compiler weder zum Schleifenkopf. Er prüft, ob i noch in dem geforderten Intervall liegt. Wieder werden die Anweisungen ausgeführt, diesmal aber für den Wert i = 2. Die Laufvariable wird wieder um eins erhöht, der Schleifenkopf wird geprüft und es wird festgestellt, dass i = 3 nicht mehr in dem gewünschten Bereich liegt. Aus diesem Grund wird nun die Schleife beendet. Das Endkriterium ist erreicht. Kurs: If 11, Frau Purucker Thema: Schleifen in Python JALAK BUE NET Es ist auch möglich statt eines Endpunkts (auch äußere Randbedingung genannt) eine Variable anzugeben. Möchte man die Ausgabe von Aufgabe 1 zum Beispiel so oft ausgeben, wie es der Anwender wünscht, so könnte man schreiben: mu pitonsd nebew T3 Randbedingung input ("Geben Sie eine Zahl ein.") do2-nol si bnu 4 for i in range (1, Randbedingung) : 5 print (i) Name: Datum: 08.06.2021, Seite 2 von 2 olles nénia noticliris nelle 12 mesiach 0 Aufgaben 1. [schriftlich] Schreibe folgenden Quellcode als Pythonprogramm. Speichere es unter: since 06 Schleifen Ausgabe_Zahlen 02_Verzweigungen und Schleifen habe aldeity 026 moltelde mobel so ob nila beuA nis do mmarov neldhov wbheap tatmifase HousbauA top sib sensloa strelda Dateiname: Ordner: 3 for i in range (1, 7); PasiGat 4 print (i) 196 git nolasizeVintamoplis seer hebo ob dictional molinas ob uchoy nhabna show Audi egons52 63 for i in range (1, 12): mey isd 4 5 6 7 a) Probiere das Programm aus und notiere die Ausgabe. Schreibe zu jeder Ausgabe nebrow den aktuellen Wert für i auf.a cob nepriuatown is more mildtsgavesholds2 pnuli b) Setze für die Zahl 7 verschiedene unterschiedliche Zahlen ein. Beschreibe, welche Jeit Funktion diese Stelle hat. asboiw stöng bruxalitus equitetiba 206 drisin c) Setze für die Zahl 1" verschiedene Zahlen ein und beschreibe auch die Funktion obnedele dieser Stelle. Talophot asiqité sob a ma sim briw as bnu hautspaus dem d) Welche Werte in range sind möglich, welche nicht? Notiere die verschiedenen Fälle. 2. [schriftlich] Markiere an folgendem Code die entsprechenden Bestandteile (Schlüsselwörter, Doppelpunkt, Intervall, Anweisungen, Laufvariable) der Schleife. Janers shieldsaldes risus to buiw Rom (prüleus geis) heroinati print("Das ist der " + str(i) + "te Schritt.")ofieldo b=i+1 print (b) N marliya iawnA AL peldb2-107 13 smati biglaud href00bnu no namowisable nous olisida2-107 abp gitoned motheuA iyonnalisto2 nonnon lis2 190 019 le da 3. Implementiere ein Programm in Python, welches bei einer eingegebenen Zahl ajalris immer zwei ,hochzählt" bis es beim Doppelten der Zahl angekommen ist.ben tomob idig nek! lottobroes snis actions2-107 not as idig mority ni Hrisseprison elib chow etalow ne tai silmo Dateiname: 06 Ausgabe_Zahlen2 dalene is 02 Ordner: P02_Verzweigungen und Schleifen ownellosetov o sb duo inox al los hebbw nelucingjub nonn feshed opnew adinvade as sirisa sib mobainisdepoghs ilementaM ni lievietat die 12 new na laronus (93) aluchavlusi sib immin ainab (6)epush eboomingos? sid norite mu i briw nintucted hribiopeus (1 tim opnuelawma eib nenew nabas 13 /2 mus tobaw originas web pange bencd Show nab nun ten aidenavlus! nappalown sib hoinaw sebaiw apel lleviatni nohabolen man o doon do fung 100 de anie mu nebsiw briw oldsinvulsid $i haw deb taads inmesib datageue. noirseniowap misb ni som idsin & -leesbitelesptes baleras bny toga bawloonshoirb Inalem tal momencebread olisirls2 sib un iniwibruse rosealb zuA 1 9193 Kurs: If 11, Frau Purucker Thema: Schleifen in Python Die kopfgesteuerte Schleife in Python In Python gibt es, wie wir bereits wissen, zwei Arten von Schleifen. Neben der For-Schleife gibt es eine kopfgesteuerte Schleife namens While-Schleife. Eine While-Schleife führt einen Anweisungsblock solange aus, bis eine be- stimmte Bedingung nicht mehr erfüllt ist. Schaut man sich das in einem Struktogramm (Abbildung 1) oder in einem Flussdiagramm (Abbildung 2) an, so stellt man schnell fest, dass die Bedingung Bedingung nein 1 Schleifen- durchlauf 2 la 3 4 5 6 Anw. Abbildung 2 In Python wird eine kopfgesteuerte Schleife wie in Abbildung 3 implementiert. Man verwendet das Signalwort while. Darauf folgt eine Bedingung, hin- ter welcher ein Doppelpunkt steht. Python wertet die Bedingung aus und gibt entweder True (dt. wahr) oder False (dt. falsch) zurück, je nachdem, ob die Bedingung erfüllt ist, oder nicht. Darunter folgt eine Einrückung und dann eine oder mehrere Anweisungen untereinander. In folgendem Beispiel ist die Bedingung n kleiner-gleich 7, damit der Anweisungsblock in der Schleife 4 n = 1 ausgeführt wird. Die Variable n hat dabei zunächst den Wert 1. 5 while n <= 7: print n 6 +1 In folgender Tabelle sind immer die Werte für n und die Bedingung (also True oder False) angegeben. Solch eine Tabelle bezeichnet man auch als Schreib- Abbildung 4 tischtest. Der Test dient zum einen dazu zu verstehen, welche Werte die Vari- ablen annehmen und zum anderen Endlosschleifen auszuschließen. Eine Endlosschleife nennt man eine Schleife immer dann, wenn sie kein Ende findet. Wir werden uns gleich anschauen, wie eine Endlos- Aubinoisir ba schleife für das Beispielprogramm aus Abbildung 4 aussehen könnte. Zunächst betrachten wir aber den Schreibtischtest für das obenste- hende Programm. Die Variable n wird vor dieser Schleife auf 1 festgelegt. Das ist wichtig, damit das Programm einen Startwert für n kennt. Es ist auch möglich, einen solchen Wert vom Anwender eingeben zu lassen.. 7 8 n 1 2 3 4 5 6 7 8 Name: Datum: 08.06.2021, Seite 1 von 2 Anweisung Abbildung 1 im Schleifenkopf immer wieder überprüft wird, bevor die Anweisungen ausge- führt werden. Deswegen spricht man bei solchen Schleifen auch von kopfgesteu- erten Schleifen. Bedingung ns7 True True True True True True True False solange Bedingung dass hier bereits die Schleife beendet wäre. 3 while Bedingung 4 5 6 Anweisungl Anweisung2 Anweisungen Abbildung 3 Beim ersten Schleifendurchlauf ist die Variable demnach 1 und wird mit 7 verglichen. Da 1 s 7 ist, wird n (hier also 1) ausgegeben und um eins erhöht. Somit ist n im nächsten Schleifendurchlauf also 2 und wird wie- der mit 7 verglichen. Die Bedingung wird wieder als True gewertet, n wird ausgegeben und um 1 erhöht. Schaut man sich nun Schleifendurchlauf 7 an, so könnte man denken, Kurs: If 11, Frau Purucker Thema: Schleifen in Python 4 n = 7 5 while n >= 7: print n Jedoch führt das Programm nach nochmaliger True-Rückgabe der Bedingung (7 ≤7) den Anweisungsblock aus. Das bedeutet, dass wieder n ausgegeben und um 1 erhöht wird. Die Variable n hat jetzt den Wert 8. Wieder wird der Schleifenkopf durchlaufen und die Bedin- gung geprüft. Dieses Mal wird False zurückgegeben, da 8 nicht kleiner-gleich 7 ist. Also wird n nicht ausgegeben und nicht um 1 erhöht. Stattdessen geht Python aus der Schleife hinaus und führt die nächste Anweisung, also print("Fertig!") aus. Eine Endlosschleife würde in diesem Programm z.B. dann entstehen, wenn die Bedingung n ≥ 7 und der Startwert für n = 7 wäre. 6 7 n = n + 1 8 print ("Fertig!") Dann würde n immer wieder ausgegeben und um 1 erhöht werden. Da aber n bereits am Anfang 7 ist und danach immer größer wird, kommt es im Schleifenkopf nie zu der Auswertung "False" und somit nie zum Ende der Schleife. Das zieht einen Programmabsturz mit sich, der sich in Tigerjython meist nur durch Be- enden des Programms lösen lässt. Aufgaben 1. [schriftlich] Übernimm den folgenden Programmcode als ein Pythonprogramm auf deinem Computer. 203 Zahl = int(input ("Geben Sie eine Zahl ein.")) 4 while Zahl <= 20: 5 6 7 8 print ("Fertig!") Dateiname: 07_Produkt Produkt = Zahl Zahl print (Produkt) Zahl = Zahl + 1 Name: Datum: 08.06.2021, Seite 2 von 2 a. Teste das Programm am Computer und notiere, was hier berechnet wird. b. Führe einen Schreibtischtest für das Programm mit der Eingabe Zahl = 10 durch. (Tabel- lenkopf: Schleifendurchlauf, Zahl, Bedingung, Produkt) c. Wandle das Programm in ein Struktogramm um. 2. [schriftlich] Entwickle ein Flussdiagramm für ein Programm, welches mit einer while-Schleife für eine eingegebene Zahl die größte Zweierpotenz, die noch in die Zahl hineinpasst, ausgibt. Beispiel: eingegebene Zahl: 35 Ausgabe: Die größte Zweierpotenz, die in 35 passt, ist 2^6 = 32. Dateiname: 08_Zweierpotenzipps Now. 3. [schriftlich] Korrigiere die Fehler von folgendem Programm. 4n = int(input()). ba 5 Laenge = 0hrist 6 while n < 0 7n = n // 10 Laenge == float (Laenge + 1) 8 9 print (laenge). (Hinweis: es sind 6 Fehler, die es zu fin- den und zu berichtigen gilt.)