Brauche Projektthema für Prüfung...
-
Auch mit UML-Diagramm? :p Scherz.
Naja, ich würde gerne etwas zum Programmieren motivierenderes und zum Anwenden interessanteres machen.
Danke trotzdem.
MfG
-
ceplusplus@loggedoff schrieb:
zum Anwenden interessanteres machen.
In der Konsole schwierig... da würde mir höchstens ein "Space Invaders Klon" einfallen
-
Ich hätte da eine Idee. Schau Dir mal die Collatz-Folge (3x+1-Problem) an.
Da kann man alles mögliche machen:- Versuchen die Collatz-These, dass jede natürliche Zahl größer Null auf den 4-2-1 Zyklus endet, durch Ausprobieren zu widerlegen. Hierfür benötigt man einen möglichst schnellen Algorithmus und eine Bibliothek für sehr große Zahlen, denn mit 64Bit-unsigned-integer kommt man nicht weit, nämlich nur bis ca. 1 Trillion. der Bereich bis 3 Trillionen wurde bereits komplett abgehakt (siehe wiki).
Aufgaben:
a) Algo (einfach), kann man Zeitmessungen einbauen (interessante Problematik)
b) Bibliothek für große natürliche Zahlen schreiben (schwierig, aber kompletter Scope der C++-Möglichkeiten einsetzbar, am besten so, dass man dies auch gleich als Bibliothek in der Programmiersprache D verwenden kann!)- Bei sehr hohen Zahlen (z.B. 10 hoch 160) trifft man über viele Millionen nur ganz wenige Folgelängen H(n) (auch delays genannt) an. Dies könnte man testen (Rastergröße verändern) und in Dateien schreiben. Vielleicht kann man dies auch in der Konsole visualisieren.
Vorteil: Man befindet sich auf ziemlich abwegigem Gelände, findet aber dennoch Vorbilder für einzelne Aufgaben. Falls Du einen Ausreisser findest, der nicht auf 4-2-1 endet, wirst Du berühmt!
Siehe auch:
http://www.c-plusplus.net/forum/viewtopic-var-t-is-217746.html
http://www.henkessoft.de/C++/C++/cpp_konsole.htm (Kapitel 1.5)
http://de.wikibooks.org/wiki/Collatzfolgen_und_Schachbrett:_Bildung_der_Zahlen-Folgen
http://de.wikibooks.org/wiki/Collatzfolgen_und_Schachbrett:_Anhang_der_Schaubilder
Ein echt interessantes Feld, wenn man Zeit hat.Ansonsten: Primzahlen, Primzahlenpaare, ... (aber stärker abgegrast)
usw.
-
Hey!
Nette Idee. Doch ich denke das wäre nicht im Sinne des Kurses... Der Schwerpunkt des Projekts soll an den verschiedenen Techniken von C++ liegen, also möglichst Templates, Vererbung, Polymorphie usw. verwenden und nicht an einem kleinen Algorithmus und einer lib für Riesenzahlen.
Aber danke jedenfalls.
MfG
-
Nicht so schnell! Schau Dir mal das Innenleben einer solchen Bibliothek an.
Gerade in so einem Mehrklassendesign zeigen sich die Techniken von C++.Das ist ja auch nur der Zündfunke. Du könntest hier massenweise weitere eigene Ideen entwickeln, deren Umsetzung dann die C++-Techniken einsetzt, z.B. Visualisierung in der Konsole. Da geht sicher Polymorphie in Massen.
Bibliotheksverwaltung findest Du im Buch von Marcus Bäckmann.
-
Ich denke das wäre auch nichts für mich, da müsste ich mich doch mit binären Operationen beschäftigen und mit denen bin ich zur Zeit absolut garnicht vertraut...
Ich wüsste nicht, wie ich an solch eine Lib herangehen sollte...MfG
-
schreib ein tool ähnlich mkisofs, welches allerdings in der lage ist udf 2.6 images zu erstellen. ich bräuchte gerade mal eins
-
Dafür benötigst Du Klassen-Design und Mathematik auf Bit-Ebene, das ist richtig, aber doch gerade die Herausforderung und das Abstechen gegen den anderen langweiligen Mist!
http://www.gotw.ca/gotw/004.htm (Klassen Design)
-
Hmm ich befürchte das schaffe ich nicht, so viel Zeit haben wir auch nicht und es soll auch nicht soo komplex sein (Für mich wär das jetzt zu schwer, so eine BigInt lib...).
-
ceplusplus@loggedoff schrieb:
Es kann auch ein Konsolenspiel sein, nur muss eben der Umfang stimmen.
Dwarf Fortress, oder sowas in der Richtung?
-
Interessand währe eine Textverschlüsselung, du lädst einen Text und verschlüsselst den (d.h. Buchstaben verstauschen, andere zeichen etc ...) oder du machst es auf Byte ebene, das es wirklich kaum noch zurückverschlüsselbar ist!
Ansonsten währe ein Datenmanaging Programm ganz interessant, d.h dass du Dateien Kopieren, umbenenen, sortieren etc machen kannst!
-
@finix
Irgendwie optisch zu chaotisch. Aber danke!@Showball
Textverschlüsselung... schwerpunkt Algo. Nicht im Sinne des Kurses.
Datenmanaging ohne WinAPI?Ich glaube, ich werde einen kleinen Spaceshooter machen. Ist wenigstens interessanter vorzutragen
Danke an alle.
MfG
-
schade
-
ceplusplus@loggedoff schrieb:
Ich glaube, ich werde einen kleinen Spaceshooter machen. Ist wenigstens interessanter vorzutragen
Ohne externe libs?
-
Wiso, wozu denn die WinAPI? Das kann man auch ganz einfach ohne die WinAPI bewältigen!
-
meine idee: raytracer. consolenanwendung, die eine eingabedatei für objektdaten parst, die objekte raytraced, und die bilddaten dann als bild(einfaches format wie bmp) ausgibt. Das Tolle am raytracer ist, dass er je nach zeitaufwand modular erweitert werden kann. zuwenig zeit? dann streichste ein feature raus. zuviel? dann eben noch eins rein.
geht alles mit standard c++ mitteln. Und ist spannend (und man findet für die theorie inzwischen sehr viele quellen)
-
Hmm ich befürchte das schaffe ich nicht, so viel Zeit haben wir auch nicht und es soll auch nicht soo komplex sein (Für mich wär das jetzt zu schwer, so eine BigInt lib...).
Dann bastel Dir eben ein Telefonverzeichnis, Adressbuch, Vokabeltrainer oder so etwas.
Übrigens, Volkard Henkel's C++-Kurs solltest Du Dir vielleicht mal anschauen:
http://ittk.falb.at/pt/unterlagen/vcppk/inhalt.html
Kap. 15, 26, 53, 59, 72, 77-81, 83Dann die C++ FAQ, eine wahre Fundgrube:
http://www.c-plusplus.net/forum/viewtopic-var-t-is-39469.html
http://www.c-plusplus.net/forum/viewtopic-var-t-is-39470.html
http://www.c-plusplus.net/forum/viewtopic-var-t-is-39457.html
http://www.c-plusplus.net/forum/viewtopic-var-t-is-39467.html
http://ubiety.uwaterloo.ca/~tveldhui/papers/Template-Metaprograms/meta-art.html