![]() |
Zinseszins-Berechnung
Hallo,
ich schreibe am Donnerstag eine Kursarbeit in Informatik. Leider fehlt mein Lehrer meistens bzw. erklärt uns nichts, weshalb ich nun nicht weiß, was an folgenden Programmen falsch ist. Vielen Dank, sollte sich einer erbarmen und die Fehler korrigieren. Aufgabe war: "Schreibe ein Programm, das bei Eingabe von Startkapital, Zinssatz, Zielkapital die Laufzeit einer Anlage (von Geld) ausgibt. Formuliere das Programm mit While und Repeat."
Code:
procedure TForm1.Button1Click(Sender: TObject);
begin x := StrToFloat(Edit1.Text); Zinssatz := StrToFloat(Edit2.Text); Zielkapital := StrToFloat(Edit3.text); repeat X := X * (Zinssatz/100*1); Memo1.Lines.Add(FloatToStr(x)); until X >= Zielkapital; Laufzeit := Memo1.Lines.Count; end; |
AW: Was ist falsch?
Erstens ist das kein Programm (nur ein Ausschnitt) und wieso glaubst Du, dass es falsch ist?
|
AW: Was ist falsch?
Habe nur noch die ganzen Variablen als Real definiert (außer Laufzeit, das mit Integer).
In der Memo spuckt mir das Programm nur ganz viele Nullen aus... |
AW: Was ist falsch?
Moin,
sei bitte so gut und gib Deinem Beitrag einen aussagekräftigen Titel. ;-) (Den Stand jetzt ist wenigstens der falsch) Allgemein hat sich bei diesen Problemen bewährt, die Lösung "umgangssprachlich" zu formulieren und zwar so konkret, dass Du anhand dieser Beschreibung mit Stift und Papier zur korrekten Lösung kommen würdest. Danach weiß man i.A. sehr fix, was im Programm falsch läuft. |
AW: Was ist falsch?
Hi,
entschuldigung, aber wo ändert man den Titel? Habe nichts finden können. Über so einen Lösungsansatz wäre ich noch glücklicher... |
AW: Was ist falsch?
Zitat:
Besser wäre:
Code:
X := X * (Zinssatz/100 + 1);
|
AW: Was ist falsch?
Leichsinnsfehler :cry: Aber vielen vielen Dank!
|
AW: Zinseszins-Berechnung
Du benutzt kein
Delphi-Quellcode:
, also ist die Aufgabe nicht richtig beantwortet.
while
|
AW: Zinseszins-Berechnung
Ich verstehe allerdings nicht, was für einen Mehrwert das bringen soll, bzw. wie man dort noch while einbinden soll.
Ich hätte jetzt noch geschrieben:
Code:
Aber das ginge ja auch ohne While-Schleife? Beziehungsweise mit ner einfachen If...then-Struktur
procedure TForm1.Button1Click(Sender: TObject);
begin x := StrToFloat(Edit1.Text); Zinssatz := StrToFloat(Edit2.Text); Zielkapital := StrToFloat(Edit3.text); while (x< Zielkapital) do begin repeat X := X * (Zinssatz/100 + 1); Memo1.Lines.Add(FloatToStr(x)); until X >= Zielkapital; end; Laufzeit := Memo1.Lines.Count; Button1.Caption:= IntToStr(Laufzeit) + ' Monate'; |
AW: Zinseszins-Berechnung
Unser Lehrer damals hatte uns eine ähnliche Aufgabe gestellt und wollte dabei auf den Unterschied zwischen "while" und "repeat" hinaus. Wir sollten damals eine Lösung tatsächlich auf verschiedene Arten implementieren.
Hier nun einen Weg finden zu wollen, der auf Teufel komm raus beide Schleifen-Typen in ein und demselben Code-Schnipsel berücksichtigt, hielte ich für wenig hilfreich. |
Alle Zeitangaben in WEZ +1. Es ist jetzt 07:33 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