diff --git a/DArray.cpp b/DArray.cpp new file mode 100644 index 0000000..d876025 --- /dev/null +++ b/DArray.cpp @@ -0,0 +1,101 @@ +/**************************************************************************************************** + * * Program name: CS162 Project2 + * * Author: Taekyoung Kim + * * Date: 01/21/2019 + * * Description: This is Zoo.cpp file for CS162 Project2 + * * This project shows a zoo that has a few animals. We needs inheritance and class...... + ******************************************************************************************************/ + + +#include "DArray.h" +#include "Zoo.h" + + +DArray::DArray() =default; +DArray::~DArray()=default; + +int DArray::getSizeOfTi(){ + return sizeOfTi; + +} +void DArray::setSizeOfTi(int ti){ + sizeOfTi = ti; + +} +int DArray::getSizeOfPe(){ + return sizeOfPe; +} +void DArray::setSizeOfPe(int pe){ + sizeOfPe = pe; + +} +int DArray::getSizeOfTu(){ + return sizeOfTu; + +} +void DArray::setSizeOfTu(int tu){ + sizeOfTu = tu; + +} +void DArray::arrayTiger(Tiger *arr, int sizeOfTi){ + + Tiger *temp_ti = new Tiger[sizeOfTi * 2]; + + for (int i = 0; i < sizeOfTi * 2; i++) { + temp_ti[i] = Tiger(0, 0.00, 0, 0.00, 0.00); + } + + for (int i = 0; i < sizeOfTi; i++) { + temp_ti[i] = arr[i]; + } + setSizeOfTi(sizeOfTi*2); + // delete[] arr; + // for (int i = 0; i < sizeOfTi * 2; i++) { + // arr[i] = Tiger(0, 0.00, 0, 0.00, 0.00); + // } + + arr = temp_ti; + +} +void DArray::arrayPen(Penguin *arra, int sizeOfPe){ + + Penguin *temp_pe = new Penguin[sizeOfPe * 2]; + + for (int i = 0; i < sizeOfPe * 2; i++) { + temp_pe[i] = Penguin(0, 0.00, 0, 0.00, 0.00); + } + + for (int i = 0; i < sizeOfPe; i++) { + temp_pe[i] = arra[i]; + } + setSizeOfPe(sizeOfPe*2); + + for (int i = sizeOfPe; i < sizeOfPe * 2; i++) { + arra[i] = Penguin(0, 0.00, 0, 0.00, 0.00); + } + + arra = temp_pe; + +} +void DArray::arrayTur(Turtle *array, int sizeOfTu){ + + Turtle *temp_tu = new Turtle[sizeOfTu * 2]; + + for (int i = 0; i < sizeOfTu * 2; i++) { + temp_tu[i] = Turtle(0, 0.00, 0, 0.00, 0.00); + } + + for (int i = 0; i < sizeOfTu; i++) { + temp_tu[i] = array[i]; + } + + setSizeOfTu(sizeOfTu*2); + // delete[] array; + + for (int i = sizeOfTu; i < sizeOfTu * 2; i++) { + array[i] = Turtle(0, 0.00, 0, 0.00, 0.00); + } + + array = temp_tu; + +} \ No newline at end of file diff --git a/DArray.h b/DArray.h new file mode 100644 index 0000000..2bcdccb --- /dev/null +++ b/DArray.h @@ -0,0 +1,46 @@ +/**************************************************************************************************** + * * Program name: CS162 Project2 + * * Author: Taekyoung Kim + * * Date: 01/21/2019 + * * Description: This is Zoo.cpp file for CS162 Project2 + * * This project shows a zoo that has a few animals. We needs inheritance and class...... + ******************************************************************************************************/ + + +#ifndef PROJECT2_DARRAY_H +#define PROJECT2_DARRAY_H +#include "Turtle.h" +#include "Animal.h" +#include "Penguin.h" +#include "Tiger.h" + + +class DArray { + +protected: + int sizeOfTi; + int sizeOfPe; + int sizeOfTu; + + Tiger *arr; + Penguin *arra; + Turtle *array; + +public: + DArray(); + ~DArray(); + int getSizeOfTi(); + void setSizeOfTi(int ti); + int getSizeOfPe(); + void setSizeOfPe(int pe); + int getSizeOfTu(); + void setSizeOfTu(int tu); + void arrayTiger(Tiger *arr, int sizeOfTi); + void arrayPen(Penguin *arra, int sizeOfPe); + void arrayTur(Turtle *array, int sizeOfTu); + + +}; + + +#endif //PROJECT2_DARRAY_H diff --git a/Zoo.cpp b/Zoo.cpp index b204b69..fbaded8 100644 --- a/Zoo.cpp +++ b/Zoo.cpp @@ -14,6 +14,7 @@ #include "Tiger.h" #include "Penguin.h" #include "Turtle.h" +#include "DArray.h" Zoo::Zoo()=default; @@ -25,26 +26,46 @@ int Zoo::getDay(){ void Zoo::setDay(int d){ day = d; } +int Zoo::getNumOfTig(){ + return numOfTig; +} +void Zoo::setNumOfTig(int tig){ + numOfTig =tig; + +} +int Zoo::getNumOfPeng(){ + return numOfPeng; + +} +void Zoo::setNumOfPeng(int pen){ + numOfPeng = pen; + +} +int Zoo::getNumOfTurt(){ + return numOfTurt; -void Zoo::play() { +} +void Zoo::setNumOfTurt(int turt){ + numOfTurt =turt; +} - std::cout << "Welcome to the Zoo! Now you run this Fantastic Zoo." << std::endl; - std::cout << "First, you need to buy animals. You can buy three animals: Tiger, Penguin, and Turtle." << std::endl; - std::cout << "You can only buy 1 or 2 per animals this first day with the basic given money, $100,000" << std::endl; - std::cout << "You need to pay $10,000 for tiger, $1,000 for Penguin, and $100 for Turtle." << std::endl; - std::cout << "You need to feed those animals everyday. The basic food cost is $10 per day." << std::endl; - std::cout << "The tiger needs 5 times more than the basic food cost, and the turtle only needs half of that cost." - << std::endl; - std::cout << "Yes, it's too much cost, But don't worry. Those animals make money for you everyday" << std::endl; - std::cout << "Tiger makes 20% of its cost, Penguin makes 10% of its cost, and turtle makes 5% of its cost" - << std::endl; - std::cout << std::endl; +void Zoo::play(){ + + std::cout<<"Welcome to the Zoo! Now you run this Fantastic Zoo."<> fBuyTi; - numOfTi = inputVal(fBuyTi); + setNumOfTig(inputVal(fBuyTi)); - if (!(numOfTi == 1 || numOfTi == 2)) { + if(!(getNumOfTig()==1 || getNumOfTig() ==2)) { - do { + do{ std::cin.clear(); std::cin.ignore(INT_MAX, '\n'); - std::cout << "Wrong input. You can buy only 1 or 2 Tigers, Please try again: "; + std::cout<<"Wrong input. You can buy only 1 or 2 Tigers, Please try again: "; std::cin >> fBuyTi; - numOfTi = inputVal(fBuyTi); - } while (!(numOfTi == 1 || numOfTi == 2)); + setNumOfTig(inputVal(fBuyTi)); + }while(!(getNumOfTig() ==1 || getNumOfTig()==2)); } - for (int i = 0; i < numOfTi; i++) { + for(int i =0; i > fBuyP; - numOfPe = inputVal(fBuyP); + setNumOfPeng(inputVal(fBuyP)); - if (!(numOfPe == 1 || numOfPe == 2)) { + if(!(getNumOfPeng() ==1 || getNumOfPeng() ==2)) { - do { + do{ std::cin.clear(); std::cin.ignore(INT_MAX, '\n'); - std::cout << "Wrong input. You can buy only 1 or 2 Penguins, Please try again: "; + std::cout<<"Wrong input. You can buy only 1 or 2 Penguins, Please try again: "; std::cin >> fBuyP; - numOfPe = inputVal(fBuyP); - } while (!(numOfPe == 1 || numOfPe == 2)); + setNumOfPeng(inputVal(fBuyP)); + }while(!(getNumOfPeng() ==1 || getNumOfPeng() ==2)); } - for (int i = 0; i < numOfPe; i++) { + for(int i =0; i > fBuyTu; - numOfTu = inputVal(fBuyTu); + std::cout<<"How many Turtles do you want to buy? Choose 1 or 2: "; + std::cin>>fBuyTu; + setNumOfTurt(inputVal(fBuyTu)); - if (!(numOfTu == 1 || numOfTu == 2)) { + if(!(getNumOfTurt() ==1 || getNumOfTurt() ==2)) { - do { + do{ std::cin.clear(); std::cin.ignore(INT_MAX, '\n'); - std::cout << "Wrong input. You can buy only 1 or 2 Turtles, Please try again: "; - std::cin >> fBuyTu; - numOfTu = inputVal(fBuyTu); - } while (!(numOfTu == 1 || numOfTu == 2)); + std::cout<<"Wrong input. You can buy only 1 or 2 Turtles, Please try again: "; + std::cin>>fBuyTu; + setNumOfTurt(inputVal(fBuyTu)); + + }while(!(getNumOfTurt() ==1 || getNumOfTurt() ==2)); } - for (int i = 0; i < numOfTu; i++) { + for(int i =0; i dist(1, 3); + std::uniform_int_distribution dist(1, 3); event = dist(mt); - std::cout << "Today's event is: " << event << std::endl; + std::cout<<"Today's event is: "< dist2(0, numOfAni - 1); + std::uniform_int_distribution dist2(0,numOfAni-1); whoSick = dist2(mt); // A Tiger gets sick and remove - if (whoSick < numOfTi) { + if(whoSick < getNumOfTig()) { - std::cout << "Your Tiger number " << whoSick + 1 << " got sick and died. So sorry!" << std::endl; - numOfTi -= 1; + std::cout<<"Your Tiger number "<= numOfTi && whoSick < numOfTi + numOfPe) { + //A Penguin get sick and remove + else if(whoSick>= getNumOfTig() && whoSick < getNumOfTig()+getNumOfPeng()) { - numOfPe -= 1; + setNumOfPeng(getNumOfPeng()-1); //arrayOfPe[whoSick-numOfTi]; - int sickP = whoSick - numOfTi; + int sickP= whoSick -getNumOfTig(); - std::cout << "Your Penguin number " << sickP << " got sick and died. So sorry" << std::endl; + std::cout<<"Your Penguin number "<= numOfTi+numOfPe && whoSick < numOfAni { - numOfTu -= 1; - //arrayOfTur[whoSick -(numOfTi + numOfPe)]; - int sickTu = whoSick - (numOfTi + numOfPe); - std::cout << "Your Turtle number " << sickTu << " got sick and died. So sorry" << std::endl; + setNumOfTurt(getNumOfTurt()-1); + //arrayOfTur[whoSick -(numOfTi + numOfPe)]; + int sickTu = whoSick -(getNumOfTig() + getNumOfPeng()); + std::cout<<"Your Turtle number "< dist3(250, 500); - bonus = dist3(mt); - std::cout << "Your today bonus is " << bonus * numOfTi << std::endl; - bonus = (bonus * numOfTi); //bonus * number of tiger + std::uniform_int_distribution dist3(250, 500); + bonus= dist3(mt); + std::cout<<"Your today bonus is "< dist5(1, 3); - pickType = dist5(mt); + //This event gives babies to the animal, event ==3 + else{ - std::cout<<"Now Today's event is baby and the animal number is: "<= 3) { + numAdTi += 1; + } + } + std::cout <<"Number of Adult Tigers: " << numAdTi << std::endl; + + int *adultTiger = new int[numAdTi]; + int j = 0; + for (int i = 0; i < getNumOfPeng(); i++) { + if (arrayOfTi[i].getAge() >= 3) { + adultTiger[j] = i; + j++; + } + std::cout<<"Age of Penguins: "<= 3) { + numAdPen += 1; + } + } + std::cout <<"Number of Adult penguins: " << numAdPen << std::endl; - std::cout<<"Your tiger is gonna have a baby!"<= 3) { - adult = true; - numOfATig += 1; - } + int *adultPenguin = new int[numAdPen]; + int k = 0; + for (int i = 0; i < getNumOfPeng(); i++) { + if (arrayOfPe[i].getAge() >= 3) { + adultPenguin[k] = i; + k++; } - int adultTig[numOfATig]; + } - for (int i = 0; i < numOfTi; i++) { - if (arrayOfTi[i].getAge() >= 3) { - adultTig[i]; - } - } - if (adult) { - std::cout<<"You have adult Penguin"< dist6(0, numOfATig - 1); - pickTiger = dist6(mt); - chosenTig = adultTig[pickTiger]; - //Updates the baby record to the tiger who has a baby - arrayOfTi[chosenTig].setNumOfBabies(arrayOfTi[chosenTig].getNumOfBabies() + 1); - numOfTi += 1; - //Resize the array in case the number of tiger is going to be bigger that the size. - if (numOfTi >= roomForTi) { - Tiger *temp_ti = new Tiger[roomForTi * 2]; - - for (int i = 0; i < roomForTi * 2; i++) { - temp_ti[i] = Tiger(0, 0.00, 0, 0.00, 0.00); - } - - for (int i = 0; i < roomForTi; i++) { - temp_ti[i] = arrayOfTi[i]; - } - roomForTi *= 2; - delete[] arrayOfTi; - arrayOfTi = temp_ti; - } - //Add the baby at the end of the array. - arrayOfTi[numOfTi - 1] = Tiger(0, tigCost, 0, tiger.getBaseFoodCost(), tiger.getPayoff()); - } else //There is no adult - { - std::cout<<"I'm sorry you don't have adult Tiger. Let's check the Penguin!"<= 3) { + numAdTur += 1; } + std::cout<<"Age of Turtles: "<= 3) { - adult = true; - numOfAPen += 1; - } + std::cout << "Number of Adult Turtle: " << numAdTur << std::endl; + + int *adultTurtle = new int[numAdTur]; + + int l = 0; + for (int i = 0; i < getNumOfTurt(); i++) { + if (arrayOfTur[i].getAge() >= 3) { + adultTurtle[l] = i; + l++; } - int adultPen[numOfAPen]; + } + + + //to just show an check + for (int m = 0; m < numAdPen; m++) { + + std::cout << "Adult Penguin: " << adultPenguin[m] << std::endl; + } + + int numAdAnimal = numAdTi + numAdPen + numAdTur; + + std::uniform_int_distribution dist5(0, numAdAnimal - 1); + draw = dist5(mt); + + //A Tiger has a baby. + if (numAdAnimal <= 0) { + std::cout << "Sorry. You don't have any adult animals. Maybe next time!" << std::endl; + } + + else { + if (draw < numAdTi) { + int chosenTi; + chosenTi = adultTiger[draw]; + std::cout << "Your tiger number: "<= roomForTi) { + + DArray arr; + arr.setSizeOfTi(roomForTi); + arr.arrayTiger(arrayOfTi, roomForTi); + roomForTi = arr.getSizeOfTi(); + + std::cout<<"Room For Tiger inside "<= 3) { - adultPen[i]; } + //Add the new baby to the array of Tiger. + arrayOfTi[getNumOfTig() - 1] = Tiger(0, tigCost, 0, tiger.getBaseFoodCost(), tiger.getPayoff()); + } - if (adult) { - std::cout<<"You have adult Penguin"< dist7(0, numOfAPen - 1); - pickPenguin = dist7(mt); - chosenPen = adultPen[pickPenguin]; - - //Updates the baby record to the penguin who has 5 babies - arrayOfPe[chosenPen].setNumOfBabies(arrayOfPe[chosenPen].getNumOfBabies() + 1); - numOfPe += 5; - //Resize the array in case the number of tiger is going to be bigger that the size. - - if (numOfPe >= roomForPe) { - Penguin *temp_pe = new Penguin[roomForPe * 2]; - - for (int i = 0; i < roomForPe * 2; i++) { - temp_pe[i] = Penguin(0, 0.00, 0, 0.00, 0.00); - } - - for (int i = 0; i < roomForPe; i++) { - temp_pe[i] = arrayOfPe[i]; - } - roomForPe *= 2; - delete[] arrayOfPe; - arrayOfPe = temp_pe; + //A penguin has 5 babies. + + else if (draw >= numAdTi && draw < numAdTi + numAdPen) { + int chosenPen; + chosenPen = adultPenguin[draw - numAdTi]; + std::cout << "Your penguin number "<= roomForPe) { + + //resize(arrayOfPe, roomForPe); + DArray arra; + arra.setSizeOfPe(roomForPe); + arra.arrayPen(arrayOfPe, roomForPe); + roomForPe = arra.getSizeOfPe(); + + std::cout<<"Room For penguin inside "<= 3) { - adult = true; - numOfATur += 1; - } - } - int adultTur[numOfATur]; - for (int i = 0; i < numOfTu; i++) { - if (arrayOfTur[i].getAge() >= 3) { - adultTur[i]; - } } + //A turtle has 10 babies. + + else // whoSick >= numOfTi+numOfPe && whoSick < numOfAni + { + int chosenTurtle; + chosenTurtle = adultTurtle[draw - numAdTi - numAdPen]; + std::cout << "Your Turtle number "<= roomForTu) { + + DArray array; + array.setSizeOfTu(roomForTu); + array.arrayTur(arrayOfTur, roomForTu); + roomForTu = array.getSizeOfTu(); - if (adult) { - std::cout<<"You have adult turtle"< dist8(0, numOfATur - 1); - pickTurtle = dist8(mt); - chosenTur = adultTur[pickTurtle]; - - //Updates the baby record to the Turtle who has 10 babies - arrayOfTur[chosenTur].setNumOfBabies(arrayOfPe[chosenTur].getNumOfBabies() + 1); - numOfPe += 10; - if (numOfTu >= roomForTu) { - Turtle *temp_tu = new Turtle[roomForTu * 2]; - - for (int i = 0; i < roomForTu * 2; i++) { - temp_tu[i] = Turtle(0, 0.00, 0, 0.00, 0.00); - } - - for (int i = 0; i < roomForTu; i++) { - temp_tu[i] = arrayOfTur[i]; - } - roomForTu *= 2; - delete[] arrayOfTur; - arrayOfTur = temp_tu; } //Adds the babies to the array of Turtle. for (int i = 0; i < 10; i++) { - arrayOfTur[numOfTu - 10 + i] = Turtle(0, turCost, 0, turtle.getBaseFoodCost(), + arrayOfTur[getNumOfTurt() - 10 + i] = Turtle(0, turCost, 0, turtle.getBaseFoodCost(), turtle.getPayoff()); } - } else { - std::cout << "I'm sorry, but there is no adult animal here. Maybe next time!" << std::endl; } + + //delete [] allAnimal; } } - double todayAIncome = - numOfTi * tiger.getPayoff() + numOfPe * penguin.getPayoff() + numOfTu * turtle.getPayoff(); - account = account + bonus + todayAIncome - costPerDay; - std::cout << "Now it's the time to check your balance." << std::endl; - std::cout << "Today's Tiger payoff " << numOfTi * tiger.getPayoff() << std::endl; - std::cout << "The Penguin's payoff " << numOfPe * penguin.getPayoff() << std::endl; - std::cout << "The Turtle's payoff " << numOfTu * turtle.getPayoff() << std::endl; - std::cout << "So, Your total admission fee income is " << todayAIncome << std::endl; - std::cout << "And, today's your bonus income is " << bonus << std::endl; - std::cout << "Now your balance is " << account << std::endl; + double todayAIncome =getNumOfTig()*tiger.getPayoff()+getNumOfPeng()*penguin.getPayoff()+getNumOfTurt()*turtle.getPayoff(); + account= account + bonus + todayAIncome - costPerDay; + + std::cout<<"Now it's the time to check your balance."<>buyNewOne; + buyNew =inputVal(buyNewOne); + + if(!(buyNew ==1 || buyNew ==2)) { + + do{ + std::cin.clear(); + std::cin.ignore(INT_MAX, '\n'); + std::cout<<"Wrong input. You can only input 1 or 2, Please try again: "; + std::cin>>buyNewOne; + buyNew =inputVal(buyNewOne); + }while(!(buyNew ==1 || buyNew ==2)); + } + if(buyNew==1) { - double buyNewOne; - int buyNew; + double buyChoice; + int buyOneMore; + std::cout + << "So, you want to buy. Good! which animal will you buy; input 1 for Tiger, 2 for Penguin, and 3 for Turtle: "; + std::cin >> buyChoice; + buyOneMore = inputVal(buyChoice); - std::cin.clear(); - std::cin.ignore(INT_MAX, '\n'); - std::cout << "Pretty busy day, right? Now you can buy an adult animal." << std::endl; - std::cout << "Currently, you have " << numOfTi << " Tigers, " << numOfPe << " Penguins, " << numOfTu - << " Turtles" << std::endl; - std::cout << "If you want to buy, input 1, otherwise (it you don't want to buy), click 2: "; - std::cin >> buyNewOne; - buyNew = inputVal(buyNewOne); + if(!(buyOneMore ==1 || buyOneMore ==2 || buyOneMore ==3)) { - if (!(buyNew == 1 || buyNew == 2)) { - - do { + do{ std::cin.clear(); std::cin.ignore(INT_MAX, '\n'); - std::cout << "Wrong input. You can only input 1 or 2, Please try again: "; - std::cin >> buyNewOne; - buyNew = inputVal(buyNewOne); - } while (!(buyNew == 1 || buyNew == 2)); - } + std::cout<<"Wrong input. You should input 1,2,or 3. Please try again: "; + std::cin >> buyChoice; + buyOneMore = inputVal(buyChoice); - if (buyNew == 1) { + }while(!(buyOneMore ==1 || buyOneMore ==2 || buyOneMore ==3)); + } - double buyChoice; - int buyOneMore; - std::cout - << "So, you want to buy. Good! which animal will you buy; input 1 for Tiger, 2 for Penguin, and 3 for Turtle: "; - std::cin >> buyChoice; - buyOneMore = inputVal(buyChoice); + if (buyOneMore == 1) { - if (!(buyOneMore == 1 || buyOneMore == 2 || buyOneMore == 3)) { + std::cout << "So, you decided to buy a Tiger. Best Choice!" << std::endl; + if(getNumOfTig() >= roomForTi) { - do { - std::cin.clear(); - std::cin.ignore(INT_MAX, '\n'); - std::cout << "Wrong input. You should input 1,2,or 3. Please try again: "; - std::cin >> buyChoice; - buyOneMore = inputVal(buyChoice); + DArray arr; + arr.setSizeOfTi(roomForTi); + arr.arrayTiger(arrayOfTi, roomForTi); + roomForTi = arr.getSizeOfTi(); - } while (!(buyOneMore == 1 || buyOneMore == 2 || buyOneMore == 3)); } + //Adds a new tiger to the array. + arrayOfTi[getNumOfTig()] = Tiger(3, tigCost, 0, tiger.getBaseFoodCost(), tiger.getPayoff()); + setNumOfTig(getNumOfTig()+1); + account -= tigCost; + std::cout<<"After you buy the tiger, your balance is "<= roomForTi) { - Tiger *temp_ti = new Tiger[roomForTi * 2]; - - for (int i = 0; i < roomForTi * 2; i++) { - temp_ti[i] = Tiger(0, 0.00, 0, 0.00, 0.00); - } - - for (int i = 0; i < roomForTi; i++) { - temp_ti[i] = arrayOfTi[i]; - } - delete[] arrayOfTi; - //arrayOfTi[0] = Tiger(0, 0.00, 0, 0.00, 0.00); - arrayOfTi = temp_ti; - //temp_ti[0] = Tiger(0, 0.00, 0, 0.00, 0.00); - roomForTi *= 2; - } - arrayOfTi[numOfTi - 1] = Tiger(3, tigCost, 0, tiger.getBaseFoodCost(), tiger.getPayoff()); - account -= tigCost; - std::cout << "After you buy the tiger, your balance is " << account << std::endl; - } else if (buyOneMore == 2) { - - std::cout << "So, you decided to buy a Penguin. Fantastic Choice!" << std::endl; - numOfPe += 1; - if (numOfPe >= roomForPe) { - Penguin *temp_pe = new Penguin[roomForPe * 2]; - - for (int i = 0; i < roomForPe * 2; i++) { - temp_pe[i] = Penguin(0, 0.00, 0, 0.00, 0.00); - } - - for (int i = 0; i < roomForPe; i++) { - temp_pe[i] = arrayOfPe[i]; - } - roomForPe *= 2; - delete[] arrayOfPe; - arrayOfPe = temp_pe; + else if (buyOneMore == 2) { - } - arrayOfPe[numOfPe - 1] = Penguin(3, penCost, 0, penguin.getBaseFoodCost(), penguin.getPayoff()); - account -= penCost; - std::cout << "After you buy the penguin, your balance is " << account << std::endl; - - } else // (buyOneMore == 3) - { - std::cout << "So, you decided to buy a Turtle. Beautiful Choice!" << std::endl; - - numOfTu += 1; - if (numOfTu >= roomForTu) { - Turtle *temp_tu = new Turtle[roomForTu * 2]; - - for (int i = 0; i < roomForTu * 2; i++) { - temp_tu[i] = Turtle(0, 0.00, 0, 0.00, 0.00); - } - - for (int i = 0; i < roomForTu; i++) { - temp_tu[i] = arrayOfTur[i]; - } - roomForTu *= 2; - delete[] arrayOfTur; - arrayOfTur = temp_tu; - } + std::cout << "So, you decided to buy a Penguin. Fantastic Choice!" << std::endl; + if(getNumOfPeng() >= roomForPe) { + //resize(arrayOfPe, roomForPe); + DArray arra; + arra.setSizeOfPe(roomForPe); + arra.arrayPen(arrayOfPe, roomForPe); + roomForPe = arra.getSizeOfPe(); - arrayOfTur[numOfTu - 1] = Turtle(3, turCost, 0, turtle.getBaseFoodCost(), turtle.getPayoff()); - account -= turCost; - std::cout << "After you buy the turtle, your balance is " << account << std::endl; } + arrayOfPe[getNumOfPeng()] = Penguin(3, penCost, 0, penguin.getBaseFoodCost(), penguin.getPayoff()); + setNumOfPeng(getNumOfPeng()+1); + account -= penCost; + std::cout<<"After you buy the penguin, your balance is "<= roomForTu) { + //resize(arrayOfTur, roomForTu); + DArray array; + array.setSizeOfTu(roomForTu); + array.arrayTur(arrayOfTur, roomForTu); + roomForTu = array.getSizeOfTu(); - std::cout << "The Tiger is: " << std::endl; - for (int i = 0; i < roomForTi; i++) { - std::cout << "number " << i + 1 << " : " << arrayOfTi[i].getAge() << ", " << arrayOfTi[i].getCost() - << std::endl; + } + arrayOfTur[getNumOfTurt()] = Turtle(3, turCost, 0, turtle.getBaseFoodCost(), turtle.getPayoff()); + setNumOfTurt(getNumOfTurt()+1); + account -= turCost; + std::cout<<"After you buy the turtle, your balance is "<> playAgain; - std::cout << std::endl; + else //(buyNew ==2) + { + std::cout<<"so you don't want to buy more. That's fine."< 0); - if (account < 0) { - std::cout << "I'm sorry, but your account is empty. Play next time. Good buy!" << std::endl; + std::cout<<"The Tiger is: "<>playAgain; + std::cout< 0); + + if (account < 0){ + std::cout<<"I'm sorry, but your account is empty. Play next time. Good buy!"<