Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
61 changes: 41 additions & 20 deletions DArray.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -56,18 +56,35 @@ void DArray::arrayTiger(Tiger *arr, int roomOfTi){
for (int i = 0; i < roomOfTi; i++) {
temp_ti[i] = arr[i];
}
//delete[] arr;
delete[] arr;

for (int i = 0; i < roomOfTi * 2; i++) {
arr[i] = Tiger(0, 0.00, 0, 0.00, 0.00);
}
//for (int i = 0; i < roomOfTi * 2; i++) {
// arr[i] = Tiger(0, 0.00, 0, 0.00, 0.00);
//}
arr = temp_ti;
setRoomOfTi(roomOfTi*2);
}

void DArray::arrayPen(Penguin *arra, int roomOfPe){
//Penguin peng;

Penguin *temp_pe = new Penguin[roomOfPe * 2];
/********************************
for(int i=0; i< roomOfPe ; i++) {

temp_pe[i] = arra[i];
}

for(int j=0; j<roomOfPe ; j++){

temp_pe[roomOfPe +j] = Penguin(0, 0.00, 0, 0.00, 0.00);
}

delete [] arra;

arra = temp_pe;

**********************************/

for (int i = 0; i < roomOfPe * 2; i++) {
temp_pe[i] = Penguin(0, 0.00, 0, 0.00, 0.00);
Expand All @@ -77,12 +94,13 @@ void DArray::arrayPen(Penguin *arra, int roomOfPe){
temp_pe[i] = arra[i];
}

//delete [] arra;
delete [] arra;

for (int i = roomOfPe; i < roomOfPe * 2; i++) {
arra[i] = Penguin(0, 0.00, 0, 0.00, 0.00);
}
// for (int i = roomOfPe; i < roomOfPe * 2; i++) {
// arra[i] = Penguin(0, 0.00, 0, 0.00, 0.00);
// }
arra = temp_pe;

setRoomOfPe(roomOfPe*2);

}
Expand All @@ -98,11 +116,11 @@ void DArray::arrayTur(Turtle *array, int roomOfTu){
for (int i = 0; i < roomOfTu; i++) {
temp_tu[i] = array[i];
}
//delete [] array;
delete [] array;

for (int i = roomOfTu; i < roomOfTu * 2; i++) {
array[i] = Turtle(0, 0.00, 0, 0.00, 0.00);
}
// for (int i = roomOfTu; i < roomOfTu * 2; i++) {
// array[i] = Turtle(0, 0.00, 0, 0.00, 0.00);
// }

array = temp_tu;
setRoomOfTu(roomOfTu*2);
Expand All @@ -116,7 +134,8 @@ void DArray::pickRemove(int &ti, int &pe, int &tu, Tiger *arr, Penguin *arra, Tu

int whoSick;

int *allAnimal = new int[numOfAni];
//int *allAnimal = new int[numOfAni];
int allAnimal[numOfAni];

for (int i = 0; i < ti; i++) {

Expand Down Expand Up @@ -210,7 +229,6 @@ void DArray::pickRemove(int &ti, int &pe, int &tu, Tiger *arr, Penguin *arra, Tu
}

}
delete[] allAnimal;

}

Expand All @@ -228,7 +246,8 @@ void DArray::whoHasBaby(int &numTi, int &numPen, int &numTurt, Tiger *arr, Pengu
}
std::cout <<"Number of Adult Tigers: " << numAdTi << std::endl;

int *adultTiger = new int[numAdTi];
// int *adultTiger = new int[numAdTi];
int adultTiger [numAdTi];

int j = 0;
for (int i = 0; i < numTi; i++) {
Expand All @@ -246,7 +265,8 @@ void DArray::whoHasBaby(int &numTi, int &numPen, int &numTurt, Tiger *arr, Pengu
}
std::cout <<"Number of Adult penguins: " << numAdPen << std::endl;

int *adultPenguin = new int[numAdPen];
//int *adultPenguin = new int[numAdPen];
int adultPenguin[numAdPen];

int k = 0;
for (int i = 0; i < numPen; i++) {
Expand All @@ -265,7 +285,8 @@ void DArray::whoHasBaby(int &numTi, int &numPen, int &numTurt, Tiger *arr, Pengu
}
std::cout << "Number of Adult Turtle: " << numAdTur << std::endl;

int *adultTurtle = new int[numAdTur];
//int *adultTurtle = new int[numAdTur];
int adultTurtle[numAdTur];

int l = 0;
for (int i = 0; i < numTurt; i++) {
Expand Down Expand Up @@ -312,6 +333,7 @@ void DArray::whoHasBaby(int &numTi, int &numPen, int &numTurt, Tiger *arr, Pengu

}
//Add the new baby to the array of Tiger.

arr[numTi - 1] = Tiger(0, 10000.00, 0, zoo.baseCost*5, 10000.00*0.2);

}
Expand Down Expand Up @@ -339,6 +361,7 @@ void DArray::whoHasBaby(int &numTi, int &numPen, int &numTurt, Tiger *arr, Pengu

}

Penguin peng;
//Adds the penguin babies to the array of Penguin.
for (int i = 0; i < 5; i++) {
arra[numPen - 5 + i] = Penguin(0, 1000.00, 0, zoo.baseCost, 1000.00*0.1);
Expand Down Expand Up @@ -376,7 +399,5 @@ void DArray::whoHasBaby(int &numTi, int &numPen, int &numTurt, Tiger *arr, Pengu
}

}
delete[] adultTiger;
delete[] adultPenguin;
delete[] adultTurtle;

}
33 changes: 23 additions & 10 deletions Zoo.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -73,6 +73,7 @@ void Zoo::play(){
Turtle turtle;
//double baseCost = 10.00;


tiger.setCost(10000.00);
penguin.setCost(1000.00);
turtle.setCost(100.00);
Expand All @@ -85,6 +86,10 @@ void Zoo::play(){
penguin.setPayoff(penguin.getCost()*0.1);
turtle.setPayoff(turtle.getCost()*0.05);





DArray room;

room.setRoomOfTi(10);
Expand Down Expand Up @@ -139,7 +144,7 @@ void Zoo::play(){

for(int i =0; i <numOfTig; i++) {

arrayOfTi[i] = Tiger(0, tiger.getCost(), 0, tiger.getBaseFoodCost(), tiger.getPayoff());
arrayOfTi[i] = Tiger(0, 10000, 0, baseCost*5, 10000*0.2);
}
account -= (numOfTig*tiger.getCost());

Expand All @@ -162,9 +167,8 @@ void Zoo::play(){

for(int i =0; i <numOfPeng; i++) {

arrayOfPe[i] = Penguin(0, penguin.getCost(), 0, penguin.getBaseFoodCost(), penguin.getPayoff());
arrayOfPe[i] = Penguin(0, 1000, 0, baseCost, 1000 * 0.1);
}

account -= (numOfPeng * penguin.getCost());

std::cin.clear();
Expand All @@ -187,7 +191,8 @@ void Zoo::play(){

for(int i =0; i <numOfTurt; i++) {

arrayOfTur[i] = Turtle(0, turtle.getCost(), 0, turtle.getBaseFoodCost(), turtle.getPayoff());
arrayOfTur[i] = Turtle(0, 100,0,baseCost*0.5, 100*0.05);
//(0, turtle.getCost(), 0, turtle.getBaseFoodCost(), turtle.getPayoff());
}
account -= (numOfTurt* turtle.getCost());

Expand Down Expand Up @@ -257,6 +262,7 @@ void Zoo::play(){
int dice[]={1,2,3,1,1,1};
std::uniform_int_distribution <int> dist7(0, 5);
cheapOpt = dist7(mt);
std::cout<<"feedOpt 1 random number: "<<std::endl;

event = dice[cheapOpt];
}
Expand All @@ -273,6 +279,8 @@ void Zoo::play(){
std::uniform_int_distribution <int> dist8(0, 5);
premOpt = dist8(mt);

std::cout<<"feedOpt 3 random number: "<<premOpt<<std::endl;

event = dice2[premOpt];
}

Expand All @@ -284,6 +292,8 @@ void Zoo::play(){
std::uniform_int_distribution <int> dist(1, 3);
event = dist(mt);

std::cout<<"feedOpt 2 random number: "<<event<<std::endl;

}

std::cout<<std::endl;
Expand Down Expand Up @@ -343,9 +353,9 @@ void Zoo::play(){
account= account + profit;

std::cout<<"\nNow it's the time to check your balance."<<std::endl;
std::cout<<"Today's Tiger payoff "<<numOfTig * tiger.getPayoff()<<std::endl;
// std::cout<<"The Penguin's payoff "<<numOfPeng * penguin.getPayoff()<<std::endl;
std::cout<<"The Turtle's payoff "<<numOfTurt * turtle.getPayoff()<<std::endl;
//std::cout<<"Today's Tiger payoff "<<numOfTig * tiger.getPayoff()<<std::endl;
//std::cout<<"The Penguin's payoff "<<numOfPeng * penguin.getPayoff()<<std::endl;
//std::cout<<"The Turtle's payoff "<<numOfTurt * turtle.getPayoff()<<std::endl;
std::cout<<"So, Your today's income from admission fee is "<<todayAIncome<<std::endl;
std::cout<<"And, today's your bonus income is "<<bonus<<std::endl;
std::cout<<"Today's your profit(Admission income + bonus - daily cost)= "<<profit<<std::endl;
Expand Down Expand Up @@ -403,7 +413,8 @@ void Zoo::play(){

}
//Adds a new tiger to the array.
arrayOfTi[numOfTig] = Tiger(3, tiger.getCost(), 0, tiger.getBaseFoodCost(), tiger.getPayoff());
arrayOfTi[numOfTig] = Tiger(3, 10000, 0, baseCost*5, 10000*0.2);
//(3, tiger.getCost(), 0, tiger.getBaseFoodCost(), tiger.getPayoff());
numOfTig +=1;
account -= tiger.getCost();
std::cout<<"After you buy the tiger, your balance is "<<account<<std::endl;
Expand All @@ -417,7 +428,8 @@ void Zoo::play(){
room.arrayPen(arrayOfPe, room.getRoomOfPe());

}
arrayOfPe[numOfPeng] = Penguin(3, penguin.getCost(), 0, penguin.getBaseFoodCost(), penguin.getPayoff());
arrayOfPe[numOfPeng] = Penguin(3, 1000, 0, baseCost, 1000*0.1);
//(3, penguin.getCost(), 0, penguin.getBaseFoodCost(), penguin.getPayoff());
numOfPeng+=1;
account -= penguin.getCost();
std::cout<<"After you buy the penguin, your balance is "<<account<<std::endl;
Expand All @@ -432,7 +444,8 @@ void Zoo::play(){
room.arrayTur(arrayOfTur, room.getRoomOfTu());

}
arrayOfTur[numOfTurt] = Turtle(3, turtle.getCost(), 0, turtle.getBaseFoodCost(), turtle.getPayoff());
arrayOfTur[numOfTurt] = Turtle(3, 100, 0, baseCost*0.5, 100*0.05);
//(3, turtle.getCost(), 0, turtle.getBaseFoodCost(), turtle.getPayoff());
numOfTurt+=1;
account -= turtle.getCost();
std::cout<<"After you buy the turtle, your balance is "<<account<<std::endl;
Expand Down
3 changes: 2 additions & 1 deletion Zoo.h
Original file line number Diff line number Diff line change
Expand Up @@ -20,6 +20,8 @@ class Zoo {
int numOfTurt =0;




public:
Zoo();
~Zoo();
Expand All @@ -35,7 +37,6 @@ class Zoo {
**********************************/
void play();
double baseCost = 10.00;

};


Expand Down