![]() |
Wer wird Millionär mit Delphi
Wir haben haben uns als Ziel gesteckt als Projektarbeit ein "Wer wird Millionär-Spiel" zu programmieren.
Sind auf der suche nach Möglichkeiten wie wir dieses Programm so gut wie möglich hinbekommen :) Könnt ihr uns helfen ? :) Danke im vorraus ! :-D |
AW: Wer wird Millionär mit Delphi
Meinst du nicht, dass die Frage irgendwie... etwas allgemein ist? Ich meine: Klar können wir euch helfen, aber wo ist denn euer Problem?
|
AW: Wer wird Millionär mit Delphi
Hallo und willkommen hier... :dp:
So pauschal kann man das nicht beantworten. Ihr müßt das Projekt in Teile zerlegen und getrennt betrachten. z.B. 1. GUI (Aussehen) 2. Datenhaltung (welche Daten habe ich, wie arbeite ich damit, wo liegt was etc.) 3. Logik (Richtig/Falsch, nächste Stufe etc.) Wie beurteilt ihr euren Wissensstand ? |
AW: Wer wird Millionär mit Delphi
Das ganze ist eigentlich recht simpel. Überlegt euch anfangs erstmal was ihr alles benötigt (Design: Wie soll es aussehen?,Programmieren: Wie ist es mit Delphi realisierbar?)
Als Anhaltspunkte schon mal ein paar Tipps: - Timer um Zeitrahmen zu erstellen (20 Sekunden zum beantworten?) - 4 Images auf welche die Antwortmöglichkeiten (Label) zu sehen sind. Die Images haben Werte. Wird ein angeklickt so wird überprüft ob der wert mit dem Wert der richtigen Antwort übereinstimmt. - Fragen und antworten könnte man in eine Textdatei schreiben und dann auslesen - Punkte werden als Variable Integer dargestellt Dann noch paar schöne Sounds dazu und fertig ist das Programm :-D |
AW: Wer wird Millionär mit Delphi
das Schwierigste wird sein, die peinlichen und dämlichen Zwischen-Fragen zum Privatleben von/durch Herrn Jauch möglichst realtitätsnah zu simulieren.
|
AW: Wer wird Millionär mit Delphi
vll noch ein 5tes image das die Geldleiter darstellt ^^
denk auch an die Joker. Nur wie willst du den Telefonjoker realisieren !? |
AW: Wer wird Millionär mit Delphi
RASDial.pas :mrgreen:
|
AW: Wer wird Millionär mit Delphi
Zitat:
Das ist oldscool wir müssen eine Twitter oder Facebook Joker haben. |
AW: Wer wird Millionär mit Delphi
Zitat:
Es wäre natürlich cool, wenn die Frage einem anderen Spieler (der auch gerade Online ist) untergeschoben wird, wenn der Telefon-Joker gewählt wird. Der Publikumsjoker könnte eine randomisierte Version der bisherigen Antworten aller Spieler sein. Nur glaube ich nicht, dass diese Diskussion dem TE hilft. Zitat:
|
AW: Wer wird Millionär mit Delphi
Also Design haben wir schon mal fertig ;) ...
HAben uns auch alles Gedanken gemacht. Nur an der Umsetzung fehlt es :D ... Im Prinzip brauchen wir erstmal Hilfe beim programmieren, sprich was wir eingeben müssen damitz das Spiel so wie wir es wollen. Sind Änfanger, sorry :D :)) |
AW: Wer wird Millionär mit Delphi
Habt Ihr Euch denn schon Gedanken gemacht, wie Ihr das zumindest im Groben umsetzen möchtet?
|
AW: Wer wird Millionär mit Delphi
Ohne Euch auf die Füße treten zu wollen, aber Eure Beiträge sehen nicht so aus als hättet Ihr Euch da ein realistisches Ziel gesteckt. Wenn Ihr zum schreiben von Delphi-Code noch eine Syntaxtabelle braucht, dann solltet Ihr vielleicht ne Nummer kleiner anfangen.
Aber um auch ein wenig konstruktiv beizutragen: Was heißt Ihr habt schon ein Design? Reden wir von einem Kunstwerk Bleistift auf gebleichtem Zellstoff oder von einem Fenster, designed mit der Hilfe einer Delphi-IDE? Auf letzterem könnte man vielleicht ein wenig aufbauen... Gruß, |
AW: Wer wird Millionär mit Delphi
unter
![]() findet Ihr einen Vokabeltrainer in Delphi programmiert. Vokabeln abfragen bzw, Fragen stellen und auf richtige Antwort prüfen ist ja ziemlich ähnlich zu Eurem Problem .... |
AW: Wer wird Millionär mit Delphi
Zitat:
Vielleicht solltet ihr ein rudimentäres Pflichtenheft verfassen. Was auch wichtig wäre: Wieviel Zeit habt ihr zur Verfügung. |
AW: Wer wird Millionär mit Delphi
Das größte "Problem" wird wohl die Speicherung der Fragen und Antworten sein. Da ihr vermutlich nicht allzu erfahren seit und die Nutzung von Drittkomponenten an Schulrechnern nicht ohne weiteres möglich sein wird würde ich das ganze über eine einfache Ini-Datei lösen. Eine Frage + Antworten ließe sich beispielsweise so darstellen:
Code:
Dass die Antwort unverschlüsselt vorliegt ist bei einem Anfängerprojekt denke ich verschmerzbar.
[Frage 1]
Frage=... Antwort1=... Antwort2=... Antwort3=... Antwort4=... Korrekt=1 Weitere Anlaufpunkte: ![]() ![]() |
AW: Wer wird Millionär mit Delphi
@Aurelius
Das mit dem
Delphi-Quellcode:
kann man sich auch sparen:
Korrekt
Code:
Ausserdem ist es sinnvoller, die Antworten in der Reihenfolge auch zu vertauschen und man muss eh den Index der richtigen Antwort nachführen :)
[1]
Frage=... ARichtig=... AFalsch1=... AFalsch2=... AFalsch3=... |
AW: Wer wird Millionär mit Delphi
Zitat:
![]() Je mehr man mit Strings rumbasteln muss, desto verworrener. |
AW: Wer wird Millionär mit Delphi
|
AW: Wer wird Millionär mit Delphi
Zitat:
|
AW: Wer wird Millionär mit Delphi
Liste der Anhänge anzeigen (Anzahl: 1)
Hier haben wir unseres Design. :)
Bzw. unsere Ideen wie es funktionieren sollte. Wir überlegen ob wir mit record oder Textdatei arbeiten. |
AW: Wer wird Millionär mit Delphi
Und dafür habt Ihr nur 4 Wochen gebraucht? Respekt, jetzt fehlt nur noch ein "bisschen" Code und das Ding ist fertig :stupid:
|
AW: Wer wird Millionär mit Delphi
Zitat:
![]() . ![]() |
AW: Wer wird Millionär mit Delphi
Zitat:
Alles geschützt. |
AW: Wer wird Millionär mit Delphi
Zitat:
Gruß, |
AW: Wer wird Millionär mit Delphi
Ich habe ja mittlerweile schon viel Negatives über den Informatikunterricht gelesen, aber diese Beschreibung grenzt für mich schon an Realsatire :shock:
|
AW: Wer wird Millionär mit Delphi
Romiox Beschreibung stimmt leider. Und es war an den meisten Schulen früher auch nicht besser. Selbst in der dahingehend oft über den grünen Klee gelobten DDR nicht. Informatikunterricht damals sah bei uns so aus:
Die Karawane trabt in den Computerraum. Erstmal Heizung aufdrehen denn der Raum wird nur von einer Klassenstufe genutzt und ist entsprechend selten in Gebrauch. Dann die "Computer" ( ![]() Dann folgt der regelmäßige Vortrag des Lehrers, wie man in den BASIC-Interpreter startet. Im BIOS "POKE 1234" (genaue Adresse weiß ich nicht mehr) eingeben und warten... warten... Kassette einlegen und "READ 1234, abc" eingeben. Warten... warten... Tadaaaa! Abgestürzt. Dieser Zustand war damals übrigens ein Greenscreen of Death, oder auch "GoD" genannt. Mangels Schulenglisch verstanden wir den Witz an der Sache aber erst Jahre später. Es lag aber auch zum Teil daran, dass wir Schwarzweiß-Monitore hatten. Bis hier hin waren schon locker 25 Minuten ins Land gegangen bis so eine Informatikstunde effektiv beginnen konnte. Dann wurden Zettel ausgeteilt mit Codeschnipseln, die man abzutippen hatte. Am Ende der Stunde wurde das Ganze dann auf Kassette gespeichert. So zog sich das das ganze Schuljahr hin. Und wenn man wirklich sauber "gecodet" (um nicht zu sagen saubere Augen-Hand-Koordination bewiesen) hatte, fügte sich die Sache am Jahresende zu einem kleinen Computerspiel in BASIC zusammen: U-Boot fahren durch Tropfsteinhöhlen. Sowas ähnliches wie eine Frühform von " ![]() Darum wundert mich die Beschreibung des heutigen Schul-IT-Unterrichts nicht wirklich. Die Lehrer die das machen sind doch selbst keine Informatiker und gehen streng nach Lehrbuch vor. Manche ödet die abendliche Einarbeitungszeit am heimischen PC auch noch an. Dann wird der Unterricht nicht wesentlich besser. Zumal sich nicht wenige Computerräume in unseren Schulen heute noch auf Pentium-1-Niveau mit Windows 98 befinden. Mangels kompatibler Malware mag das noch nicht mal ein Sicherheitsrisiko sein, aber Pluspunkte bringt das nicht ein. Zumal die Schüler oft gar nicht in der Lage sind, sich z.B. das an der Schule eingesetzte Delphi 2 für zu Hause zu besorgen da es das schlicht nicht mehr gibt und (vermutlich) unter Windows 8 auch gar nicht mehr läuft. Hat man gut betuchte Eltern, spendieren die einem ein XE3 Edu-Version. Doch was nützt das wenn man die Projekte von zu Hause nicht im Computerraum der Schule einsetzen kann? Daher liebe Stammuser hier: Bitte lasst die hämischen Kommentare den Threadopenern gegenüber. Wir sollten doch froh sein wenn wir noch Delphi-Nachwuchs bekommen und dieser sogar mit Spaß an der Sache dabei ist. Wir sollten sie unterstützen und nicht mit Kommentaren wie "Ihr habt euch zu viel vorgenommen, schafft ihr eh nicht" noch entmutigen. Zum Thema urheberrechtlich geschütztes Design: Schon mal was vom Schulprivileg gehört? Solange das nur im schulischen Rahmen verwendet wird ist es ok. Es sollte den jungen Leuten nur mal jemand erklären, dass man das dann nicht im Internet veröffentlichen darf (auch nicht als Screenshot). |
AW: Wer wird Millionär mit Delphi
Trotzdem wirst Du doch zugeben müssen, dass 4 Wochen für eine Gruppe eine recht lange Zeit ist, ein simples Formular zusammenzuklicken. Das könnte man höchstens noch mit demokratischer Abstimmung das Design betreffend rechtfertigen :roll:
|
AW: Wer wird Millionär mit Delphi
Man sollte den Kalender im Auge behalten. Es waren Weihnachtsferien dazwischen, oder?
|
AW: Wer wird Millionär mit Delphi
Zitat:
|
AW: Wer wird Millionär mit Delphi
Zitat:
|
AW: Wer wird Millionär mit Delphi
Als ich mein Fachabi (Schwerpunkt Wirtschaftsinformatik) gemacht habe, hatten wir am Ende des Jahres gerade so nen Benzinrechner programmiert, mit 4 Edits, 2 Buttons und ein Paar Labels... Ah... und nicht zu vergessen, noch ein Paar Images waren dabei, wow war das ne Leistung. Und selbstverständlich hab ich dafür ne 1 bekommen. :thumb:
Katastrophe also... :pale: |
AW: Wer wird Millionär mit Delphi
Um diesen Thread noch zu retten, kehre ich mal wieder zum Thema zurück :)
Ihr solltet nun einen groben Ablaufplan erstellen, wann was ausgeführt werden soll. Damit unterteilt ihr das Gesamtproblem in kleine Teilprobleme, die dann sehr schön von einzelnen ausprogrammiert werden können. Ihr braucht z.B. etwas, dass euch die nächste Frage liefert. Das umfasst die Frage selber, 4 Antwortmöglichkeiten und welche der Antworten richtig ist.
Delphi-Quellcode:
oder (wenn ihr
Frage : string; // Ausgabe
Antwort1, Antwort2, Antwort3, Antwort4 : string; // Ausgabe Richtig : Integer // Ausgabe ![]()
Delphi-Quellcode:
Schön wäre es jetzt auch, wenn jede Frage pro Runde nur einmal gestellt wird.
Frage : string; // Ausgabe
Antworten : array[1..4] of string; // Ausgabe Richtig : Integer // Ausgabe Dafür benötigt man die eindeutigen Kennzeichen für jede bislang gestellte Frage und jede Frage muss auch so ein eindeutiges Kennzeichen haben.
Delphi-Quellcode:
Diese Fragen sollen aus einer Datei gelesen werden, dann wird ja noch der Dateiname benötigt
GestellteFragenKennzeichen : array of integer; // Eingabe
FrageKennzeichen : Integer; // Ausgabe Frage : string; // Ausgabe Antworten : array[1..4] of string; // Ausgabe Richtig : Integer // Ausgabe
Delphi-Quellcode:
In Delphi/Pascal (und eingeenglischt :mrgreen:) umgesetzt würde das dann so aussehen:
DateiName : string;
GestellteFragenKennzeichen : array of integer; // Eingabe FrageKennzeichen : Integer; // Ausgabe Frage : string; // Ausgabe Antworten : array[1..4] of string; // Ausgabe Richtig : Integer // Ausgabe
Delphi-Quellcode:
Um nun der Gruppe ein unabhängiges Arbeiten zu ermöglichen, werden diese Teile als Dummys programmiert.
procedure GetNextQuestion(
// Eingabe-Argumente const FileName : string; // Dateiname mit dem Fragenkatalog QuestionIDArr : array of integer; // bereits gestellte Fragen // Ausgabe-Argumente out QuestionID : Integer; // ausgewählte Frage-ID out Question : string; // Fragetext out Answers : array[1..4] of string; // Antworten CorrectAnswerIndex : Integer // Index der richtigen Antwort (1..4) ); begin // hier kommt der Code end;
Delphi-Quellcode:
unit Form1;
interface ... implementation uses ... QuestionCatalogue_Dummy; ... procedure TForm1.Foo( Sender : TObject ); var LQuestionID : Integer; LQuestion : string; LAnswers : array[1..4] of string; LCorrectAnswer : Integer; begin GetNextQuestion( FQuestionFile, FQuestionArray, LQuestionID, LQuestion, LAnswers, LCorrectAnswer ); end;
Delphi-Quellcode:
Sind alle diese Dummys dann fertig, und mit der Oberfläche verbunden, dann fühlt sich die Oberfläche auch schon lebendig an.
unit QuestionCatalogue;
interface procedure GetNextQuestion( // Eingabe-Argumente const FileName : string; // Dateiname mit dem Fragenkatalog QuestionIDArr : array of integer; // bereits gestellte Fragen // Ausgabe-Argumente out QuestionID : Integer; // ausgewählte Frage-ID out Question : string; // Fragetext out Answers : array[1..4] of string; // Antworten CorrectAnswerIndex : Integer // Index der richtigen Antwort (1..4) ); implementation procedure GetNextQuestion( // Eingabe-Argumente const FileName : string; // Dateiname mit dem Fragenkatalog QuestionIDArr : array of integer; // bereits gestellte Fragen // Ausgabe-Argumente out QuestionID : Integer; // ausgewählte Frage-ID out Question : string; // Fragetext out Answers : array[1..4] of string; // Antworten CorrectAnswerIndex : Integer // Index der richtigen Antwort (1..4) ); var LIdx : Integer; begin // eindeutige QuestionID ermitteln repeat QuestionID := Random( 100 ) + 1; for LIdx := Low( QuestionIDArr ) to High( QuestionIDArr ) do if QuestionID = QuestionIDArr[LIdx] then begin QuestionID := 0; Break; end; until QuestionID <> 0; CorrectAnswerIndex := Random( 4 ) + 1; for LIdx := 1 to 4 do if LIdx = CorrectsAnswerIndex then Answers[LIdx] := 'richtige Antwort' else Answers[LIdx] := 'falsche Antwort'; end; end. Jetzt kann ein jeder den ihm zugeteilten Part ausprogrammieren und gleich mit der Oberfläche testen. Zum Schluss werden alle die Dummys gegen die echten Funktionen ersetzt und es sollte ein fertiges Programm herauskommen. :) |
AW: Wer wird Millionär mit Delphi
@Sir Rufo :thumb:
@alle Informatikschüler Was DeddyH verwundert, ist die Diskrepanz zwischen den Anforderungen des beruflichen Alltags und der schulischen Wirklichkeit. Gruß K-H |
AW: Wer wird Millionär mit Delphi
Zitat:
|
AW: Wer wird Millionär mit Delphi
[OT]
Nun, die Schule bietet nunmal kein Informatikstudium oder auch nur eine Ausbildung in diese Richtung. In der Schule können und sollen nur Grundlagen vermittelt werden, auf die man später aufbauen kann. Dass diese Grundlagen nicht immer das sind, was sie sein sollten, steht dabei außer Frage, aber dennoch auf einem anderen Blatt. [/OT] MfG Dalai |
AW: Wer wird Millionär mit Delphi
Ich denke, es reicht vollkommen wenn es die Schule schafft ein paar Grundlagen zu vermitteln und vorallem das Interesse zu wecken. Software konsumieren ist leicht und kann jeder, Software erschaffen ist schon etwas anspruchsvoller.
|
AW: Wer wird Millionär mit Delphi
Wir kommen aber langsam arg vom Thema ab, oder?
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 04:37 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz