|
Ryzan
Anmeldungsdatum: 19. März 2009
Beiträge: Zähle...
|
also, in der schule müssen wir jetzt prozent rechnen.. aus langeweile hatte ich die idee ein programm zu schreiben, das mir das geld ausrechnet das ich nach x jahren bekomme. das problem ist, ich weiss nicht wie ich einen loop so einbaue das er mir das richtig anzeigt.. #include<iostream>
using namespace std;
double kapital;
double prozent;
int main()
{
cout << "wie viel geld hast du angelegt?(in euro)";
cin >> kapital;
cout << "wie viele zinsen bekommst du? (in prozent)";
cin >> prozent;
double money = kapital/100*prozent+kapital;
cout << "du bekommst " << money << "€" << endl;
}das ist das was ich schon habe, ich möchte halt das man noch eingeben kann wie viele jahre man zinsen bekommt.. ist das mit einem normalen for loop möglich? mfg, ryzan
|
|
Greebo
Anmeldungsdatum: 21. November 2006
Beiträge: 3443
|
Ryzan schrieb: also, in der schule müssen wir jetzt prozent rechnen.. aus langeweile hatte ich die idee ein programm zu schreiben, das mir das geld ausrechnet das ich nach x jahren bekomme. das problem ist, ich weiss nicht wie ich einen loop so einbaue das er mir das richtig anzeigt.. #include<iostream>
using namespace std;
double kapital;
double prozent;
int main()
{
cout << "wie viel geld hast du angelegt?(in euro)";
cin >> kapital;
cout << "wie viele zinsen bekommst du? (in prozent)";
cin >> prozent;
double money = kapital/100*prozent+kapital;
cout << "du bekommst " << money << "€" << endl;
}das ist das was ich schon habe, ich möchte halt das man noch eingeben kann wie viele jahre man zinsen bekommt.. ist das mit einem normalen for loop möglich? mfg, ryzan
Du kennst aber schon die Zinseszins-Formel?
|
|
Ryzan
(Themenstarter)
Anmeldungsdatum: 19. März 2009
Beiträge: Zähle...
|
ne die kannt ich nicht, mein mathe lehrer ist scheiße, der peilt nichts, deshalb lern ich sowas ja auch @home^^ thx, damit werd ich das dann nochmal versuchen, damit gehts bestimmt besser, ich schreib dann gleich obs geht^^ mfg, ryzan
|
|
Greebo
Anmeldungsdatum: 21. November 2006
Beiträge: 3443
|
Für das hochnehmen gibt es die Funktion pow in cpp.
Sollte also soetwas wie
result = kapital * pow( 1 + prozent / 100.0, jahre)
klappen.
|
|
Ryzan
(Themenstarter)
Anmeldungsdatum: 19. März 2009
Beiträge: 162
|
wie nett du bist, ich wollt gerade fragen wie das mit den hochrechnung geht^^ dann cshau ich mir auch das mal an..^^
|
|
Ryzan
(Themenstarter)
Anmeldungsdatum: 19. März 2009
Beiträge: 162
|
na super, ich bin leider nicht sehr gut in english (ich glaube, schlecht passt besser) kann mir dazu einer etwas deutsches sagen?... mfg, ryzan
|
|
DasIch
Anmeldungsdatum: 2. November 2005
Beiträge: 1130
|
Wenn ihr dass Thema habt seit ihr mindestens in der 7. Klasse, solltest du in NRW sein und dass dürfte woanders nicht viel variieren. Die nötigen Englisch Kenntnisse wirst du auch haben, dass ist wenn eine Frage des Willens.
|
|
Greebo
Anmeldungsdatum: 21. November 2006
Beiträge: 3443
|
Das ist schlecht 😉. Englisch ist doch recht hilfreich, wenn man sich mit Programmieren außeinandersetzen will. Ich hab seit nem knappen Jahrzehnt nicht mehr wirklich CPP verwendet, insofern sicherlich nicht die schönste Lösung
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20 | /* Zinseszins Berechnen */
#include <iostream>
/* Enthält die meisten mathematischen Funktionen */
#include <cmath>
using namespace std;
double kapital;
double prozent;
int jahre;
int main()
{
cout << "wie viel geld hast du angelegt?(in euro) ";
cin >> kapital;
cout << "wie viele zinsen bekommst du? (in prozent) ";
cin >> prozent;
cout << "wie viele Jahre sollen beruecksichtigt werden? ";
cin >> jahre;
double geld = kapital * pow( 1 + prozent / 100.0, jahre);
cout << "du bekommst " << geld << "€" << endl;
return 0;
}
|
EDIT: Hmmm hatte in der ersten Variante den Rückgabewert vergessen. Warum meckert da g++ -Wall nicht drüber?
|
|
Ryzan
(Themenstarter)
Anmeldungsdatum: 19. März 2009
Beiträge: 162
|
ah vielen dank, das wollt ihc haben, wieder etwas dazu gelernt^^ nun ja, dafür das du das so lange nicht mehr gemacht hast kennst du dich aber gut aus^^ was muss man machen damit man von dem symbol (wahrscheinliich gibts ein besseres wort dafür, wäre nett wenn mir das einer sagen könnt)was entsteht aus starten kann,
also wie eine exedatei?
|
|
Greebo
Anmeldungsdatum: 21. November 2006
Beiträge: 3443
|
Hmmm ich verstehe deine Frage nicht 100% 😉. Geht es dir darum die entstandene Anwendung zu starten? Die ist wenn du so willst eine exe-Datei (In Linux nennt sich der Format ELF). Dateiendungen spielen unter Linux nicht die Rolle wie unter Windows. Das System erkennt an der Struktur der Datei um was für einen Dateityp es sich handelt, und wie damit umgegangen werden muss. Compilieren kannst du die Quelldatei mit
g++ -Wall zinseszins.cpp -o zinseszins
falls sie zinseszins.cpp heisst. Wall macht den Compiler etwas "pedantischer", nach -o steht der Ausgabename. Starten geht dann zB. mit
./zinseszins
./ Sorgt dafür, das zinseszins aus dem aktuellen Verzeichnis ausgeführt wird. Willst du darauf verzichten, kannst du deine Binaries auch im Ordner ~/bin ablegen, dann sind sie von überall aus "normal" erreichbar, ich denke darum gings dir.
|
|
danielrichter
Anmeldungsdatum: 14. Februar 2008
Beiträge: 273
|
Greebo schrieb: EDIT: Hmmm hatte in der ersten Variante den Rückgabewert vergessen. Warum meckert da g++ -Wall nicht drüber?
Kenne deine erste Variante nicht, aber falls du die main-Funktion meinst: Laut C++-Standard ist er optional (hab ich zumindest hier entnommen). Der g++ ist demnach einer der wenigen Compiler, die sich wirklich daran halten.
|
|
Greebo
Anmeldungsdatum: 21. November 2006
Beiträge: 3443
|
Danke, ja ging in der Tat um die main-Funktion. Das bei main der Rückgabewert optional ist, wusste ich nicht. Finde ich spontan auch ne unnötige/hässliche Ausnahme. Na ja die werden schon gewusst haben, wieso.
|
|
Ryzan
(Themenstarter)
Anmeldungsdatum: 19. März 2009
Beiträge: 162
|
Greebo schrieb: Hmmm ich verstehe deine Frage nicht 100% 😉. Geht es dir darum die entstandene Anwendung zu starten? Die ist wenn du so willst eine exe-Datei (In Linux nennt sich der Format ELF). Dateiendungen spielen unter Linux nicht die Rolle wie unter Windows. Das System erkennt an der Struktur der Datei um was für einen Dateityp es sich handelt, und wie damit umgegangen werden muss. Compilieren kannst du die Quelldatei mit
g++ -Wall zinseszins.cpp -o zinseszins
falls sie zinseszins.cpp heisst. Wall macht den Compiler etwas "pedantischer", nach -o steht der Ausgabename. Starten geht dann zB. mit
./zinseszins
./ Sorgt dafür, das zinseszins aus dem aktuellen Verzeichnis ausgeführt wird. Willst du darauf verzichten, kannst du deine Binaries auch im Ordner ~/bin ablegen, dann sind sie von überall aus "normal" erreichbar, ich denke darum gings dir.
schade, eigentlich wollte ich das als symbol halt sofort machen, also ohne das ins terminal einzugeben, da ich das auf dauer... nicht so schön finde.
naja, ich werd dann mal schaun, das programm funts auf jeden fall bis jetzt, so lern ich sogar noch ausserhalb meines buches cpp weiter^^ mfg, ryzan
|
|
Greebo
Anmeldungsdatum: 21. November 2006
Beiträge: 3443
|
Ach du willst das über deine GUI starten? Das lässt sich auch problemlos machen. Da du eine Terminalanwendung geschrieben hast, brauchst du eine Console oder einen virtuellen Terminal. Ich verwende mal xterm, weil der quasi überall verfügbar sein sollte.
Falls du GNOME nutzt lege einfach einen Starter an. Als Befehl gibst du
xterm -hold -e PFAD/PROGRAMM
an. -hold sorgt dafür, dass das Fenster nach der Ausführung offen bleibt und du das Ergebnis lesen kannst. Unter KDE und Co geht das natürlich analog.
|
|
user_unknown
Anmeldungsdatum: 10. August 2005
Beiträge: 17630
|
Greebo schrieb: | //...
double kapital;
double prozent;
int jahre;
int main()
>
|
Fragt sich, wieso kapital, prozent und jahre als globale Variablen angelegt werden.
|