carookee - group communication for you
Home / JavaForum / Beginner
Infos   |   Features   |   Gold-Edition   |   Kundenservice   
java
  Übersicht
  Forum
Beginner
Java allgemein
JDBC
JNI
Networking
Online-Ressourcen
Swing + AWT
XML
Meckerecke
  Mitglieder
LOGIN





· Passwort vergessen
· Kostenlos anmelden
  Information
  Demo
  Features
  Im Vergleich
  Anmeldung
SUCHE
Beiträge, Foren oder Verfasser finden:
  Kundenservice
  Impressum
  Datenschutz
  AGB
Status
2.579 User online
0 User eingeloggt
 

Beiträge
   Antworten     Neuer Beitrag    

Beitrag 696 von 2963 (23%) |<   <   >   >|

Autor Gast
Datum 21.05.02, 09:50
Betreff Magisches Quadrat


Aufgabe: Erzeugung von magischen Quadraten

N.B.: Magische Quadrate sind Quadrate, bei denen alle Zeilensummen und alle
Spaltensummen jeweils den gleiche Wert liefern.

Das Programm soll das folgende, von Coxeter angegebene Verfahren, implementieren,
das nur fŸr magische Quadrate mit ungerader Zeilenzahl funktioniert:
(Ein Beispiel fŸr das durch das Verfahren erzeugte magische Quadrat der Grš§e 3
ist unten angegeben!)
Schreibe eine 1 in das mittlere Feld der obersten Zeile. Bewege dich nach
oben und links und fŸlle die Felder mir Zahlen in aufsteigender Folge!
Wenn die Bewegung nach oben aus dem Quadrat herausfŸhrt, so wandere von unten
in dieser Spalte wieder in das Quadrat hinein. (Beispiel: Zahl 2)
Wenn die Bewegung nach links
aus dem Quadrat herausfŸhrt, so wandere von rechts in dieser Spalte wieder
in das Quadrat hinein. (Beispiel: Zahl 3)
Ist ein Feld bereits ausgefŸllt, so bewege dich nach unten anstatt nach oben,
aber ohne nach links zu gehen. (Beispiel: Zahl 4)
†brigens: Die Zahl 7 wird unter der Zahl 6 positioniert, da das entsprechende
Feld, in das sie nach den Regeln einzutragen wŠre, bereits durch die Zahl 4
blockiert ist!
(Diese Beschreibung ist nicht mehr das Original von Herrn Coxeter, sondern sie
wurde von mir Ÿberarbeitet!)

Dieses Verfahren fŸhrt zum folgenden magischen Quadrat der Grš§e 3:
| 6 | 1 | 8 |
| 7 | 5 | 3 |
| 2 | 9 | 4 |

Sie sollen zwei Versionen dieses Programms implementieren: eine ohne und eine
mit graphischer Benutzerschnittstelle. FŸr die Version mit graphischer
Benutzerschnittstelle sollen sie die Funktionen der Klasse ohne
graphische Benutzerschnittstelle wiederverwenden, indem sie diese aufrufen
(und nicht den Quelltext kopieren)! Legen Sie mindestens drei verschiedene
Java-Quelldateien an: eine mit dem Programmcode fŸr die textuelle Version,
eine mit dem Programmcode fŸr die graphische Version und die dritte mit
dem zweidimensionalen Feld und dem Algorithmus zum FŸllen des Feldes!

Bedingungen fŸr die Implementierung:
¥ Der Benutzer soll die Mšglichkeit haben, eine gewŸnschte Grš§e
des Quadrats zwischen 1 und 15 anzugeben. Realisieren Sie dafŸr
eine robuste Eingabe von der Konsole!
¥ Verwenden Sie dynamisch erzeugte Felder der jeweils erforderlichen
Grš§e!
¥ FŸr die Ereignisbehandlung verwenden Sie bitte ausschlie§lich das
Ereignismodell von Java 2. (Vorsicht vor alten Java BŸchern!)

Als Loesung sind abzugeben:
1.) Die mit dem Java Dokumentationstool erstellte Dokumentation ihrer
Lšsung. (Diese mu§ nur vorgefŸhrt und n i c h t ausgedruckt werden!)
2.) Ein Ausdruck des mit dem UML-Tool "jvision" erstellten Klassendiagramms
3.) Ein Ausdruck aller kommentierten Programmquellen
4.) Eine BegrŸndung fŸr die gewŠhlte Programmstruktur.
(Sie darf als ein zusammenhŠngender Kommentar im Programm enthalten sein.)
5.) Je ein Ausdruck des erzeugten magischen Quadrats der Groesse 5 in
der textuellen und in der graphischen Version.
Diese Aufgabe kann von jedem Studenten allein oder in Gruppen von maximal zwei
Studenten bearbeitet werden.
Die Abgabe der Loesung erfolgt durch jeden Studenten (jede Gruppe von Studenten)
persoenlich im Rahmen der oben vereinbarten Uebungsstunden.
Bei der Abgabe der Loesung muss jeder Student (der Gruppe)
seinen Programmtext Ÿbersetzen, das erzeugte ablauffŠhige Programm vorfuehren und
erlaeutern sowie Fragen des Dozenten zur Loesung beantworten (und zwar zum
gesamten Programm und nicht nur zu dem Teil, den er jeweils geschrieben hat).


Wer mir diese Aufgabe löst, bekommt 50 Euro.
Ich habe über zwei Wochen mir den Kopf zerbrochen, aber ich bekomme es nicht programmiert.( Wie der Algo funktioniert weiß ich)


Diskussionsverlauf:
Magisches Quadrat
    Re: Magisches Quadrat
    Re: Magisches Quadrat
    Re: Magisches Quadrat
    Re: Magisches Quadrat

 Auf diesen Beitrag antworten
 Neuen Beitrag verfassen


|<   <   >   >|

                                                                                                                                                                                                                           

Impressum  · Datenschutz  · AGB  · Infos  · Presse
Ein modernes Forum: teamturn.com