Pattern Movement. Technische Universität Darmstadt Seminar Informatik SS 06 Prof. Dr. Fürnkranz. Ante Zubac
|
|
- Julian Hausler
- vor 5 Jahren
- Abrufe
Transkript
1 Technische Universität Darmstadt Seminar Informatik SS 06 Prof. Dr. Fürnkranz Seminar Knowledge Engineering und Lernen in Spielen Pattern Movement Ante Zubac
2 Pattern Movement (Vordefinierte) Bewegungsmuster Kreise, Quadrate, Schleifen, etc. Vortäuschung intelligenten Verhaltens in Spielen für computer-gesteuerte Figuren Implementierung abhängig von des Spiels gerastert kontinuierlich (z.b. First-Person Shooter)
3 Beispiel: Galaga o Gegnerische Schiffe folgen Bewegungsmustern o o Abhängig von o o Typ des Schiffes Level Einfaches Beispiel o Bewegungen unabhängig von Aktionen des Spielers
4 Gliederung Pattern Movements in n in en
5
6 gerastert Spiel mit 18 x 10 Kacheln Figur kann in 8 Richtungen bewegt werden - Abbiegen 45 und 90 - benachbarte Kacheln Problem für computergesteuerte Figuren: direkter Weg von A nach B? Lösung: Bresenham s Algorithmus Splitsville
7 Kontinuierlicher Raum Physics Engine führt Bewegungen aus unter Berücksichtigung aller Faktoren Höhere Intelligenzebene Age of Empires III
8 Pattern Movement
9 Implementierung Standard-Vorgehen Control data besteht aus Bewegungsbefehlen z.b. moveforward, moveback, turnright, turnleft können als Gleitkommazahlen definiert werden Bedeutung bei r / kontinuierlicher? andere Befehle möglich fireweapon, dropbomb Pattern Arrays gewünschtes Muster wird in Arrays gespeichert jedes Feld enthält die Control Data Structure mit gewünschten Anweisungen Beispiel (vereinfacht) Pattern[0].moveForward = 5; Pattern[1].turnRight = 1; Pattern[2].moveForward = 5;
10 Game Loop Methode Taktgeber für die vordefinierten Pattern-Arrays Instruktion, die dem aktuellen Zählerstand entspricht Inkrementiert den Zähler nach jeder erfolgten Instruktion Bewegungsfolgen werden sequentiell abgearbeitet
11 Implementierung in r Bresenham s line algorithm Berechnet einen Weg von einem Startpunkt zu einem Zielpunkt Wird jetzt angewandt, um Bewegungsmuster zu erstellen Durch Verbindung mehrerer line segments Endpunkt A = Startpunkt B Beispiel: Figur bewacht ein Tor und bewegt sich ständig hin und her Z.B. Rechteck-Muster 4 line segments Jede line wird durch Bresenham-Algorithmus berechnet
12 Bresenham s Algorithmus - Vorgehensweise Finde Pixel, der näher zum Mittelpunkt M liegt Linie über oder unter M? Setze R falls Linie über M, ansonsten setze Q Iterativ weitermachen bis Endpunkt erreicht Unterschied jetzt Mehrmaliges Anwenden Line segments verbunden Endpunkt A = Startpunkt B Kontinuierliche Bewegung
13 Erstellung von Bewegungsmustern Punkte im Koordinatensystem Oben links: (0,0) BildeWegSegment (x 1, y 1, x 2,y 2 ); Anwendung des Bresenham Algorithmus Beispiel Rechteckmuster BildeWegSegment (10, 3, 18, 3); BildeWegSegment (18, 3, 18, 12); BildeWegSegment (18, 12, 10, 12); BildeWegSegment (10, 12, 10, 3); NormalizePattern();
14 Wiederverwendung von Mustern Der errechnete Weg wird in 2 Arrays abgespeichert pathrow[i] pathcol[i] Beispiel Rechteckmuster pathrow[0] = 10 pathcol[0] = 3 NormalizePattern(); Muster wird in relativen statt absoluten Koordinaten ausgedrückt Subtraktion Wegkoordinaten - Startkoordinaten Startpunkt (0,0) Muster kann jetzt für andere Startpunkte wiederverwendet werden durch Addition
15 Bewegungen - Einflussfaktoren Einfache Bewegungsmuster zu statisch und vorhersehbar Computer-gesteuerte Figur reagiert auf Spielerbewegungen verlässt das Bewegungsmuster wenn Spieler zu nahe kommt Wird in attacking oder chasing modus versetzt Zufallsfaktoren bei komplexeren Mustern Figur kommt an eine Kreuzung Auswahl des Weges zufallsabhängig
16 Zufallsfaktoren - Umsetzung Erstellen einer pattern matrix 2-dimensionales Array Elemente entweder 0 oder 1 Computerfigur darf nur auf Positionen mit 1 (dunkelgrau) Bresenham (modifiziert) setzt die Punkte entlang des Weges =1 Mögliche Wege possrowpath[], posscolpath[] Überprüfung der (8) benachbarten Kacheln Zufällige Auswahl einer Richtung Problem: hin-und-her Bewegungen vermeiden
17 Implementierung in er Physically Simulated Environments kontinuierlicher Raum Methoden des n Modells unangemessen fertige, starre Muster nutzen Möglichkeiten einer en kaum aus Höhere Intelligenzebene Let the physics take control of movement Physics Engine hat letztendlich die Kontrolle über das Objekt führt die Anweisungen aus Control Forces werden an Physics Engine übergeben Resultierendes Verhalten abhängig von allen Inputs z.b. Wenderadius ist bei höherer Geschwindigkeit größer
18 Pattern Movement Umsetzung Gerastertes Modell einfache Anweisungen wie moveforward, turnleft u.s.w. werden schrittweise ausgeführt Physikalisch : andere Herangehensweise Anweisungen werden über einen Zeitraum ausgeführt Game Loop funktioniert nicht als Taktgeber diese Informationen sind in den Pattern Arrays enthalten Übergabe an Physics Engine führt Befehle aus
19 Pattern Movement Codierung Control Data Structure Beispiel boolean thrusteractive; Aktivierung des Antriebs double desireddistance; wie weit soll sich das Objekt bewegen? boolean limitpositionchange; zum von zurückgelegter und gewünschter Strecke (Bedingung für Abbruch) Pattern Arrays jedes Element enthält die gewünschten pattern instructions gemäß der Control Data Structure nächstes Element (Befehlsmenge) wird aufgegriffen wenn Bedingungen erfüllt Ausführung über einen Zeitraum
20 Pattern Movement Funktionsweise des Algorithmus I Computer wendet erste Befehlsmenge auf das entsprechende Objekt an Physics Engine führt Instruktionen solange aus, bis die Bedingungen in der Befehlsmenge erfüllt sind anschließend nächste Befehlsmenge arbeitet mit relativen Werten
21 Pattern Movement Funktionsweise des Algorithmus II Algorithmus verwendet relative Veränderungen Position Blickrichtung Veränderungen müssen nach Ausführung einer Befehlsmenge in die nächste auszuführende Befehlsmenge übertragen werden Z.B. Speicherung zweier Vektoren, die die Pos. und Blickrichtung eines Objektes enthalten Update jedes Mal wenn eine neue Befehlsmenge geholt wird
22 Ausführung der Bewegungsmuster Beim ersten Starten des Programms Initialisiere Pattern Anfangspositionen und Anfangs-Blickrichtung der Figuren CurrentControlID = 0; Index des aktuellen Elementes im Pattern Array Änderungen auf 0 setzen Position Blickrichtung
23 Ausführung der Bewegungsmuster Funktion DoPattern führt all diese Instruktionen aus Übergabe-Parameter Pointer zu Pattern Array Größe des Arrays gibt einen boolean Wert aus True: das Pattern Array ist noch nicht durchgelaufen False: das Pattern Array wurde vollständig durchlaufen DoPattern wird ständig während der simulation loop aufgerufen um die Steuerungsbefehle in den Mustern auszuführen um das Array zu durchlaufen um das aktuelle Array abzubrechen und ein anderes zu initialisieren Abbruchbedingungen vielfältig, je nach Spiel
24 DoPattern - Teilfunktionen Überprüfungen gewünschte Position / Blickrichtung erreicht? gehe zu nächster Menge von control instructions Berechnungen der Veränderungen der Blickrichtung seit dem Zeitpunkt, als aktuelle Anweisungen initialisiert wurden der Veränderungen der Position seit dem Zeitpunkt, als aktuelle Anweisungen initialisiert wurden Bestimmt Faktoren, die die Steuerung / Bewegung des Objektes betreffen Physikalische Simulation Z.B. Minimale Steuerungskraft = 0.05 Abbremsen des Objektes nicht abrupt Overshooting
25 Gerastert Phys. Inputwerte absolut relativ Ausführung Bewegungen step-by-step (Game Loop) best. Zeitraum Bewegungen diskret stetig Control Data einfache Anweisungen Berücksichtigung Bewegungsdauer Einschränkung keine Physikalisches Modell
26 Quellenangaben Dave C. Pottinger: Coordinated Unit Movement Game Developer Magazine, January vement_01.htm Craig W. Reynolds: Steering Behaviours for Autonomous Characters Game Developers Conference, J.E. Bresenham: Algorithm for computer control of a digital plotter
27 ??? Ich beantworte gerne Ihre Fragen
Arrays. 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
PROCESSING STRUKTUR UND INPUT. Created by Michael Kirsch & Beat Rossmy
PROCESSING STRUKTUR UND INPUT Created by Michael Kirsch & Beat Rossmy INHALT 1. Rückblick 1. Processing Basics 3. Anwendung 1. random 2. 1,2,3,... Integer! 2. else 3. Boolsche Operatoren 3. float 4. Bedingungen
Basic Movements Chasing and Evading
Basic Movements Chasing and Evading AI for Game Developers Kapitel 2 Vortag Inhalt: 1) Aufgaben eines KI-Systems 2) Predator/Prey behaviour 1) Notwendigkeit 2) Mögliche Verhaltensweisen 3) Ablauf und Ziele
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
Staubsauger-Roboter. Als Vorlage dienen dir drei Klassen: RECHTECK Damit kannst du die Wände des Raums darstellen.
Projekt: Staubsauger-Roboter Immer beliebter werden die kleinen automatischen Haushaltshilfen. Du sollst nun einen Staubsauger-Roboter programmieren, der gesteuert von einer künstlichen Intelligenz (KI)
PROCESSING EINE ZUSAMMENFASSUNG. Created by Michael Kirsch & Beat Rossmy
PROCESSING EINE ZUSAMMENFASSUNG Created by Michael Kirsch & Beat Rossmy INHALT 1. Typen und Operatoren 1. Datentypen 3. Klassen und Objekte 1. Klassen und Objekte 2. Operatoren 2. Konstruktor 3. Typkonversion
Computeranwendung und Programmierung (CuP)
Computeranwendung und Programmierung (CuP) http://infotech.unileoben.ac.at/lehre/cup Der Debugger Mit Hilfe des Debuggers kann der Programmablauf schrittweise verfolgt werden. Dabei können auch Variableninhalte
Die Rasterbildtechnik
Die Rasterbildtechnik Anfänge der Computergraphik: Vektordisplays Oliver Deussen Grundlagen der Rastergraphik 1 Vorteile von Vektordisplays: - geringer Speicheraufwand (Display-Liste statt Pixelfeld) -
Organisatorisches. Folien (u.a.) auf der Lva-Homepage Skriptum über MU Online
Organisatorisches Folien (u.a.) auf der Lva-Homepage Skriptum über MU Online Nächste Woche VO und UE am Dienstag, den 30.10.! UE im CR IL/IT Wissensüberprüfung am Zettel 25.10.2018 IT I - VO 3 1 Organisatorisches
Created by Michael Kirsch & Beat Rossmy
PROCESSING EINE EINFÜHRUNG IN DIE INFORMATIK Created by Michael Kirsch & Beat Rossmy INHALT 1. Sto der Vorlesung 1. Processing Basics 2. Übung 1. Aufgabe 1 2. Strings & Arrays 2. Aufgabe 1-A 3. Klassen
Aufgaben zu JavaKara: Arrays
Aufgaben zu JavaKara: Arrays Kleeblattregen Schreiben Sie ein Programm, das fünfzehn Kleeblätter an zufälligen Koordinaten in der Welt platziert. Es sollen fünfzehn Kleeblätter platziert werden, auch wenn
Organisatorisches. Folien (u.a.) gibt's auf der Lva-Homepage zum Download
Organisatorisches Folien (u.a.) gibt's auf der Lva-Homepage zum Download Diesen Mi erstes Tutorium (15-17) Ab nächster Woche montags 10-12 (jeweils im Computerraum) 17.10.2017 IT I - VO 3 1 Organisatorisches
Martin 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 Welche Arten von Anweisungen gibt es? Anweisungen
Die Formel für die Standardabweichung lautet (ohne die Wurzel haben wir die Varianz):
Mittelwert und Standardabweichung Klasse: StandardDeviation Schreiben Sie ein Programm StandardDeviation, das von den zufällig erzeugten Werten eines Arrays beliebiger Größe den Mittelwert und die Standardabweichung
Aufgabenblatt 3. Kompetenzstufe 2. Allgemeine Informationen zum Aufgabenblatt:
Aufgabenblatt 3 Kompetenzstufe 2 Allgemeine Informationen zum Aufgabenblatt: Die Abgabe erfolgt in TUWEL. Bitte laden Sie Ihr IntelliJ-Projekt bis spätestens Freitag, 15.12.2017 13:00 Uhr in TUWEL hoch.
Spieleentwicklung. Diane Hanke, Okan Danyeli & Toni Wirth
Spieleentwicklung Diane Hanke, Okan Danyeli & Toni Wirth Organisatorisches Welche Vorkenntnisse sind von Vorteil? Java Crashkurs Oder: ALP2 (Objektorientierte Programmierung) Oder: C# Kenntnisse/vergleichbare
Universität München, Hans-Peter Kriegel und Thomas Seidl Informatik II a[0] a[1] a[2] a[3] a[n 1]
Universität München, Hans-Peter Kriegel und Thomas Seidl Informatik II -108 Kapitel 5: Arrays Einführung Ein Array ist eine Reihung gleichartiger Objekte. a: a[0] a[1] a[2] a[3] a[n 1] Bezeichner a steht
Advanced Movements. Manuel Ladebeck
Advanced Movements Flocking Manuel Ladebeck 16.05.2005 Inhalt 1. Was ist Flocking? 2. Classic (Basic) Flocking 3. Obstacle Avoidance 4. Follow the leader 5. Demo 6. Anmerkungen/Ausblick 7. Quellen Was
1 Aufgaben 1.1 Objektorientiert: ("extended-hamster") Sammel-Hamster
1 Aufgaben 1.1 Objektorientiert: ("extended-hamster") Sammel-Hamster Aufgabe: Bearbeitungszeit: ca. 1/4 Std) Schreiben Sie ein "objektorientiertes" Programm ("CuB_05_1") für das Sammeln der Körner. Aufgabenbeschreibung:
Java programmieren mit JavaKara. Eine Zusammenfassung in Beispielen
Java programmieren mit JavaKara Eine Zusammenfassung in Beispielen Kleeblätter in einer Zeile zählen @Override public void mymainprogram() { int anzahlkleeblaetter = 0; for (int x = 0; x < world.getsizex();
Gerasterte Linien. y n y i y(x i ) x n. x i. Nord. Ost. Prof. Dr. Aris Christidis
Nord y n y i y(x i ) y 0 m x 0 x i x n Ost Folgepixel: y(x ) = y(x +1) = m. (x +1 x ) + y (n+1) Punkte einer gerasterter Geraden zw. (x 0,y 0 ) u. (x n,y n ) hier verwendete Notation: x i : Abszisse des
Algorithmen 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
Kapitel 10. Komplexität von Algorithmen und Sortieralgorithmen
Kapitel 10 Komplexität von Algorithmen und Sortieralgorithmen Arrays 1 Ziele Komplexität von Algorithmen bestimmen können (in Bezug auf Laufzeit und auf Speicherplatzbedarf) Sortieralgorithmen kennenlernen:
Algorithmen 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
Reihungen. Prof. Dr. Christian Böhm. In Zusammenarbeit mit Gefei Zhang. WS 07/08
Reihungen Prof. Dr. Christian Böhm In Zusammenarbeit mit Gefei Zhang http://www.dbs.ifi.lmu.de/lehre/nfinfosw WS 07/08 2 Ziele Die Datenstruktur der Reihungen verstehen: mathematisch und im Speicher Grundlegende
Algorithmen und Datenstrukturen SS Übungsblatt 1: Grundlagen
Ludwig-Maximilians-Universität München München, 16.04.2018 Institut für Informatik Prof. Dr. Thomas Seidl Anna Beer, Florian Richter Algorithmen und Datenstrukturen SS 2018 Übungsblatt 1: Grundlagen Tutorien:
Gerasterte Linien. y n y i y(x i ) x n. x i. Nord. Ost. Prof. Dr. Aris Christidis SS 2017
Nord y n y i y(x i ) y 0 m x 0 x i x n Ost Folgepixel: y(x ) = y(x +1) = m. (x +1 x ) + y (n+1) Punkte einer gerasterten Geraden zw. (x 0,y 0 ) u. (x n,y n ) hier verwendete Notation: x i : Abszisse des
Brückenkurs Programmieren
Brückenkurs Programmieren Verzweigungen, Operatoren, Schleifen, Arrays Christopher Schölzel Technische Hochschule Mittelhessen 01.10.2013 Christopher Schölzel (THM) Brückenkurs Programmieren 01.10.2013
Einführung in die Programmierung für NF. Übung
Einführung in die Programmierung für NF Übung 01 23.10.2013 Inhalt Übungen und Übungsblätter Uniworx und Abgabeformate Plagiarismus Algorithmen und Pseudocode Variablen und Methoden Boolsche Operatoren
Praxis der Programmierung
Arrays, Pointerarithmetik, Konstanten, Makros Institut für Informatik und Computational Science Henning Bordihn Einige Folien gehen auf A. Terzibaschian zurück. 1 Arrays (Felder/Vektoren) 2 Arrays: Motivation
Bei for-schleifen muss man nur immer bedenken, dass die letzte Anweisung immer erst nach der Ausführung der restlichen Anweisungen der Schleife
303 Bei for-schleifen muss man nur immer bedenken, dass die letzte Anweisung immer erst nach der Ausführung der restlichen Anweisungen der Schleife durchgeführt wird. 304 305 for-schleifen sind in Aktivitätsdiagrammen
Spiegelgasse 1 CH 4051 Basel. Vorführung der laufenden Programme im Tutorium Woche 3 (Abgabe ).
UNIVERSITÄT BASEL Prof. Dr. Thomas Vetter Departement Mathematik und Informatik Spiegelgasse 1 CH 4051 Basel Patrick Kahr (patrick.kahr@unibas.ch) Clemens Büchner (clemens.buechner@unibas.ch) Computer
Parallele Algorithmen in der Bildverarbeitung
Seminar über Algorithmen - SoSe 2009 Parallele Algorithmen in der Bildverarbeitung von Christopher Keiner 1 Allgemeines 1.1 Einleitung Parallele Algorithmen gewinnen immer stärker an Bedeutung. Es existieren
Reihungen. Martin Wirsing. in Zusammenarbeit mit Michael Barth, Fabian Birzele und Gefei Zhang
Reihungen Martin Wirsing in Zusammenarbeit mit Michael Barth, Fabian Birzele und Gefei Zhang http://www.pst.informatik.uni-muenchen.de/lehre/ws0506/infoeinf/ WS 05/06 2 Ziele Die Datenstruktur der Reihungen
Gliederung. Gliederung (cont.) Gliederung (cont.)
- Gliederung Jianwei Zhang zhang@informatik.uni-hamburg.de Fakultät für Mathematik, Informatik und Naturwissenschaften Technische Aspekte Multimodaler Systeme 11. Mai 2010 Allgemeine Informationen Einführung
PROGRAMMIEREN. Kapitel 1 Erste Schritte
PROGRAMMIEREN Kapitel 1 Erste Schritte Ziele von Heute 2 Greenfoot kennen lernen Kara Szenario verstehen Ausführen und schreiben von Programmen Greenfoot Oberfläche Welt Klassendiagramm 3 Greenfoot-Steuerung
Übungsstunde 3. Einführung in die Programmierung
Übungsstunde 3 Einführung in die Programmierung Nachbesprechung Übung 3 Aufgabe 1: Folgen und Reihen import java.util.scanner; public class Reihe { public static void main(string[] args) { Scanner scanner
ADS: Algorithmen und Datenstrukturen
ADS: Algorithmen und Datenstrukturen Teil VII Peter F. Stadler & Konstantin Klemm Bioinformatics Group, Dept. of Computer Science & Interdisciplinary Center for Bioinformatics, University of Leipzig 08.
Einführung in die Programmierung I. 2.4 Felder. Thomas R. Gross. Department Informatik ETH Zürich
252-0027 Einführung in die Programmierung I 2.4 Felder Thomas R. Gross Department Informatik ETH Zürich Uebersicht 2.4 Felder (Vektoren, "array"s) 2.5 Verschachtelte Schleifen 2.6 "if" Anweisungen 2.7
Programmierkonzepte in
Programmierkonzepte in Inhaltsverzeichnis Programmierkonzept Seite Anweisung... 3 Sequenz... 3 Schleife... 4 Bedingung... 5 Ereignis... 6 Unterprogramm... 7 Parameter... 8 Variable... 9 Boolesche Algebra
Gliederung: 1) Einleitung 2) Oberflächenvergleich 3) Objekterkennung
Using Spin Images for Efficient Object Recogition in Cluttered 3D Scenes (Effiziente Objekterkennung von ungeordneten 3D Szenen mithilfe von Spin Images) Gliederung: 1) Einleitung 2) Oberflächenvergleich
Programmierkonzepte in
Programmierkonzepte in Inhaltsverzeichnis Programmierkonzept Seite Anweisung 3 Sequenz 3 Schleife 4 Bedingung 5 Ereignis 6 Unterprogramm 7 Parameter 8 Variable 9 Boolesche Algebra I 10 Boolesche Algebra
Aufgabenblatt 4. Kompetenzstufe 1. Allgemeine Informationen zum Aufgabenblatt:
Aufgabenblatt 4 Kompetenzstufe 1 Allgemeine Informationen zum Aufgabenblatt: Die Abgabe erfolgt in TUWEL. Bitte laden Sie Ihr IntelliJ-Projekt bis spätestens Freitag, 08.12.2017 13:00 Uhr in TUWEL hoch.
zu große Programme (Bildschirmseite!) zerlegen in (weitgehend) unabhängige Einheiten: Unterprogramme
Bisher Datentypen: einfach Zahlen, Wahrheitswerte, Zeichenketten zusammengesetzt Arrays (Felder) zur Verwaltung mehrerer zusammengehörender Daten desselben Datentypes eindimensional, mehrdimensional, Array-Grenzen
Zweiter 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.
Javakurs 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
Geometrie. Hallo Welt! für Fortgeschrittene Simon Kuhnle. 11. Juli
Geometrie Hallo Welt! für Fortgeschrittene 2008 Simon Kuhnle sisikuhn@stud.informatik.uni-erlangen.de 11. Juli 2008 Simon Kuhnle Geometrie 11.07.2008 1 / 33 Übersicht Übersicht 1 Grundlagen 2 ccw 3 Konvexe
float: Fließkommazahl nach IEEE 754 Standard mit 32 bit
Primitive Datentypen Fließkommazahlen float: Fließkommazahl nach IEEE 754 Standard mit 32 bit Vorzeichen Exponent 8 bit Mantisse 23 bit double: Fließkommazahl nach IEEE 754 Standard mit 64 bit Vorzeichen
Institut für Programmierung und Reaktive Systeme 20. November Programmieren I. 4. Übungsblatt
Technische Universität Braunschweig Dr. Werner Struckmann Institut für Programmierung und Reaktive Systeme 20. November 2017 Programmieren I 4. Übungsblatt Hinweis: Auf diesem und den folgenden Übungsblättern
Algorithmen und ihre Programmierung
Veranstaltung Pr.-Nr.: 10 10 V Wirtschaftsinformatik für Wirtschaftwissenschaftler Algorithmen und ihre Programmierung -Teil 1 - Dr. Chris Bizer WS 007/008 Einführung Definition: Algorithmus Ein Algorithmus
Tag 3 Repetitorium Informatik (Java)
Tag 3 Repetitorium Informatik (Java) Dozent: Marius Kamp Lehrstuhl für Informatik 2 (Programmiersysteme) Friedrich-Alexander-Universität Erlangen-Nürnberg Wintersemester 2017/2018 Übersicht Typkonvertierung
Kontrollstrukturen -- Schleifen und Wiederholungen
Kontrollstrukturen -- Schleifen und Wiederholungen Informatik für Elektrotechnik und Informationstechnik Benedict Reuschling benedict.reuschling@h-da.de Hochschule Darmstadt Fachbereich Informatik WS 2013/14
Anwendung Kamel-Simulation
Anwendung Kamel-Simulation (Nach einer Idee von Christian Wendl) Normale Kamele haben die Eigenschaften Alter, Gewicht, Name und Darstellung (für die Darstellung wählen wir ein WECHELSBILD). Durch Züchtung
Algorithmen implementieren. Implementieren von Algorithmen
Algorithmen implementieren Implementieren von Algorithmen Um Algorithmen ablaufen zu lassen, muss man sie als Programm darstellen (d.h. implementieren) Wie stellt man die algorithmischen Strukturelemente
Einstieg 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,
Exkurs: Fotorealismus, Echtzeit, Arithmetik
Ziel vieler CG-Anwendungen: Fotorealismus in Echtzeit; wichtiges Mittel: stetige Helligkeits- / Farbübergänge z.b.: Bilder: www.glossar.de/glossar/z_shading.htm Meistangewandte math. Methode: lineare Interpolation
Elementare Konzepte von
Elementare Konzepte von Programmiersprachen Teil 2: Anweisungen (Statements) Kapitel 6.3 bis 6.7 in Küchlin/Weber: Einführung in die Informatik Anweisungen (statements) in Java Berechnung (expression statement)
Java - Schleifen. Bedingung. wiederhole. Anweisung Anweisung Anweisung. Leibniz Universität IT Services Anja Aue
Java - Schleifen Bedingung wiederhole ja Anweisung Anweisung Anweisung Leibniz Universität IT Services Anja Aue Anweisung int zahl; zahl = 2; zahl = zahl * 10; int zahl; ; Jede Anweisung endet mit einem
Visuelle Kryptographie. Anwendung von Zufallszahlen
Visuelle Kryptographie Anwendung von Zufallszahlen Verschlüsseln eines Bildes Wir wollen ein Bild an Alice und Bob schicken, so dass Verschlüsseln eines Bildes Wir wollen ein Bild an Alice und Bob schicken,
JAVA für Nichtinformatiker - Probeklausur -
JAVA für Nichtinformatiker - Probeklausur - Die folgenden Aufgaben sollten in 150 Minuten bearbeitet werden. Aufgabe 1: Erläutere kurz die Bedeutung der folgenden Java-Schlüsselwörter und gib Sie jeweils
Einstieg in die Informatik mit Java
1 / 24 Einstieg in die Informatik mit Java Variablenarten Gerd Bohlender Institut für Angewandte und Numerische Mathematik Gliederung 2 / 24 1 Lokale Variablen 2 Lokale Variablen in Blocks 3 Lokale Variablen
Arbeitsblatt 6: Programmierung geometrischer Figuren
Arbeitsblatt 6: Programmierung geometrischer Figuren Die Karten, auf denen die Lärmmessungen dargestellt werden, bestehen aus einer Vielzahl geometrischer Formen. Diese geometrischen Formen ergeben zusammen
Einfü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
Fachhochschule Südwestfalen Wir geben Impulse. Kontrollstrukturen und Schleifen in Octave
Fachhochschule Südwestfalen Wir geben Impulse Kontrollstrukturen und Schleifen in Octave Einführung Inhalt m-files Script-Files Function-Files Ein- Ausgabe von Variablen oder Ergebnissen For-Schleife While-Schleife
Bru ckenkurs Programmieren
Bru ckenkurs Programmieren Tag 2: Animationen und Schleifen Jakob Czekansky Technische Hochschule Mittelhessen 28. Ma rz 2017 Inhalt Animationen Bewegungen Mausposition abfragen Schleifen While For Ausblick:
11. Funktionale Konzepte in Java
Funktionale vs. Imperative Programmierung 11. Funktionale Konzepte in Java Funktionale Programmierung, Lambda Ausdrücke, Datenströme, Pipelines Imperative Konzepte Ausführen von Anweisungen Zustand (z.b.
EIN ERSTES PROGRAMM FÜR DEN EV3. LMS IDE (Blocksprache) INHALT
EIN ERSTES PROGRAMM FÜR INHALT Dieses Tutorial zeigt einen funktionierender Line-Follower Code. Weiterhin wird gezeigt wie Programme auf den EV3 übertragen werden können. Auch wird die Funktionsweise der
Umsetzung einer Klassenkarte in einer Programmiersprache
Klassen in Java Umsetzung einer Klassenkarte in einer Programmiersprache Objektorientierte Programme bestehen (nur) aus Klassendefinitionen In Klassendefinitionen wird die Struktur der Objekte festgelegt,
Klausur zur Lehrveranstaltung. Technische Informatik für Ingenieure WS 2008/09
Klausur zur Lehrveranstaltung Technische Informatik für Ingenieure WS 2008/09 23. Februar 2009 Aufgabe 1 2 3 4 5 5 5 Summe mögliche Punkte 10 15 25 20 20 15 15 120 erreichte Punkte Note: Hinweise: Diese
Bisher wurden nur Prozeduren behandelt, in denen eine feste Abfolge von Befehlen durchzuführen war. Mit den Befehlswörtern
Lektion 8: Bedingungen Bisher wurden nur Prozeduren behandelt, in denen eine feste Abfolge von Befehlen durchzuführen war. Mit den Befehlswörtern if { Bedingung } [ { Befehlsfolge } ] ifelse { Bedingung
Algorithmen II Vorlesung am
Algorithmen II Vorlesung am 03.12.2013 Algorithmische Geometrie: Schnitte von Strecken Sweep-Line INSTITUT FÜR THEORETISCHE INFORMATIK PROF. DR. DOROTHEA WAGNER KIT Universität des Landes Baden-Württemberg
Algorithmen und Datenstrukturen II
Algorithmen und Datenstrukturen II D. Rösner Institut für Wissens- und Sprachverarbeitung Fakultät für Informatik Otto-von-Guericke Universität Magdeburg Sommer 2009, 26. März 2009, c 2009 D.Rösner D.
Algorithmische Bioinformatik 1
Algorithmische Bioinformatik 1 Dr. Hanjo Täubig Lehrstuhl für Effiziente Algorithmen (Prof. Dr. Ernst W. Mayr) Institut für Informatik Technische Universität München Sommersemester 2009 Übersicht Algorithmen
Felder (Arrays) und Zeiger (Pointers) - Teil I
Felder (Arrays) und Zeiger (Pointers) - Teil I Feldtypen, Sieb des Eratosthenes, Iteration, Zeigertypen, Zeigerarithmetik, dynamische Speicherverwaltung Felder: Motivation n Wir können jetzt über Zahlen
Projekt: Staubsauger-Roboter
Projekt: Staubsauger-Roboter Ziel: Programmiere einen Staubsauger-Roboter, der von einer einfachen künstlichen Intelligenz (KI) gesteuert wird und dabei den Boden eines Raumes reinigt. Hinweise: Die Anleitung
Informatik 1 ( ) D-MAVT F2010. Schleifen, Felder. Yves Brise Übungsstunde 5
Informatik 1 (251-0832-00) D-MAVT F2010 Schleifen, Felder Nachbesprechung Blatt 3 Aufgabe 1 ASCII... A > a Vorsicht: Lösen Sie sich von intuitiven Schlussfolgerungen. A ist nicht grösser als a, denn in
Probeklausur Name: (c)
Einführung in die Praktische Informatik 30.1.2013 Probeklausur Name: Teil I: Datentypen (20 Punkte) Lösen sie die Probleme, indem sie die korrekten Lösungen ankreuzen bzw. in die vorgesehenen Freiräume
Einführung in den Einsatz von Objekt-Orientierung mit C++ I
Einführung in den Einsatz von Objekt-Orientierung mit C++ I ADV-Seminar Leiter: Mag. Michael Hahsler Syntax von C++ Grundlagen Übersetzung Formale Syntaxüberprüfung Ausgabe/Eingabe Funktion main() Variablen
UE Algorithmen und Datenstrukturen 1 UE Praktische Informatik 1. Übung 3
UE Algorithmen und Datenstrukturen 1 UE Praktische Informatik 1 Übung 3 Algorithmen mit Gedächtnis Besonderheit Beispiele Typische Algorithmen Realisierungsvarianten Institut für Pervasive Computing Johannes
Einfache Arrays. Dr. Philipp Wendler. Zentralübung zur Vorlesung Einführung in die Informatik: Programmierung und Softwareentwicklung
Dr. Philipp Wendler Zentralübung zur Vorlesung Einführung in die Informatik: Programmierung und Softwareentwicklung WS18/19 https://www.sosy-lab.org/teaching/2018-ws-infoeinf/ Arrays: Wiederholung Ein
Informatik Hochschule Mainz Geoinformatik und Vermessung. Wiederholung. Frohes Fest und Guten Rutsch!
Wiederholung Frohes Fest und Guten Rutsch! Inhaltsverzeichnis Programme kompilieren...1 Eclipse bedienen...2 Rechnen mit Literalen...2 Rechnen mit Variablen...2 Sequenzielle Anweisungen...3 Selektive Anweisungen...3
Effiziente Algorithmen 2
Effiziente Algorithmen 2 Dr. Hanjo Täubig Lehrstuhl für Effiziente Algorithmen (Prof. Dr. Ernst W. Mayr) Institut für Informatik Technische Universität München Sommersemester 2009 Übersicht Algorithmen
Wertebereich und Genauigkeit der Zahlendarstellung
Wertebereich und Genauigkeit der Zahlendarstellung Sowohl F als auch C kennen bei ganzen und Floating Point-Zahlen Datentypen verschiedener Genauigkeit. Bei ganzen Zahlen, die stets exakt dargestellt werden
Felder (Arrays) und Zeiger (Pointers) - Teil I
Felder (Arrays) und Zeiger (Pointers) - Teil I Felder: Motivation Wir können jetzt über Zahlen iterieren: for (int i=0; i
int i=1; //Integerzahl i anlegen und mit 1 initialisieren float wert; //Floatzahl deklarieren scanf( %f,&wert); //Wert über Tastatur eingeben
Datenfelder (Array) Seite 1 von 7 Bei den bisherigen Programmen wurde für jede verwendete Variable (oder für jedes Objekt) ein eigener Typ und Name vergeben. Die Initialisierung, d.h. die Belegung mit
SOA verspielt - rekursive BPEL Prozesse
SOA verspielt - rekursive BPEL Prozesse Guido Neander MT AG Ratingen Schlüsselworte SOA, BPEL, rekursive Programmierung, Development, Deployment Einleitung Bei komplexen Problemstellungen (z. B. Aufgaben
Felder (Arrays) und Zeiger (Pointers) - Teil I
Felder (Arrays) und Zeiger (Pointers) - Teil I Feldtypen, Sieb des Eratosthenes, Iteration, Zeigertypen, Zeigerarithmetik, dynamische Speicherverwaltung Felder: Motivation Wir können jetzt über Zahlen
Aufgabenblatt 6. Kompetenzstufe 1. Allgemeine Informationen zum Aufgabenblatt:
Aufgabenblatt 6 Kompetenzstufe 1 Allgemeine Informationen zum Aufgabenblatt: Die Abgabe erfolgt in TUWEL. Bitte laden Sie Ihr IntelliJ-Projekt bis spätestens Freitag, 12.01.2018 13:00 Uhr in TUWEL hoch.
Programmierstarthilfe SS 2010 Fakultät für Ingenieurwissenschaften und Informatik 6. Blatt Für die Woche vom bis zum 4.6.
Programmierstarthilfe SS 2010 Fakultät für Ingenieurwissenschaften und Informatik 6. Blatt Für die Woche vom 31.5. bis zum 4.6.2010 (KW 22) Organisatorisches Diese Woche führen wir Methoden ein und behandeln
einlesen n > 0? Ausgabe Negative Zahl
1 Lösungen Kapitel 1 Aufgabe 1.1: Nassi-Shneiderman-Diagramm quadratzahlen Vervollständigen Sie das unten angegebene Nassi-Shneiderman-Diagramm für ein Programm, welches in einer (äußeren) Schleife Integer-Zahlen
Einführung in die Programmierung für NF MI. Übung 04
Einführung in die Programmierung für NF MI Übung 04 Inhalt Arrays Einführung in Objekte Einführung in die Programmierung für NF Übung 04 2 Arrays Arrays repräsentieren Reihungen von Objekten, z.b. Variablen
Kapitel 1: Die ersten Schritte 1
Kapitel 1: Die ersten Schritte Thema: Programmieren Seite: 1 Kapitel 1: Die ersten Schritte 1 Starten Sie Eclipse. Importieren Sie das Eclipse-Projekt scenarios-chapter-1. Gehen Sie in den Unterordner
Filterprogrammierung in Gimp
Rüdiger Timpe Alexander Bertschik Filterprogrammierung in Gimp Ein Vortrag im Rahmen des Seminars Manipulation und Verarbeitung digitaler Bilder Inhalt Aufgabenstellung und Motivation...3 Auswahl der Filter...3
Algorithmen 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
Probeklausur Java Einführung in die Informatik. Wintersemester 2016/2017
Fakultät IV NI & CV Java Einführung in die Informatik Wintersemester 2016/2017 Hinweis: Diese ist eine kleine Aufgabensammlung, die etwa dem Schwierigkeitsgrad der schriftlichen Prüfung des Moduls Einführung
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
Übung Algorithmen und Datenstrukturen
Übung Algorithmen und Datenstrukturen Sommersemester 2017 Marc Bux, Humboldt-Universität zu Berlin Agenda 1. (Sortierte) Listen 2. Stacks & Queues 3. Datenstrukturen 4. Rekursion und vollständige Induktion
This image cannot currently be displayed. Java à Matlab. bereitgestellt von Dr. Lukas Faessler 12/4/17
This image cannot currently be displayed. Java à Matlab bereitgestellt von Dr. Lukas Faessler 12/4/17 Allgemeine Programmierkonzepte kommen in verschiedenen Programmiersprachen vor sind langlebig Sprachen