Algorithmen und Datenstrukturen 01



Ähnliche Dokumente
Algorithmen und Datenstrukturen 01

AuD-Tafelübung T-B5b

Einstieg in die Informatik mit Java

JAVA BASICS. 2. Primitive Datentypen. 1. Warum Java? a) Boolean (logische Werte wahr & falsch)

Vorkurs Informatik WiSe 16/17

Programmiervorkurs Einführung in Java Tag 1

Institut für Programmierung und Reaktive Systeme. Java 2. Markus Reschke

Ein erstes Java-Programm

Institut für Programmierung und Reaktive Systeme. Java 3. Markus Reschke

Vorkurs Informatik WiSe 17/18

Vorkurs Informatik WiSe 16/17

Java I Vorlesung Imperatives Programmieren

Aufgabe 1.1. Wählen Sie jene Variablendeklarationen mit Initialisierungen aus, die in Java hinsichtlich der Typen korrekt sind:

Repetitorium Programmieren I + II

JAVA BASICS. 2. Primitive Datentypen. 1. Warum Java? a) Boolean (logische Werte wahr & falsch)

3. Java - Sprachkonstrukte I

1. Erste Schritte 2. Einfache Datentypen 3. Anweisungen und Kontrollstrukturen 4. Verifikation 5. Reihungen (Arrays)

Martin Unold INFORMATIK. Geoinformatik und Vermessung

Einführung Datentypen Verzweigung Schleifen. Java Crashkurs. Kim-Manuel Klein May 4, 2015

Einführung in die Programmierung

3. Java - Sprachkonstrukte I

Hello World. Javakurs 2014, 1. Vorlesung. Sebastian Schuck. basierend auf der Vorlage von Arne Kappen. wiki.freitagsrunde.org. 3.

Einführung in die Programmierung WS 2009/10. Übungsblatt 5: Typen, Variablen und einfache Methoden in Java

Java - Programmierung - Prozedurale Programmierung 1

JAVA BASICS. 2. Primitive Datentypen. 1. Warum Java? a) Boolean (logische Werte wahr & falsch)

Gedächtnis. Während der Abarbeitung eines Algorithmus müssen sich Dinge gemerkt werden bzw. auf Dingen wird gerechnet. Zugriff.

Javakurs FSS Lehrstuhl Stuckenschmidt. Tag 1 - Variablen und Kontrollstrukturen

Algorithmen und Datenstrukturen 02

Einführung Datentypen Verzweigung Schleifen Funktionen Dynamische Datenstrukturen. Java Crashkurs. Kim-Manuel Klein

Variablen. int Flugzeug. float. I write code Hund. String. long. Borchers: Programmierung für Alle (Java), WS 06/07 Kapitel

Kapitel 4. Programmierkurs. Datentypen. Arten von Datentypen. Wiederholung Kapitel 4. Birgit Engels, Anna Schulze WS 07/08

Welche Informatik-Kenntnisse bringen Sie mit?

Gliederung. Tutorium zur Vorlesung. Gliederung. Gliederung. 1. Gliederung der Informatik. 1. Gliederung der Informatik. 1. Gliederung der Informatik

hue12 January 24, 2017

Grunddatentypen, Ausdrücke und Variablen

Einführung in die Programmierung für NF. Algorithmen, Datentypen und Syntax

Java Einführung Klassendefinitionen

3. Java - Sprachkonstrukte I

JAVA-Datentypen und deren Wertebereich

Martin Unold INFORMATIK. Geoinformatik und Vermessung

Programmierpraktikum

Java Einführung VARIABLEN und DATENTYPEN Kapitel 2

Einführung in C. EDV1-04C-Einführung 1

EINI LW. Einführung in die Informatik für Naturwissenschaftler und Ingenieure Vorlesung 2 SWS WS 15/16

Einführung in C. Alexander Batoulis. 5. Mai Fakutltät IV Technische Universität Berlin

Informatik Vorkurs - Vorlesung 2

Werkzeuge zur Programmentwicklung

Teil 5 - Java. Programmstruktur Operatoren Schlüsselwörter Datentypen

Informatik II. Woche 15, Giuseppe Accaputo

Programmiertechnik Skalare Typen,Variablen, Zuweisungen

Arbeitsblätter für die Lehrveranstaltung OOP JAVA 1

Bru ckenkurs Programmieren

1 Bedingte Anweisungen. 2 Vergleiche und logische Operatoren. 3 Fallunterscheidungen. 4 Zeichen und Zeichenketten. 5 Schleifen.

Algorithmen und Datenstrukturen II

EINFÜHRUNG IN DIE PROGRAMMIERUNG

1. Erste Schritte 2. Einfache Datentypen 3. Anweisungen und Kontrollstrukturen 4. Verifikation 5. Reihungen (Arrays)

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

Java-Schulung Grundlagen

RO-Tutorien 3 / 6 / 12

Einstieg in die Informatik mit Java

2 Programmieren in Java I noch ohne Nachbearbeitung

Tag 3 Repetitorium Informatik (Java)

Programmierkurs Java

Übung Grundlagen der Programmierung WS 2008/09. Übung 04: Methoden. Abgabetermin: Prosabeschreibung Java-Programm.

Kapitel 2: Grundelemente der Programmierung

Primitive Datentypen

Wie entwerfe ich ein Programm?

Kontrollstrukturen: Wiederholungsanweisungen

Excel VBA. Teil Zusammenfassung! Was wir können sollten! V

Kontrollstrukturen: Wiederholungsanweisungen

Java Spickzettel von Panjutorials.de

EINI LW/WiMa. Einführung in die Informatik für Naturwissenschaftler und Ingenieure Vorlesung 2 SWS WS 14/15

Praktikum zu Einführung in die Informatik für LogWiIngs und WiMas Wintersemester 2015/16. Vorbereitende Aufgaben

Schwerpunkte. 10. Felder (Arrays) Grundprinzip von Arrays. Klassifikation von Typen in Programmiersprachen

Kapitel 3: Variablen

Selbsteinstufungstest Vorkurs Programmieren

Programmieren und Problemlösen Java-Sprachkonstrukte. Java-Sprachkonstrukte. Übung Altersberechner. Namen und Bezeichner. Namen und Bezeichner

Grundlagen der Modellierung und Programmierung, Übung

Tutoraufgabe 1 (Zweierkomplement): Lösung: Programmierung WS16/17 Lösung - Übung 2

II. Grundlagen der Programmierung. Beispiel: Merge Sort. Beispiel: Merge Sort (Forts. ) Beispiel: Merge Sort (Forts. )

Übungen zum Bioinformatik-Tutorium. Blatt 3

Grundlagen der Informatik Ergänzungen WS 2007/2008 Prof. Dr. Rainer Lütticke

EINI LogWing/WiMa. Einführung in die Informatik für Naturwissenschaftler und Ingenieure. Vorlesung 2 SWS WS 17/18

Kapitel 3 Das Typsystem von C#

Grundlagen von C# - 1

Kontrollstrukturen: Wiederholungsanweisungen

9. Java Arrays und Strings. Allokation, Referenzen, Elementzugriff, Mehrdimensionale Arrays, Strings, Stringvergleiche

Einführung in die Programmierung I. 2.4 Felder. Thomas R. Gross. Department Informatik ETH Zürich

float: Fließkommazahl nach IEEE 754 Standard mit 32 bit

Variablen. CoMa-Übung VIII TU Berlin. CoMa-Übung VIII (TU Berlin) Variablen / 15

Informatik II. Giuseppe Accaputo, Felix Friedrich, Patrick Gruntz, Tobias Klenze, Max Rossmannek, David Sidler, Thilo Weghorn FS 2017

1.3 Welche Schritte werden bei der Programmerstellung benötigt? 1.5 Was sind Variablen im Kontext der Programmierung?

Rechnerorganisation. IHS 2018/2019 H.-D. Wuttke, K. Henke

Martin Unold INFORMATIK. Geoinformatik und Vermessung

Software Entwicklung 1

Transkript:

26. April 2012

1 Organisatorisches Über mich Wichtige Links 2 Besprechung Blatt 0 Übungsablauf und Abgabesystem 3 Pseudocode Text Pseudocode Pseudocode Ablaufdiagramm 4 Datentypen & Entscheidungsgehalt Übersicht primitiver Datentypen in Java Entscheidungsgehalt H 5 Java Nützliche Codefragmente

Über mich Über mich Name: Studiengang: Informatik, 3. Semester E-Mail: stefan.sp.ploner@studium.uni-erlangen.de

Wichtige Links Wichtige Links Folien: http://wwwcip.cs.fau.de/ su75heja/ FSI-Informatik Forum: https://fsi.cs.fau.de/forum/ IRC: #faui2k12 auf irc.uni-erlangen.de AuD Übung: https://www2.cs.fau.de/aud/ EST: http://est.cs.fau.de/ Mailing List: aud@i2.cs.fau.de

Übungsablauf und Abgabesystem uebung-00.pdf

Übungsablauf und Abgabesystem Gruppenabgabe Gruppenabgaben-Code zu finden im EST jeweils gültig für ein Blatt generell geheim halten und nur dem Gruppenpartner für die Abgabe schicken Abgabevorgang nur einer der beiden Gruppenpartner lädt die Aufgabe hoch der Code kann beim Hochladen rechts in das dafür vorgesehene Feld eingefügt werden auch der Student, der die Abgabe nicht hochgeladen hat, sollte die Abgabe im EST sehen (bitte immer überprüfen!)

Text Pseudocode Durchschnittsgröße der Studenten summegroesse := 0 anzahlstudent := 0 wiederhole fuer alle besetzten Stuehle: frage nach groesse summegroesse := summegroesse + groesse anzahlstudent := anzahlstudent + 1 gebe aus summegroesse / anzahlstudent

Text Pseudocode 3 Teile des Pseudocodes: 1 Variablendeklaration (taucht auch in Schleifen auf) 2 Beschreibung der durchzuführenden Schritte 3 Ausgabe des Ergebnisses

Text Pseudocode Durchschnittsgröße getrennt nach Geschlecht summegroessew := 0 summegroessem := 0 anzahlstudentw := 0 anzahlstudentm := 0 wiederhole fuer alle besetzten Stuehle: frage nach groesse frage nach geschlecht falls geschlecht = "weiblich": summegroessew := summegroessew + groesse anzahlstudentw := anzahlstudentw + 1 sonst: summegroessem := summegroessem + groesse anzahlstudentm := anzahlstudentm + 1 gebe aus "Frauen: " + summegroessew / anzahlstudentw gebe aus "Maenner: " + summegroessem / anzahlstudentm

Text Pseudocode Gerade Zahlen in einer Zahlenreihe / Array geradezahlen := 0 wiederhole fuer alle zahlen der zahlenreihe: falls aktuellezahl gerade: geradezahlen := geradezahlen + 1 gebe aus geradezahlen

Text Pseudocode Gerade Zahlen in einer Zahlenreihe / Array Alternative Lösung, näher am Code: geradezahlen := 0 wiederhole fuer jede zahl[i] mit i von 0 bis n: falls zahl[i] modulo 2 = 0: geradezahlen := geradezahlen + 1 gebe aus geradezahlen

Pseudocode Ablaufdiagramm Elemente

Pseudocode Ablaufdiagramm Wie erstelle ich Flowcharts? Google Docs Zeichnung (Formen 3. Abschnitt) Dia OpenOffice Draw Zeichnen und einscannen Flowcharts sollten von Knoten unterscheidbar sein - danke!

Übersicht primitiver Datentypen in Java Arten primitiver Datentypen Name Größe Beschreibung boolean 1 bit Boolescher Wahrheitswert (true/false) char 16 bit Beliebiges Zeichen (UTF-16) byte 8 bit Ganzzahl (Zweierkomplement-Darstellung) short 16 bit Ganzzahl (Zweierkomplement-Darstellung) int 32 bit Ganzzahl (Zweierkomplement-Darstellung) long 64 bit Ganzzahl (Zweierkomplement-Darstellung) float 32 bit Gleitkommazahl (IEEE 754) double 64 bit Gleitkommazahl (IEEE 754)

Übersicht primitiver Datentypen in Java Implizite Typkonvertierung short smallnumber = 100; int mednumber = smallnumber; // jeweils verschiedene double pi = 3.14f; // Datentypen! byte short int long float double char Ein Wert wird automatisch in einen Datentyp mit größerem Wertebereich umgewandelt Überspringen von Zwischenstationen möglich Bei der impliziten Konvertierung von Ganzzahlen in Gleitkommazahlen ist ein Genauigkeitsverlust möglich!

Entscheidungsgehalt H Entscheidungsgehalt Entscheidungsgehalt H = log 2 n Wie viele Bits werden mindestens benötigt, um n verschiedene Werte unterscheiden / speichern zu können?

Nützliche Codefragmente Main-Funktion...vorerst zum Copy & Pasten public class ClassName { public static void main(string[] args) { // program starts here } } Dran denken: Dateiname = ClassName.java

Nützliche Codefragmente Variablen int number; // variable declaration number = 2; // assignment number = number + 2; // number is now 4 double decimalnumber = 3.14; // decimal number int[] numbers; // array declaration numbers = new int[5]; //...and initialization numbers[0] = 3; // assignment // numbers contains { 3, 0, 0, 0, 0 } at this point int[] morenumbers = { 0, 1, 5, 7 }; // alternative way // morenumbers contains { 0, 1, 5, 7 } at this point

Nützliche Codefragmente Kontrollstrukturen // <condition> can be any boolean expression if (<condition>) { // do something } else { // do something else } while (<condition>) { // repeat as long as <condition> is true }

Nützliche Codefragmente Array mit for-schleife iterieren int[] numbers = { 0, 5, 8, 12 }; for (int i = 0; i < numbers.length; i++) { // print all numbers to the console System.out.println(numbers[i]); }