Autor |
Beitrag |
NeulingInDelphi
Hält's aus hier
Beiträge: 4
|
Verfasst: Do 23.02.06 21:26
Hallo Leute,
ich habe das Problem, das wir in der Schule mit Delphi Programmieren sollten.
Wir haben eine Aufgabe gestellt bekommen, die ich nach bestem Wissen und Gewissen erledigt habe (mache das ganze erst seit einer Woche). Jedoch läuft das Ding nich und ich bin am Ende meiner bisherigen Kunst. Nach der Korrektur unseres Lehrers, weiss ich nicht, wie ich es besser machen könnte. Gibt es die Möglichkeit mir meine <<fehler zu offenbaren. Ich habe die Aufgabe und den Quellcode mal gescannt, wäre nett, wenn ihr mir helfen könntet.
Einloggen, um Attachments anzusehen!
|
|
Gausi
      
Beiträge: 8548
Erhaltene Danke: 477
Windows 7, Windows 10
D7 PE, Delphi XE3 Prof, Delphi 10.3 CE
|
Verfasst: Do 23.02.06 21:35
Hallo und  in der Entwickler-Ecke!
Es wäre glaube ich besser, wenn du den Quelltext hier in Textform posten würdest, nicht als Bild. Da kann man einfacher drüber gehen und Fehler finden.
_________________ We are, we were and will not be.
|
|
NeulingInDelphi 
Hält's aus hier
Beiträge: 4
|
Verfasst: Do 23.02.06 21:37
Jepp,
Ich tippe ihn mal schnell ab, die Sachen sind nämlich auf dem Rechner in der Schule.
|
|
NeulingInDelphi 
Hält's aus hier
Beiträge: 4
|
Verfasst: Do 23.02.06 22:16
Titel: die Quelldatei als Text
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17: 18: 19: 20: 21: 22: 23: 24: 25: 26: 27: 28: 29: 30: 31: 32: 33: 34: 35: 36: 37: 38: 39: 40: 41: 42: 43: 44: 45: 46: 47: 48: 49: 50: 51: 52: 53: 54: 55: 56: 57: 58: 59: 60: 61: 62: 63: 64: 65: 66: 67: 68: 69: 70: 71: 72: 73: 74: 75: 76: 77: 78: 79: 80: 81: 82: 83: 84: 85: 86:
| unit Unit1;
interface
uses Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls;
type TForm1 = class(TForm) Laufzeit: TButton; Kreditsumme: TButton; Zinssatz: TButton; Faelligkeitsdarlehen: TButton; ButtonEnde: TButton; LabelLaufzeit: TLabel; LabelKreditsumme: TLabel; LabelZinssatz: TLabel; procedure ButtonEndeClick (Sender:TObjekt); procedure FormCreate (Sender:TObjekt); procedure LaufzeitClick (Sender:TObjekt); procedure ZinssatzClick (Sender:TObjekt); procedure KreditsummeClick (Sender:TObjekt); procedure FaelligkeitsdarlehenClick (Sender:TObjekt);
private public end;
var Faelligkeitsdarlehen:TFaelligkeitsdarlehen; Laufzeit, Kreditsumme, Zinssatz, Faelligkeitsdarlehen, komplett: single;
implementation
{$R *.DFM}
procedure TFaelligkeitsdarlehen.ButtonEndeClick(Sender:TObject); begin Showmessage ('Vielen Dank'); close; end;
procedure TFaelligkeitsdarlehen.FormCreate(Sender:TObject); var Kreditsumme, Laufzeit, Laufzeit: single; begin
end;
procedure TFaelligkeitsdarlehen.LaufzeitClick(Sender:TObject); var sLaufzeit: string; begin sLaufzeit:= Inputbox('Eingabe','Wieviele Tage?','0'); Laufzeit:= StrToFloat (sLaufzeit); LabelLaufzeit.Caption:= sLaufzeit; end;
procedure TFaelligkeitsdarlehen.ZinssatzClick(Sender:TObject); var sZinssatz: string; begin sLaufzeit:= Inputbox('Eingabe','Wieviel Prozent?','0'); Zinssatz:= StrToFloat (sZinssatz); LabelZinssatz.Caption:= sZinssatz; end;
procedure TFaelligkeitsdarlehen.KreditsummeClick(Sender:TObject); var sKreditsumme: string; begin sKreditsumme:= Inputbox('Eingabe','Wieviel Euro?','0'); Laufzeit:= StrToFloat (sKreditsumme); LabelKreditsumme.Caption:= sKreditsumme; end;
procedure TFaelligkeitsdarlehen.FaelligkeitsdarlehenClick(Sender:TObject); var sFälligkeitsdarlehen: string; begin Faelligkeitsdarlehen:= Kreditsumme*(Zinssatz*100)*(Laufzeit/365); sFaelligkeitsdarlehen:= FormatFloat ('#,##0.00',komplett); Showmessage('Der zu zahlende Betrag ist'+ skomplett+ 'Euro' +chr(13);
end;
end. |
zur Info, ich arbeite mit Delphi 4, falls es überhaupt wichtig ist
Moderiert von Tino: Delphi-Tags hinzugefügt
Moderiert von Tino: Beiträge zusammengefasst.
|
|
raiguen
      
Beiträge: 374
WIN 2000prof, WIN XP prof
D7EP, MSSQL, ABSDB
|
Verfasst: Fr 24.02.06 16:38
Moin
Zunächst wäre es hilfreich, ein paar zusätzliche Angaben zu machen, speziell WAS nicht läuft!?
Beim Durchsehen des Quellcodes fällt mit einiges auf (Flüchtigkeitsfehler beim Abtippen??):
Delphi-Quelltext 1: 2: 3: 4: 5:
| procedure TFaelligkeitsdarlehen.FormCreate(Sender:TObject); var Kreditsumme, Laufzeit, Laufzeit: single; begin end; |
Delphi-Quelltext 1: 2: 3: 4: 5: 6: 7:
| procedure TFaelligkeitsdarlehen.KreditsummeClick(Sender:TObject); var sKreditsumme: string; begin sKreditsumme:= Inputbox('Eingabe','Wieviel Euro?','0'); Laufzeit:= StrToFloat (sKreditsumme); LabelKreditsumme.Caption:= sKreditsumme; end; |
Delphi-Quelltext 1: 2: 3: 4: 5: 6: 7: 8:
| procedure TFaelligkeitsdarlehen.FaelligkeitsdarlehenClick(Sender:TObject); var sFälligkeitsdarlehen: string; begin Faelligkeitsdarlehen:= Kreditsumme*(Zinssatz*100)*(Laufzeit/365); sFaelligkeitsdarlehen:= FormatFloat ('#,##0.00',komplett); Showmessage('Der zu zahlende Betrag ist'+ skomplett+ 'Euro' +chr(13); end; |
Im Übrigen - und das ist nicht gegen Dich! - fällt mir so auf, dass den Lehrern im Informatik-Unterricht zum 'lernen' und Üben für Delphi nix anderes einfällt, als Zinsberechnungen zu machen! Wie oft hab ich das schon bei diversen Praktikanten erleben dürfen*kopfschüttel*
Naja, und bei manchen 'Kommentaren' und Berichtigungen Deines Lehres fällt mir auch nix mehr ein...
Aber das nur am Rande...
Gruß
|
|
GSE
      
Beiträge: 740
Win 2k, Win XP Pro
D5 Prof, D6 Ent, D2k5 PE
|
Verfasst: Fr 24.02.06 17:18
Zitat: | Naja, und bei manchen 'Kommentaren' und Berichtigungen Deines Lehres fällt mir auch nix mehr ein...
Aber das nur am Rande... |
ich finde nicht, dass man das nur am Rande betrachten sollte.
@NeulingInDelphi: Kannst du deinen "Informatik"-Lehrer mal fragen warum du 2(!) Punkte Abzug bekommst wegen dem Semikolon hinter "close"?
das is doch vollkommen regelkonform
ich würds nur einfach gerne wissen
_________________ Programming today is a race between software engineers striving to build bigger and better idiot-proof programs
and the universe trying to produce bigger and better idiots. So far, the universe is winning. (Richard Cook)
|
|
NeulingInDelphi 
Hält's aus hier
Beiträge: 4
|
Verfasst: Fr 24.02.06 18:45
Danke für die Antwort, wie schon gesagt, es sind diverse Tippfehler drin--> Programm ist auf dem Rechner in der Schule, musste es von einem Ausdruck abtippen.
Mein Lehrer gibt sich wirklich keine Mühe mit uns, hoffe auf weitere Infos, nehme alle Anmerkungen an.
|
|
raiguen
      
Beiträge: 374
WIN 2000prof, WIN XP prof
D7EP, MSSQL, ABSDB
|
Verfasst: So 26.02.06 17:55
GSE hat folgendes geschrieben: | Zitat: | Naja, und bei manchen 'Kommentaren' und Berichtigungen Deines Lehres fällt mir auch nix mehr ein...
Aber das nur am Rande... | ich finde nicht, dass man das nur am Rande betrachten sollte.
@NeulingInDelphi: Kannst du deinen "Informatik"-Lehrer mal fragen warum du 2(!) Punkte Abzug bekommst wegen dem Semikolon hinter "close"?
das is doch vollkommen regelkonform
ich würds nur einfach gerne wissen |
Moin
Genau das meinte ich 'Aber das nur am Rande...', weil ich mich zu den 'Qualitäten' der Lehrer nicht weiter äußern wollte, ohne mich in Rage zu reden. Weil leider, leider ich die Erfahrung gemacht habe, dass die Lehrer zu 90% selber nicht im Stoff stehen geschweige denn den Schülern bei Programmierproblemen wirklich auf die Sprünge helfen können. Statt dessen wird ein fehlendes Semikolon (was durchaus regelkonform sein kann) oder aber eine nicht aussagekräftige VariablenBenennung 'bemeckert'.
Zitat: |
Mein Lehrer gibt sich wirklich keine Mühe mit uns, |
bestätigt mal wieder meine Erfahrungen.
Wenn Dein Lehrer sich wirklich Mühe geben wpürde und sich in Deinen Quellcode richtig einlesen würde, dann wäre ihm unter anderem aufgefallen dass hier aufgefallen:
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17: 18: 19: 20: 21: 22: 23: 24: 25: 26: 27: 28: 29: 30: 31: 32: 33: 34:
| unit Unit1;
interface
uses Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls;
type TForm1 = class(TForm) Laufzeit: TButton; . . . procedure LaufzeitClick (Sender:TObjekt); . . .
var Faelligkeitsdarlehen:TFaelligkeitsdarlehen; Laufzeit, Kreditsumme, Zinssatz, Faelligkeitsdarlehen, komplett: single;
procedure TFaelligkeitsdarlehen.LaufzeitClick(Sender:TObject); var sLaufzeit: string; begin sLaufzeit:= Inputbox('Eingabe','Wieviele Tage?','0'); Laufzeit:= StrToFloat (sLaufzeit); <--spätestens hier meckert der Compiler 'incompatible Typen' LabelLaufzeit.Caption:= sLaufzeit; end; . . . |
Exaemplarisch für Laufzeit: zum einen ist das ein Button und später eine VAriable, der ein Wert zugewiesen werden soll. Das klappt nicht und der Compiler meckert zu recht.
Tipp: den Button Laufzeit umbennen in ButtonLaufzeit... Sinngemäß das auch bei den anderen Buttons so machen.
Die Frage, WAS denn nun nicht läuft an dem Programm oder welche Fehlermeldungen etc erscheinen ist immer noch nicht hinreichend beantwortet...
Gruß
Moderiert von raziel: Quote- durch Delphi-Tags ersetzt.
|
|
Kroko
      
Beiträge: 1284
W98 W2k WXP
Turbo D
|
Verfasst: Mo 27.02.06 09:39
raiguen hat folgendes geschrieben: | ...
Moin
Genau das meinte ich 'Aber das nur am Rande...', weil ich mich zu den 'Qualitäten' der Lehrer nicht weiter äußern wollte, ohne mich in Rage zu reden. Weil leider, leider ich die Erfahrung gemacht habe, dass die Lehrer zu 90% selber nicht im Stoff stehen geschweige denn den Schülern bei Programmierproblemen wirklich auf die Sprünge helfen können. Statt dessen wird ein fehlendes Semikolon (was durchaus regelkonform sein kann) oder aber eine nicht aussagekräftige VariablenBenennung 'bemeckert'.
Zitat: |
Mein Lehrer gibt sich wirklich keine Mühe mit uns, |
bestätigt mal wieder meine Erfahrungen.
Wenn Dein Lehrer sich wirklich Mühe geben wpürde und sich in Deinen Quellcode richtig einlesen würde, dann wäre ihm unter anderem aufgefallen dass hier aufgefallen:
|
Wie viele Informatiklehrer hattest Du den schon, dass Du 90% als unqualifiziert abstempeln kannst
Wenn ich mir so die verschiedenen Delphi-Foren anschaue, dann gibt es genug Threads in denen 90% der Schüler im Info-Unterricht lieber im I-Net surfen als dem Lehrer zu folgen und dann mit Thread-Überschrift "HILFE ..." nach einer fertigen Aufgabenlösung suchen. Selber Denken und lesen macht klug!
_________________ Die F1-Taste steht nicht unter Naturschutz und darf somit regelmäßig und oft benutzt werden! oder Wer lesen kann, ist klar im Vorteil!
|
|
raiguen
      
Beiträge: 374
WIN 2000prof, WIN XP prof
D7EP, MSSQL, ABSDB
|
Verfasst: Mo 27.02.06 10:47
Kroko hat folgendes geschrieben: |
Wie viele Informatiklehrer hattest Du den schon, dass Du 90% als unqualifiziert abstempeln kannst
Wenn ich mir so die verschiedenen Delphi-Foren anschaue, dann gibt es genug Threads in denen 90% der Schüler im Info-Unterricht lieber im I-Net surfen als dem Lehrer zu folgen und dann mit Thread-Überschrift "HILFE ..." nach einer fertigen Aufgabenlösung suchen. Selber Denken und lesen macht klug! |
Informatiklehrer selber nicht, aber viele Schüler/nnen und Praktikanten/innen, die zu mir kommen, weil sie die oben erwähnte 'Problematik' haben, nämlich die, dass der Lehrer keine wirklich große Hilfe ist und sich nicht bzw wenig bemüht, zusammen mit dem Schüler die Lösung zu finden. Sorry, aber diese Lehrer sind anscheinend überfordert und dann darf man sich auch nicht wundern, wenn im I-Net rum gesurft wird, um nach Informationen und/oder Hilfe zu suchen und nicht unbedingt nach einer fertigen Aufgabenlösung...
Aber ich denke, wir sollten uns hier nicht weiter um die 'Qualität' der Informatiklehrer und der Schüler ereifern, weil dass ne unendliche Geschichte wird und letztlich nicht viel bringt. Schaun mer doch viel mehr, inwiefern sich der NeulingInDelphi weiterhin an der Problemlösung beteiligt bzw die gebotene Hilfe/Anregungen umsetzt...
Bis dahin...
|
|
Watsch
      
Beiträge: 97
Win98 SE
D3 Prof, D4 C/S
|
Verfasst: Mo 27.02.06 12:13
Hi.
Ein weiterer Fehler:
Delphi-Quelltext 1: 2: 3: 4: 5: 6: 7: 8: 9:
| procedure TFaelligkeitsdarlehen.FaelligkeitsdarlehenClick(Sender:TObject); var sFälligkeitsdarlehen: string; begin Faelligkeitsdarlehen:= Kreditsumme*(Zinssatz*100)*(Laufzeit/365); sFaelligkeitsdarlehen:= FormatFloat ('#,##0.00',komplett); Showmessage('Der zu zahlende Betrag ist'+ skomplett+ 'Euro' +chr(13);
end; |
Zeichen wie ä,ö,ü,ß sind nur als Strings erlaubt, und führen ansonsten zu Fehlermeldungen
Moderiert von raziel: Delphi-Tags hinzugefügt und Color- durch Highlight-Tags ersetzt.
|
|
|