Frage deutsch
~~~~~~~~~~~~~~
Mir ist langweilig. Was soll ich programmieren?
Question English
~~~~~~~~~~~~~~~
I feel boredWhat should I program
Antwort 1
~~~~~~~~~~
[ von Thomas Antoni, 11.1999 - 11.1.2006 ]
Diese Frage gehört seltsamerweise zu den am häufigsten gestellten
Einsteigerfragen.
Mögliche Programmthemen
Mir fallen da dutzende von möglichen Programmideen ein,
z.B.:
• Ein Zahlenratespiel
• Ein Datum-Zurückstellprogramm, das die
Uhr für abgelaufene
Demo-Programme zurückstellt, dann das Demo-Programm
startet und nach Verlassen das aktuelle Datum wieder einstellt.
(Problem: muß auch um Mitternacht herum (auch an
Schalttagen) richtig funktionieren !!)
• Passwortschutzprogramm zum Einbau in die
Autoexec.bat
• MP3-Player als Frontend zu dem bei
www.antonis.de downloadbaren
MP3-Player für DOS
• Ein Quizprogramm (vielfältige Anregungen
hierfür gibt es im FAQ-
Eintrag "Spiele programmieren
-> Wie programmiere ich ein
einfaches Quiz?" )
• Einen
ASCII-ANSI-Textkonverter
• Einen TXT ==> HTML-Konverter für
DOS-ASCII und Windows
ANSI-Textfiles
• einen Vokabeltrainer (siehe auch die
untenstehenden Anregungen)
• einen elektronischen
Terminkalender
• einen wissenschaftlichen
Taschenrechner
• ein Matheprogramm
• ein Programm zum Berechnen der
wichtigsten Physikformeln
• Ein Programm zum Ver-/Entschlüsseln von
Dateien
• Ein Geburtstags-Erinnerungsprogramm mit
akustischen Hinweisen
• Einen Tartangenerator, der karierte,
farbige Schottenmuster
(Tartans) nach dem Zufallsprinzip für schottische Highland-Clans
auf den Bildschirm zaubert.
Anregungen, die für alle Programme gelten
• Gestalte einen schönen
Begrüßungsbildschirm mit Copyright-
Angabe und Deiner E-Mailadresse. Der Bildschirm kann auch
farbig sein
• Der textbasierte SCREEN 0 ist für
Einsteiger am besten
geeignet
• Vermeide GOTO-Befehle in Deinem
Programm. Dann
ist es automatisch gut strukturiert und weniger
fehleranfälliig
• Mach das Programm in ___jeder___
Situation mit der
Esc-Taste abbrechbar.
Anregungen zum Vokabeltrainer
• Die Vokabeln sollen in zufälliger, also
immer wieder anderer
Reihenfolge abgefragt werden.
• In einer Lernsitzung soll sich keine
Vokabel wiederholen.
• Hinterlege zu jeder Vokabel eine
löschbare Statusinformation von
jeweils -4 bis +4 Punkten in einer externen Datei: Anfangs haben
alle Vokabeln den Status "0". Ist eine Vokabel einmal gekonnt
worden, so wird der Status um "1" erhöht. Ist eine Vokabel einmal
nicht gekonnt worden, so wird ihr Status um "1" reduziert.
• Biete die Option an, dass entweder alle
vorhandenen Vokabeln
oder nur die unterhalb eines bestimmten Status zum Lernen
offeriert werden.
• Die Vokabeln sollten nach Fremdsprache
Sprache ausgewählt werden
können und innerhalb einer Sprache in Lektionen einteilbar sein
(zweistufige Hierarchie).
• Gib nicht nur an, dass eine Vokabel
falsch eingegeben wurde,
sondern teile auch immer die richtige Übersetzung mit. Aus seinen
Fehlern lernt man ja schließlich am Besten.
• Zeige auf dem Bildschirm immer die
Anzahl der bereits abgefragten
sowie der gekonnten und der nicht gekonnten Vokabeln an, z.B. "123
Vokabeln abgefragt, davon 98 richtig und 25 falsch
angegeben".
• Untermale jede falsche Vokabeleingabe
mit einem Stöhnton und jede
richtige Vokabel mit einem Jubelsound. Die Soundausgabe muss
abschaltbar sein.
• Die Vokabellisten sollten vom Anwender
in getrennten Dateien mit
jedem beliebigen DOS-ASCII-fähigen Editor in einem einfachen Format
erstellbar sein (z.B. <Vokabel> = <Übersetzung> >Enter>
)
• Ein besonderes Sahnehäubchen wäre es,
wenn die Eingabe der
französischen, spanischen usw. Sonderzeichen über Softkeys
möglich wäre, z.B. über die Funktionstasten F1...F12 mit Angabe
der Tastenbelegung in einem permanenten Hilfefensterchen.
Antwort 2
[ von Tobias Doerffel ("todo"; mailtodo*web.de ), per Mail,
29.4.02 ]
• "Hallo Welt"-Programm
:-)
• Textadventure
• Spiel
• Taschenrechner
• Einfacher Editor
• Einfaches
Tabellenkalkulationsprogramm
• Malprogramm
• Zensurenverwaltungsprogramm
• Vokabeltrainer
• eine Art Mediaplayer
• GUI/FakeOS
• .... es gibt sooooo viele
Möglichkeiten
Antwort 3:
Nichts! Wenn dir langweilig ist wird das nichts. Du musst Lust zum
Programmieren haben und v.a. eine Idee. Die kommen immer in Momenten wo man
nicht drandenkt :-) Naja, mit Programmieren ist es so wie mit Malen, Schreiben
etc...
Antwort 4
~~~~~~~~~~~~
Frage
-----------
Also, ich hab' eigentlich alle wichtigen grundlegenden Tutorials zu QBasic
gelesen und soweit auch verstanden. Aber was jetzt? Wenn ich mir manchen
Programmcode angucke, hab' ich das Gefühl, dass die Tutorials überhaupt nix
bringen und ich keine Ahnung habe, was manche Sachen bedeuten. Oder soll man
sich den Code zusammenklauen? "Mit den Augen roll!" Und naja, jetzt stecke ich
irgendwie fest. Ich würde total gerne irgendwas Tolles schreiben, hab' aber
leider keine Ahnung, wo ich wie anfangen soll. Kann jemand helfen?
Antwort
--------------
Dann beginnst du klein und erstellst ein Menü für irgendeinen BMP Loader oder
sowas. Und wenn du dich ein bisschen sicher in der Materie und der netten
QB-Syntax fühlst, kannst du dir auch das erste eigene größere Projekt
vornehmen
Als ich damals auf der Realschule QBasic lernte, wollte ich auch irgend wann
mal eigene Programme schreiben. In der Schule mussten wir immer nur die fertigen
Programme von der Tafel abschreiben und konnten überhaupt nicht kreativ sein.
Aber ich hatte dabei die nötigen Befehle gelernt und konnte danach ein paar
einfache Programme schreiben und habe mich mit der Zeit immer mehr
gesteigert.
Gut, damals benutzte man noch hauptsächlich DOS als Betriebsystem und man war
vermutlich noch nicht so anspruchsvoll bezüglich der eigenen Programme, da man
ja noch nicht viel anderes kannte.
Zu meinen ersten Programmen gehörten mathematische Berechnungen, eine
Menüauswahl, ein Würfelspiel, ein Reaktionstest, eine Passwortabfrage usw.
Außerdem hatte ich schon immer gerne Spiele programmiert wie Vier-Gewinnt,
Reversi oder Master Mind.
Allerdings gab es damals noch kein Internet, wo ich bei Problemen einfach mal
schnell in einem Forum nachfragen konnte. Aufgrund dessen hatte ich mir schon
einige aus heutiger Sicht recht seltsame Lösungen ausgedacht. Wenn Du aber
schreibst, dass Du mehrere Tutorials gelesen hast, dann müsstest Du doch
genügend Befehle kennen und um was eigenes zu schreiben.
... Mein erstes Programm, woran ich mich erinnern kann war:
PRINT "Hallo, wie heißt du?"
INPUT name$
IF name$ = "Thomas" THEN
PRINT "Das ist aber ein schöner Name!"
ELSE
PRINT "Das ist aber ein häßlicher Name!"
END IF
..mmh .. das waren noch Zeiten.
Ich glaube ich habe dann mit ZAHLENRATEN, TASCHENRECHNER und
MATHEÜBUNGS-Programmen weitergemacht. Alles sehr einfach gehalten, alles im
Textmodus. Mein erstes "großes" Spiel war dann ein Textadventure, was in meinen
Kreisen schon fast Kultstatus hat *stolzsei*. Nach diesem großen Erfolg folgten
Teil 2 und 3 des Adventures .
Irgendwann lernte ich Arrays kennen - für mich anfangs sehr schwer zu
verstehen. Aber ich brachte im Textmodus ein Labyrinthspiel mit mehreren Leveln
zustande. Das Array ermöglichte mir auch, Dinge wie Vier-Gewinnt zu proggen oder
einen Nibbles- Clon. Mit Freunden hatte ich auch schon einige Projekte geplant
und begonnen, aber nicht vollendet (Fußballmanager, Rollenspiel,
Verwaltungsprogramm für Lieder). Ein Adressenprogramm habe ich auch irgendwann
geproggt.
Irgendwann lernte ich den Grafikmodus kennen - für mich ebenfalls anfangs
sehr schwer zu verstehen. Jetzt lache ich drüber! Es folgten sehr viele Spiele
die einer rasterförmigen Karte zugrunde liegen. Wie halt noch ein
Labyrinthspiel, oder einen Sokoban-Klon (das ist dieses Gehirn-zermarternde
Denkspiel "Kistenschieben"). Ich schrieb mir Pixelroutinen, die Bilder
zeichneten. Bitmaps laden war und ist für mich heute noch zu unverständlich -
klar jetzt gibt's Libs und leistungsfähige SUBs, die das können. Dann kamen
irgendwann GET und PUT hinzu, mit denen man gezeichnete Bilder leicht speichern
und wieder laden konnte.
Zu meinen fertigen Programm gehörten früher oder später auch Memory, Tetris
im Textmodus, diverse Denkspiele und Space Invaders.
Das war grob und etwas ungeordnet mein Werdegang. Vielleicht kannst Du daraus
was lernen.
[ The QBasic-MonsterFAQ --- Start Page: www.antonis.de/faq ]