Vorstellung der Aufgabe Nonogramme



Ähnliche Dokumente
Vorstellung der Aufgabe Nonogramme

/** Main-Methode erzeugt einen neuen Editor zum Testen */ public static void main(string[] args) { new Editor();

Institut für Informatik

GUI Programmierung mit JAVA Swing

Applets. Applets. Applets. Applet: Java-Programm Eingebettet in einer HTML-Seite Ausführung von einem Java-fähigen Web-Browser oder sog.

Probeklausur: Programmierung WS04/05

Oliver Brinkmann Java Swing-Applikationen & JApplets (mit NetBeans)

Prof. Dr. Oliver Haase Karl Martin Kern Achim Bitzer. Programmiertechnik GUI-Programmierung mit Swing

Objektorientiertes Programmieren. Übungsblatt 5

Rückblick Themen Erste GUI-Anwendung Praktikum. Rückblick Themen Erste GUI-Anwendung Praktikum. Rückblick Themen Erste GUI-Anwendung Praktikum

1. Registrierung. Prezi-Mail in eigener Mailbox öffnen und den LINK anklicken. florianimhof/2012. Muster Hansi

Rückblick Themen Erste GUI-Anwendung Praktikum. Rückblick Themen Erste GUI-Anwendung Praktikum. Rückblick Themen Erste GUI-Anwendung Praktikum

Dokumentation. Mindestanforderungen: Das Board

Sort n Rename. Einführung Dateien laden Dateien sortieren. Thumbnails & individuelle. Reihenfolge

NovoSales. Kurzanleitung: Angebots PDF

Projektarbeit Java. 4-Gewinnt. Berner Fachhochschule. 2004, Labor für Technische Informatik

Swing Grundlagen. Andre Eichmann

NTB Druckdatum:

Was leistet KOffice wirklich?

Bedingungen. Bedingungen. Bedingungen

Java GUI Entwicklung mit Swing

Programmieren II. Java im Vergleich zu anderen Sprachen. Einführung: GUI. Einführung: Grafische Benutzeroberflächen. Dr.

Graphische Benutzungsoberflächen

SPX-Draw Version Mai 2010

Vektorgrafik / Bitmap (bmp)

Was ist Fotolia? Wie melde ich mich bei Fotolia an?

Narrow It Down - Anweisungen zum Eingrenzen

Ralf Kittner. MMZ-1, Ernst-Abbe-Platz 8 Raum 214 Tel.:

Pia Bork. Microsoft. PowerPoint Inklusive CD-ROM

Java - AWT Basispraktikum SystemArchitektur WS 2008/ Atanas Dimitrov

Windows Grundlagen - Internet -

Zentrale Objekte zur Programmierung graphischer Benutzeroberflächen (GUI)

Softwareentwicklungspraktikum Nebenfach

Handreichung. Erstellen einer Infopräsentation mit Powerpoint IT-Dienste im IQSH Seite 1 von 8

Universität VL 13 VL 13 GUI-Programmierung mit Swing Osnabrück Informatik B - Objektorientierte Programmierung in Java Vorlesung 13: GUI 3: Swing

WM01 - DEMO - ECDL Image Editing

Javakurs für Fortgeschrittene

Einführung in die Programmierung für NF. Übung

GUI Programmierung mit javax.swing

Saferpay User Manual. Payment Page Konfiguration. Version

Institut für Programmierung und Reaktive Systeme. GUIs mit Swing. Markus Reschke

Seminar Webseiten mit Joomla

Java für Computerlinguisten

Microsoft PowerPoint für Office 365 Designer

Ordersatz online Kurzbeschreibung

Java I Vorlesung 11 Graphische Oberflächen mit Swing

Landis & Gyr (Europe) Corp.

Abteilung Informatik, JFC/Swing 2004 Diego Schmidlin V2.2

Elektronisches Ursprungszeugnis euz

Interaktive Nutzung der Legamaster escreen und eboard Touch Systeme

Noten verwalten. Überblick

LebenLimburg. Das Limburger Leben in einer App

Kennen, können, beherrschen lernen was gebraucht wird

Übungen zu Einführung in die Informatik: Programmierung und Software-Entwicklung: Lösungsvorschlag

Programmiertechnik GUI Programmierung mit Java Swing

Tutorials für ACDSee 12: Markieren von Fotos

Objektorientierte Softwareentwicklung

Speichern. Speichern unter

Dreamweaver CS6. Grundlagen. Charlotte von Braunschweig, Jan Götzelmann, Linda York. 1. Ausgabe, November 2012 DRWCS6

WebQuests. Eine WebQuest erstellen und publizieren. Mit PowerPoint geht es besonders einfach. Seite 1. WebQuests erstellen und publizieren

Digital Signage Lösung aus einer Hand

Tutorial 4: 13:30 14:00. Einbindung von Daten und Diensten im Spatial Commander. 14. Juni 2018, Messe Erfurt

Karten von data2map selbst ergänzen und an eigene Erfordernisse anpassen.

Programmiermethodik. Übung 7

ECDL Europäischer Computer Führerschein. Jan Götzelmann. 1. Ausgabe, Juni 2014 ISBN

Der Formulareditor. Handreichung zum Erstellen und Ändern von Formularen

Powerpoint-Präsentationen in das SchulCMS einbinden

Kurze Bedienungsanleitung für GIMP. Vorhaben Verfahren Symbol. Fenster >Einzelfenster-Modus. Fenster > Andockbare Dialoge > Werkzeugeinstellungen

Einführung in GUI-Programmierung. javax.swing

Anleitung OpenCms 8 Einbinden von Bildern

Handout. Webinar: Der perfekte Start mit PowerPoint

J.Meißburger, Jülich 3D-Fotoshow mit MAGIX-2014 Seite 1

Mit Steuerung auf eine Ebene mit einem freigestelltem Objekt klicken (linke Maustaste), um nur dieses Objekt zu markieren

Bildbearbeitung mit Gimp

ECDL - Core. Modul 6 MS Power Point. Arbeitsblätter für Schüler/Lehrer mit praktischen Übungen zu sämtlichen Lernzielen des Syllabus 5

Tipps und Tricks rund um LabVIEW. Tobias Daub Applications Engineer National Instruments Germany

Booklet für "Word 2000 Tipps & Tricks Vol. 2" Interne Nummer: Inhaltsverzeichnis

376 6 Bilder und Grafiken für das Web

U6: Webgerechte Bilder

...erinnern Sie sich? oopjs4b / kwhbkd4r

Javakurs für Anfänger

benutzerhandbuch für hotels und gastgeber Veranstaltungen in DIRS21 anlegen und verwalten

Mensch-Maschine-Interaktion

Inhalte strukturieren

Gerichtsvollzieher Briefbogen

Modernisierung von Forms durch neues Look&Feel

AZUR ONLINE STELLENMARKT

Der Jazz Veranstaltungskalender für Deutschland, Österreich und die Schweiz

GUI Programmierung in Java

KURZANLEITUNG utypia Shop

Inhaltsverzeichnis. 1 Einleitung 9. Inhalt

PowerPoint: Hintergrund

Übungen zu Einführung in die Informatik: Programmierung und Software-Entwicklung: Lösungsvorschlag

Alexander Glasner Applications Engineer National Instruments Germany GmbH

Microsoft POWERPOINT

Institut für Programmierung und Reaktive Systeme 26. April Programmieren II. 10. Übungsblatt

Bedienungsanleitung WARY Fenstergrafik V2015

Tutorial04: Swing: Erstellen eines JFrames mit einem JSplitPane

Transkript:

Vorstellung der Aufgabe Nonogramme Andrea Frank Programmerpraktikum FernUniversität in Hagen

Agenda Nonogramme,, was sind das? und wie kann man sie lösen? eindeutige und nicht eindeutige Lösungen Überblick über die Aufgabe Welche Anforderungen sind Bestandteil der Aufgabe? Fragen Folie 2

Nonogramme Zu diesem Rätsel gibt es eine eindeutige Lösung. Folie 3

Nonogramme Bei diesem Rätsel ist die Lösung nicht eindeutig. Folie 4

Überblick über die Anforderungen Die Aufgabe teilt sich in drei Kernbereiche: Lösen eines Rätsels durch einen interaktiven Benutzer Lösen eines Rätsels durch den Computer Erzeugen von Rätseln aus beliebigen Grafikdateien Folie 5

Lösen eines Rätsels durch einen Benutzer Laden und Speichern von Nonogrammen Dateiauswahldialoge verwenden (AWT: FileDialog / Swing: JFileChooser) beim Laden/Speichern das angegebene Datenformat beachten Interaktives Lösen beliebiges Feld mit einer Farbe des Rätsels belegen beliebiges Feld als Leerfeld markieren Feldbelegung wieder entfernen zum Ende: Überprüfen, ob Lösung korrekt ist Folie 6

Lösen eines Rätsels durch einen Benutzer (2) GUI - grafische Benutzeroberfläche zeigt den aktuellen Stand an nimmt Benutzereingaben entgegen Die Bedienung ist in der Dokumentation zu beschreiben. Hinweise: Falls Sie nicht viel Erfahrung haben, erstellen Sie eine einfache Benutzeroberfläche (AWT: Frame / Swing: JFrame) mit einem Zeichenbereich (Canvas / JPanel) und einem Menü (Menu / JMenu). Später können Sie z.b. eine Toolbar (JToolBar (nur Swing)) für die Auswahl der Farben hinzufügen. Bei sehr großen Rätseln könnte der Zeichenbereich durch Scrollen (ScrollPane / JScrollPane) oder Zoomen (AffineTransform) erweitert werden. Viele hilfreiche Tipps und Codebeispiele finden Sie z.b. im Swing-Tutorial: http://docs.oracle.com/javase/tutorial/uiswing/ Folie 7

Lösen eines Rätsels durch den Computer Die Techniken zum Lösen aus der Schritt-für-Schritt-Anleitung sind nur ein Vorschlag. Eigene Lösungsalgorithmen sind natürlich erlaubt. Lösungsalgorithmus: Eventuell wird es zu einer Situation kommen, in der kein sicheres Setzen einer Farbe möglich ist. In diesem Fall muss geprüft werden, ob eine eindeutige Lösung trotzdem möglich ist. Hinweise: Backtracking, 8-Damen-Problem Der verwendete Lösungsalgorithmus ist in der Dokumentation zu beschreiben. Folie 8

Lösen eines Rätsels durch den Computer (2) kein eindeutiger Schritt möglich Treffen einer willkürlichen Entscheidung [Zeitpunkt x] Lösung gefunden keine Lösung gefunden Testen, ob eine andere willkürliche Entscheidung zum Zeitpunkt x ebenfalls zu einer Lösung geführt hätte Testen, ob eine andere willkürliche Entscheidung zum Zeitpunkt x zu einer Lösung geführt hätte ja nein ja nein Rätsel nicht eindeutig lösbar Rätsel eindeutig lösbar Rätsel nicht lösbar Folie 9

Lösen eines Rätsels durch den Computer (3) Überprüfen des Lösungsalgorithmus mit dem Test-Interface Zusatzmaterial Nonogramme.zip von der ProPra-Webseite http://www.fernuni-hagen.de/mathinf/studium/lehre/praktika/programmierpraktikum/2013_2014_ws.shtml Library Nonogramme.jar in Java-Projekt einbinden Javadoc in IDE einbinden Testdaten verwenden Test-Interface INonogramSolver implementieren Methode getsolution() liefert das Ergebnis Testlauf durchführen (Aufruf mit Parameter t ) Einzeltests (Aufruf mit Parameter -t beispiel.test ) Folie 10

Folie 11

Erzeugen von Rätseln eine beliebige Grafik (*.gif, *.png, *.jpg) als Quelle verwenden Festlegen der späteren Größe des Rätsels Festlegen der Anzahl der Farben im Rätsel Skalieren der Grafik und Runterrechnen der Farben eine Farbe als Hintergrundfarbe wählen eventuell einige Felder vorbelegen (eindeutige Lösung) Rätsel im angegebenen Dateiformat speichern (Eindeutigkeit!!!) Folie 12

Erzeugen von Rätseln (2) Skalieren Für das Skalieren einer Grafik können Sie Klassen und Methoden aus dem Java-SDK verwenden. Runterrechnen der Farben Das Reduzieren der Farben wurde im Vortrag zum Thema Bildvektorisierung bereits besprochen und kann dort nachgelesen werden. Eindeutigkeit prüfen, eventuell einige Felder vorbelegen Folie 13

Fragen? Folie 14