Archiv
Ansicht:   
Suche   erweiterte Suche

Nachricht aus dem Archiv

MudGuard schrieb am 27.October.2005, 20:56:24 in der Kategorie web.coding

VBA - Kopfgesteuert mit WHILE

> Dim K As Currency
> Dim p As Single
> Dim g As Currency

Variablennamen dürfen mehr als einen Buchstaben haben.

> Do
> K = InputBox(\" Kapital? \", \"Kapital\")
> Loop While K > 10000

Kapital darf nicht höher als 10000 sein.
Das Startkapital soll verdoppelt werden.
==> Das Startkapital darf wie hoch sein?

> e = 0
> y = K
> X = 2 * K

Ah. Noch mehr kryptische Variablennamen.

> Do While y > x

Dank der kryptischen Namen ist das praktisch unlesbar.

Schöner wäre doch z.B.

Do While currentCapital < doubledStartCapital

> Select Case K

Hier verwendest Du für die Abfrage das Startkapital statt des aktuellen.
Hättest Du nicht so kryptische Namen verwendet, wäre Dir das leichter aufgefallen.

> Case Is < 5000
> p = 4
> Case Else
> End Select

Gab es in der Aufgabenstellung nicht noch mehr Abstufungen des Zinssatzes?
0-1000=2% /1001 - 5000 = 4% / 5001 - 10000 = 6%.
Ja, gab es. Wo werden die berücksichtigt?

> e = e + 1
> g = K / 100 * p
> t = (K + g) * p
> t = K + t
> Loop

K wird nie verändert, also wird sich der Zinssatz nicht ändern.
Wenn das angesammelte Kapital (Startkapital + Zinsen) in die nächste Zinsstufe kommt, müßte sich der Zinssatz ändern. Wird er aber nie tun.

Und da sich auch weder an x noch an y etwas ändert (den beiden Variablen in Deiner Schleifenbedingung), wird diese Schleife endlos laufen.

> `Läuft nicht!

Läuft endlos  ;-)

> Falls ich mich aber wieder falsch benommen haben sollte ( ich hoffe aber
> nicht ) bedanke ich mich jetzt nicht schon im vorraus.Bitte behandelt mich
> nicht zu hart.

Sorry, aber Dein erstes Posting klang wie: Hier meine Hausaufgaben. Jetzt macht mal. Aber zackig  ;-)
Archiv
Ansicht:   
Suche   erweiterte Suche
Auf unserer Web-Seite werden Cookies eingesetzt, um diverse Funktionalitäten zu gewährleisten. Hier erfährst du alles zum Datenschutz