Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <iostream>
- #include <fstream>
- using namespace std;
- class koers {
- public:
- koers();
- void berekenkoers(int bedrag);
- void leesbestand();
- int kiesaandelen(int dag, int bedrag);
- int bitstring(int dag);
- ifstream invoer;
- string invoernaam;
- int n, doeldag, dag, bedrag; //int voor n en Tw en huidige dag
- float bnul; //float voor B0
- int aandelen;
- float koersmatrix[100][100]; //matrix voor koersen van de dagen [dag][koers[
- float rente[100]; //array voor het opslaan van de rentes [dag]
- bool bezit[10]; //array voor bezit van aandelen
- }; //class koers
- koers::koers(){
- invoernaam = "";
- dag = 0;
- bedrag = 0;
- for(int i = 0; i < 10; i++){
- bezit[i] = false;
- }//for
- }//koers::koers
- int koers::kiesaandelen(int dag, int bedrag){
- int tijdelijk = 0;
- for(int i = 0; i < n; i++){
- if( bezit[i] == false && (koersmatrix[dag+1][i] > koersmatrix[dag][i] && bedrag > koersmatrix[dag][i])){
- tijdelijk = bedrag - koersmatrix[dag][i];
- cout << "Koop " << i << endl;
- bezit[i] = true;
- for(int j = i+1; j < n; j++){
- if(bezit[j] == false && (koersmatrix[dag+1][j] > koersmatrix[dag][j] && tijdelijk > koersmatrix[dag][j])){
- tijdelijk = tijdelijk - koersmatrix[dag][j];
- cout << "Koop " << j << endl;
- bezit[j] = true;
- }//if
- }//for
- }//if
- }//for
- return tijdelijk;
- }//void kiesaandelen
- int koers::bitstring(int dag){
- int tijdelijk = 0;
- if(dag < (doeldag + 1)){
- for(int i = 0; i < n; i++){
- if(bezit[i] == true){
- tijdelijk = tijdelijk + koersmatrix[dag][i];
- bezit[i] = false;
- cout << "Verkoop " << i << endl;
- }//if
- }//for
- return tijdelijk;
- }//if
- if(dag == (doeldag +1)){
- return 0;
- }//if
- }//void bitstring
- void koers::berekenkoers(int bedrag){
- for(int dag = 0; dag < doeldag + 1; dag++){
- cout << "Dag " << dag << endl;
- bedrag = bedrag * rente[dag];
- cout << "Rente " << bedrag << endl;
- bedrag = bedrag + koers::bitstring(dag);
- cout << "Verkoop aandelen " << bedrag << endl;
- bedrag = koers::kiesaandelen(dag, bedrag);
- }//for
- cout << bedrag;
- }//void berekenkoers
- //functie voor het inlezen van een doelbestand met daarin de benodigde waardes
- //invoernaam wordt dynamisch bepaald, en de waardes worden naar de goede
- //variabelen weggeschreven
- void koers::leesbestand(){
- cout << "Welk bestand wil je openen?" << endl;
- cin >> invoernaam;
- invoer.open(invoernaam.c_str(), ios::in);
- if( !invoer ){
- cout << "Bestand bestaat niet";
- return;
- }//if
- invoer >> doeldag;
- invoer >> n;
- invoer >> bnul;
- for(int i = 0; i < (doeldag + 1); i++){
- for(int j = 0; j < n; j++){
- invoer >> koersmatrix[i][j];
- }
- }
- for(int i = 0; i < (doeldag ); i++){
- invoer >> rente[i];
- }//for
- }//void leesbestand
- int main (){
- koers start;
- start.leesbestand();
- start.berekenkoers(start.bnul);
- }//main
Advertisement
Add Comment
Please, Sign In to add comment