Beispiele für Strings
|
|
- Matilde Hermann
- vor 5 Jahren
- Abrufe
Transkript
1 Mathematische Anwendersysteme Einführung in MuPAD Tag 9 Programmieren in MuPAD Gerd Rapin Übersicht Strings Bedingungen Schleifen Gültigkeitsbereich von Variablen Umgang mit Strings Gerd Rapin Mathematische Anwendersysteme: Einführung in MuPAD p.1/?? Gerd Rapin Mathematische Anwendersysteme: Einführung in MuPAD p.2/?? Gerd Rapin Mathematische Anwendersysteme: Einführung in MuPAD p.3/?? Strings Zeichenketten (engl. strings) sind eine geordnete Aneinanderreihung von Zeichen. Zeichen sind z.b. Buchstaben, Ziffern, Sonderzeichen,... Mit ihnen kann man in MuPAD Texte gestalten. Sie sind wichtig für die Ausgabe der Ergebnisse. Sie haben den Datentyp DOM_STRING. Sie werden innerhalb der Begrenzer " angegeben. Beispiele für Strings >> text1:="dies ist ein String." "Dies ist ein String." >> text2:="dies ist noch ein String." "Dies ist noch ein String." >> domtype(text1) DOM_STRING Zugriff Mit dem Indexoperator können einzelne Zeichen einer Zeichenkette extrahiert werden oder auch geändert werden. >> text1[0], text1[3], text1[4] "D", "s", " " >> text1[3]:="i": text1 "Diei ist ein String." Die extrahierten Teile sind wieder Strings. Wichtig: Der Index beginnt bei. Gerd Rapin Mathematische Anwendersysteme: Einführung in MuPAD p.4/?? Gerd Rapin Mathematische Anwendersysteme: Einführung in MuPAD p.5/?? Gerd Rapin Mathematische Anwendersysteme: Einführung in MuPAD p.6/??
2 Operationen für Strings I Zusammenhängen von Strings > A:="Letzte ": B:="Vorlesung": A.B "Letzte Vorlesung" Ausgabe von Zeichenketten >> print(unquoted,a.b) Letzte Vorlesung Strings können nicht addiert oder multipliziert werden. >> A+B Error: Illegal operand [_plus] Gerd Rapin Mathematische Anwendersysteme: Einführung in MuPAD p.7/?? Operationen für Strings II length gibt die Anzahl der Zeichen in einer Zeichenkette an. > a:=length(a.b); A.B[a] 16 Error: Invalid index [string] Beliebige MuPAD-Objekte können durch expr2text in einen String verwandelt werden. >> expr2text(xˆ2+2), expr2text([1,2,3]) "xˆ2 + 2", "[1, 2, 3]" >> a:=expr2text("hallo"); a[0] "\"hallo\"" "\"" Weitere Befehle zur Manipulation von Strings findet man in der Bibliothek stringlib. Gerd Rapin Mathematische Anwendersysteme: Einführung in MuPAD p.8/?? Anwendungen Geben Sie alle Bezeichner in alphabetischer Reihenfolge an! Erstellen Sie eine Liste aller Bezeichner! >> A:=map(anames(All),expr2text) >> L:=[op(A)] >> sort(l) Schreiben Sie eine Funktion, die eine Zeichenkette rückwärts berechnet. >> revers:= A->_concat(A[length(A)-i] $ i=1..length(a)) >> revers("hallo") "ollah" Gerd Rapin Mathematische Anwendersysteme: Einführung in MuPAD p.9/?? Größter gemeins. Teiler (ggt) Implementierung Programmieren Berechnung des ggt von natürlichen Zahlen mit Hilfe des euklidischen Algorithmus Idee: Es gilt Algorithmus: Wiederhole, bis Ist Ist, so, so. für und. ggt:= proc(a,b) /* Bestimme den ggt von a und b */ begin while (a<>b) do if (a>b) then a:=a-b; else b:= b-a end_while; return(a); Gerd Rapin Mathematische Anwendersysteme: Einführung in MuPAD p.10/?? Gerd Rapin Mathematische Anwendersysteme: Einführung in MuPAD p.11/?? Gerd Rapin Mathematische Anwendersysteme: Einführung in MuPAD p.12/??
3 Logische Ausdrücke Es gibt die drei logische (Boolschen) Werte, FALSE und UNKNOWN. Sie haben die Datentypen DOM_BOOL. Gleichungen, Ungleichungen oder Größenvergleiche (<,>,<=,>=) können durch bool zu oder FALSE ausgewertet werden. Logische Ausdrücke >> bool( 3 <= 4) >> bool( =) >> bool("as"<="b") >> bool(<>unknown) Verknüpfungen Logische Ausdrücke können durch logisches und (and), logisches oder (or) oder logisches nicht (not) miteinander verknüpft werden. >> and FALSE, or FALSE FALSE, >> and UNKNOWN, or UNKNOWN UNKNOWN, >> not, not UNKNOWN FALSE, UNKNOWN Gerd Rapin Mathematische Anwendersysteme: Einführung in MuPAD p.13/?? Gerd Rapin Mathematische Anwendersysteme: Einführung in MuPAD p.14/?? Gerd Rapin Mathematische Anwendersysteme: Einführung in MuPAD p.15/?? Wahrheitstabellen Schleifen Schleifen II and FALSE UNKNOWN FALSE UNKNOWN FALSE FALSE FALSE FALSE UNKNOWN UNKNOWN FALSE UNKNOWN or FALSE UNKNOWN FALSE FALSE UNKNOWN UNKNOWN UNKNOWN UNKNOWN Wir kennen bereits Schleifen durch den $-Operator. Darüber hinaus gibt es aber noch das Konstrukt for bzw. end_for. for i from 1 to 4 do x:= iˆ2; print(unquoted, "Das Quadrat von",i,"ist",x) end_for Die Schleifenvariable durchläuft die Werte und. Dabei wird alles zwischen do und end_for für jedes einmal durchlaufen. Ergebnisse, die in jedem Schleifenschritt berechnet werden, werden nicht auf dem Bildschirm ausgegeben. Die Ausgabe wird durch den print-befehl erzielt.,, Gerd Rapin Mathematische Anwendersysteme: Einführung in MuPAD p.16/?? Gerd Rapin Mathematische Anwendersysteme: Einführung in MuPAD p.17/?? Gerd Rapin Mathematische Anwendersysteme: Einführung in MuPAD p.18/??
4 Etwas Zahlentheorie Wir geben für die natürlichen Zahlen wieviele Zahlen Teiler haben. >> Liste:=[i $ i= ]: >> anz_teiler:= n -> nops(numlib::divisors(n)) : >> Liste2:=map(Liste,anz_teiler): >> for i from 1 to 50 do print(i,nops(select(liste2, x -> (x = i)))) end_for: >> numlib::divisors(840) an, Alternative Schleifenkonstruktionen Schleifen abwärts zählen for j from 4 downto 2 do print(x,xˆj); end_for Schrittweite modifizieren for j from 3 to 10 step 2 do print(x,xˆj); end_for Repeat Eine andere Schleifenvariante ist die repeat-schleife: x:=1.1: repeat i:=x; x:=iˆ2; print(i,x) until x>100 end_repeat: Die Befehle zwischen repeat und until werden so lange wiederholt, bis die Bedingung (hier wahr wird. ) Gerd Rapin Mathematische Anwendersysteme: Einführung in MuPAD p.19/?? Gerd Rapin Mathematische Anwendersysteme: Einführung in MuPAD p.20/?? Gerd Rapin Mathematische Anwendersysteme: Einführung in MuPAD p.21/?? while So ähnlich wie die repeat-schleife funktioniert die while-schleife. x:=2: while x<=100 do i:=x; x:=iˆ2; print(i,x) end_while: Die Befehle zwischen while und end_while werden so lange wiederholt, wie die Bedingung (hier ) wahr ist. Verzweigung Ein wichtiges Werkzeug jeder Programmiersprache sind Verzweigungen. Je nach Wert oder Bedeutung von Variablen werden unterschiedliche Befehle ausgeführt. In MuPAD gibt es das if-konstrukt und das case-konstrukt. Beispiel for i from 2 to 100 do if isprime(i) then print(i,"ist Primzahl") else print(i,"ist keine Primzahl") end_for: Gerd Rapin Mathematische Anwendersysteme: Einführung in MuPAD p.22/?? Gerd Rapin Mathematische Anwendersysteme: Einführung in MuPAD p.23/?? Gerd Rapin Mathematische Anwendersysteme: Einführung in MuPAD p.24/??
5 if-konstrukt Die Verzweigung if hat die folgende Struktur: if Bedingung then Befehle1 else Befehle2 Ist die Bedingung wahr, so wird Befehle1 ausgeführt, ansonsten Befehle2. Befehle in den Befehlsfolgen sind durch : oder ; zu trennen. Der else Aufruf ist optional. Berechnung von Primzahlzwillingen T:=[]: anz:=0: for i from 2 to do if (isprime(i) and isprime(i+2)) then anz:=anz+1; T:=T.[[i,i+2]]; : end_for: print("anzahl = ",anz); Case Hat man eine Verzweigung mit mehreren Alternativen, so kann man entweder geschachtelte if Konstrukte verwenden, oder das Konstrukt case verwenden. case var of wert1 do.. of wert2 do..... otherwise... end_case Case funktioniert wie die switch Anweisung in C. Gerd Rapin Mathematische Anwendersysteme: Einführung in MuPAD p.25/?? Gerd Rapin Mathematische Anwendersysteme: Einführung in MuPAD p.26/?? Gerd Rapin Mathematische Anwendersysteme: Einführung in MuPAD p.27/?? Erklärung Ist keines der of-zweige richtig, so wird die Befehlssequenz zwischen otherwise und end_case ausgeführt. Durch den Befehl break kann ein vorzeitiges Verlassen der case-anweisung bewirkt werden. Stimmt der Wert von var mit einem der Werte wert1, wert2 überein, werden von da an alle nachfolgenden Befehle ausgeführt (auch von anderen of). ( fall-through ) Gerd Rapin Mathematische Anwendersysteme: Einführung in MuPAD p.28/?? Beispiel: Betrag /* Berechnen des Betrags für Zahlen */ betrag:=proc(a) begin case(domtype(a)) of DOM_INT do of DOM_RAT do of DOM_FLOAT do if a> 0 then y:=a: else y:=-a: : break; of DOM_COMPLEX do y:=sqrt(re(a)ˆ2+im(a)ˆ2); break; otherwise print("falscher Eingabetyp"); end_case: return(y); Gerd Rapin Mathematische Anwendersysteme: Einführung in MuPAD p.29/?? Gültigkeit von Variablen Mit der Gültigkeit von Variablen ist die Bestandsdauer von Variablen bzw. der Werten dieser Variablen gemeint. Beim interaktiven Gebrauch von MuPAD sind alle Variablen global, d.h. die den Variablen zugewiesenen Werte bleiben für die gesamte Laufzeit von MuPAD erhalten bis sie geändert werden. Man kann auf die Variablen jederzeit zugreifen und die Werte der Variablen ändern. Daneben gibt es aber auch lokale Variablen, die nur innerhalb einer Prozedur gültig sind. Nach Beenden der Prozedur werden diese Variablen wieder gelöscht. Gerd Rapin Mathematische Anwendersysteme: Einführung in MuPAD p.30/??
6 Gültigkeit von Variablen II In MuPAD sind in Prozeduren definierte Variablen standardmäßig global. Die interaktiv erstellten Variablen sind sowieso global. Mit dem Schlüsselwort local können in Prozeduren lokale Variablen erzeugt werden. local steht zwischen proc() und begin. Die lokalen Bezeichner sind vom Typ DOM_VAR (nicht wie erwartet DOM_IDENT). Die Input-Argumente von Prozeduren sind lokale Variablen. Goldene Regel Die Verwendung von globalen Variablen in Prozeduren ist schlechter Programmierstil und sollte vermieden werden. Beispiele Ein Beispiel mit globalen Variablen >> a:=b: f:=proc() begin a:=1+aˆ2: >> f();f();f(); Ein Beispiel mit lokalen Variablen >> a:=b: f:=proc() local a; begin a:=2 >> f(), a Gerd Rapin Mathematische Anwendersysteme: Einführung in MuPAD p.31/?? Gerd Rapin Mathematische Anwendersysteme: Einführung in MuPAD p.32/?? Gerd Rapin Mathematische Anwendersysteme: Einführung in MuPAD p.33/?? Rekursives Beispiel Berechnung der Fakultät /* Berechnung der Fakultät */ fakultaet := proc(n) begin if domtype(n)=dom_int then if n=1 then return(1) else n*fakultaet(n-1) else print("falscher Datentyp"); Symbolische Rückgabe >> fakultaet(9), x!; fakultaet(x) , fact(x) "Falscher Datentyp" Viele Systemfunktionen wie fact, geben den Prozeduraufruf symbolisch zurück, wenn er nicht auszuwerten ist. Die Auswertung kann dann später erfolgen. Fakultät II /* Berechnung der Fakultät */ fakultaet2 := proc(n) begin if testtype(n,type::nonnegint) then if n=1 then return(1) else n*fakultaet2(n-1) else return(procname(args())); Gerd Rapin Mathematische Anwendersysteme: Einführung in MuPAD p.34/?? Gerd Rapin Mathematische Anwendersysteme: Einführung in MuPAD p.35/?? Gerd Rapin Mathematische Anwendersysteme: Einführung in MuPAD p.36/??
7 Erklärungen Durch args() erhält man die Folge der Argumente. args(0) ist die Anzahl der Argumente. Durch args(i) erhält man das -te Element. Mit den obigen Befehlen kann man Prozeduren mit einer beliebigen Anzahl von Argumenten programmieren. procname ist der Name der Prozedur. Testen des Typs Durch den Aufruf testtype(objekt, Typenbezeichner) wird getestet, ob ein Objekt dem Typenbezeichner entspricht. Rückgabewert ist oder FALSE. Prinzipiell kann man auch domtype zum Überprüfen des Typs benutzen. Die Typenbezeichner sind aber differenzierter. Übersicht der verfügbaren Typenbezeichner erhält man durch? Type. Beispiele >> testtype(sqrt(3),type::real) FALSE >> testtype(float(sqrt(3)),type::real) >> testtype(3,type::real) >> select([ i $ i= ], testtype,type::prime) [101, 103, 107, 109, 113] Gerd Rapin Mathematische Anwendersysteme: Einführung in MuPAD p.37/?? Gerd Rapin Mathematische Anwendersysteme: Einführung in MuPAD p.38/?? Gerd Rapin Mathematische Anwendersysteme: Einführung in MuPAD p.39/?? Mandelbrot-Menge Die Mandelbrot-Menge ist die Menge von Punkten bei denen die Folge, die durch definiert ist, beschränkt ist. Programm - Mandelbrot mandel:=proc(x,y) local m,a,b,t,max_it; begin if not (testtype(x,type::real) and testtype(x,type::real)) then procname(x,y) else MAX_IT:=150; m:=0; a:=x; b:=y; while (sqrt(xˆ2+yˆ2)<2 and m<max_it) do t:=x; x:=a+xˆ2-yˆ2; y:=b+2*t*y; m:=m+1; end_while; Plot - Mandelbrot return(float(m/max_it)); ; Plotten plotte_mandel:=proc() begin mandelhill:=plot::function3d( mandel(x,y),x= , y= , Grid=[100,100]); plot(mandelhill); Gerd Rapin Mathematische Anwendersysteme: Einführung in MuPAD p.40/?? Gerd Rapin Mathematische Anwendersysteme: Einführung in MuPAD p.41/?? Gerd Rapin Mathematische Anwendersysteme: Einführung in MuPAD p.42/??
8 Programmierregeln Falls möglich, nur lokale Variablen benutzen. Programme vollständig kommentieren. Das heißt zum einen das eine Kommentarzeile zu Beginn steht, was das Programm macht und wieviele und welche Eingabeparameter es erhalten darf und was die Prozedur zurückgibt. Zusätzlich sollten auch alle wesentlichen Operationen kommentiert werden. Werte explizit mit return() zürückgeben. Programme übersichtlich gestalten, z.b. Schleifen oder Verzweigungen einrücken. Letztes Beispiel I gadisch:=proc(x,basis) /* Berechnung der g-adischen Darstellung einer natürlichen Zahl x und einer Basis b Rückgabe des Ergebnis als Liste! */ local T,T_r,i; /* lokale Variablen*/ begin /* Beginn lokale Prozedur */ /* Abfangen der Eingabe */ if domtype(x)<>dom_int or domtype(basis)<>dom_int then print("falscher Datentyp"); return() ; if (x<0) or (basis<1) then print("falsches Vorzeichen"); return() ; Letztes Beispiel II T:=[]; /* leere Liste */ /* Beginn Schleife */ while x>0 do T:=T.[x mod basis]; print(unquoted,expr2text(x)." : ".expr2text(basis )." =".expr2text(x div basis)." Rest ".expr2text(x mod basis)); x:=(x div basis); end_while; /* Umkehren der Liste */ T_r:=[(T[nops(T)-i+1]) $ i=1..nops(t)]: /* Rückgabe der Liste */ return(t_r); Gerd Rapin Mathematische Anwendersysteme: Einführung in MuPAD p.43/?? Gerd Rapin Mathematische Anwendersysteme: Einführung in MuPAD p.44/?? Gerd Rapin Mathematische Anwendersysteme: Einführung in MuPAD p.45/??
Mathematische Anwendersysteme Einführung in MuPAD
Mathematische Anwendersysteme Einführung in MuPAD Tag 9 Programmieren in MuPAD 26.2.2004 Gerd Rapin grapin@math.uni-goettingen.de Gerd Rapin Mathematische Anwendersysteme: Einführung MuPAD p.1/39 Übersicht
MehrEinführung in MATLAB Blockkurs DLR:
Einführung in MATLAB Blockkurs DLR: 19.4-22.4.2004 Tag 2, 2.Teil Programmieren mit MATLAB II 20.4.2004 Dr. Gerd Rapin grapin@math.uni-goettingen.de Gerd Rapin Einführung in MATLAB p.1/25 Programmieren
Mehr2 Teil 2: Nassi-Schneiderman
2 Teil 2: Nassi-Schneiderman Wie kann man Nassi-Schneiderman in einer objektorientierten Sprache verwenden? Jedes Objekt besitzt Methoden, welche die Attribute des Objektes verändern. Das Verhalten der
MehrC++ Teil 2. Sven Groß. 16. Apr IGPM, RWTH Aachen. Sven Groß (IGPM, RWTH Aachen) C++ Teil Apr / 22
C++ Teil 2 Sven Groß IGPM, RWTH Aachen 16. Apr 2015 Sven Groß (IGPM, RWTH Aachen) C++ Teil 2 16. Apr 2015 1 / 22 Themen der letzten Vorlesung Hallo Welt Elementare Datentypen Ein-/Ausgabe Operatoren Sven
MehrJava: Eine kurze Einführung an Beispielen
Java: Eine kurze Einführung an Beispielen Quellcode, javac und die JVM Der Quellcode eines einfachen Java-Programms besteht aus einer Datei mit dem Suffix.java. In einer solchen Datei wird eine Klasse
MehrNachklausur: Grundlagen der Informatik I, am 02. April 2008 Dirk Seeber, h_da, Fb Informatik. Nachname: Vorname: Matr.-Nr.
Seite 1 von 10 Hiermit bestätige ich, dass ich die Übungsleistungen als Voraussetzung für diese Klausur in folgender Übung erfüllt habe. Jahr: Übungsleiter: Unterschrift: 1. Aufgabe ( / 6 Pkt.) a) Erklären
MehrNachklausur: Grundlagen der Informatik I, am 02. April 2008 Dirk Seeber, h_da, Fb Informatik. Nachname: Vorname: Matr.-Nr.
Seite 1 von 9 Hiermit bestätige ich, dass ich die Übungsleistungen als Voraussetzung für diese Klausur in folgender Übung erfüllt habe. Jahr: Übungsleiter: Unterschrift: 1. Aufgabe ( / 4 Pkt.) Gegeben
MehrJava Übung. Übung 2. Werner Gaulke. 19. April Universität Duisburg-Essen Kommedia, Übung EinPro SS06, Einführung in Java - Übung.
Java Übung Übung 2 Universität Duisburg-Essen Kommedia, Übung EinPro SS06, 19. April 2006 (UniDUE) 19. April 2006 1 / 13 Java Programme Java Programme bestehen aus (meist mehreren) Klassen. In den Klassen
MehrProgrammierkurs Python I
Programmierkurs Python I Michaela Regneri 2009-11-05 (Folien basieren auf dem gemeinsamen Kurs mit Stefan Thater) Übersicht Variablen Datentypen Werte Operatoren und Ausdrücke Kontrollstrukturen: if, while
MehrSyntax der Sprache PASCAL
Syntax der Sprache PASCAL Buchstaben A B C D E F G H I J K L M N O P Q R S T U V W X Y Z a b c d e f g h i j k l m n o p q r s t u v w x y z Ziffern 0 1 2 3 4 5 6 7 8 9 Sonderzeichen und Wortsymbole +
Mehr12 == 12 true 12 == 21 false 4 === 7 true 4 === "vier" false 4 === 4.0 false 12!= 13 true 12!== 12 false 12!== 12.0 true. 1 < 3 true 3 < 1 false
Die if-anweisung if (Bedingung 1) { Code 1 else { Code 2 ; Anm.1: Das ; kann entfallen, da innerhalb { ein sog. Codeblock geschrieben wird. Anm.2: Es gibt noch andere Schreibweisen, aber wir wollen uns
MehrZweiter Teil des Tutorials. Workspace M-files Matrizen Flow Control Weitere Datenstrukturen Gemeinsames Beispiel erarbeiten
Zweiter Teil des Tutorials Workspace M-files Matrizen Flow Control Weitere Datenstrukturen Gemeinsames Beispiel erarbeiten Workspace Im Workspace sind die Variablen mit ihrem jeweiligen Wert gespeichert.
MehrÜbung zu Algorithmen und Datenstrukturen (für ET/IT)
Übung zu Algorithmen und Datenstrukturen (für ET/IT) Sommersemester 2015 Matthias Wieczorek Computer-Aided Medical Procedures Technische Universität München Administratives Zentralübung (Mittwoch, 09:45
MehrÜbung zu Algorithmen und Datenstrukturen (für ET/IT)
Übung zu Algorithmen und Datenstrukturen (für ET/IT) Sommersemester 2017 Rüdiger Göbl, Mai Bui Computer Aided Medical Procedures Technische Universität München Administratives Zentralübung (Mittwoch, 09:45
MehrINFORMATIK FÜR BIOLOGEN
Technische Universität Dresden 15012015 Institut für Theoretische Informatik Professur für Automatentheorie INFORMATIK FÜR BIOLOGEN Musterklausur WS 2014/15 Studiengang Biologie und Molekulare Biotechnologie
MehrFACHHOCHSCHULE AUGSBURG Hochschule für Technik, Wirtschaft und Gestaltung
C Sprachelemente für Übung 2 Typumwandlungen (type casts) Bei Ausdrücken, in denen Operanden mit unterschiedlichem Typ vorkommen, werden diese vom Compiler vor der Ausführung automatisch in einen gemeinsamen
Mehr(Aufgaben zu Wertzuweisungen siehe Vorlesungsbeilage S. 49)
Anweisungen Eine Anweisung ist eine in einer beliebigen Programmiersprache abgefaßte Arbeitsvorschrift für einen Computer. Jedes Programm besteht aus einer bestimmten Anzahl von Anweisungen. Wir unterscheiden
MehrProgrammierkurs Python I
Programmierkurs Python I Michaela Regneri & Stefan Thater Universität des Saarlandes FR 4.7 Allgemeine Linguistik (Computerlinguistik) Winter 2010/11 Übersicht Variablen Datentypen Werte Ausdrücke Operatoren
Mehr5. Übung - Kanalkodierung/Programmierung
5. Übung - Kanalkodierung/Programmierung Informatik I für Verkehrsingenieure Aufgaben inkl. Beispiellösungen 1. Aufgabe: Kanalkodierung a Folgende Kodes stehen Ihnen zur Verfügung: Kode 1: 0000000 Kode
Mehr1 Bedingte Anweisungen. 2 Vergleiche und logische Operatoren. 3 Fallunterscheidungen. 4 Zeichen und Zeichenketten. 5 Schleifen.
Themen der Übung Kontrollstrukturen, Pseudocode und Modulo-Rechnung CoMa-Übung III TU Berlin 9.10.01 1 Bedingte Anweisungen Vergleiche und logische Operatoren 3 Fallunterscheidungen 4 Zeichen und Zeichenketten
MehrJava Anweisungen und Ablaufsteuerung
Informatik 1 für Nebenfachstudierende Grundmodul Java Anweisungen und Ablaufsteuerung Kai-Steffen Hielscher Folienversion: 24. Januar 2017 Informatik 7 Rechnernetze und Kommunikationssysteme Inhaltsübersicht
MehrIntensivübung zu Algorithmen und Datenstrukturen
Intensivübung zu Algorithmen und Datenstrukturen Silvia Schreier Informatik 2 Programmiersysteme Martensstraße 3 91058 Erlangen Übersicht Programmierung Fallunterscheidung Flussdiagramm Bedingungen Boolesche
Mehr2.2 Einfache Datenstrukturen
2.2 Einfache Datenstrukturen Konstante und Variable Die Begriffe "Konstante" und "Variable" haben zunächst auch in der Informatik dieselbe grundsätzliche Bedeutung wie in der übrigen Mathematik. Variablen
MehrJavaScript. Dies ist normales HTML. Hallo Welt! Dies ist JavaScript. Wieder normales HTML.
JavaScript JavaScript wird direkt in HTML-Dokumente eingebunden. Gib folgende Zeilen mit einem Texteditor (Notepad) ein: (Falls der Editor nicht gefunden wird, öffne im Browser eine Datei mit der Endung
MehrAlgorithmen als systematische Vorgehensweisen zur Lösung eines formal definierten Problems
4. Algorithmen Motivation Algorithmen als systematische Vorgehensweisen zur Lösung eines formal definierten Problems Der Begriff Algorithmus geht auf den Gelehrten Muhammad al-chwarizmi zurück, der um
MehrGrundlagen der Programmierung
Grundlagen der Programmierung 8. Vorlesung 25.05.2016 1 Ausdrücke "Befehle", die ein Ergebnis liefern 3 + 4 sin(x) x < 10 getchar() Ausdrücke können Teil eines anderen Ausdrucks sein x = sin( x + y ) Auswertung:
MehrProgrammierkurs Python I
Programmierkurs Python I Michaela Regneri & Stefan Thater Universität des Saarlandes FR 4.7 Allgemeine Linguistik (Computerlinguistik) Winter 2010/11 Übersicht Kurze Wiederholung: while Sammeltypen (kurz
MehrDatentypen: integer, char, string, boolean
Agenda für heute, 13. April, 2006 Der Datentyp integer Vergleichsoperatoren, Wahrheitswerte und boolesche Variablen Zusammengesetzte if-then-else-anweisungen Var i: integer; Teilbereich der ganzen Zahlen,
MehrInstitut für Programmierung und Reaktive Systeme. Java 2. Markus Reschke
Java 2 Markus Reschke 07.10.2014 Datentypen Was wird gespeichert? Wie wird es gespeichert? Was kann man mit Werten eines Datentyps machen (Operationen, Methoden)? Welche Werte gehören zum Datentyp? Wie
MehrAlgorithmen als systematische Vorgehensweisen zur Lösung eines formal definierten Problems
4. Algorithmen Motivation Algorithmen als systematische Vorgehensweisen zur Lösung eines formal definierten Problems Der Begriff Algorithmus geht auf den Gelehrten Muhammad al-chwarizmi zurück, der um
MehrWS2018/ Oktober 2018
Einführung in die Programmierung Ronja Düffel WS2018/19 02. Oktober 2018 RBI-Account Account für das Rechnernetz der Informatik RBI-Account HRZ-Account zum Arbeiten an und auf den Rechnern des Instituts
MehrJava I Vorlesung Imperatives Programmieren
Java I Vorlesung 2 Imperatives Programmieren 3.5.2004 Variablen -- Datentypen -- Werte Operatoren und Ausdrücke Kontrollstrukturen: if Imperatives Programmieren Im Kern ist Java eine imperative Programmiersprache.
MehrArithmetik in der tcsh
Arithmetik in der tcsh Variablen speichern Zeichenketten (also Strings/Wörter) @ statt set Interpretation als arithmetische Ausdrücke (aus Ziffern, (, ), +, -, *, /, % bestehend) Beispiele: @ var = (3
MehrAlgorithmen und ihre Programmierung -Teil 2-
Veranstaltung Pr.-Nr.: 101023 Algorithmen und ihre Programmierung -Teil 2- Veronika Waue WS 07/08 Wiederholung: Algorithmen Variablen und Datentypen Variablen haben einen Namen, einen Datentypen und einen
MehrEINI WiMa. Einführung in die Informatik für Naturwissenschaftler und Ingenieure. Vorlesung 2 SWS WS 11/12
EINI WiMa Einführung in die Informatik für Naturwissenschaftler und Ingenieure Vorlesung 2 SWS WS 11/12 Fakultät für Informatik Technische Universität Dortmund lars.hildebrand@udo.edu http://ls1-www.cs.uni-dortmund.de
Mehr4.2 Gleitkommazahlen. Der Speicherbedarf (in Bits) ist üblicherweise. In vielen Anwendungen benötigt man gebrochene Werte. Physikalische Größen
. Gleitkommazahlen In vielen Anwendungen benötigt man gebrochene Werte. Physikalische Größen Umrechnen von Einheiten und Währungen Jede Zahl x Q mit x 0 lässt sich folgendermaßen schreiben: x = s m e mit
MehrBoolean Wertemenge: Wahrheitswerte {FALSE,TRUE}, auch {0,1} Deklaration:
Boolean Wertemenge: Wahrheitswerte {,}, auch {,} Deklaration: VAR present,billig,laut,gefunden : BOOLEAN; Ein-/Ausgabe: keine! Operatoren: Negation, Verneinung NOT ~ Konjunktion, logisches UND AND & Disjunktion,
MehrAlgorithmen & Programmierung. Steuerstrukturen im Detail Selektion und Iteration
Algorithmen & Programmierung Steuerstrukturen im Detail Selektion und Iteration Selektion Selektion Vollständige einfache Selektion Wir kennen schon eine Möglichkeit, Selektionen in C zu formulieren: if
MehrVorkurs Informatik WiSe 16/17
Java Ausdrücke und Variablen Dr. Werner Struckmann / Stephan Mielke, Jakob Garbe, 05.10.2016 Technische Universität Braunschweig, IPS Überblick Ausdrücke, Datentypen und Variablen Kontrollstrukturen 05.10.2016
MehrS. d. I.: Programieren in C Folie 4-1. im Gegensatz zu Pascal gibt es in C kein Schlüsselwort "then"
S. d. I.: Programieren in C Folie 4-1 4 Anweisungen 4.1 if-anweisung 1) if (Ausdruck) 2) if (Ausdruck) } else im Gegensatz zu Pascal gibt es in C kein Schlüsselwort "then" es wird nur der numerische Wert
MehrJavakurs für Anfänger
Javakurs für Anfänger Einheit 06: Einführung in Kontrollstrukturen Lorenz Schauer Lehrstuhl für Mobile und Verteilte Systeme Heutige Agenda 1. Teil: Einführung in Kontrollstrukturen 3 Grundstrukturen von
MehrAbschnitt 5. Grundlagen der funktionalen & imperativen Programmierung
Übersicht Abschnitt 5. Grundlagen der funktionalen & imperativen Programmierung Einführung in die Programmierung 5. Grundlagen der funktionalen & imperativen Programmierung 1 Übersicht 5.1 Sorten und Abstrakte
MehrEinführung in die Programmierung mit VBA
Einführung in die Programmierung mit VBA Vorlesung vom 07. November 2016 Birger Krägelin Inhalt Vom Algorithmus zum Programm Programmiersprachen Programmieren mit VBA in Excel Datentypen und Variablen
MehrInformatik I Übung, Woche 40
Giuseppe Accaputo 1. Oktober, 2015 Plan für heute 1. Nachbesprechung Übung 2 2. Vorbesprechung Übung 3 3. Zusammenfassung der für Übung 3 wichtigen Vorlesungsslides Informatik 1 (D-BAUG) Giuseppe Accaputo
MehrVorkurs Informatik WiSe 17/18
Java Ausdrücke und Variablen Dr. Werner Struckmann / Stephan Mielke, Nicole Naczk, 05.10.2017 Technische Universität Braunschweig, IPS Überblick Ausdrücke, Datentypen und Variablen Kontrollstrukturen 05.10.2017
MehrMethoden. Gerd Bohlender. Einstieg in die Informatik mit Java, Vorlesung vom
Einstieg in die Informatik mit Java, Vorlesung vom 2.5.07 Übersicht 1 2 definition 3 Parameterübergabe, aufruf 4 Referenztypen bei 5 Überladen von 6 Hauptprogrammparameter 7 Rekursion bilden das Analogon
MehrMartin Unold INFORMATIK. Geoinformatik und Vermessung
Wiederholung So sieht ein leeres Java-Programm aus public class Programmname { public static void main (String[] args) { // Hier stehen die Anweisungen Anweisungen mit Variablen Wiederholung Deklaration
MehrC-Grundlagen. zur Programmierung des MicroControllersystems MiCoWi
1. Datentypen C-Grundlagen zur Programmierung des MicroControllersystems MiCoWi Die Grafiken und Beispiele wurden dem Buch C von A bis z von Jürgen Wolf entnommen. Es werden hier die ANSI-Festlegungen
MehrEinstieg in die Informatik mit Java
1 / 47 Einstieg in die Informatik mit Java Anweisungen Gerd Bohlender Institut für Angewandte und Numerische Mathematik Gliederung 2 / 47 1 Ausdrucksanweisung 2 Einfache Ausgabeanweisung 3 Einfache Eingabeanweisung,
MehrProgrammiertechnik 1 FOR-SCHLEIFEN
Programmiertechnik 1 FOR-SCHLEIFEN In diesem Dokument wollen wir uns mit Kontrollstrukturen befassen. Dazu sind im Folgenden einige Übungsaufgaben zu den Themen Schleifen (FOR, WHILE, DO) und Bedingungen
MehrVorsichtige Programmierer verwenden Inkrement- Operatoren nicht in komplizierteren Ausdrücken
Vorsichtige Programmierer verwenden Inkrement- Operatoren nicht in komplizierteren Ausdrücken Aufgabe 1.60 a) Welchen Wert erhält die boolesche Variable z in folgendem Beispiel? int i = 2, j = 5; boolean
MehrÜbersicht Shell-Scripten
!!!! Wichtig: Bei Shell-Scripten enden die Zeilen nicht mit einem Strichpunkt!!!! Erste Zeile eines Shell-Scripts: #! /bin/bash Variablen in Shell-Scripts: Variablennamen müssen mit einem Buchstaben beginnen,
Mehr3. Grundanweisungen in Java
3. Grundanweisungen in Java Die Grundanweisungen entsprechen den Prinzipien der strukturierten Programmierung 1. Zuweisung 2. Verzweigungen 3. Wiederholungen 4. Anweisungsfolge (Sequenz) Die Anweisungen
MehrEinstieg in die Informatik mit Java
1 / 41 Einstieg in die Informatik mit Java Weitere Anweisungen Gerd Bohlender Institut für Angewandte und Numerische Mathematik Gliederung 2 / 41 1 Überblick 2 Verbundanweisung 3 Bedingte Anweisung 4 Auswahlanweisung
MehrEinstieg in die Informatik mit Java
Vorlesung vom 6.11.07, Weitere Anweisungen Übersicht 1 Verbundanweisung 2 Bedingte Anweisung 3 Auswahlanweisung 4 for Schleife 5 while Schleife 6 do Schleife 7 break Anweisung 8 continue Anweisung 9 Leere
MehrArrays. Arrays werden verwendet, wenn viele Variablen benötigt werden. Der Vorteil in Arrays liegt darin, dass man nur eine Variable deklarieren muss
Arrays FTI 41 2005-09-09 Arrays werden verwendet, wenn viele Variablen benötigt werden. Der Vorteil in Arrays liegt darin, dass man nur eine Variable deklarieren muss z.b. Dim Werte(x) As Single. Wobei
MehrSteuerung von Programmabläufen. Lehrstuhl für Angewandte Mathematik Sommersemester Mai und 15. Mai 2008
Steuerung von Programmabläufen Vorlesung Computergestützte Mathematik zur Linearen Algebra Lehrstuhl für Angewandte Mathematik Sommersemester 2008 8. Mai und 15. Mai 2008 For-Schleifen Bisher: Matlab -Kommandos
Mehr4.2 Selbstdefinierte Matlab-Funktionen 1. Teil
4.2 Selbstdefinierte Matlab-Funktionen 1. Teil 37 Ein m-file mit Namen Funktionsname.m und einer ersten Zeile der folgen Form: function Funktionsname(input1,input2,...,inputn) oder function output1=funktionsname(input1,input2,...,inputn)
MehrTag 2 Repetitorium Informatik (Java)
Tag 2 Repetitorium Informatik (Java) Dozent: Daniela Novac Lehrstuhl für Informatik 2 (Programmiersysteme) Friedrich-Alexander-Universität Erlangen-Nürnberg Wintersemester 2017/2018 Übersicht Zeichen und
MehrProgrammiertechnik 1 FOR-SCHLEIFEN
Programmiertechnik 1 FOR-SCHLEIFEN In diesem Dokument wollen wir uns mit Kontrollstrukturen befassen. Dazu sind im Folgenden einige Übungsaufgaben zu den Themen Schleifen (FOR, WHILE, DO) und Bedingungen
MehrWS2017/ Oktober 2017
Ronja Düffel WS2017/18 05. Oktober 2017 mit Python Programmieren (vereinfacht) 1 Problem beschreiben und analysieren 2 Enwicklung und Beschreibung einer Lösung 3 Übertragung/Umsetzung in eine Programmiersprache
Mehr4.4 Imperative Algorithmen Prozeduren
4.4.2 Prozeduren Der Wert eines Ausdrucks u in Zustand z Z lässt sich damit auch leicht definieren (jetzt W Z statt W σ ) Dazu erweitern wir die rekursive Definition von Folie 57 (Wert eines Ausdrucks):
MehrSystem.out.println("TEXT");
Inhaltsübersicht - Erstes Beispiel - Datentypen - Ausdrücke und Operatoren - Schleifen / Bedinungen - Struktogramme - Grundgerüst eines Programms in JAVA - Einlesen von Daten Erstes Beispiel public class
MehrModul Entscheidungsunterstützung in der Logistik. Einführung in die Programmierung mit C++ Übung 2
Fakultät Verkehrswissenschaften Friedrich List, Professur für Verkehrsbetriebslehre und Logistik Modul Entscheidungsunterstützung in der Logistik Einführung in die Programmierung mit C++ Übung 2 SS 2016
MehrAlgorithmen und ihre Programmierung
Veranstaltung Pr.-Nr.: 101023 Algorithmen und ihre Programmierung Veronika Waue WS 07/08 Einführung Definition: Algorithmus Ein Algorithmus ist eine genau definierte Folge von Anweisungen zur Lösung eines
Mehr2 Programmieren in Java I noch ohne Nachbearbeitung
1 2 Programmieren in Java I noch ohne Nachbearbeitung 2.1 Was sind Programme? Eingabe = Verarbeitung = Ausgabe Die Eingabe kann sein Konstanten im Quelltext; Kommandozeilenparameter oder interaktive Eingabe
MehrArbeitsblätter für Algorithmierung und Strukturierung
Prof. Dr. Ch. Wahmkow Fachbereich Maschinenbau Fachhochschule Stralsund Arbeitsblätter für Algorithmierung und Strukturierung Inhalt : Struktogramme, Beispiele und Erläuterungen - Sequenz - vollständige
MehrMathematische Anwendersysteme Einführung in MuPAD
Mathematische Anwendersysteme Einführung in MuPAD Tag 3 Mengen, Zahlen Ungleichungen 18.2.2004 Gerd Rapin grapin@math.uni-goettingen.de Gerd Rapin Mathematische Anwendersysteme: Einführung MuPAD p.1/41
MehrTag 5. Repetitorium Informatik (Java) Dozent: Marius Kamp Lehrstuhl für Informatik 2 (Programmiersysteme)
Tag 5 Repetitorium Informatik (Java) Dozent: Marius Kamp Lehrstuhl für Informatik 2 (Programmiersysteme) Friedrich-Alexander-Universität Erlangen-Nürnberg Wintersemester 2017/2018 Übersicht Methoden Deklaration
MehrEinstieg in die Informatik mit Java
Vorlesung vom 25.4.07, Anweisungen Übersicht 1 Ausdrucksanweisung 2 Einfache Ausgabeanweisung 3 Einfache Eingabeanweisung, Vorbereitungen 4 Verbundanweisung 5 Bedingte Anweisung 6 Auswahlanweisung 7 for
MehrWS2018/ Oktober 2018
Einführung in die Programmierung Ronja Düffel WS2018/19 05. Oktober 2018 Rückblick Datentypen bool Zahlen (int und float) string Variablen Kontrollstrukturen Verzweigungen (if...: und if...else:) Schleifen
MehrWintersemester Maschinenbau und Kunststofftechnik. Informatik. Tobias Wolf Seite 1 von 29
Kapitel 2 Einführung in C++ Seite 1 von 29 C++ Zeichensatz - Buchstaben: a bis z und A bis Z. - Ziffern: 0 bis 9 - Sonderzeichen: ; :,. # + - * / % _ \! < > & ^ ~ ( ) { } [ ]? Seite 2 von 29 Höhere Elemente
MehrJava Ablaufsteuerung (Beispiele)
Informatik 1 für Nebenfachstudierende Grundmodul Java Ablaufsteuerung (Beispiele) Kai-Steffen Hielscher Folienversion: 16. Januar 2018 Informatik 7 Rechnernetze und Kommunikationssysteme Blöcke Anweisungen
MehrEinfache Bedingte Ausführung
Kontrollstrukturen Bisher Programme mit Funktionen als einfache Folge von Befehlen Ablauf von Programmen darüber hinaus steuerbar über Bedingte Ausführung: Ausführung von Programmteilen (Befehlen oder
MehrInformatik I Übung, Woche 40
Giuseppe Accaputo 2. Oktober, 2014 Plan für heute 1. Fragen & Nachbesprechung Übung 2 2. Zusammenfassung der bisherigen Vorlesungsslides 3. Tipps zur Übung 3 Informatik 1 (D-BAUG) Giuseppe Accaputo 2 Nachbesprechung
MehrKontrollstrukturen und Logik
Programmieren mit Java Modul 2 Kontrollstrukturen und Logik Theorieteil Inhaltsverzeichnis 1 Modulübersicht 3 1.1 Anweisungen und Blöcke........................... 3 2 Operatoren (Teil II) 4 2.1 Relationale
MehrKontrollstrukturen. Verzweigungen Einfache Mehrfache Wiederholungen Eine Sequenz durchlaufen Wiederhole bis Solange. Tue
Kontrollstrukturen Verzweigungen Einfache Mehrfache Wiederholungen Eine Sequenz durchlaufen Wiederhole bis Solange. Tue Einfache Verzweigung Eine Verzweigung erlaubt das bedingte Ausführen bestimmter Programm-Teile.
MehrDas diesem Dokument zugrundeliegende Vorhaben wurde mit Mitteln des Bundesministeriums für Bildung und Forschung unter dem Förderkennzeichen
Das diesem Dokument zugrundeliegende Vorhaben wurde mit Mitteln des Bundesministeriums für Bildung und Forschung unter dem Förderkennzeichen 16OH21005 gefördert. Die Verantwortung für den Inhalt dieser
MehrEINI LW/WiMa. Einführung in die Informatik für Naturwissenschaftler und Ingenieure Vorlesung 2 SWS WS 14/15
EINI LW/ Einführung in die Informatik für Naturwissenschaftler und Ingenieure Vorlesung 2 SWS WS 14/15 Dr. Lars Hildebrand Fakultät für Informatik Technische Universität Dortmund lars.hildebrand@tu-dortmund.de
MehrC# - Einführung in die Programmiersprache Bedingte Anweisungen und Schleifen
C# - Einführung in die Programmiersprache Bedingte Anweisungen und Schleifen Gehe nach links oder rechts Gehe solange geradeaus... Leibniz Universität IT Services Anja Aue Programmabläufe grafisch abbilden
MehrGrundlagen der Programmierung
Grundlagen der Programmierung 7. Vorlesung 18.05.2016 1 Konstanten Ganzzahlkonstante Dezimal: 42, 23, -2 Oktal (0 vorangestellt): 052 Hexadezimal (0x vorangestellt): 0x2A Gleitkommazahlen: 3.1415, 2.71,
MehrEinstieg in die Informatik mit Java
1 / 34 Einstieg in die Informatik mit Java weitere Anweisungen Gerd Bohlender Institut für Angewandte und Numerische Mathematik Gliederung 2 / 34 1 Verbundanweisung 2 Bedingte Anweisung 3 Auswahlanweisung
MehrJava 8. Elmar Fuchs Grundlagen Programmierung. 1. Ausgabe, Oktober 2014 JAV8
Java 8 Elmar Fuchs Grundlagen Programmierung 1. Ausgabe, Oktober 2014 JAV8 5 Java 8 - Grundlagen Programmierung 5 Kontrollstrukturen In diesem Kapitel erfahren Sie wie Sie die Ausführung von von Bedingungen
Mehrif ( Logischer Operator ) { } else { Anweisungen false
if ( Logischer Operator ) { Anweisungen true else { Anweisungen false Bedingte Anweisungen Operatoren verknüpfen Variable zu neuen Ausdrücken, wir unterscheiden Arithmetische Operatoren Berechnung von
MehrInstitut für Programmierung und Reaktive Systeme 25. Januar Programmieren I. Übungsklausur
Technische Universität Braunschweig Dr. Werner Struckmann Institut für Programmierung und Reaktive Systeme 25. Januar 2018 Hinweise: Klausurtermine: Programmieren I Übungsklausur Programmieren I: 17. Februar
MehrC.3 Funktionen und Prozeduren
C3 - Funktionen und Prozeduren Funktionsdeklarationen in Pascal auch in Pascal kann man selbstdefinierte Funktionen einführen: Funktionen und Prozeduren THEN sign:= 0 Funktion zur Bestimmung des Vorzeichens
MehrAnnehmende Schleife do while
Annehmende Schleife do while Schleife mit nachfolgender Bedingungsprüfung: annehmende Schleife B S Mit B wird eine Bedingung (logischer Ausdruck) bezeichnet, S ist ein Strukturblock. Zuerst wird S ausgeführt,
MehrProgrammieren mit statistischer Software
Programmieren mit statistischer Software Eva Endres, M.Sc. Institut für Statistik Ludwig-Maximilians-Universität München Funktionen Definition von Funktionen I Eine Funktion hat einen Namen benötigt Argumente
MehrMuPAD: Bezeichner, Zuweisungen, Datentypen, Objekte,... MuPAD: Zerlegen von Objekten in seine Bestandteile. Ein erstes Beispiel
Mathematische Anwendersysteme Einführung in MuPAD Tag Etwas MuPAD Symbolisches Rechnen 15..005 Gerd Rapin Übersicht MuPAD: Bezeichner, Zuweisungen, Datentypen, Objekte,... MuPAD: Zerlegen von Objekten
MehrKOP / FBS - Programmierung
KOP / FBS - Programmierung Programmieren in Anweisungsliste Programmieren in strukturierten Text Programmieren in Kontaktplan Programmieren in Funktionsbausteinsprache KOP Programmierung (1) 2 1 Neues
MehrJAVA BASICS. 2. Primitive Datentypen. 1. Warum Java? a) Boolean (logische Werte wahr & falsch)
JAVA BASICS 2. Primitive Datentypen 1. Warum Java? weit verbreitet einfach und (relativ) sicher keine Pointer (?) keine gotos kein Präprozessor keine globalen Variablen garbage collection objekt-orientiert
Mehr