Variablen - %Hashes Was ist ein Hash? 'Assoziative Arrays'

Größe: px
Ab Seite anzeigen:

Download "Variablen - %Hashes Was ist ein Hash? 'Assoziative Arrays'"

Transkript

1 Was ist ein Hash? 'Assoziative Arrays' Hashes sind array-ähnliche Datenstrukturen, die aus Schlüssel-Wert Paaren bestehen. Artikel + Preis Apfel 0,45 Banane 0,75 Ananas 1,49 Birne 0,59 %Artikel = Apfel 0,45 Banane 0,75 Ananas 1,49 Birne 0,59 Schlüssel (key) Skalarer Wert (value) 64 Vom Prinzip her sind sich ein Array und ein Hash relativ ähnlich. Bei beiden handelt es sich um eine Gruppe von Daten, bei der einzelne skalare Elemente über einen Index ausgewählt werden. Allerdings sind bei Hashes diese Indizes in der Regel keine Zahlenwerte, sondern statt dessen beliebige Strings bzw. Skalare. Diese Strings bzw. Skalare werden Schlüssel oder Keys genannt. Die Elemente (Values) eines Hashes sind wegen der fehlenden Indizes auch nicht besonders geordnet, wie bei Arrays üblich. Im Gegenteil ist die Reihenfolge der einzelnen Werte sogar völlig unerheblich, weil sie auf Grund der Schlüssel leicht gefunden werden können. Wenn man neue Werte hinzufügt, wird einfach ein neuer Hashwert angehängt. Die Perl-interne Suche nach einem dazugehörigen Wert ist über einen Schlüsselstring natürlich langsamer als über einen numerischen Index. 64

2 Wie erzeuge ich einen Hash? Wie eine Liste (assoziative Liste): %Artikel = ("Apfel", 0.45, "Banane", 0.75, "Ananas", 1.49, "Birne", 0.59); Mit dem Doppelpfeil-Operator (comma arrow): oder als einzelne skalare Werte: $Artikel{'Apfel' = 0.45; $Artikel{'Banane' = 0.75; $Artikel{'Ananas' = 1.49; $Preis = 0.59; $Artikel{'Birne' = $Preis; erzeugt in anderer Reihenfolge den Hash: %Artikel = Banane 0,75 Ananas 1,49 Apfel 0,45 Birne 0,59 65 Prinzipiell kann ein assoziatives Array (also ein Hash) genauso erzeugt werden, wie eine 'normales' Array. Also schreibt man einfach, durch Kommas getrennt, abwechselnd Schlüssel und dazugehörige Werte in eine Liste. Deutlicher ist vielleicht die Schreibweise mit dem Pfeil-Operator. Dabei stehen zwischen dem Schlüssel und dem dazugehörigen Wert die Zeichen '=>'. Während man bei Arrays Barewords vermeiden sollte, sind hier die Anführungsstriche nicht in jedem Falle nötig. Durch den Pfeil-Operator wird der Schlüssel ohnehin nicht interpretiert oder berechnet. Da auch ein Hash aus einzelnen skalaren Datenwerten besteht, kann man ihn auch in der Skalar-Schreibweise mit dem Schlüssel in geschweiften Klammern definieren. Beachten Sie dabei, dass die Schlüssel dabei in Hochkommas stehen (Barewords vermeiden!)! In allen Fällen ist zu beachten, dass die Reihenfolge, in der Sie einen Hash definieren, nicht von Perl eingehalten wird! Die Schlüssel dürfen selbstverständlich nicht nur aus Zeichenketten sondern auch aus Zahlen bestehen, was zum Teil verwirrend einem Array gleichen kann: %PLZ = (0, 84036, 1, 84028, 2, 84032); Dies ergibt einen Hash, der als 'Index' die Zahlen 0 bis 2 hat. Gespeichert wird jedoch: 1=>84029, 0=>84036, 2=> Um einen Hash mit Variablenzwang (use strict) zu deklarieren, schreiben Sie einfach my %hash = (); Also wie bei einem Array wird zum Deklarieren einfach eine leere Liste zugewiesen. 65

3 Wie benutzt man einen Hash? print %Artikel, "\n"; Interpolation geht nicht! print "%Artikel\n"; Statt dessen Zuweisung in ein Array und dessen Ausgabe mit Trennzeichen: $" = ", = %Artikel; print Einzelne Werte ausgeben (auch mit Interpolation): print $Artikel{'Apfel',"\n"; print "$Artikel{'Birne'\n"; 66 Um einen Hash auszugeben, sollte man beachten, dass ein Hash in Anführungszeichen nicht interpoliert wird. Mit der Print-Anweisung erscheint ein Hash genauso wie ein Array. Will man die einzelnen Elemente mit Trennzeichen ansehen, ist es praktisch, sie in ein Array zu übertragen und dann dieses auszugeben. Einzelne Hashwerte hingegen werden auch in Anführungsstrichen interpoliert und ausgegeben. Übung: Schreiben Sie ein Programm, dass eine oder mehrere Textzeilen einliest und mit einer Leerzeile beendet wird. Zerlegen Sie den Text in einzelne Worte und zählen dann, wie oft jedes Wort vorkam. Benutzen Sie dazu einen Hash und die Worte als Schlüssel. Geben Sie am Schluss den Hash aus. Lösung: 66

4 Wie verändert man einen Hash? Einen einzelnen Hash-Eintrag löschen: delete $Artikel{'Ananas'; print %Artikel, "\n"; Mehrere Hash-Einträge (Slices) löschen: 'Banane'; print %Artikel, "\n"; 67 Ein einzelner Hash-Eintrag wird einfach über seinen Schlüssel gelöscht. Da es ein einzelner Eintrag ist verwendet man das Skalarzeichen (= Einzelwert) und die geschweifte Klammer mit dem Schlüssel, welche es als Hash kennzeichnet. Mehrere Hashes sind ja nichts anderes als eine Liste. Deshalb werden Slices so gelöscht, dass man das Arrayzeichen (= Werteliste) verwendet. Dahinter steht in geschweiften Klammern eine Liste der Schlüssel, deren Hash-Eintrag gelöscht werden soll. Wollen Sie gleich den ganzen Hash löschen, weisen Sie ihm einfach wieder eine leere Liste zu: %Hash = ( ); 67

5 Hashfunktionen: mit Keys die Schlüssel = keys(%hash) = keys(%artikel); print Beispiel mit sortierter = sort (keys(%artikel)); print 68 Die Funktion keys(%hash) erzeugt eine Liste aller Schlüssel im Hash. Anders ausgedrückt liefert diese Funktion alle ungeraden Elemente (das erste, das dritte, fünfte, etc.) der Hash-Liste zurück. Da man in der Regel nicht weiß, in welcher Reihenfolge die Hash-Elemente gespeichert sind, kann man mit Sort die Schlüssel sortieren. Im skalaren Kontext liefert keys die Anzahl der Elemente im Hash zurück, z.b. $n = keys(%hash). Übung: Schreiben Sie ein Programm, dass einzelne Wörter einliest bis man Strg+Z drückt (Einlesen je Zeile in ein Array). Dann zählt es, wie oft jedes Wort vorkam. Geben Sie die alphabetisch sortierten eingegebenen Wörter und die Häufigkeit nebeneinander aus. Lösung: 68

6 Hashfunktionen: mit Values die Werte = values(%hash) = values(%artikel); print Beispiel mit numerisch sortierter = sort {$a <=> $b (values(%artikel)); print 69 Das Gegenteil zu keys ist die Funktion values. Sie liefert die Hash-Werte zurück, also alle geraden Elemente einer Liste. Übung: Schreiben Sie das vorherige Programmm (zur keys-funktion) so um, dass eine Rangfolge der Wort-Häufigkeit entsteht. Also das häufigste Wort an erster Stelle und das seltenste an letzter Stelle. Lösung: 69

7 Kontrollstrukturen Endlosschleifen mit While und Until Schleife ausführen, solange (Vergleich) zutrifft, also wahr ist: while (Vergleich) {Anweisungsblock Schleife ausführen, solange (Vergleich) nicht zutrifft, also falsch ist: until (Vergleich) {Anweisungsblock Beispiel zu while: print "Wie alt bist du?"; chomp($alt = <stdin>); while ($alt > 0) { print "Du warst mal $alt Jahre alt.\n"; $alt--; Beispiel zu until: print "Wie alt bist du?"; chomp($alt = <stdin>); until ($alt == 0) { print "Du warst mal $alt Jahre alt.\n"; $alt--; 70 Neben den Schleifenkonstruktionen mit For und ForEach gibt es in Perl auch andere Konstruktionen, die praktisch anwendbar sind. Während For meist mit einer Schleifenvariable eine begrenzte Anzahl von Durchläufen benutzt, werden die Anweisungen While und Until für Endlosschleifen benutzt. Die Abbruchbedingung ergibt sich aus einem Vergleich, der wahr oder falsch sein kann. Die While-Schleife wird solange durchlaufen, solange ein Vergleich den Wert wahr (=1) ergibt. Die Anweisung while (1) ergibt also eine Endlosschleife, die nur mit Last wieder verlassen werden kann (die Bedingung ist immer erfüllt). Die Until-Schleife reagiert genau anders herum: sie wird durchlaufen, solange ein Vergleich den Wert falsch ergibt. Also solange, bis der Vergleich wahr wird. Demzufolge stellt die Anweisung until (0) ebenso eine Endlosschleife. Gerne benutzt wird auch die folgende Anweisung Do { Anweisungsblock while (Vergleich); Das ist immer dann interessant, wenn der Anweisungsblock wenigstens einmal durchlaufen werden soll. While bzw. Until statt do würde statt dessen den Anweisungsblock sofort überspringen, wenn der Vergleich erfüllt ist. 70

8 Hashfunktionen: mit each Schlüssel/Wertpaare = each(%hash) ($Schlüssel, $Wert) = each(%hash) Beispiel: foreach (keys (%Artikel)) { ($key, $Wert) = each (%Artikel); print "$key\t $Wert\n"; Beispiel mit while-schleife: while (($key, $Wert) = each(%artikel)) { print "$key\t $Wert\n"; 71 Mit der Funktion 'each' werden nacheinander alle Schlüssel/Wertpaare einer Liste zugewiesen. Die Each-Funktion liefert im skalaren Kontext eine 0 zurück, wenn keine Schlüssel/Wertpaare mehr vorhanden sind. Deshalb eignet sich diese Funktion besonders als Abbruchbedingung für While-Schleifen. 71

9 Mit Reverse die Schlüssel/Wertpaare vertauschen %NeuHash = reverse (%Hash) Beispiel: %Internet = (Deutschland => de, Oesterreich => at, Schweiz => ch); while (($land, $kurz) = each(%internet)) { print "$land hat Webkuerzel $kurz\n"; %Internet = reverse (%Internet); #Schlüssel und Wert vertauschen while (($kurz, $land) = each(%internet)) { print "Webkuerzel $kurz gehoert zu $land\n"; 72 Mit der Reverse-Funktion lassen sich auch die Schlüssel/Wertpaare vertauschen. Damit ist es möglich in einem Hash nach dem Wert oder nach dem Schlüssel zu sortieren und zu suchen. Zu beachten ist dabei allerdings, dass die Zuordnung eindeutig sein muss. Das heißt, wenn Werte doppelt vorkommen, sind anschließend die ersten Einträge des Werts gelöscht! Übung: Schreiben Sie ein Programm, das als Überschrift ***Telefonliste anlegen*** ausgibt. Dann werden solange Namen und anschließend Telefonnummern eingelesen, bis kein Name mehr eingegeben wird. Die Paare werden in einem Hash gespeichert. Nach zwei Leerzeilen steht die Überschrift 'Freundeliste'. Dann werden sortiert die Namen und nach drei Tabulatoren die dazugehörigen Telefonummern ausgegeben. Nach zwei weiteren Leerzeilen wird dann die Überschrift 'Telefonliste' und sortiert die Telefonummern und nach drei Tabulatoren die dazugehörigen Namen ausgegeben. Lösung: 72

10 Hash von Hashes %Hash = ( %Hash1, %Hash2, ) Beispiel: %Tabelle = ( 'Zeile1' => {'U' => 10, 'I' => 0.01, 'R' => 0, 'Zeile2' => {'U' => 10, 'I' => 0.09, 'R' => 0); foreach $zeile (keys %Tabelle) { #zeilenweise auslesen print "$zeile\n"; $u = $Tabelle{$zeile{'U'; #Element U aus $zeile $i = $Tabelle{$zeile{'I'; #Element I aus $zeile $Tabelle{$zeile{'R' = $Tabelle{$zeile{'U' / $Tabelle{$zeile{'I'; print "$u / $i = $Tabelle{$zeile{'R'\n"; foreach $key (keys %{$Tabelle{$zeile) { #alle Elemente der Zeile print "$key = $Tabelle{$zeile{$key; "; #mit dem Schlüssel ausgeben print "\n"; 73 Wie schon bei den Arrays kann man auch Hashes verschachteln. Es gibt deshalb auch Arrays von Hashes, Hashes von Arrays und Hashes von Hashes. Während man bei zweidimensionalen Arrays auf ein Element mit den Indizes in eckigen Klammern zugegriffen hat, erfolgt es beim Hash von Hashes über die geschweiften Klammern. Bei den Mischformen sind dann auch die Klammern gemischt (Es geht beliebig kompliziert, was man auch einfach machen könnte. Siehe dazu besser andere Programmiersprachen). 73

11 Variablen Besondere Variablen Systemvariablen Der Hash für die Umgebungsvariablen heißt %ENV. Beispiel (gibt die Windows-Umgebungsvariablen sortiert aus): while (($var, $wert) = each(%env)) { printf "%-24s = %-s\n", $var, $wert; Beispiel (gibt Ihren Anmeldenamen und Computernamen aus): print "Sie sind User $ENV{USERNAME.\n"; print "Sie sitzen an dem $ENV{'OS'-Rechner $ENV{'COMPUTERNAME'.\n" Das Array für die Aufrufparameter beim Start des Programms Beispiel (Aufruf z.b. mit perl addiere.pl 3 4 5): if ($#ARGV == -1) {die "Aufruf mit Parameter \'zahl1 zahl2\'\n" foreach {$erg += $_ print "Summe = $erg\n"; 74 Es gibt eine Menge Sondervariablen die bestimmte Inhalte präsentieren. Die Umgebungsvariablen sind zum Beispiel in dem Hash %ENV gespeichert. Dort können Sie mit $ENV{Schlüssel abgefragt oder auch verändert werden, allerdings nicht systemweit und dauerhaft. Wenn man hinter einem Programm weitere Angaben setzt (=Aufrufparameter) kann man diese im ansehen. Wenn das Array leer ist, also nichts übergeben wurde, steht der höchste Index auf -1. Oft wird ein Aufrufparameter auch mit shift (ohne weitere Argumente) abgeholt. Dann ist die Benutzung nicht nötig (aber leider etwas undurchsichtig, woher der Wert kommt). Das sieht dann so aus: $werte = = split(/ /, $werte); Wenn $werte leer ist, wurden keine Parameter übergeben. 74

12 Variablen Besondere Variablen Systemzeit in ein Array = localtime(time) Beispiel: use strict 'vars'; my ($Sekunden, $Minuten, $Stunden, $Monatstag, $Monat, $Jahr, $Wochentag, $Jahrestag, $Sommerzeit) = localtime(time); my %zeit = (Std => $Stunden, Min => $Minuten, Sek => $Sekunden); my %datum = (Tag => $Monatstag, Mon => $Monat+1, Jhr => $Jahr+1900); = ("Sonntag","Montag","Dienstag","Mittwoch","Donnerstag","Freitag","Samstag"); #Formatierung: %02u => 0 mit Null auffüllen, 2 Stellen, u unsigned Integer printf "Aktuelle Uhrzeit ist %02u:%02u:%02u.\n", $zeit{std, $zeit{min, $zeit{sek; printf "Heute ist $Wochentage[$Wochentag], der %02u.%02u.%04u\n", $datum{tag, $datum{mon, $datum{jhr; 75 Die Funktion localtime(time) ermittelt eine Liste mit den aktuellen Zeitwerten des Computers. Manche dieser Werte müssen noch etwas angepasst werden, weil die Rückgabewerte mit 0 statt mit 1 beginnen. Dazu gehört der Monat und der Jahrestag (der wievielte Tag des Jahres). Außerdem beginnen die Jahre erst bei 1900 mit dem Wert 0. Man muss also 1900 zur Jahreszahl addieren. 75

Benutzerfunktionen Was ist eine Funktion, was ist eine Prozedur?

Benutzerfunktionen Was ist eine Funktion, was ist eine Prozedur? Was ist eine Funktion, was ist eine Prozedur? Aufbau einer "Prozedur" (d.h. ohne Rückgabewerte) sub FktName (Parameter) {Anweisungsblock sub ausgabe {print "Hallo Welt!" Aufbau einer "Funktion" (d.h. mit

Mehr

Erwin Grüner 09.02.2006

Erwin Grüner 09.02.2006 FB Psychologie Uni Marburg 09.02.2006 Themenübersicht Folgende Befehle stehen in R zur Verfügung: {}: Anweisungsblock if: Bedingte Anweisung switch: Fallunterscheidung repeat-schleife while-schleife for-schleife

Mehr

Eine Beschreibung des Programms und der dahinter stehenden Philosophie.

Eine Beschreibung des Programms und der dahinter stehenden Philosophie. 1 Geschichte Larry Wall schrieb ein Konfigurationsmanagementsystem und benötigte dazu ein Berichtwerkzeug, das mehrere Dateien gleichzeitig öffnen konnte. Awk konnte es damals nicht, daher schrieb er eine

Mehr

Access [basics] Programmieren mit Arrays. Beispieldatenbank. Arrays. Eindimensionale Arrays. VBA-Grundlagen Programmieren mit Arrays

Access [basics] Programmieren mit Arrays. Beispieldatenbank. Arrays. Eindimensionale Arrays. VBA-Grundlagen Programmieren mit Arrays Dass Sie unter Access Daten in Tabellen speichern und gezielt darauf zugreifen können, wissen Sie als Access [basics]-leser schon längst. Aber was, wenn Sie nur ein paar gleichartige Daten zwischenspeichern

Mehr

M. Graefenhan 2000-12-07. Übungen zu C. Blatt 3. Musterlösung

M. Graefenhan 2000-12-07. Übungen zu C. Blatt 3. Musterlösung M. Graefenhan 2000-12-07 Aufgabe Lösungsweg Übungen zu C Blatt 3 Musterlösung Schreiben Sie ein Programm, das die Häufigkeit von Zeichen in einem eingelesenen String feststellt. Benutzen Sie dazu ein zweidimensionales

Mehr

1 Vom Problem zum Programm

1 Vom Problem zum Programm Hintergrundinformationen zur Vorlesung GRUNDLAGEN DER INFORMATIK I Studiengang Elektrotechnik WS 02/03 AG Betriebssysteme FB3 Kirsten Berkenkötter 1 Vom Problem zum Programm Aufgabenstellung analysieren

Mehr

5 DATEN. 5.1. Variablen. Variablen können beliebige Werte zugewiesen und im Gegensatz zu

5 DATEN. 5.1. Variablen. Variablen können beliebige Werte zugewiesen und im Gegensatz zu Daten Makro + VBA effektiv 5 DATEN 5.1. Variablen Variablen können beliebige Werte zugewiesen und im Gegensatz zu Konstanten jederzeit im Programm verändert werden. Als Variablen können beliebige Zeichenketten

Mehr

Arrays. PHP JavaScript Kapitel 9

Arrays. PHP JavaScript Kapitel 9 Arrays 1 Problem: Volatilitätenbeispiels in der Programmiersprache JavaScript. Der Benutzer unseres Programms soll die Aktienkurse für beliebig viele Tage eingeben können. Dabei soll er zunächst sagen,

Mehr

Übersicht PERL. !!!! Wichtig: Nach dem Befehl einem Strichpunkt setzen!!!!

Übersicht PERL. !!!! Wichtig: Nach dem Befehl einem Strichpunkt setzen!!!! !!!! Wichtig: Nach dem Befehl einem Strichpunkt setzen!!!! Erste Zeile eines PERL-Scripts: #! /usr/bin/perl Variablen in PERL: Normale Variablen beginnen mit einem $-Zeichen Array-Variablen beginnen mit

Mehr

Komplexe Datenstrukturen

Komplexe Datenstrukturen Perl-Praxis Komplexe Datenstrukturen Jörn Clausen, Jan Krüger Jens Reeder, Alex Sczyrba AG Praktische Informatik Technische Fakultät Universität Bielefeld {asczyrba,jkrueger@techfak.uni-bielefeld.de 1

Mehr

P r o g r a m m a b l a u f s t e u e r u n g

P r o g r a m m a b l a u f s t e u e r u n g Jede Programmiersprache braucht Konstrukte zur Steuerung des Programmablaufs. Grundsätzlich unterscheiden wir Verzweigungen und Schleifen. Schleifen dienen dazu, bestimmte Anweisungen wiederholt auszuführen,

Mehr

Steuern des GSR-Interface mit QBasic

Steuern des GSR-Interface mit QBasic Steuern des GSR-Interface mit QBasic Erstellt von Jochen Sendler, Geschwister-Scholl-Realschule Mannheim Inhaltsverzeichnis 1. Die Programmiersprache QBasic 3 2. Starten von QBasic 3 3. Ansteuern einzelner

Mehr

C# - Einführung in die Programmiersprache Arrays, Enumeration und Collections. Leibniz Universität IT Services Anja Aue

C# - Einführung in die Programmiersprache Arrays, Enumeration und Collections. Leibniz Universität IT Services Anja Aue C# - Einführung in die Programmiersprache Arrays, Enumeration und Collections Leibniz Universität IT Services Anja Aue Arrays... speichern mehrere Werte vom gleichen Datentyp. fassen zusammenhängende Werte

Mehr

Schritt 1. Schritt 1. Schritt 3. - Analysieren des Problems und Spezifizierung einer Lösung.

Schritt 1. Schritt 1. Schritt 3. - Analysieren des Problems und Spezifizierung einer Lösung. I. Programmierung ================================================================== Programmierung ist die Planung einer Abfolge von Schritten (Instruktionen), nach denen ein Computer handeln soll. Schritt

Mehr

Informatik II, SS 2014

Informatik II, SS 2014 Informatik II SS 2014 (Algorithmen & Datenstrukturen) Vorlesung 7 (21.5.2014) Binäre Suche, Hashtabellen I Algorithmen und Komplexität Abstrakte Datentypen : Dictionary Dictionary: (auch: Maps, assoziative

Mehr

Entwurf von Algorithmen - Kontrollstrukturen

Entwurf von Algorithmen - Kontrollstrukturen Entwurf von Algorithmen - Kontrollstrukturen Eine wichtige Phase in der Entwicklung von Computerprogrammen ist der Entwurf von Algorithmen. Dieser Arbeitsschritt vor dem Schreiben des Programmes in einer

Mehr

Linux Tutorium. 12. Shellprogrammierung. Version vom 02.07.2008 13:38:56

Linux Tutorium. 12. Shellprogrammierung. Version vom 02.07.2008 13:38:56 Linux Tutorium 12. Shellprogrammierung Version vom 02.07.2008 13:38:56 im Grunde ist ein Shell-Skript nichts anderes als eine Textdatei, welche Befehlsfolgen enthält Shell-Skripte werden im Wesentlichen

Mehr

Einführung in die Programmiersprache Perl

Einführung in die Programmiersprache Perl Einführung in die Programmiersprache Perl Teil 2: Binäre Stringoperatoren Zuweisungsoperatoren Zeichen und Zahlen Geordnete Listen und Arrays Assoziative Listen (Hashes) Kontext Referenzen auf Variablen

Mehr

Fallunterscheidung: if-statement

Fallunterscheidung: if-statement Fallunterscheidung: if-statement A E 1 E 2 V 1 V 2 Syntax: if ( ausdruck ) Semantik: else anweisungsfolge_1 anweisungsfolge_2 1. Der ausdruck wird bewertet 2. Ergibt die Bewertung einen Wert ungleich 0

Mehr

Java 8. Elmar Fuchs Grundlagen Programmierung. 1. Ausgabe, Oktober 2014 JAV8

Java 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

Mehr

Einführung in Perl. O'REILLY Beijing Cambridge Farnham Köln Sebastopol Taipei Tokyo. Randal L. Schwartz, Tom Phoenix & brian dfoy

Einführung in Perl. O'REILLY Beijing Cambridge Farnham Köln Sebastopol Taipei Tokyo. Randal L. Schwartz, Tom Phoenix & brian dfoy Einführung in Perl Randal L. Schwartz, Tom Phoenix & brian dfoy Deutsche Übersetzung von Jörgen W. Lang O'REILLY Beijing Cambridge Farnham Köln Sebastopol Taipei Tokyo Inhalt Vorwort XI 1 Einleitung 1

Mehr

VisualBasic - Variablen

VisualBasic - Variablen Typisch für alle Basic-Dialekte ist die Eigenschaft, dass Variablen eigentlich nicht deklariert werden müssen. Sobald Sie einen Bezeichner schreiben, der bisher nicht bekannt war, wird er automatisch angelegt

Mehr

Grundlagen der Informatik. Prof. Dr. Stefan Enderle NTA Isny

Grundlagen der Informatik. Prof. Dr. Stefan Enderle NTA Isny Grundlagen der Informatik Prof. Dr. Stefan Enderle NTA Isny 2 Datenstrukturen 2.1 Einführung Syntax: Definition einer formalen Grammatik, um Regeln einer formalen Sprache (Programmiersprache) festzulegen.

Mehr

Arbeiten mit Arrays. 4.1 Eigenschaften. 4.1.1 Schlüssel und Element. Kapitel 4

Arbeiten mit Arrays. 4.1 Eigenschaften. 4.1.1 Schlüssel und Element. Kapitel 4 Arbeiten mit s Eine effiziente Programmierung mit PHP ohne seine s ist kaum vorstellbar. Diese Datenstruktur muss man verstanden haben, sonst brauchen wir mit weitergehenden Programmiertechniken wie der

Mehr

PHP 5.4 ISBN 978-3-86249-327-2. Stephan Heller, Andreas Dittfurth 1. Ausgabe, September 2012. Grundlagen zur Erstellung dynamischer Webseiten GPHP54

PHP 5.4 ISBN 978-3-86249-327-2. Stephan Heller, Andreas Dittfurth 1. Ausgabe, September 2012. Grundlagen zur Erstellung dynamischer Webseiten GPHP54 PHP 5.4 Stephan Heller, Andreas Dittfurth 1. Ausgabe, September 2012 Grundlagen zur Erstellung dynamischer Webseiten ISBN 978-3-86249-327-2 GPHP54 5 PHP 5.4 - Grundlagen zur Erstellung dynamischer Webseiten

Mehr

GI Vektoren

GI Vektoren Vektoren Problem: Beispiel: viele Variablen vom gleichen Typ abspeichern Text ( = viele char-variablen), Ergebnisse einer Meßreihe ( = viele int-variablen) hierfür: Vektoren ( = Arrays = Feld ) = Ansammlung

Mehr

II. Grundlagen der Programmierung. 9. Datenstrukturen. Daten zusammenfassen. In Java (Forts.): In Java:

II. Grundlagen der Programmierung. 9. Datenstrukturen. Daten zusammenfassen. In Java (Forts.): In Java: Technische Informatik für Ingenieure (TIfI) WS 2005/2006, Vorlesung 9 II. Grundlagen der Programmierung Ekkart Kindler Funktionen und Prozeduren Datenstrukturen 9. Datenstrukturen Daten zusammenfassen

Mehr

Programmierkurs Java

Programmierkurs Java Programmierkurs Java Dr. Dietrich Boles Aufgaben zu UE16-Rekursion (Stand 09.12.2011) Aufgabe 1: Implementieren Sie in Java ein Programm, das solange einzelne Zeichen vom Terminal einliest, bis ein #-Zeichen

Mehr

Programmieren in C. Felder, Schleifen und Fließkommaarithmetik. Prof. Dr. Nikolaus Wulff

Programmieren in C. Felder, Schleifen und Fließkommaarithmetik. Prof. Dr. Nikolaus Wulff Programmieren in C Felder, Schleifen und Fließkommaarithmetik Prof. Dr. Nikolaus Wulff Addition von Zahlen 1 2 3 4 5 #include int main() { int x,y,z,sum; x = 1; y = 2; z = 4; sum = x + y + z;

Mehr

PERL. Eine Einführung. von Serap Tekke & Elif Öner

PERL. Eine Einführung. von Serap Tekke & Elif Öner PERL Eine Einführung von Serap Tekke & Elif Öner Inhalt 1. Allgemeines 2. Datentypen 3. Algorithmische Elemente 4. Module 5. Objektorientiertes Programmieren 6. Pattern Matching 2 Was ist Perl... Perl

Mehr

Übersicht Shell-Scripten

Ü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,

Mehr

Schleifenprogrammierung in C/C++, Fortran und Pascal

Schleifenprogrammierung in C/C++, Fortran und Pascal Schleifenprogrammierung in C/C++, Fortran und Pascal Stefan Ackermann Mathematisches Institut der Universität Leipzig 8. April 2009 1 Die kopfgesteuerte Schleife Bei der kopfgesteuerten Schleife steht

Mehr

Erweiterung der Aufgabe. Die Notenberechnung soll nicht nur für einen Schüler, sondern für bis zu 35 Schüler gehen:

Erweiterung der Aufgabe. Die Notenberechnung soll nicht nur für einen Schüler, sondern für bis zu 35 Schüler gehen: VBA Programmierung mit Excel Schleifen 1/6 Erweiterung der Aufgabe Die Notenberechnung soll nicht nur für einen Schüler, sondern für bis zu 35 Schüler gehen: Es müssen also 11 (B L) x 35 = 385 Zellen berücksichtigt

Mehr

IT-Zertifikat: Allgemeine Informationstechnologien II PHP

IT-Zertifikat: Allgemeine Informationstechnologien II PHP IT-Zertifikat: Allgemeine Informationstechnologien II PHP PHP ( PHP: Hypertext Preprocessor ) ist eine serverseitige Skriptsprache: Der PHP-Code wird nicht wie bei JavaScript auf dem Clientrechner ausgeführt,

Mehr

Java 7. Elmar Fuchs Grundlagen Programmierung. 1. Ausgabe, Dezember 2011 JAV7

Java 7. Elmar Fuchs Grundlagen Programmierung. 1. Ausgabe, Dezember 2011 JAV7 Java 7 Elmar Fuchs Grundlagen Programmierung 1. Ausgabe, Dezember 2011 JAV7 5 Java 7 - Grundlagen Programmierung 5 Kontrollstrukturen In diesem Kapitel erfahren Sie wie Sie die Ausführung von von Bedingungen

Mehr

Autor: Michael Spahn Version: 1.0 1/10 Vertraulichkeit: öffentlich Status: Final Metaways Infosystems GmbH

Autor: Michael Spahn Version: 1.0 1/10 Vertraulichkeit: öffentlich Status: Final Metaways Infosystems GmbH Java Einleitung - Handout Kurzbeschreibung: Eine kleine Einführung in die Programmierung mit Java. Dokument: Autor: Michael Spahn Version 1.0 Status: Final Datum: 23.10.2012 Vertraulichkeit: öffentlich

Mehr

MAXIMUM2.STR 02.10.2002. Struktogramme. Aufgabe: 3 Zahlen eingeben, größte Zahl ermitteln und ausgeben.

MAXIMUM2.STR 02.10.2002. Struktogramme. Aufgabe: 3 Zahlen eingeben, größte Zahl ermitteln und ausgeben. Struktogramme 02.10.2002 Aufgabe: 3 Zahlen eingeben, größte Zahl ermitteln und ausgeben. MAX_DOZ1 Integer a, b, c, max M AX IM U M 1.S T R Inte g er a, b, c Ausgabe "Zahlen eingeben" E ing abe a, b, c

Mehr

2 Einfache Rechnungen

2 Einfache Rechnungen 2 Einfache Rechnungen 2.1 Zahlen Computer, auch bekannt als Rechner, sind sinnvoller eingesetzt, wenn sie nicht nur feste Texte ausgeben, sondern eben auch rechnen. Um das Rechnen mit Zahlen zu verstehen,

Mehr

Programmieren mit PERL eine Einführung

Programmieren mit PERL eine Einführung Informationstechnik Programmieren mit PERL eine Einführung Prof. Dr. Wolf-Fritz Riekert Hochschule für Bibliotheks- und Informationswesen (HBI) Stuttgart mailto:riekert@hbi-stuttgart.de http://v.hbi-stuttgart.de/~riekert

Mehr

Übungen 19.01.2012 Programmieren 1 Felix Rohrer. Übungen

Übungen 19.01.2012 Programmieren 1 Felix Rohrer. Übungen Übungen if / else / else if... 2... 2 Aufgabe 2:... 2 Aufgabe 3:... 2 Aufgabe 4:... 2 Aufgabe 5:... 2 Aufgabe 6:... 2 Aufgabe 7:... 3 Aufgabe 8:... 3 Aufgabe 9:... 3 Aufgabe 10:... 3 switch... 4... 4 Aufgabe

Mehr

Übersicht. Einführung in Perl Datenstrukturen I. Datentypen Übersicht (1) Kernbegriffe. Kernbegriffe. Einführung der Datentypen.

Übersicht. Einführung in Perl Datenstrukturen I. Datentypen Übersicht (1) Kernbegriffe. Kernbegriffe. Einführung der Datentypen. Übersicht Kernbegriffe Einführung der Datentypen Skalare im Detail Vergleichsoperatoren Standardeingabe chomp-operator while-schleife Perl, 24.10.03 Datentypen I 1 Datentypen Übersicht (1) Datentyp Erklärung

Mehr

Kontrollstrukturen, Strukturierte Programmierung

Kontrollstrukturen, Strukturierte Programmierung , Strukturierte Programmierung Steuer- und Kontrollfluss Strukturierte Programmierung Arten von Strukturblöcken Sequenz Alternative Iteration C-Spezifisches Seite 1 Elementare Algorithmen SelectionSort

Mehr

C++ - Einführung in die Programmiersprache Schleifen

C++ - Einführung in die Programmiersprache Schleifen C++ - Einführung in die Programmiersprache Schleifen Bedingung wiederhole ja Anweisung Anweisung Anweisung Leibniz Universität IT Services Anja Aue Schleifen Iterationsanweisungen. Wiederholung von Anweisungsblöcken.

Mehr

Inhaltsverzeichnis. Grundbegriffe der C-Programmierung Für den HI-TECH C-Compiler

Inhaltsverzeichnis. Grundbegriffe der C-Programmierung Für den HI-TECH C-Compiler Inhaltsverzeichnis Grundbegriffe der C-Programmierung 1. Grundsätzliches... 2 1.1 Darstellung von Werten... 2 1.1.1 Dezimale Zahlendarstellung... 2 1.1.2 Binäre Zahlendarstellung... 3 1.1.3 Hexadezimale

Mehr

Einführung in die Java- Programmierung

Einfü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

Mehr

Einführung in die Programmierung für Computerlinguisten

Einführung in die Programmierung für Computerlinguisten EINFÜHRUNG IN DIE PROGRAMMIERUNG FÜR COMPUTERLINGUISTEN Dr. Maximilian Hadersbeck Leonie Weißweiler LMU Geschwister-Scholl-Platz 1 80539 München Anrede Name Straße Lösung zur 3. Übung zur Vorlesung Ludwig-Maximilians-Universität

Mehr

Deklarationen in C. Prof. Dr. Margarita Esponda

Deklarationen in C. Prof. Dr. Margarita Esponda Deklarationen in C 1 Deklarationen Deklarationen spielen eine zentrale Rolle in der C-Programmiersprache. Deklarationen Variablen Funktionen Die Deklarationen von Variablen und Funktionen haben viele Gemeinsamkeiten.

Mehr

Programmiersprachen Einführung in C. Unser erstes C-Programm. Unser erstes C-Programm. Unser erstes C-Programm. Unser erstes C-Programm

Programmiersprachen Einführung in C. Unser erstes C-Programm. Unser erstes C-Programm. Unser erstes C-Programm. Unser erstes C-Programm Programmiersprachen Einführung in C Teil 2: Prof. Dr. int main (int argc, char *argv[]) int sum = 0; for (i = 0; i

Mehr

Modul Entscheidungsunterstützung in der Logistik. Einführung in die Programmierung mit C++ Übung 2

Modul 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

Mehr

Einführung in die Programmierung

Einführung in die Programmierung : Inhalt Einführung in die Programmierung Wintersemester 2010/11 Prof. Dr. Günter Rudolph Lehrstuhl für Algorithm Engineering Fakultät für Informatik TU Dortmund Wiederholungen - while - do-while - for

Mehr

Kontrollstrukturen - Universität Köln

Kontrollstrukturen - Universität Köln Kontrollstrukturen - Universität Köln Mario Manno Kontrollstrukturen - Universität Köln p. 1 Was sind Sprachen Auszeichnungssprachen HTML, XML Programmiersprachen ASM, Basic, C, C++, Haskell, Java, Pascal,

Mehr

5. Tutorium zu Programmieren

5. Tutorium zu Programmieren 5. Tutorium zu Programmieren Dennis Ewert Gruppe 6 Universität Karlsruhe Institut für Programmstrukturen und Datenorganisation (IPD) Lehrstuhl Programmierparadigmen WS 2008/2009 c 2008 by IPD Snelting

Mehr

Institut fu r Informatik

Institut fu r Informatik Technische Universita t Mu nchen Institut fu r Informatik Lehrstuhl fu r Bioinformatik Einfu hrung in die Programmierung fu r Bioinformatiker Prof. B. Rost, L. Richter WS 2013 Aufgabenblatt 3 18. November

Mehr

Einführung in Python Übung 1

Einführung in Python Übung 1 Einführung in Python Übung 1 Rebecca Breu, Bastian Tweddell Oktober 2007 Login: XXXloginXXX Passwort: XXXpasswortXXX Bitte das Passwort ändern (passwd)! Datentypen I Aufgabe 1 (Erste Schritte, Zahlen)

Mehr

Studentische Lösung zum Übungsblatt Nr. 7

Studentische Lösung zum Übungsblatt Nr. 7 Studentische Lösung zum Übungsblatt Nr. 7 Aufgabe 1) Dynamische Warteschlange public class UltimateOrderQueue private Order[] inhalt; private int hinten; // zeigt auf erstes freies Element private int

Mehr

6. Zeiger Allgemeines Definition eines Zeigers

6. Zeiger Allgemeines Definition eines Zeigers 6. Zeiger www.c-programme.de Stefan Thiemert Kapitel 6 - Seite 1 von 6 6. 1. Allgemeines Zeiger spielen in der Programmierung eine wichtige Rolle. Sie sind wichtig, bei der Arbeit mit Arrays und Funktionen.

Mehr

Hochschule Darmstadt Informatik-Praktikum (INF 1) WS 2015/2016 Wirtschaftsingenieur Bachelor 5. Aufgabe Datenstruktur, Dateieingabe und -ausgabe

Hochschule Darmstadt Informatik-Praktikum (INF 1) WS 2015/2016 Wirtschaftsingenieur Bachelor 5. Aufgabe Datenstruktur, Dateieingabe und -ausgabe Aufgabenstellung Für eine Hausverwaltung sollen für maximal 500 Wohnungen Informationen gespeichert werden, die alle nach der gleichen Weise wie folgt strukturiert sind: Art Baujahr Wohnung Whnginfo Nebenkosten

Mehr

620.900 Propädeutikum zur Programmierung

620.900 Propädeutikum zur Programmierung 620.900 Propädeutikum zur Programmierung Andreas Bollin Institute für Informatik Systeme Universität Klagenfurt Andreas.Bollin@uni-klu.ac.at Tel: 0463 / 2700-3516 Arrays Wiederholung (1/5) Array = GEORDNETE

Mehr

Die Java Stream API. Funktionale Programmierung mit der Stream API des JDK 1.8. Prof. Dr. Nikolaus Wulff

Die Java Stream API. Funktionale Programmierung mit der Stream API des JDK 1.8. Prof. Dr. Nikolaus Wulff Die Java Stream API Funktionale Programmierung mit der Stream API des JDK 1.8 Prof. Dr. Nikolaus Wulff Funktionale Programmierung Neben der Collection API mit default Methoden ist als weitere Neuerung

Mehr

C++ Teil 2. Sven Groß. 16. Apr IGPM, RWTH Aachen. Sven Groß (IGPM, RWTH Aachen) C++ Teil Apr / 22

C++ 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

Mehr

Arge Betriebsinformatik GmbH & Co.KG, CAP News 40, Februar 2013. CAP-News 40

Arge Betriebsinformatik GmbH & Co.KG, CAP News 40, Februar 2013. CAP-News 40 CAP-News 40 CAP-News ist in unrägelmäßigen Abständen erscheinende Information zum Produktkonfigurator CAP/VARIANTS. Hier werden die neuen Befehle, Funktionen und Möglichkeiten beschrieben. In CAP-News

Mehr

Programmieren I. Kontrollstrukturen. Heusch 8 Ratz 4.5. www.kit.edu. Institut für Angewandte Informatik

Programmieren I. Kontrollstrukturen. Heusch 8 Ratz 4.5. www.kit.edu. Institut für Angewandte Informatik Programmieren I Kontrollstrukturen Heusch 8 Ratz 4.5 KIT Universität des Landes Baden-Württemberg und nationales Großforschungszentrum in der Helmholtz-Gemeinschaft www.kit.edu Arten von Kontrollstrukturen

Mehr

Programmierung in C. Grundlagen. Stefan Kallerhoff

Programmierung in C. Grundlagen. Stefan Kallerhoff Programmierung in C Grundlagen Stefan Kallerhoff Vorstellungsrunde Name Hobby/Beruf Schon mal was programmiert? Erwartungen an den Kurs Lieblingstier Für zu Hause C-Buch online: http://openbook.rheinwerk-verlag.de/c_von_a_bis_z/

Mehr

Binäre Bäume. 1. Allgemeines. 2. Funktionsweise. 2.1 Eintragen

Binäre Bäume. 1. Allgemeines. 2. Funktionsweise. 2.1 Eintragen Binäre Bäume 1. Allgemeines Binäre Bäume werden grundsätzlich verwendet, um Zahlen der Größe nach, oder Wörter dem Alphabet nach zu sortieren. Dem einfacheren Verständnis zu Liebe werde ich mich hier besonders

Mehr

Kommandozeileneingabe. Einführung in Perl Kommandozeileneingabe etc. Kommandozeileneingabe Optionen. Kommandozeileneingabe Bsp (1)

Kommandozeileneingabe. Einführung in Perl Kommandozeileneingabe etc. Kommandozeileneingabe Optionen. Kommandozeileneingabe Bsp (1) Einführung in Perl Kommandozeileneingabe etc. Kommandozeileneingabe index-funktion rindex-funktion substr-operator grep-operator map-operator Kommandozeileneingabe Ausführung von Perl-Kommandos direkt

Mehr

Übersicht Programmablaufsteuerung

Übersicht Programmablaufsteuerung Übersicht Programmablaufsteuerung Konditionale Verzweigung: if - else switch-anweisung Schleifenkonstrukte: while, do - while for Schleife Sprung-Anweisungen: break, continue, goto, return Anweisungen

Mehr

Zusammengesetzte Datentypen -- Arrays und Strukturen

Zusammengesetzte Datentypen -- Arrays und Strukturen Zusammengesetzte Datentypen -- und Strukturen Informatik für Elektrotechnik und Informationstechnik Benedict Reuschling benedict.reuschling@h-da.de Hochschule Darmstadt Fachbereich Informatik WS 2013/14

Mehr

Tag 9: Datenstrukturen

Tag 9: Datenstrukturen Tag 9: Datenstrukturen A) Datenstrukturen B) Cell Arrays C) Anwendungsbeispiel: Stimulation in einem psychophysikalischen Experiment A) Datenstrukturen Wenn man komplizierte Datenmengen verwalten möchte,

Mehr

Computerservice Ingrid Weigoldt

Computerservice Ingrid Weigoldt Inhaltsverzeichnis 1 Voraussetzungen...2 2 Einschrä nkung...2 3 Einsatzgebiet: Einzelne Faxe aus ACT! heraus...2 3.1 Allgemeines Vorgehen...2 3.2 Vorgehen bei Teilnehmern im Ausland...6 3.3 Dokumentschablone

Mehr

Wh.: for-schleife. Listen (1) Wh.: Schachtelung von for-schleifen. Listen (2) Bereichsoperator.. Programmierkurs für absolute Anfänger

Wh.: for-schleife. Listen (1) Wh.: Schachtelung von for-schleifen. Listen (2) Bereichsoperator.. Programmierkurs für absolute Anfänger Programmierkurs für absolute Anfänger Listen und Arrays Caren Brinckmann Sommersemester 2005 http://www.coli.uni-saarland.de/~cabr/teaching.php Wh.: for-schleife Syntax: for (Init; Bedingung; Aktualisierung)

Mehr

3 Variablen. 3.1 Allgemeines. 3.2 Definition und Verwendung von Variablen

3 Variablen. 3.1 Allgemeines. 3.2 Definition und Verwendung von Variablen 3 Variablen 3.1 Allgemeines Variablen werden in Prozeduren, Mustern und Parameter-Dokumenten definiert und verwendet und bei der Jobgenerierung durch die Werte, die ihnen zugewiesen werden, ersetzt. Variablen

Mehr

Informatik. Studiengang Chemische Technologie. Michael Roth WS 2012/2013. michael.roth@h-da.de. Hochschule Darmstadt -Fachbereich Informatik-

Informatik. Studiengang Chemische Technologie. Michael Roth WS 2012/2013. michael.roth@h-da.de. Hochschule Darmstadt -Fachbereich Informatik- Informatik Studiengang Chemische Technologie Michael Roth michael.roth@h-da.de Hochschule Darmstadt -Fachbereich Informatik- WS 2012/2013 Inhalt Teil VII Einstieg in Java I Michael Roth (h_da) Informatik

Mehr

Softwareentwicklung Allgemeines und prozedurale Konstrukte

Softwareentwicklung Allgemeines und prozedurale Konstrukte Mag. iur. Dr. techn. Michael Sonntag Softwareentwicklung Allgemeines und prozedurale Konstrukte E-Mail: sonntag@fim.uni-linz.ac.at http://www.fim.uni-linz.ac.at/staff/sonntag.htm Institut für Informationsverarbeitung

Mehr

Java-Programmierung mit NetBeans

Java-Programmierung mit NetBeans Java-Programmierung mit NetBeans Steuerstrukturen Dr. Henry Herper Otto-von-Guericke-Universität Magdeburg - WS 2012/13 Steuerstrukturen Steuerstrukturen Verzweigungen Alternativen abweisende nichtabweisende

Mehr

Eine Baumstruktur sei folgendermaßen definiert. Eine Baumstruktur mit Grundtyp Element ist entweder

Eine Baumstruktur sei folgendermaßen definiert. Eine Baumstruktur mit Grundtyp Element ist entweder Programmieren in PASCAL Bäume 1 1. Baumstrukturen Eine Baumstruktur sei folgendermaßen definiert. Eine Baumstruktur mit Grundtyp Element ist entweder 1. die leere Struktur oder 2. ein Knoten vom Typ Element

Mehr

Eine kleine Befehlssammlung für Java Teil1

Eine kleine Befehlssammlung für Java Teil1 Eine kleine Befehlssammlung für Java Teil1 Definition einer Klasse public class Klasse{ Hier wird der Name der Klasse definiert. In diesem Fall ist das Klasse. Der Name muss mit dem Namen der.class Datei

Mehr

Wir basteln einen Jahreskalender mit MS Excel.

Wir basteln einen Jahreskalender mit MS Excel. Wir basteln einen Jahreskalender mit MS Excel. In meinen Seminaren werde ich hin und wieder nach einem Excel-Jahreskalender gefragt. Im Internet findet man natürlich eine ganze Reihe mehr oder weniger

Mehr

Einführung in die Programmierung

Einführung in die Programmierung : Inhalt Einführung in die Programmierung Wintersemester 2008/09 Prof. Dr. Günter Rudolph Lehrstuhl für Algorithm Engineering Fakultät für Informatik TU Dortmund - mit / ohne Parameter - mit / ohne Rückgabewerte

Mehr

EiP Übung Sichern Sie im Verzeichnis aufg3 den Inhalt des Artikels im Wochenmagazin "der Freitag" über google in der Datei artikel.

EiP Übung Sichern Sie im Verzeichnis aufg3 den Inhalt des Artikels im Wochenmagazin der Freitag über google in der Datei artikel. Musterlösung 3: 1. Kreieren Sie ein Verzeichnis aufg3 in Ihrem Homeverzeichnis. cd mkdir aufg3 2. Sichern Sie im Verzeichnis aufg3 den Inhalt des Artikels im Wochenmagazin "der Freitag" über google in

Mehr

Wer Wird Millionär? Ganz wichtig: Denkt daran in regelmäßigen Abständen zu speichern! Los geht s:

Wer Wird Millionär? Ganz wichtig: Denkt daran in regelmäßigen Abständen zu speichern! Los geht s: Wer Wird Millionär? In dieser Aufgabe werdet ihr mit DialogOS eure eigene Version der Quizshow Wer wird Millionär (WWM) entwickeln. Der Computer ist der Quizmaster und der User der Kandidat. Ihr werdet

Mehr

PHP + MySQL. Die MySQL-Datenbank. Hochschule Karlsruhe Technik & Wirtschaft Internet-Technologien T3B250 SS2014 Prof. Dipl.-Ing.

PHP + MySQL. Die MySQL-Datenbank. Hochschule Karlsruhe Technik & Wirtschaft Internet-Technologien T3B250 SS2014 Prof. Dipl.-Ing. PHP + MySQL Die MySQL-Datenbank Zusammenspiel Apache, PHP, PHPMyAdmin und MySQL PHPMyAdmin Verwaltungstool Nutzer Datei.php oder Datei.pl Apache HTTP-Server PHP Scriptsprache Perl Scriptsprache MySQL Datenbank

Mehr

Visual Basic Basisbefehle Hinweis: Der Text in eckigen Klammern [ ] ist variabel, z.b. [var] => 5.3. Eckige Klammern sind stets wegzulassen!

Visual Basic Basisbefehle Hinweis: Der Text in eckigen Klammern [ ] ist variabel, z.b. [var] => 5.3. Eckige Klammern sind stets wegzulassen! Visual Basic Basisbefehle Hinweis: Der Text in eckigen Klammern [ ] ist variabel, z.b. [var] => 5.3. Eckige Klammern sind stets wegzulassen! Grundstrukturen: Sub [name]([übergabe]) End Sub [Übergabe] ist

Mehr

Schleifenanweisungen

Schleifenanweisungen Schleifenanweisungen Bisher: sequentielle Abarbeitung von Befehlen (von oben nach unten) Nun: Befehle mehrfach ausführen (= Programmschleife): for-anweisung - wenn feststeht, wie oft z.b.: eine Berechnung

Mehr

EiP Übung

EiP Übung Musterlösung zu Blatt 7: 1. Schreiben Sie ein PERL-Programm, das aus gegebenem Anlass, nach der Anzahl fragt, wie oft der Text Wann kommt endlich der Nikolaus auf dem Terminal ausgegeben werden soll und

Mehr

Die Programmiersprache C99: Zusammenfassung

Die Programmiersprache C99: Zusammenfassung Die Programmiersprache C99: Zusammenfassung Jörn Loviscach Versionsstand: 7. Dezember 2010, 19:30 Die nummerierten Felder sind absichtlich leer, zum Ausfüllen in der Vorlesung. Videos dazu: http://www.youtube.com/joernloviscach

Mehr

Protokollbuch. Friedrich-Schiller-Universität Jena. Physikalisch-Astronomische Fakultät SS 2008. Messtechnikpraktikum

Protokollbuch. Friedrich-Schiller-Universität Jena. Physikalisch-Astronomische Fakultät SS 2008. Messtechnikpraktikum Friedrich-Schiller-Universität Jena Physikalisch-Astronomische Fakultät SS 2008 Protokollbuch Messtechnikpraktikum Erstellt von: Christian Vetter (89114) Helena Kämmer (92376) Christian.Vetter@Uni-Jena.de

Mehr

Datenbanken Microsoft Access 2010

Datenbanken Microsoft Access 2010 Datenbanken Microsoft Access 2010 Abfragen Mithilfe von Abfragen kann ich bestimmte Informationen aus einer/mehrerer Tabellen auswählen und nur diese anzeigen lassen die Daten einer/mehrerer Tabellen sortieren

Mehr

Kurs 1575, Musterlösung zur Winter Klausur 2003/04

Kurs 1575, Musterlösung zur Winter Klausur 2003/04 Kurs 1575, Musterlösung zur Klausur im Wintersemester 2003/04 1 Kurs 1575, Musterlösung zur Winter Klausur 2003/04 Aufgabe 1: Römische Zahlen Wer kennt das Problem nicht: Sie stehen vor einer Inschrift,

Mehr

Excel VBA Arrays, Enumeration und benutzerdefinierte Typen

Excel VBA Arrays, Enumeration und benutzerdefinierte Typen Excel VBA Arrays, Enumeration und benutzerdefinierte Typen Array (Feld)... ist aus vielen Variablen, die den gleichen Datentyp besitzen, zusammengesetzt.... fasst Elemente vom gleichen Datentyp zusammen....

Mehr

Modul 122 VBA Scribt.docx

Modul 122 VBA Scribt.docx Modul 122 VBA-Scribt 1/5 1 Entwicklungsumgebung - ALT + F11 VBA-Entwicklungsumgebung öffnen 2 Prozeduren (Sub-Prozeduren) Eine Prozedur besteht aus folgenden Bestandteilen: [Private Public] Sub subname([byval

Mehr

Einführung Datentypen Verzweigung Schleifen Funktionen Dynamische Datenstrukturen. Java Crashkurs. Kim-Manuel Klein (kmk@informatik.uni-kiel.

Einführung Datentypen Verzweigung Schleifen Funktionen Dynamische Datenstrukturen. Java Crashkurs. Kim-Manuel Klein (kmk@informatik.uni-kiel. Java Crashkurs Kim-Manuel Klein (kmk@informatik.uni-kiel.de) May 7, 2015 Quellen und Editoren Internet Tutorial: z.b. http://www.java-tutorial.org Editoren Normaler Texteditor (Gedit, Scite oder ähnliche)

Mehr

DYNAMISCHE SEITEN. Warum Scriptsprachen? Stand: 11.04.2005. CF Carola Fichtner Web-Consulting http://www.carola-fichtner.de

DYNAMISCHE SEITEN. Warum Scriptsprachen? Stand: 11.04.2005. CF Carola Fichtner Web-Consulting http://www.carola-fichtner.de DYNAMISCHE SEITEN Warum Scriptsprachen? Stand: 11.04.2005 CF Carola Fichtner Web-Consulting http://www.carola-fichtner.de I N H A L T 1 Warum dynamische Seiten?... 3 1.1 Einführung... 3 1.2 HTML Seiten...

Mehr

Einführung in die Programmiersprache C

Einführung in die Programmiersprache C Einführung in die Programmiersprache C Marcel Arndt arndt@ins.uni-bonn.de Institut für Numerische Simulation Universität Bonn Der Anfang Ein einfaches Programm, das Hello World! ausgibt: #include

Mehr

Technische Anleitung zur Reportgestaltung. Reportgestaltung. \SCAN(),WHILE (AKTIV)\ ( in dieser Schleife werden dann die Daten ausgegeben) \ENDSCAN\

Technische Anleitung zur Reportgestaltung. Reportgestaltung. \SCAN(),WHILE (AKTIV)\ ( in dieser Schleife werden dann die Daten ausgegeben) \ENDSCAN\ Technische Anleitung zur 1. Allgemeines Das Reporting im Calender 3 arbeitet mit Reportvorlagen im Richtextformat (RTF) Format. Dieses Format kann mit sehr vielen Editoren ( z. B. Microsoft Wordpad, Microsoft

Mehr

Brainfuck. 1 Brainfuck. 1.1 Brainfuck Geschichte und Umfeld. 1.2 Esoterische Programmiersprachen

Brainfuck. 1 Brainfuck. 1.1 Brainfuck Geschichte und Umfeld. 1.2 Esoterische Programmiersprachen Brainfuck 1 Brainfuck 1.1 Brainfuck Geschichte und Umfeld Brainfuck ist eine sogenannte esoterische Programmiersprache. Sie wurde 1993 vom Schweizer Urban Müller entworfen mit dem Ziel, eine Sprache mit

Mehr

Grundlagen von C# - 2

Grundlagen von C# - 2 Grundlagen von C# - 2 Marc Satkowski 20. November 2016 C# Kurs Gliederung 1. Arrays 2. Kontrollstrukturen 3. Verzweigungen Bedingte Verzweigung (if else) 4. Schleifen Kopfgesteuerte Schleife (while) Fußgesteuerte

Mehr

Programmieren in C. Eine Einführung in die Programmiersprache C. Prof. Dr. Nikolaus Wulff

Programmieren in C. Eine Einführung in die Programmiersprache C. Prof. Dr. Nikolaus Wulff Programmieren in C Eine Einführung in die Programmiersprache C Prof. Dr. Nikolaus Wulff Textausgabe per printf Die Funktion printf ist kein Bestandteil der C Sprache sondern gehört zur C Bibliothek. printf

Mehr

Übungen zu C++ Kapitel 1

Übungen zu C++ Kapitel 1 Übungen zu C++ Kapitel 1 Aufgabe 1 Ergänze den Text. a) Die sechs logischen Einheiten eines Computers sind Eingabe-Einheit, Ausgabe-Einheit, RAM, ALU, CPU, Plattenspeicher. b) Die Programme, welche Hochsprachenprogramme

Mehr

Objektorientierte Programmierung mit C++ Vector und List

Objektorientierte Programmierung mit C++ Vector und List Vector und List Ziel, Inhalt Wir lernen die Klassen vector und list aus der Standard-C++ Library kennen und anwenden. In einer Übung wenden wir diese Klassen an um einen Medienshop (CD s und Bücher) zu

Mehr

25 kann ohne Rest durch 5 geteilt werden! ist wahr

25 kann ohne Rest durch 5 geteilt werden! ist wahr Lehrbrief 2: Lektion 8 - C -Praxis 4-1 - 5.2 Einfache Entscheidungen mit if und die Vergleichsoperatoren Nun tauchen wir immer tiefer in die Geheimnisse von C ein und beschäftigen uns mit einem sehr wichtigen

Mehr