www.vorhilfe.de
Vorhilfe

Kostenlose Kommunikationsplattform für gegenseitige Hilfestellungen.
Hallo Gast!einloggen | registrieren ]
Startseite · Forum · Wissen · Kurse · Mitglieder · Team · Impressum
Forenbaum
^ Forenbaum
Status Vorhilfe
  Status Geisteswiss.
    Status Erdkunde
    Status Geschichte
    Status Jura
    Status Musik/Kunst
    Status Pädagogik
    Status Philosophie
    Status Politik/Wirtschaft
    Status Psychologie
    Status Religion
    Status Sozialwissenschaften
  Status Informatik
    Status Schule
    Status Hochschule
    Status Info-Training
    Status Wettbewerbe
    Status Praxis
    Status Internes IR
  Status Ingenieurwiss.
    Status Bauingenieurwesen
    Status Elektrotechnik
    Status Maschinenbau
    Status Materialwissenschaft
    Status Regelungstechnik
    Status Signaltheorie
    Status Sonstiges
    Status Technik
  Status Mathe
    Status Schulmathe
    Status Hochschulmathe
    Status Mathe-Vorkurse
    Status Mathe-Software
  Status Naturwiss.
    Status Astronomie
    Status Biologie
    Status Chemie
    Status Geowissenschaften
    Status Medizin
    Status Physik
    Status Sport
  Status Sonstiges / Diverses
  Status Sprachen
    Status Deutsch
    Status Englisch
    Status Französisch
    Status Griechisch
    Status Latein
    Status Russisch
    Status Spanisch
    Status Vorkurse
    Status Sonstiges (Sprachen)
  Status Neuerdings
  Status Internes VH
    Status Café VH
    Status Verbesserungen
    Status Benutzerbetreuung
    Status Plenum
    Status Datenbank-Forum
    Status Test-Forum
    Status Fragwürdige Inhalte
    Status VH e.V.

Gezeigt werden alle Foren bis zur Tiefe 2

Navigation
 Startseite...
 Neuerdings beta neu
 Forum...
 vorwissen...
 vorkurse...
 Werkzeuge...
 Nachhilfevermittlung beta...
 Online-Spiele beta
 Suchen
 Verein...
 Impressum
Das Projekt
Server und Internetanbindung werden durch Spenden finanziert.
Organisiert wird das Projekt von unserem Koordinatorenteam.
Hunderte Mitglieder helfen ehrenamtlich in unseren moderierten Foren.
Anbieter der Seite ist der gemeinnützige Verein "Vorhilfe.de e.V.".
Partnerseiten
Dt. Schulen im Ausland: Mathe-Seiten:

Open Source FunktionenplotterFunkyPlot: Kostenloser und quelloffener Funktionenplotter für Linux und andere Betriebssysteme
Forum "BASIC" - VBA While - und Untilschleifen
VBA While - und Untilschleifen < BASIC < Programmiersprachen < Praxis < Informatik < Vorhilfe
Ansicht: [ geschachtelt ] | ^ Forum "BASIC"  | ^^ Alle Foren  | ^ Forenbaum  | Materialien

VBA While - und Untilschleifen: Frage (beantwortet)
Status: (Frage) beantwortet Status 
Datum: 12:42 So 23.10.2005
Autor: parodie17

Hallo zusammen.Ich hab schon alles versucht,bekomme aber diese WI-Hausaufgabe einfach nicht hin
Wann werde ich Halbmillionär (DM - Millionär)?
Kevin Müller möchte wissen, wann er seine erste halbe Million (DM Millionär) haben wird.Dazu schreibt er sich ein kleines VBA - Programm.Er gibt zunächst mit Hilfe von Input-Boxen folgende Parameter ein :
Sein Alter / sein momentanes Gehalt / die geschätzte Steigerung des Gehaltes pro Jahr in Prozent / Die geschätzte Verzinsung seines Sparkapitals in Prozent
Folgende Regeln gelten :
Unter 4000 Euro spart der 20 % seines Gehaltes, ab 4000 Euro 25 %, ab 5000 Euro 30 % . Die Steigerung seines Gehaltes soll alle 12 Monate einmal brücksichtigt werden. Die Verzinsung des Sparkapitals soll vereinfacht am Ende jeden Jahres erfolgen. Das Ergebnis soll in Jahren ausgegeben werden,außerdem das Alter zu diesem Zeitpunkt.

Also, ich habe das jetzt so gemacht :
Sub Millionär ()
Dim Gehalt as Curency
Dim Steigerung As Single
Dim Verzinsung As Single
Dim p As Single
Dim  age As Long

Gehalt = InputBox ("Bitte geben sie ihr Gehalt an.",  "Gehalt")
Steigerung = InputBoX ( Bitte geben Sie die geschätzte Steigerung des
Gehaltes pro Jahr in Prozent an.", "Steigerung Gehalt")
Verzinsung= inputbox("Bitte geben Sie die geschätzte Verzinsung Ihres Sparkapitals in Prozent an.", "Verzinsung Sparkapital")
age = inputbox("Bitte geben Sie Ihr Alter an.","Alter")

If Gehalt < 4000 Then
p = 20
Else
If Gehalt < 5000
p = 25
Else
p = 30

End if
End if

g = Gehalt
j = 1

Do until g > 500000
j = j + 1
age = age +1
v = g* Steigerung / 100
f = Verzinsung * g* p / 100
g = g + v+ f
Loop

Ende = Msgbox("Halbmillionär nach " & j & "Jahren und im ALter von " & age, 19, "Halbmillionär")

End Sub

Ich weiß nicht , wo mein Fehler liegt, denn als Lösung soll herauskommen:
bei einem Alter von 25 und einem Gehalt von 2500 und einer jährlichen Gehaltssteigerung von 2% und Bankzinsen von 2,5 % soll er nach 35/36 Jahren im Alter von 60 Jahren,Halbmilionär sein.

        
Bezug
VBA While - und Untilschleifen: Millionär nicht in diesem Lebe
Status: (Antwort) fehlerhaft Status 
Datum: 00:40 Mo 24.10.2005
Autor: rostwolf

Hallo Natascha,

ganz so schnell geht es wohl doch nicht. Nach meiner Rechnung dauert es 94 Jahre, um eine halbe Euromillion angespart zu haben. Nach 36 Jahren hat man gerade mal ca. 44.900 Euro angespart.

Hier meine VBA-Routine:

g = Gehalt ' Anfangsgehalt
    suspar = Gehalt / 100 * p      ' Sparkapital im 1. Jahr
    j = 0

    Do Until suspar > 500000
        j = j + 1
        age = age + 1
        sparzins = Verzinsung * suspar / 100  ' Zinsen auf Sparkapital
        g = g + g * Steigerung / 100    ' Gehaltssteigerung
        Select Case g
            Case Is < 4000
                p = 20
            Case Is < 5000
                p = 25
            Case Else
                p = 30
        End Select
        suspar = suspar + sparzins + p / 100 * g ' Sparkapital + Neuanlage
    Loop

    Ende = MsgBox("nach " + Str(j) + " Jahren - im Alter von " + Str(age) + " > 500000"

Ich hab mal eine Gegenrechnung in einer Excel-Tabelle gemacht - ergab dasselbe Ergebnis.

Rechne mal nach!
Gruß Wolfgang.



Bezug
                
Bezug
VBA While - und Untilschleifen: Mitteilung
Status: (Mitteilung) Reaktion unnötig Status 
Datum: 06:52 Mo 24.10.2005
Autor: parodie17

Hallo rostwolf
Viieelen Dank für deine Mühe.Auf dieses Ergebnis bin ich bei vorherigen Versuchen auch gekommen.Vielleicht hat sich unser Lehrer auch vertan.Ich werde ihn nochmal fragen und melde mich dann wieder.Schließlich sollen die anderen, die auch bei dieser Aufgabe hängenbleiben nicht verwirrt werden, wenn das vorgegebene Ergebnis nicht stimmt.
Nochmals vielen Dank
Natascha

Bezug
                
Bezug
VBA While - und Untilschleifen: Korrektur
Status: (Mitteilung) Reaktion unnötig Status 
Datum: 20:14 Di 25.10.2005
Autor: parodie17

Hallo rostwolf
Heute hatten wir wieder WI. Wir haben die Lösung von unserem Lehrer erhalten. Er musste sich selbst ganz schön konzentrieren.Ich glaube in der ganzen Klasse hatte niemand die richtige Anrwort.
Daran sieht man ja, dass die Aufgabe ganz schön verzwickt ist.
Also hier die Lösung:

Sub Millionär()
Dim Alter As Byte
Dim Gehalt As Currency
Dim Verzinsung As Single

Alter = InputBox("Alter?",  "Alter")
Gehalt = InputBox("Gehalt?",  "Gehalt")
Verzinsung = Inputbox("Verzinsung?",  "Verzinsung")
Steigerung = InputBox("Steigerung?",  "Steigerung")

K = 0
j = 0

Do Until K > 500000
Select Case Gehalt
Case Is < 4000
p = 0,2
Case Is < 5000
p = 0,25
Case Else
p = 0,3
End Select
K = K + 1
j = j + 1
Alter = Alter + 1
SB = Gehalt * 12 * p
Zinsen = (SB + K) * Verzinsung / 100
K = Zinsen + SB + K
Gehalt = Gehalt * Steigerung / 100 + Gehalt
Loop

Ende = MsgBox ("Halbmillionär nach "  & j &  " Jahren und im Alter von "  & Alter & " Jahren.", 16, "Halbmillionär")

ENd Sub

Nochmals vielen Dank für Deine Bemühungen.Ich hoffe, dass ich alles richtig abgetippt habe.
mfg Natascha

Bezug
                        
Bezug
VBA While - und Untilschleifen: so was dummes...
Status: (Mitteilung) Reaktion unnötig Status 
Datum: 01:22 Do 27.10.2005
Autor: rostwolf

Hallo Natascha,

ja, dein Lehrer hat recht!

Mein Ansatz war schon gut, doch ich habe einen  dämlichen Fehler gemacht:

pro Jahr hatte ich nur  ein Gehalt und nicht 12 davon berechnen lassen. Dann geht das doch in diesem Leben...

Gruss von Wolfgang.

Bezug
Ansicht: [ geschachtelt ] | ^ Forum "BASIC"  | ^^ Alle Foren  | ^ Forenbaum  | Materialien


^ Seitenanfang ^
www.vorhilfe.de