Herzlich Willkommen, lieber Gast!
  Sie befinden sich hier:

  Forum » C / C++ (ANSI-Standard) » Probleme: nach wieviel jahren verdoppelt sich mein guthaben ???

Forum | Hilfe | Team | Links | Impressum | > Suche < | Mitglieder | Registrieren | Einloggen
  Quicklinks: MSDN-Online || STL || clib Reference Grundlagen || Literatur || E-Books || Zubehör || > F.A.Q. < || Downloads   

Autor Thread - Seiten: [ 1 ] > 2 <
010
01.12.2004, 00:16 Uhr
mimi1983



wahrscheinlich versteht ihr meine frage nicht!!!!
ich will wissen nach wievielen Jahren sich mein Guthaben verdoppelt hat.
z.b. Ihr Guthaben hat sich nach 20 Jahren verdoppelt.
Tage und so ist mir egal, mir geht es alleine um die Jahre und wenn möglich mit einer Schleife berechnen.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
011
01.12.2004, 00:18 Uhr
Windalf
Der wo fast so viele Posts wie FloSoft...
(Operator)


ok dann mach ichs für dich extra nochmal in ner schleife

C++:
double f(double p){while(0);return log(2)/log(1+p);}


oder alternativ damit mir keiner nachsagen kann die schleife würde gar nicht durchlaufen

C++:
double f(double p){while(1)break;return log(2)/log(1+p);}


--
...fleißig wie zwei Weißbrote

Dieser Post wurde am 01.12.2004 um 00:20 Uhr von Windalf editiert.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
012
01.12.2004, 00:33 Uhr
(un)wissender
Niveauwart





Bearbeitung:

Vielleicht kapiert er es ja noch...
Ich habe noch eine:

C++:
for(int i = 0; i < 0; ++i);




--
Wer früher stirbt ist länger tot.

Dieser Post wurde am 01.12.2004 um 00:34 Uhr von (un)wissender editiert.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
013
01.12.2004, 03:23 Uhr
Windalf
Der wo fast so viele Posts wie FloSoft...
(Operator)


so hab jetzt kein Bock mehr auf Powerpoint designen... für heute reichts mir... bevor ich mich in die Falle haue kann ichs ja jetzt mal ein wenig ausführlicher erklären...

also angenommen man hat 100 Eurolies und bekommt ein Jahr lang mit p=5% verzinst...
dann hat man nach einem Jahr

K(1) = 100 + 100*0,05 = 100* (1+0,05) = 100*(1+p)= 105

so angenommen wir verzinsen das was wir am ende erhalten nochmal bekommen wir

K(2)=K(1)*(1+p)=K(0)*(1+p)^2
so wie man also leicht (ein)sieht gilt K(n) = K(0) * (1+p)^n

so in der aufgabenstellung ist nun gefragt nach wievielen Jahren n sich K(0) verdoppelt hat... also gesucht ist n unter der Bedinung das K(n)>=2*K(0)

setzen wir das ein haben wir also 2*K(0)=K(0)*(1+p)^n...
wie man unschwer sieht kann man K(0) rauskürzen...

bleibt also 2=(1+p)^n übrig... wenig überraschender weise ist das unabhängig vom Wert des eingesetzen Kapitals... es spielt also überhaupt keine Rolle mit welches Kapital ich anlege die Verdopplung dauert immer gleich Lange abhängig vom Zins... In der Praxis sieht das natürlich anders aus da der Zins hier abhängig ist von dem anzulegenden Kapital... Frag mal in der Bank du willst 20 Euro anlegen (da wird der bearbeiter grinsen und sagen schön packs aufs Sparkonto mit satten 0,75% zinsen)... legt man 5000€ an sind schon locker 3-5% und ein wenig mehr je nach risikobereitschaft und bei 1000000 gibts natürlich noch mal nen bisschen mehr...

so um zur aufgabe zurückzukommen, der spass lässt sich durch logarithmieren nach n umstellen... also log(2) =log((1+p)^n) ... da gilt log(a^b)=b*log(a) folgt also für n

n=log(2)/log(1+p) und fertig ist.... damit ist deine aufgabe also hinreichend gelöst... das mit ner schleife zu machen ist die erbärmliche Lösung für die Leute die sich vorher keine Gedanken drüber machen was eigentlich zu tun ist...
--
...fleißig wie zwei Weißbrote
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
014
01.12.2004, 04:11 Uhr
0xdeadbeef
Gott
(Operator)


Würde an der Stelle erwähnen wollen, dass log(2)/log(1+p) auch ne armselige Lösung (nichts für ungut, windalf ) für Leute ist, die sich vor Konstanten und Kommentaren scheuen. Sinnvoll wäre

C++:
int years_to_double(double zinssatz) {
  /* ln 2 = 0.69314..., aufgerundet */
  return (int) (1 + 0.69314718055994530941 / log(1.0 + zinssatz));
}


--
Einfachheit ist Voraussetzung für Zuverlässigkeit.
-- Edsger Wybe Dijkstra
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
015
01.12.2004, 11:25 Uhr
virtual
Sexiest Bit alive
(Operator)


@beefy
Na, wenn schon, dann:

C++:
int years_to_double(double zinssatz) {
  static const double  ln_2 = log(2);
  return (int) (1 + ln_2 / log(1.0 + zinssatz));
}


--
Gruß, virtual
Quote of the Month
Ich eß' nur was ein Gesicht hat (Creme 21)
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
Seiten: [ 1 ] > 2 <     [ C / C++ (ANSI-Standard) ]  


ThWBoard 2.73 FloSoft-Edition
© by Paul Baecher & Felix Gonschorek (www.thwboard.de)

Anpassungen des Forums
© by Flo-Soft (www.flo-soft.de)

Sie sind Besucher: