From c5d797cfbb004aa8fe92ba035ff5c5b2b3b3d113 Mon Sep 17 00:00:00 2001 From: cdez Date: Thu, 12 Sep 2024 23:35:29 -0700 Subject: [PATCH] Finished the go fish program. --- assignmentOne/go_fish | Bin 70576 -> 77552 bytes assignmentOne/go_fish.cpp | 77 +++++++++++++++++++++++++++++++++++++- 2 files changed, 75 insertions(+), 2 deletions(-) diff --git a/assignmentOne/go_fish b/assignmentOne/go_fish index fbdf18d3a9cb0ed950249daacfe227eff7e2136d..aefd00d1aed7df6660f50187a13a94214b893ca6 100755 GIT binary patch delta 19627 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 Q+BOe| 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 &human, vector &computer, vector &cardDec human.push_back(cardDeck.back()); cardDeck.pop_back(); cout << "Opponent does not have " << inputChar << ". You go fish." << endl; - cout << "New Card: " << human[human.size() - 1].getFullCard() << endl; + cout << "New Card: " << human[human.size()-1].getFullCard() << endl; // also try human.end()??? } // check to see if sets exist in the vector, aka is there four of a value. // if there is four of a value, increase the number of sets to return, remove the cards from hand. @@ -324,6 +324,79 @@ int computerTurn(vector &human, vector &computer, vector &card Handles the computer’s turn and it should do the same actions as the human but for the computer. The function should return the number of set that is collected during its turn. */ + int numSets = 0; + int maxCountCard = 0; + char inputChar = computer[0].getCardRawValue(); + bool foundCard = false; + bool foundSet = false; + cout << "Opponent's turn. They asked for: " << inputChar << endl; + // ask for card rank/number/value + int humanHandSize = human.size(); + // if card is in opposite hand, remove from and give to the other. (loop through human hand looking for card) + for(int checkHandIterator = 0; checkHandIterator < humanHandSize; checkHandIterator++) + { + // checking if value of card is equal to any of the other ones. + if(human[checkHandIterator].getCardRawValue() == inputChar) + { + // copy the card into the human's hand. + human.push_back(human[checkHandIterator]); + // set the card find to true. + foundCard = true; + cout << "You have " << human[checkHandIterator].getFullCard(); + cout << ". They collect all " << inputChar << "s." << endl; + } + } + // remove the cards that had been drawn from the other hand (use remove/remove if and erase with the vector iterators) + if(foundCard) + { + // remove cards if found + human.erase(remove_if(human.begin(), human.end(), + [&](Card &remCard){return remCard.getCardValue() == inputChar;}), human.end()); + } + // if not, draw a card from the top of the deck. + else + { + // draw a card if not found. + computer.push_back(cardDeck.back()); + cardDeck.pop_back(); + } + // check to see if sets exist in the vector, aka is there four of a value. + // if there is four of a value, increase the number of sets to return, remove the cards from hand. + // NOTE TO PROGRAMMER: https://stackoverflow.com/questions/39906504/how-to-count-duplicates-in-a-vector-c + sort(computer.begin(), computer.end()); + // had to use the stupid auto keyword here to make the damn iterator move... kept getting bad casting types. + for (auto cardIterator = computer.cbegin(); cardIterator != computer.cend();) + { + maxCountCard = count(cardIterator, computer.cend(), *cardIterator); + if(maxCountCard == 4) + { + // this is where I make sure that there is a set here before removing it, + // and set return value here. + numSets = numSets + 1; + foundSet = true; + } + // skip around until duplicates are found, using a trick that I researched. + for(auto lastChar = *cardIterator; *++cardIterator == lastChar;) + { + // this above for loop essentially keeps the iterator moving + // intentional empty block, since iterator must keep moving, but I don't need to do anything. + } + } + if(foundSet) + { + // if a valid set is found, remove all four cards from the computer's hand. + computer.erase(remove_if(computer.begin(), computer.end(), + [&](Card &remCard){return remCard.getCardValue() == inputChar;}), computer.end()); + } + // display hand to computer. + int handSize = human.size(); + cout << "Your Hand: " << endl; + cout << "| "; + for(int handDisplayIterator = 0; handDisplayIterator < handSize; handDisplayIterator++) + { + cout << human[handDisplayIterator].getFullCard() << " | "; + } + cout << endl; // return the number of sets - return 0; + return numSets; } \ No newline at end of file