Informatik Name: Lösung Nr. 2 K1/K
|
|
- Wilhelm Graf
- vor 6 Jahren
- Abrufe
Transkript
1 Vorbereitungen: 1) Melden Sie sich unter Ihrem User an und bestimmen Sie den Computernamen indem Sie nach dem Einloggen auf das Computer-Icon links oben klicken. Notieren Sie den Namen des PCs hier auf dem Papier (z.b. EDV2-3146) EDV2-. 2) Melden Sie sich wieder ab. 3) Loggen Sie sich mit dem Computernamen als Benutzer ein, also z.b. mit dem User EDV ohne Passwort. Sie müssen nun zweimal ein vbs-skript (Visual Basic- Script) bestätigen, d.h. 2-mal auf ok klicken. Danach müssen Sie Ihren Vor- und Nachnamen eingeben. 3) Kopieren Sie die Ordner EcPy und Py von V:\ nach H:\ Nennen Sie den kopierten Ordner KA_InfK2 um in Py_ IhrName. Im File aa_pythoninfos_ Grundlagen.doc (in Py) stehen Zusammenfassungen von Python, die Sie beim Programmieren benutzen können. Nach PCLoes.doc kopieren Sie nach dem Programmieren der Aufgaben die Programme und die Ausgaben auf der Konsole. 4)Während des Kopierens bearbeiteten Sie die ersten drei Aufgaben schriftlich auf einem Blatt ohne Benutzen des PCs. 5) Geben Sie dieses bearbeitete Blatt ab und bearbeiten Sie nun die Computer- Aufgaben am PC. In EcPy stehen bereits Vorlagen für die Aufgaben. 6) Vor dem Ausschalten des PC kopieren Sie den Ordner src von H:\EcPy\PyPrgs\KA nach Py_ IhrName und dann diesen Ordner Pa_ IhrName auf einen Stick, den ich Ihnen gebe. 7) Löschen Sie EcPy (nach Rücksprache mit mir), und loggen Sie NICHT aus. Aufgabe 1: (Blatt) Erläutern Sie kurz die Wirkung folgender Codezeilen, Was wird jeweils berechnet? Beschreiben Sie den Inhalt der Variablen (nach jeder Codezeile bzw. nach der Schleife) a) [2P] LL7=[] for i in range(4): LL7.append(7*i) print LL7 b) [2P] qu = [t**2 for t in range(6)] print "[t**2 for t in range(6)] = %s", %(qu) c) [2P] import random as r zz=[r.randint(1,6) for i in range(2000)] pz=float(sum(zz))/len(zz) print "\n\n mi = %4.3f \n" %(pz) Lösung 1: a): LL7 zeigt jetzt auf eine leere Liste In der Liste LL7 steht nach der for-schleife: [0,7,14,21] Sie wird am Bildschirm angezeigt. b) List Comprehension -> qu=[0,1,4,9,16,25]
2 Anzeige: [t**2 for r in range(g)]= [0,1,4,9,16,25] c) alle Methoden * von random können künftig mit r.* aufgerufen werden. in zz stehen anschließend 2000 Würfelzahlen zwischen 1 und 6 pz ist der Mittelwert der Würfe, etwa 3,5 Anzeige von mi= pz, wobei davor zweimal mi \n eine neue Zeile erzeugt wird. Aufgabe 2: (Blatt) Wir haben in den letzten Wochen die Grundlagen der objektorientierten Programmierung kennen gelernt: a) [2P] Was versteht man unter Klassen, was unter Objekten? Wie werden Eigenschaften, wie Fähigkeiten von Objekten realisiert? b) [2P] Erläutere die Begriffe Vererbung und Kapselung von Daten Lösung 2: a) Klassen sind Baupläne von Objekten, sie bestehen aus Variablen und Methoden. Im Programm werden nicht einzelne Objekte, sondern eine Klasse gleichartiger Objekte definiert. Klassen sind Vorlagen, aus denen Instanzen genannte Objekte zur Laufzeit erzeugt werden. Objekte sind Realisierungen (oder Instanzierungen instance) von Klassen. Eigenschaften sind Variable. Fähigkeiten sind Methoden. b) Eigenschaften und Fähigkeiten können an Kindklassen übergeben werden. Man muss diese Dinge nicht neu programmieren. Vererbung heißt vereinfacht, dass eine abgeleitete Klasse die Methoden und Attribute der Basisklasse ebenfalls besitzt, also erbt. Somit kann die abgeleitete Klasse auch darauf zugreifen. Neue Arten von Objekten können auf der Basis bereits vorhandener Objektdefinitionen festgelegt werden. Es können neue Bestandteile hinzugenommen werden oder vorhandene überlagert werden. Als Datenkapselung bezeichnet man in der Programmierung das Verbergen von Implementierungsdetails. Auf die interne Datenstruktur kann nicht direkt zugegriffen werden, sondern nur über definierte Schnittstellen. Objekte können den internen Zustand anderer Objekte nicht in unerwarteter Weise lesen oder ändern. Ein Objekt hat eine Schnittstelle, die darüber bestimmt, auf welche Weise mit dem Objekt interagiert werden kann. Dies verhindert das Umgehen von Invarianten des Programms. Unter Kapselung versteht man vereinfacht auch, dass man auf Daten nicht direkt zugreifen kann, der Programmierer kann damit die Art, wie die Daten abgespeichert werden, anschließen ändern (z.b. statt kartesischen Koordinaten, Polarkoordinaten nehmen. Oder Entfernungen in m statt in km oder Meilen abspeichern) Aufgabe 3: (Blatt) Betrachten Sie die folgende Klasse: class Konto(object): def init (self, inhaber, knr, kstand, kk=0): self.inhaber = inhaber self.kontonummer = knr self.kontostand = kstand self.kontokorrent = kk # wie viel darf man überziehen def ueberweisen(self, ziel, betrag): if(self.kontostand-betrag<-self.kontokorrent):
3 print "Vorsicht: Das Konto ist nicht gedeckt!" return False else: self.kontostand -= betrag ziel.kontostand += betrag return True def einzahlen(self, betrag): self.kontostand += betrag def auszahlen(self, betrag): self.kontostand -= betrag def str (self): return "Der Kontostand von %s ist %7.2f" \ %(self.inhaber, self.kontostand) a) [2P] Erstellen Sie (nur auf dem Papier) zwei Konten K1 und K2, eines von Jens mit dem Anfangsstand 2012,17 und der Kontonummer und eines von Uta mit der Kontonummer und dem Anfangsstand 879,09, wobei Uta 500 überziehen darf. b) [2P] Überweisen sie von K2 nach K1 998,32. Geben Sie anschließend beide Kontostände aus. c) [2P] Welche Bedeutung hat self? Welchen Wert bekommt es beim Aufruf? Wie wird der Wert übergeben? Lösung 3: a) k1 = Konto("Jens", 70711, ) print k1 k2 = Konto("Uta", 20813, , 500) print k2 Anzeige Der Kontostand von Jens ist Der Kontostand von Uta ist b) k1.ueberweisen(k2, ) print k1 print k2 Anzeige Der Kontostand von Jens ist Der Kontostand von Uta ist c) Self ist die Adresse des augenblicklichen Objekts. Sie sird beim Aufruf implizit durch K1 übergeben, d.h. K2.uerberweisen(K1,x) wird uerberweisen(k2,k1,x) Geben Sie bitte das Blatt mit den ersten drei Aufgaben ab und bearbeiten Sie die übrigen Aufgaben am PC mit EcPy. Benutzen Sie gegebenenfalls das File aa_pythoninfos_grundlagen.doc
4 Aufgaben am PC mit Python bearbeiten Aufgabe 4: [6P] (mit Python) Benutzen Sie die Vorlage A24.py in EcPy Paket KA n 2 i+ 1 1 π Der Grenzwert der Reihe ( 1) ist 2 i= 1 i 12 Erstellen Sie ein Programm, das die Reihe für n=2000 berechnet. Kopieren Sie das Programm und das an der Konsole erzeugte Ergebnis in das File PCLoes.doc. Lösung 4: Code Beschreibung: KA2 Sj13/14, Aufgabe 4 Die Reihe der n ersten Glieder der Pi^2/12-Näherung import math as m n=2000 sum=0.0 vz=1 for i in range(1,n+1): sum=sum+vz*1./(i*i) vz=vz*(-1) print "Die Summe der %s ersten natürlichen Gliedern der Pi^2/12- Näherung ist %s" %(n,sum) print "Damit ist %s eine Näherung von Pi= " %(m.sqrt(sum*12)) Ausgabe an der Konsole Die Summe der 2000 ersten natürlichen Gliedern der Pi^2/12-Näherung ist Damit ist eine Näherung von Pi= Aufgabe 5: [6P] (mit Python) Benutzen Sie die Vorlage A25.py in EcPy Paket KA Erstellen Sie eine Klasse von 3-dim Vektoren. Der Konstruktor soll einen Vektor mit den übergebenen 3 Werten erstellen. Mit print(v) soll man den Vektor anzeigen können. Vektoren soll man addieren können und man soll die Länge eines Vektors berechnen können. Testen Sie ihre erstellten Methoden mit folgenden Aufgaben Addieren Sie v1(3,4,5) und v2(6,-2,5,0,75) und zeigen Sie das Ergebnis an. Gegen Sie die Länge der Vektorsumme aus. Kopieren Sie das Programm und das an der Konsole erzeugte Ergebnis in das File PCLoes.doc. Lösung 5: Code import math class Vektor3D(object): """Klasse für Vektoren mit 3 Komponenten""" def init (self, x=0, y=0, z=0): """initialisiert eine neue Instanz""" self.x = x self.y = y self.z = z
5 def betrag(self): """errechnet den Betrag des Vektors""" return math.sqrt(self.x**2+self.y**2+self.z**2) self.z+=v2.z return def add(self,v2): self.x+=v2.x self.y+=v2.y self.z+=v2.z return def add (self,v2): # Diese Methode wird implizit durch v3=v1+v2 aufgerufen # sie gibt ein neues Objekt zurück, x=self.x+v2.x y=self.y+v2.y z=self.z+v2.z return Vektor3D(x,y,z) def str (self): text="3-dim-vektor (%2.4f / %2.4f / %2.4f) " \ %(self.x, self.y, self.z) return text # Ende der Klassendefinition Vektor3D ################################################################# v1=vektor3d(3, 4, 5) print (v1) v2=vektor3d(6, -2.5, 0.75) print(v2) print v2.betrag() v2.add(v1) print (v2) print "Länge von v2 = ", v2.betrag() # Impliziter Aufruf von add v3=v1+v2 print v3 Ausgabe an der Konsole 3-dim-Vektor ( / / ) 3-dim-Vektor ( / / ) dim-Vektor ( / / ) Länge von v2 = dim-Vektor ( / / ) Aufgabe 6: [8P] (mit Python) Benutzen Sie die Vorlage A26.py in EcPy Paket KA Erstellen Sie eine Methode intervallschachtelung01(f,a,b,eps=10**(-10)), die eine Näherung der Nullstelle zurückgibt. Der Rückgabewert soll die Mitte des Intervalls sein, in dem eine Nullstelle liegt, die Länge des Intervalls soll eps sein. f ist die Funktion, deren Nullstelle bestimmt werden soll. Sie muss im Programm ebenfalls definiert werden. Die Werte a und b sind die linke und rechte Intervallgrenzen, in der die Nullstelle zu finden sein soll.
6 Bemerkung: f hat an den Stellen a und b genau dann unterschiedliches Vorzeichen, wenn der Funktionswert an einer der beiden Stellen größer und an der anderen kleiner als Null ist. Dies ist genau dann der Fall, wenn f(a)*f(b)<0 gilt. Ein Schritt bei der Intervallschachtelung ist: Berechnen sie die Mitte des Intervalls [a,b], d.h. m=(a+b)/2 Hat der Funktionswert an der Stelle m ein anderes Vorzeichen als an der Stelle a, so befindet sich in [a,m] eine Nullstelle, sonst in [m,b] Dieser Schritt wird so lange wiederholt, bis Intervalllänge (b-a) kleiner als eine vorgegebene Schranke ist. Erstellen Sie ein Programm, das für die Funktion f(x) = (x-3)^3 +5 eine Nullstelle sucht. Die Nullstelle ist zwischen 0,5 und 7,5. Kopieren Sie das Programm und das an der Konsole erzeugte Ergebnis in das File PCLoes.doc. Lösung 6: Code Beschreibung: Interfallschachtelung, KA2, Aufgabe 6 def f(x): return (x-3)**3 +5 def intervallschachtelung01(f,a,b,eps=10**(-10)): """ f: Funktion, a,b: Intervallgrenzen, eps: Wenn sich die linke und rechte Intervallgrenze um weniger als eps unterscheiden, wird das Verfahren abgebrochen. Rückgabe: Näherungswert der Nullstelle und Anzahl der Interationen Wenn keine NS gefunden wird, ist Anzahl =-1 """ Wenn a=b ist, wird b=a+10*eps gesetzt Wenn f(a)*f(b)>0 ist, wird eine Fehlermeldung ausgegeben. if a>b: # sorge dafür, dass a<b ist. a,b=b,a if a==b: b=a+10*eps if f(a)*f(b)>0: # Falls die Funktion an den Rändern gleiches # Vorzeichen hat muss es keine Nullstelle geben. print "Es gibt möglicherweise keine Nullstelle." return 0,-1 # Verfahren kann nicht angewandt werden # Methode Intervallhalbierung iterationenanz=0 a=float(a) # damit halbiert werden kann. b=float(b) while abs(b-a)>eps: m=(a+b)/2 iterationenanz+=1 if f(m)==0: # Nullstelle gefunden break elif f(a)*f(m)<0: b=m else:
7 a=m if iterationenanz>200: # Abbruch nach ## Iterationen iterationenanz=-2 break return m,iterationenanz ################################################################ if name == " main ": ns,schritte = intervallschachtelung01(f,0.5,7.5,10**(-6)) if schritte>0: print "Das Nullstellenverfahren intervallschachtelung01 liefert als Nullstelle", ns print " Damit ist f(",ns,")=",f(ns) print " Man benötigte hierfür",schritte,"iterationen." else: print "Vorsicht, Eine Nullstelle ist nicht garantiert." print"\n" Ausgabe an der Konsole Das Nullstellenverfahren intervallschachtelung01 liefert als Nullstelle Damit ist f( )= e-06 Man benötigte hierfür 23 Iterationen. Wichtig: Vor dem Ausschalten des PC kopieren Sie den Ordner src von EcPy\PyPrgs\KA nach Py_ IhrName und dann diesen Ordner Py_ IhrName auf einen Stick, den ich Ihnen gebe. Löschen Sie EcPy (nach Rücksprache mit mir), und loggen Sie NICHT aus.
Probeklausur: Programmierung WS04/05
Probeklausur: Programmierung WS04/05 Name: Hinweise zur Bearbeitung Nimm Dir für diese Klausur ausreichend Zeit, und sorge dafür, dass Du nicht gestört wirst. Die Klausur ist für 90 Minuten angesetzt,
MehrObjektorientierte Programmierung mit Python Polymorphismus und Vererbung. Eltern
Objektorientierte Programmierung mit Python Polymorphismus und Vererbung Eltern Kind Kind Kind Kind Prinzipien der objektorientierten Programmierung Vererbung Strukturierung von Klassen. Oberbegriffe beschreiben
MehrSilke Trißl, Prof. Ulf Leser Wissensmanagement in der Bioinformatik. Jede Applikation braucht eine Klasse mit einer main-methode
Methoden und Klassen Silke Trißl, Prof. Ulf Leser Wissensmanagement in der Bioinformatik Wiederholung Jede Applikation braucht eine Klasse mit einer main-methode Eintrittspunkt in das Programm Die main-methode
MehrKompetent objektorientiert programmieren
Kompetent objektorientiert programmieren Aegidius Plüss, Bern, www.aplu.ch Eine objektorientierte Programmiersprache steht auf drei fundamentalen Säulen: Klassenkapselung (encapsulation) Vererbung (inheritance)
MehrKapitel 8. Programmierkurs. Methoden. 8.1 Methoden
Kapitel 8 Programmierkurs Birgit Engels Anna Schulze Zentrum für Angewandte Informatik Köln Objektorientierte Programmierung Methoden Überladen von Methoden Der this-zeiger Konstruktoren Vererbung WS 07/08
MehrMethoden. von Objekten definiert werden, Methoden,, Zugriffsmethoden und Read-Only
Methoden Wie Konstruktoren und Destruktoren zum Auf- und Abbau von Objekten definiert werden, Wie inline-methoden Methoden,, Zugriffsmethoden und Read-Only Only- Methoden einzusetzen sind, Der this-pointer
MehrProbeklausur: Programmierung WS04/05
Probeklausur: Programmierung WS04/05 Name: Hinweise zur Bearbeitung Nimm Dir für diese Klausur ausreichend Zeit, und sorge dafür, dass Du nicht gestört wirst. Die Klausur ist für 90 Minuten angesetzt,
MehrProgrammentwicklung I für Hörer anderer Fachrichtungen -Wintersemester 2003/04- Abschlussklausur 20.02.2004
Programmentwicklung I für Hörer anderer Fachrichtungen -Wintersemester 2003/04- Abschlussklausur 20.02.2004 Name : Vorname : Matrikelnummer : Hauptfach : Nebenfach/Fachrichtung Hinweise : 1. Überprüfen
MehrBeispiel 19. December 4, 2009
Beispiel 9 December 4, 2009 Computermathematik (für Informatik) 4. Übungsblatt (Musterlösung) 2. 2. 2009 Die heutigen Übungen sollen mit dem Computeralgebrasystem Sage gelöst werden. Die Lösung der Beispiele
MehrInformatik für Schüler, Foliensatz 23 Konstruktor, String-Methode und Heldenklassse
rof. G. Kemnitz Institut für Informatik, Technische Universität Clausthal 25. Mai 2009 1/10 Informatik für Schüler, Foliensatz 23 Konstruktor, String-Methode und Heldenklassse Prof. G. Kemnitz Institut
MehrGrundlagen Programmierung
1. Aufgabe (Spielen mit Objekten) Gegeben sei der auch von der Veranstaltungsseite erhältliche Programmcode auf der rechten Seite, der im Detail zuerst nicht verstanden werden muss. a) Erzeugen Sie sich
MehrÜbersicht. Informatik 2 Teil 3 Anwendungsbeispiel für objektorientierte Programmierung
Übersicht 3.1 Modell Konto 3.2 Modell Konto - Erläuterungen 3.3 Benutzer Ein- und Ausgabe mit Dialogfenster I 3.4 Benutzer Ein- und Ausgabe mit Dialogfenster II 3.5 Klassen- und Objekteigenschaften des
Mehr10 Objektorientierte Programmierung, Teil 1
10 Objektorientierte Programmierung, Teil 1 Wir lernen nun eine andere Technik (vor allem: eine andere Sichtweise) kennen, um unsere Programm zu organisieren, nämlich mittels Klassen und Objekten 184 Objekte,
MehrObjektorientierte Programmierung OOP
Objektorientierte Programmierung OOP Objektorientierte Programmierung OOP Ronja Düffel WS2012/13 08. Oktober 2013 Objektorientierte Programmierung OOP Objektorientierte Programmierung Objektorientierte
MehrObjektorientierte Programmierung
Objektorientierte Programmierung Ein Computerprogramm besteht aus Funktionen (Programmabschnitten, die etwas tun) und Variablen (Speicherplätzen für Informationen). Werden Funktionen aktiviert, verändern
MehrJavakurs FSS Lehrstuhl Stuckenschmidt. Tag 3 - Objektorientierung
Javakurs FSS 2012 Lehrstuhl Stuckenschmidt Tag 3 - Objektorientierung Warum Objektorientierung Daten und Funktionen möglichst eng koppeln und nach außen kapseln Komplexität der Software besser modellieren
MehrEs ist für die Lösung der Programmieraufgabe nicht nötig, den mathematischen Hintergrund zu verstehen, es kann aber beim Verständnis helfen.
Ziele sind das Arbeiten mit Funktionen und dem Aufzählungstyp (enum), sowie - einfache Verzweigung (if else) - Alternativen switch case - einfache Schleifen (while oder do while) Aufgabe 3: Diese Aufgabe
Mehr5.4 Klassen und Objekte
5.4 Klassen und Objekte Zusammenfassung: Projekt Figuren und Zeichner Figuren stellt Basisklassen für geometrische Figuren zur Verfügung Zeichner bietet eine übergeordnete Klasse Zeichner, welche die Dienstleistungen
MehrÜbungsblatt 2. Abgabe: Freitag, 7. November 2014, 18:00 Uhr
Informatik I: Einführung in die Programmierung Prof. Dr. Bernhard Nebel Dr. Christian Becker-Asano, Dr. Stefan Wölfl Wintersemester 2014/2015 Universität Freiburg Institut für Informatik Übungsblatt 2
MehrFakultät Angewandte Informatik Programmierung verteilter Systeme 28.11.2011. Übungen zur Vorlesung Informatik II, Blatt 6
WS 2011/12 Fakultät Angewandte Informatik Programmierung verteilter Systeme 28.11.2011 Prof. Dr. Bernhard Bauer Übungen zur Vorlesung Informatik II, Blatt 6 Abgabe: Montag, 05.12.2011, 12.00 Uhr, Informatik
MehrProgrammieren I. Kapitel 5. Kontrollfluss
Programmieren I Kapitel 5. Kontrollfluss Kapitel 5: Kontrollfluss Ziel: Komplexere Berechnungen im Methodenrumpf Ausdrücke und Anweisungen Fallunterscheidungen (if, switch) Wiederholte Ausführung (for,
MehrObjektorientierte Programmierung
Objektorientierte Programmierung 1 Geschichte Dahl, Nygaard: Simula 67 (Algol 60 + Objektorientierung) Kay et al.: Smalltalk (erste rein-objektorientierte Sprache) Object Pascal, Objective C, C++ (wiederum
Mehr6 Ein- und Ausgabe. Bisher war unsere (Bildschirm-) Ausgabe leichtflüchtig (
6 Ein- und Ausgabe Bisher war unsere (Bildschirm-) Ausgabe leichtflüchtig ( Drucken war hoffnungslos übertrieben); heute lernen wir, wie wir die Ergebnisse unserer Programme abspeichern können, um sie
MehrÜberschreiben von Methoden
Vergleich der DoME Realisierungen: Methode ausgeben Version 1 (ohne Vererbung): Anzeigen aller Informationen CD: A Swingin Affair (64 Min)* Frank Sinatra Titelanzahl: 16 Mein Lieblingsalbum von Sinatra
MehrJAVA - Methoden
Übungen Informatik I JAVA - http://www.fbi-lkt.fh-karlsruhe.de/lab/info01/tutorial Übungen Informatik 1 Folie 1 sind eine Zusammenfassung von Deklarationen und Anweisungen haben einen Namen und können
MehrProgrammierkurs Python I
Programmierkurs Python I Michaela Regneri 2010-01-21 (Folien basieren auf dem gemeinsamen Kurs mit Stefan Thater) Übersicht Mehr Abkürzungen in Python: - map - List Comprehensions Anonyme Funktionen, lambda
MehrInformatik 2 Labor 2 Programmieren in MATLAB Georg Richter
Informatik 2 Labor 2 Programmieren in MATLAB Georg Richter Aufgabe 3: Konto Um Geldbeträge korrekt zu verwalten, sind zwecks Vermeidung von Rundungsfehlern entweder alle Beträge in Cents umzuwandeln und
MehrEinstieg in die Informatik mit Java
1 / 34 Einstieg in die Informatik mit Java Klassen mit Instanzmethoden Gerd Bohlender Institut für Angewandte und Numerische Mathematik Gliederung 2 / 34 1 Definition von Klassen 2 Methoden 3 Methoden
MehrEinführung in die Informatik
Einführung in die Informatik Jochen Hoenicke Software Engineering Albert-Ludwigs-University Freiburg Sommersemester 2014 Jochen Hoenicke (Software Engineering) Einführung in die Informatik Sommersemester
MehrVerhindert, dass eine Methode überschrieben wird. public final int holekontostand() {...} public final class Girokonto extends Konto {...
PIWIN I Kap. 8 Objektorientierte Programmierung - Vererbung 31 Schlüsselwort: final Verhindert, dass eine Methode überschrieben wird public final int holekontostand() {... Erben von einer Klasse verbieten:
MehrInformationsverarbeitung im Bauwesen
1/21 Informationsverarbeitung im Bauwesen Einführung in das Programmieren mit C++ Markus Uhlmann Institut für Hydromechanik Karlsruher Institut für Technologie www.ifh.kit.edu WS 2010/2011 Vorlesung 8
Mehr5.5.8 Öffentliche und private Eigenschaften
5.5.8 Öffentliche und private Eigenschaften Schnittstellen vs. Implementierungen: Schnittstelle einer Klasse beschreibt, was eine Klasse leistet und wie sie benutzt werden kann, ohne dass ihre Implementierung
MehrFür die Erstellung von Javaprogrammen sind eventuell zwei Komponenten nötig. 1. Das Java-Develepment-Kit (JDK) und die 2. Java Runtime Engine (JRE)
Schritt 1: Installation des Javacompilers JDK. Der erste Start mit Eclipse Für die Erstellung von Javaprogrammen sind eventuell zwei Komponenten nötig. 1. Das Java-Develepment-Kit (JDK) und die 2. Java
MehrProgrammierkurs Python I
Programmierkurs Python I Stefan Thater & Michaela Regneri Universität des Saarlandes FR 4.7 Allgemeine Linguistik (Computerlinguistik) Übersicht mehr zu OOP: - Hintergründe - Vererbung Methoden zur Operatoren-Überladung
MehrVorkurs C++ Programmierung
Vorkurs C++ Programmierung Klassen Letzte Stunde Speicherverwaltung automatische Speicherverwaltung auf dem Stack dynamische Speicherverwaltung auf dem Heap new/new[] und delete/delete[] Speicherklassen:
MehrObjektorientierte Programmierung
Programmierkurs C++ Kapitel 7:Objektorientierte Programmierung Seite 1 Objektorientierte Programmierung If programming in PASCAL is like put in a straightjacket, then programming in C is like playing with
MehrFakultät Angewandte Informatik Lehrprofessur für Informatik 23.01.2012
WS 2011/2012 Fakultät Angewandte Informatik Lehrprofessur für Informatik 23.01.2012 Prof. Dr. Robert Lorenz Musterlösung zur Vorlesung Informatik I, Extrablatt zu komplexen Datenstrukturen Aufgabe 45 **
MehrInhaltsüberblick. I. Grundbegriffe - Objekte und Klassen. Organisatorisches. I. Grundbegriffe - Objektorientierte Konzepte
Grundkonzepte Objektorientierter Programmierung Nicole Himmerlich FSU Jena mit Java, Oberon-2, Object-Pascal und Python Inhaltsüberblick I. Grundbegriffe 1) Kopplung 2) Datenkaspelung 3) Konstruktor 4)
MehrGrundlagen von Python
Einführung in Python Grundlagen von Python Felix Döring, Felix Wittwer November 17, 2015 Scriptcharakter Programmierparadigmen Imperatives Programmieren Das Scoping Problem Objektorientiertes Programmieren
MehrProgrammieren in MATLAB Mehr als nur ein Taschenrechner
Computational Physics 1, Seminar 02 Seite 1 Programmieren in MATLAB Mehr als nur ein Taschenrechner 1) Definition eigener Funktionen Anlegen eines neuen m-files im m-file-editor mit folgem Beispielinhalt:
MehrJava Einführung Methoden. Kapitel 6
Java Einführung Methoden Kapitel 6 Inhalt Deklaration und Aufruf von Methoden Lokale und globale Namen (Bezeichner) Sichtbarkeit und Lebensdauer von Variablen in Methoden Überladen von Methoden 2 Methoden
MehrProgrammieren II Vererbung. Programmieren II Vererbung. Programmieren II Vererbung. Programmieren II Vererbung. Einleitende Bemerkungen
Einleitende Bemerkungen Einleitende Bemerkungen Ideen hinter der objektorientierten Programmierung Objekte (/* Instanzen einer Klasse */) im Mittelpunkt Objekte bilden Einheit aus Daten (/* Attributen,
MehrObjektorientierte Programmierung mit Java. Grundlagen Übersicht. Programmiersprachen
Objektorientierte Programmierung mit Grundlagen 27.10.2008 1 Übersicht 27.10.2008 2 1 Übersicht Klassen und Objekte in - Klassen - Objekte - Klassen - Objekte 27.10.2008 3 Übersicht 27.10.2008 4 2 Einführung
MehrInformatik für Schüler, Foliensatz 21 Objektorientierte Programmierung
rof. G. Kemnitz Institut für Informatik, Technische Universität Clausthal 23. April 2009 1/14 Informatik für Schüler, Foliensatz 21 Objektorientierte Programmierung Prof. G. Kemnitz Institut für Informatik,
MehrÜbung Datenstrukturen. Objektorientierung in C++
Übung Datenstrukturen Objektorientierung in C++ Aufgabe 1a - Farben Schreiben Sie eine Klasse COLOR zur Beschreibung von Farben. Eine Farbe werde hierbei additiv durch ihren Rot-, Grün- und Blauanteil
MehrC++ - Einführung in die Programmiersprache Polymorphismus und Vererbung. Eltern
C++ - Einführung in die Programmiersprache Polymorphismus und Vererbung Eltern Kind Kind Vererbung Definition von Klassen auf Basis von bestehenden Klassen. Implementierung von ist ein. bildet ein hierarchisches
MehrSichtbarkeit & statische Methoden. Einsatz von Sichtbarkeit Einsatz statischer Methoden programmatische Realisierung 2 Beispielaufgaben
Sichtbarkeit & statische Methoden Einsatz von Sichtbarkeit Einsatz statischer Methoden programmatische Realisierung 2 Beispielaufgaben Nicht sichtbare Methoden Wollen Eltern bestimmte Methoden vor den
MehrBeispiel: Zwischen der Oberklasse und der abgeleiteten Klasse besteht eine ist ein Beziehung. Eine abgeleitete Klasse stellt eine Spezialisierung der
Vererbung Vererbung ist ein Konzept der objektorientierten Programmierung,, die es ermöglicht neue Klassen von bereits vorhandenen Klassen abzuleiten. In einer abgeleiteten Klasse (subclass) muss nur spezifiziert
MehrSchritt 1 - Ein Spielfeld
Schritt 1 - Ein Spielfeld Wir beginnen mit zwei einfachen Java-Klassen, dem eigentlichen Spielfeld und dem Applet zum Anzeigen des Spielfeldes (und später der Buttons und der anderen Bedienelemente). Hier
MehrEinführung in die objektorientierte Programmierung mit Java. Klausur am 19. Oktober 2005
Einführung in die objektorientierte Programmierung mit Java Klausur am 19. Oktober 2005 Matrikelnummer: Nachname: Vorname: Semesteranzahl: Die Klausur besteht aus drei Frageblöcken zu den Inhalten der
MehrVorkurs Informatik: Erste Schritte der Programmierung mit C++
Vorkurs Informatik WS 14/15 Vorkurs Informatik: Erste Schritte der Programmierung mit C++ Tag 3: Objektorientiere Programmierung 8. Oktober 2014 Vorkurs Informatik WS 14/15 > Einführung Agenda 1 Einführung
Mehr4 Vererbung, Polymorphie
4 Vererbung, Polymorphie Jörn Loviscach Versionsstand: 21. März 2014, 22:57 Die nummerierten Felder sind absichtlich leer, zum Ausfüllen beim Ansehen der Videos: http://www.j3l7h.de/videos.html This work
MehrProgrammieren I. Strategie zum Entwurf von Klassen. Beispiele. Design von Klassen. Dr. Klaus Höppner. Beispiel: Bibliothek
Programmieren I Dr. Klaus Höppner Hochschule Darmstadt Wintersemester 2008/2009 1 / 22 2 / 22 Strategie zum Entwurf von Klassen Beispiele Objektorientierte Sichtweise: Mit welchen Objekten habe ich es
MehrProgrammieren mit Python
Programmieren mit Python Programmieren heisst: Dem Computer sagen, was er tun soll. Die Befehle muss man übrigens in einer Sprache geben, die der Computer versteht. Darum sind verschiedene Programmiersprachen
MehrKlausurteilnehmer. Wichtige Hinweise. Note: Klausur Informatik Programmierung, 17.09.2012 Seite 1 von 8 HS OWL, FB 7, Malte Wattenberg.
Klausur Informatik Programmierung, 17.09.2012 Seite 1 von 8 Klausurteilnehmer Name: Matrikelnummer: Wichtige Hinweise Es sind keinerlei Hilfsmittel zugelassen auch keine Taschenrechner! Die Klausur dauert
MehrProgrammieren II Klassen. Programmieren II Klassen. Programmieren II Klassen. Programmieren II Klassen. Zur Erinnerung.
Vorbemerkungen Zur Erinnerung aktueller Standpunkt: Entwickler von (bibliotheken) jetzt sind wichtig interne Repräsentation der Daten Realisierung der gewünschten Funktionalität Bereitstellung geeigneter
MehrObjektorientierte Programmierung (OOP) in Python
Objektorientierte Programmierung (OOP) in Python Dr. Michael Savorić Hohenstaufen-Gymnasium (HSG) Kaiserslautern Version 20090901 Überblick Einführungsbeispiel Basiskonzepte der OOP OOP in Python Beispiele
MehrProjekt: Python Programmierung
Projekt: Python Programmierung Zeichnen mit Schildkröten das Elektrotechnik- und Informatik-Labor der Fakultät IV http://www.dein-labor.tu-berlin.de Handout zum Projekt: Python Programmierung Zeichnen
MehrJAVA - Methoden - Rekursion
Übungen Informatik I JAVA - Methoden - Rekursion http://www.fbi-lkt.fh-karlsruhe.de/lab/info01/tutorial Übungen Informatik 1 1 Methoden Methoden sind eine Zusammenfassung von Deklarationen und Anweisungen
MehrDer Operator this. Wir betrachten nochmals die Klassendefinition von Ballon.
Der Operator this Wir betrachten nochmals die Klassendefinition von Ballon. public class Ballon { private int durchmesser; private int x1, y1; private Color farbe =Color.black; // Konstruktor ohne Farbe
MehrPräsentation Interfaces
Einführung in Java Präsentation Interfaces Nozar Delassaei Marvi Inhalt 1. Erinnerung Klasse Objekte Beispiel Klasse Abstrakte Klasse Beispiel Abstrakte Klasse Mehrfachvererbung-1 Mehrfachvererbung-2 2.
MehrEinführung in die. objektorientierte Programmierung
Einführung in die objektorientierte Programmierung Teil 3 Vererbung Modul WI111: Objektorientierte Programmierung Fachrichtung Wirtschaftsinformatik Prof. Dr. Gert Faustmann Fachbereich Berufsakademie
MehrHandbuch für die Erweiterbarkeit
Handbuch für die Erweiterbarkeit Inhalt Pakete für die Erweiterbarkeit... 2 Actions... 2 Items... 2 Itemset... 2 Die UseCaseNewAction... 3 Eigene Shapes... 4 Der Shape Container... 5 User Objects... 6
Mehr1. Übung zu "Numerik partieller Differentialgleichungen"
1. Übung zu "Numerik partieller Differentialgleichungen" Simon Gawlok, Eva Treiber Engineering Mathematics and Computing Lab 22. Oktober 2014 1 / 15 1 Organisatorisches 2 3 4 2 / 15 Organisatorisches Ort:
MehrAufgabe 1: Quer durch Java (4 Punkte) super abstract abstract protected
Universität Augsburg, Institut für Informatik Sommersemester 2006 Prof. Dr. Werner Kießling 14. Oktober 2006 Markus Endres, Alfons Huhn, Timotheus Preisinger Informatik II Klausur 2 Hinweise: Die Bearbeitungszeit
MehrEinführung in die Programmierung
: Inhalt Einführung in die Programmierung Wintersemester 2009/0 : Technik vs. Iteration Prof. Dr. Günter Rudolph Lehrstuhl für Algorithm Engineering Fakultät für Informatik TU Dortmund 2 Definition (einfache,
MehrÜbungsaufgaben: 1. Objektorientierte Programmierung - Teil 1
Übungsaufgaben: 1. Objektorientierte Programmierung - Teil 1 1. Das Objekt Bruch mit einem Standardkonstruktor (initialisieren mit 0), einem allgemeinen Konstruktor (Zähler und Nenner können beliebig vorgegeben
MehrProgrammierung in Python
Programmierung in Python imperativ, objekt-orientiert dynamische Typisierung rapid prototyping Script-Sprache Funktionales und rekursives Programmieren P raktische Informatik 1, W S 2004/05, F olien P
MehrEinführung in die Programmierung 1
Einführung in die Programmierung 1 Einführung (S.2) Einrichten von Eclipse (S.4) Mein Erstes Programm (S.5) Hallo Welt!? Programm Der Mensch (S.11) Klassen (S.12) Einführung Wie Funktioniert Code? Geschriebener
MehrEine Klasse beschreibt Objekte mit gleichen Attributen und Methoden.
Grundwissen Informatik Objekt Attribut Methoden Als Objekte bezeichnet man alle Gegenstände, Dinge, Lebewesen, Begriffe oder Strukturen unserer Welt ( Autos, Räume, Bakterien, Lehrer, Schüler, Kunden,
MehrJavakurs für Anfänger
Javakurs für Anfänger Einheit 03: Wiederholung und Nutzereingaben Lorenz Schauer Lehrstuhl für Mobile und Verteilte Systeme Heutige Agenda 1. Teil: Wiederholung Klassen, Objekte, Attribute und Methoden
MehrKontrollstrukturen und Funktionen in C
Kontrollstrukturen und Funktionen in C Lernziele: Vertiefen der Kenntnisse über Operatoren, Kontrollstrukturen und die Verwendung von Funktionen. Aufgabe 1: Quickies: Datentypen in C a) Was sind die elementaren
MehrVariablen in MATLAB. Unterschiede zur Mathematik: Symbolisches und numerisches Rechnen. Skriptdateien. for-schleifen.
Variablen in MATLAB. Unterschiede zur Mathematik: Symbolisches und numerisches Rechnen. Skriptdateien. for-schleifen. Wir wollen uns heute dem Thema Variablen widmen und uns damit beschäftigen, wie sich
MehrName: Klausur Programmierkonzepte SS 2011
Prof. Dr.-Ing. Hartmut Helmke Ostfalia Hochschule für angewandte Wissenschaften Fakultät für Informatik Matrikelnummer: Punktzahl: Ergebnis: Freiversuch F1 F2 F3 Klausur im SS 2011: Programmierkonzepte
Mehr11.3 Virtuelle Methoden
11.3 Virtuelle Methoden Überdeckte Methoden: Betrachten wir noch einmal unsere Klassen Employee und Manager. class Employee void print() const cout
MehrAbschnitt 9: Schnittstellen: Interfaces
Abschnitt 9: Schnittstellen: Interfaces 9. Schnittstellen: Interfaces 9.1 Die Idee der Schnittstellen 9.2 Schnittstellen in Java 9.3 Marker-Interfaces 9.4 Interfaces und Hilfsklassen 9.5 Zusammenfassung
MehrAndroid will doch nur spielen. Java Übung
Android will doch nur spielen Java Übung Vorbereitung: Erstellen Sie mit Eclipse zunächst ein neues Java Projekt JavaUebungen. Lassen Sie die restlichen Einstellungen unverändert. Erzeugen Sie das Projekt
MehrKapitel 6. Vererbung
Kapitel 6 Vererbung Vererbung 1 Ziele Das Vererbungsprinzip der objektorientierten Programmierung verstehen Und in Java umsetzen können Insbesondere folgende Begriffe verstehen und anwenden können: Ober/Unterklassen
MehrAngewandte Mathematik und Programmierung
Angewandte Mathematik und Programmierung Einführung in das Konzept der objektorientierten Anwendungen zu mathematischen Rechnens SS2013 Inhalt Projekt Vorlesung: praktische Implementierung üben Ein und
MehrBearbeitungszeit: 120 Minuten. Kommentare kosten Zeit; kommentieren Sie ihr Programm nur da, wo der Code alleine nicht verständlich wäre.
Fakultät IV Elektrotechnik/Informatik Klausur Einführung in die Informatik I für Elektrotechniker Name:... Matr.-Nr.... Bearbeitungszeit: 120 Minuten Bewertung (bitte offenlassen : ) Aufgabe Punkte Erreichte
MehrEinführung in die Java- Programmierung
Einführung in die Java- Programmierung Dr. Volker Riediger Tassilo Horn riediger horn@uni-koblenz.de WiSe 2012/13 1 Rückblick Datentypen (int, long, double, boolean, String) Variablen und Variablendeklarationen
MehrFunktionen in Matlab. Lehrstuhl für Angewandte Mathematik Sommersemester und 29. Mai 2008
Funktionen in Matlab Vorlesung Computergestützte Mathematik zur Linearen Algebra Lehrstuhl für Angewandte Mathematik Sommersemester 2008 15. und 29. Mai 2008 Funktionen in Matlab Wir kennen schon diverse
MehrObjektorientierte Programmierung (OOP) in Python
Objektorientierte Programmierung (OOP) in Python Dr. Michael Savorić Hohenstaufen-Gymnasium (HSG) Kaiserslautern Version 20110821 Überblick Einführungsbeispiel Basiskonzepte der OOP OOP in Python Beispiele
Mehr13 OOP MIT DELPHI. Records und Klassen Ein Vergleich
13 OOP MIT DELPHI Delphi war früher "Object Pascal". Dieser Name impliziert eine Funktionalität, welche in der Welt der Programmierung nicht mehr wegzudenken ist: die objektorientierte Programmierung,
MehrFH München, FB 03 FA WS 06/07. Ingenieurinformatik. Name Vorname Matrikelnummer Sem.Gr.: Hörsaal Platz
FH München, FB 03 FA WS 06/07 Ingenieurinformatik Name Vorname Matrikelnummer Sem.Gr.: Hörsaal Platz Zulassung geprüft vom Aufgabensteller: Teil I Aufg. 2 Aufg. 3 Aufg. 4 Aufg. 5 Summe Note Aufgabensteller:
MehrEinstieg ins Programmieren mit Python
Einstieg ins Programmieren mit Python Merk-Steine auf dem Weg zu Python für Kids Autor: Gregor Lingl Email: glingl@aon.at Folie 1 Gregor Lingl, Jan. 2003 http://python4kids.net Leicht zu lernen. Python-Code
MehrPython Programmieren. Variablen, Ausdrücke und Anweisungen
Python Programmieren Funktionen Module und Namensräume Datentypen in Python Was noch zu sagen bleibt... richard rascher-friesenhausen Programmierung SS 12 Daten: Wert und Typ Variablen Variablennamen und
Mehr188.154 Einführung in die Programmierung Vorlesungsprüfung
Matrikelnummer Studienkennzahl Name Vorname 188.154 Einführung in die Programmierung Vorlesungsprüfung Donnerstag, 27.1.2005, 18:15 Uhr EI 7 Arbeitszeit: 60 min - max. 50 Punkte erreichbar - Unterlagen
Mehr28. April 2006. Python ist eine Interpreter Sprache. einfach durch eigene C Module erweiterbar. Daten werden dynamisch getypt
Python in der Schule 28. April 2006 1 Grundlagen Wir 1 beziehen uns in unserer Zusammenfassung auf die Python Version 2.3.5 vom 8. Februar 2005. 2 Die Haupteigenschaften von Python sind: Python ist eine
MehrÜbungspaket 19 Programmieren eigener Funktionen
Übungspaket 19 Programmieren eigener Funktionen Übungsziele: Skript: 1. Implementierung und Kodierung eigener Funktionen 2. Rekapitulation des Stack-Frames 3. Parameterübergabe mittels Stack und Stack-Frame
MehrAufgabe 1 (12 Punkte)
Aufgabe 1 (12 Punkte) Schreiben Sie ein Java-Programm, das zeichenweise von der Standardeingabe liest und ermittelt, wieviele Worte die Eingabe umfaßt. Diese Anzahl soll ausgegeben werden. Ein Wort sei
MehrDrei-Schichten-Architektur. Informatik B - Objektorientierte Programmierung in Java. Vorlesung 16: 3-Schichten-Architektur 1 Fachkonzept - GUI
Universität Osnabrück Drei-Schichten-Architektur 3 - Objektorientierte Programmierung in Java Vorlesung 6: 3-Schichten-Architektur Fachkonzept - GUI SS 2005 Prof. Dr. F.M. Thiesing, FH Dortmund Ein großer
MehrBetreutes Programmieren Vorlesung Informatik II, Blatt 7 Musterlösung
SS 2011 Fakultät für Angewandte Informatik Lehrprofessur für Informatik 15.06.2011 Prof. Dr. Robert Lorenz Betreutes Programmieren Vorlesung Informatik II, Blatt 7 Musterlösung Programmieraufwand für geübte
Mehr3 Objektorientierte Konzepte in Java
3 Objektorientierte Konzepte in Java 3.1 Klassendeklarationen Fragen an die Klassendeklaration: Wie heißt die Klasse? Wer darf auf die Klasse und ihre Attribute/Methoden zugreifen? Ist die Klasse eine
MehrProgrammieren in Java
Programmieren in Java objektorientierte Programmierung 2 2 Zusammenhang Klasse-Datei In jeder *.java Datei kann es genau eine public-klasse geben wobei Klassen- und Dateiname übereinstimmen. Es können
MehrProgrammieren - Vererbung & Polymorphie
Programmieren - Vererbung & Polymorphie Reiner Nitsch r.nitsch@fbi.h-da.de Vererbung - Was ist das? Vererbung ist ein wichtiges Konzept zur Unterstützung der Wiederverwendbarkeit, wenn auch nicht das Wichtigste.
MehrKlausur Informatik Programmierung, Seite 1 von 8 HS OWL, FB 7, Malte Wattenberg
Klausur Informatik Programmierung, 22.09.2011 Seite 1 von 8 Klausurteilnehmer Name: Matrikelnummer: Wichtige Hinweise Es sind keinerlei Hilfsmittel zugelassen auch keine Taschenrechner! Die Klausur dauert
MehrRepetitorium Informatik (Java)
Repetitorium Informatik (Java) Tag 6 Lehrstuhl für Informatik 2 (Programmiersysteme) Übersicht 1 Klassen und Objekte Objektorientierung Begrifflichkeiten Deklaration von Klassen Instanzmethoden/-variablen
MehrJava I Vorlesung Vererbung und Sichtbarkeit
Java I Vorlesung 4 Vererbung und Sichtbarkeit 17.5.2004 Vererbung Überladen, Überschreiben, Verstecken, Verschatten Zugriffskontrolle Statische Members Wiederholung: OOP Programme bestehen aus Klassen.
MehrExcel Funktionen durch eigene Funktionen erweitern.
Excel Funktionen durch eigene Funktionen erweitern. Excel bietet eine große Anzahl an Funktionen für viele Anwendungsbereiche an. Doch es kommt hin und wieder vor, dass man die eine oder andere Funktion
Mehr