Advertisement
Guest User

Untitled

a guest
Feb 22nd, 2020
103
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.45 KB | None | 0 0
  1. #include<iostream>
  2. #include<string>
  3. #include<ctime>
  4. #include<cstdlib>
  5. using namespace std;
  6.  
  7. class Coin{
  8.  
  9. private:
  10. string sideUp;
  11. int heads;
  12. int tails;
  13.  
  14. public:
  15. Coin()
  16. {
  17. heads = 0;
  18. tails = 0;
  19. sideUp;
  20. }
  21.  
  22. void toss();
  23. string getSideUp()
  24. {
  25. return sideUp;
  26. }
  27.  
  28. int getHeads()
  29. {
  30. return heads;
  31. }
  32. int getTails()
  33. {
  34. return tails;
  35. }
  36. int getCount()
  37. {
  38. sideUp == "Heads"? heads++: tails++;
  39. }
  40. void setRNG();
  41.  
  42. };
  43.  
  44. void Coin::setRNG()
  45. {
  46. srand((int)time(0));
  47. }
  48.  
  49. void Coin::toss()
  50. {
  51. const int heads = 1;
  52. const int tails = 2;
  53. int randNumb = 0;
  54.  
  55.  
  56. randNumb = rand() % 2 + 1;
  57. if (randNumb == heads)
  58. {
  59. sideUp = "Heads";
  60. }
  61. else if(randNumb == tails)
  62. {
  63. sideUp = "Tails";
  64. }
  65.  
  66. }
  67.  
  68.  
  69. int main(){
  70. Coin flip;
  71. string head, tail;
  72.  
  73. cout << "Welcome to the Coin Toss Simulator" << endl;
  74. cout << "This program will flip a coin and display the output" << endl;
  75. cout << "The starting side before flipping is: " << flip.getSideUp() << endl;
  76. cout << "The coin will now be tossed 20 times" << endl;
  77.  
  78. for (int count = 0; count < 20; ++count)
  79. {
  80. flip.toss();
  81. flip.getCount();
  82. cout << "Toss # " << (count + 1) << ":" << flip.getSideUp() << endl;
  83.  
  84. }
  85.  
  86. cout << "The number of times Heads was facing up was: " << flip.getHeads() << endl;
  87. cout << "The number of times Tails was facing up was: " << flip.getTails ()<< endl;
  88.  
  89.  
  90.  
  91.  
  92.  
  93. return 0;
  94. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement