fork download
  1. #include <iostream>
  2. #include <vector>
  3. #include <string>
  4. #include <cstdlib>
  5. #include <ctime>
  6.  
  7. using namespace std;
  8.  
  9. struct Pilkarz {
  10. string imie;
  11. string pozycja;
  12. };
  13.  
  14. // Lista trików
  15. vector<string> triki = {
  16. "La Croqueta", "Step-over", "Nutmeg", "Roulette", "Elastico",
  17. "Drag-back", "Fake Shot", "Body feint", "Double-step-over"
  18. };
  19.  
  20. string losowy(const vector<Pilkarz>& d) {
  21. return d[rand() % d.size()].imie;
  22. }
  23.  
  24. string losowy_trik() {
  25. return triki[rand() % triki.size()];
  26. }
  27.  
  28. int main() {
  29. srand(time(nullptr));
  30.  
  31. // ===== DRUŻYNA PRZECIWNA =====
  32. vector<Pilkarz> przeciwnicy = {
  33. {"Paweł Żądło", "GK"},
  34. {"Małgorzata Żądło", "DEF"},
  35. {"Michał Chrzanowski", "DEF"},
  36. {"Lucyna Chrzanowska Topa", "MID"},
  37. {"Michał Murzyn", "MID"},
  38. {"Agnieszka Murzyn", "WING"},
  39. {"Marcin Korecki", "ATT"},
  40. {"Piotr Zięba", "MID"}
  41. };
  42.  
  43. // ===== TWOJA DRUŻYNA =====
  44. vector<Pilkarz> druzyna = {
  45. {"Jan Bylica", "GK"},
  46. {"Marek Mączka", "DEF"},
  47. {"Krzysztof Górka", "DEF"},
  48. {"Daniel Kulka", "MID"},
  49. {"Manedonedyno", "MID"},
  50. {"Mariusz Gładysek", "MID"},
  51. {"Dawid Gładysek", "ATT"},
  52. {"Anna Gładysek", "WING"},
  53. {"Mim", "MID"},
  54. {"Skim", "DEF"},
  55. {"Klim", "WING"},
  56. {"Dariusz Hirsz", "ATT"},
  57. {"Pitor Ścibor", "MID"}
  58. };
  59.  
  60. int goleA = 0, goleB = 0;
  61. int kartkiA = 0, kartkiB = 0;
  62. int fauleA = 0, fauleB = 0;
  63.  
  64. cout << "⚽ ROZPOCZYNAMY MECZ! Symulacja 90 minut z trikami.\n\n";
  65.  
  66. for (int minuta = 1; minuta <= 90; minuta++) {
  67. int zdarzenie = rand() % 100;
  68. cout << minuta << "' ";
  69.  
  70. if (zdarzenie < 25) {
  71. cout << losowy(druzyna) << " wymienia podania z "
  72. << losowy(druzyna) << ". Obrońcy próbują antycypować ruchy.\n";
  73. }
  74. else if (zdarzenie < 45) {
  75. string podajacy = losowy(druzyna);
  76. string obronca = losowy(przeciwnicy);
  77. string trik = losowy_trik();
  78. int szansa = rand() % 100;
  79. cout << podajacy << " wykonuje trik " << trik
  80. << " próbując minąć " << obronca << ". ";
  81. if (szansa < 60) {
  82. cout << obronca << " udanie przechwytuje piłkę.\n";
  83. } else {
  84. cout << "Akcja udana! Podanie dociera do kolegi z drużyny.\n";
  85. }
  86. }
  87. else if (zdarzenie < 60) {
  88. string strzelec = losowy(druzyna);
  89. string trik = losowy_trik();
  90. int szansa = rand() % 100;
  91. cout << strzelec << " drybluje i używa " << trik << ", oddaje strzał! ";
  92. if (szansa < 50) {
  93. cout << "Bramkarz drużyny przeciwnej broni!\n";
  94. } else {
  95. goleA++;
  96. cout << "GOOOOL!!! ⚽ Strzelec: " << strzelec << "\n";
  97. }
  98. }
  99. else if (zdarzenie < 72) {
  100. string strzelec = losowy(przeciwnicy);
  101. string trik = losowy_trik();
  102. int szansa = rand() % 100;
  103. cout << strzelec << " wykonuje trik " << trik
  104. << " i próbuje strzału na bramkę! ";
  105. if (szansa < 50) {
  106. cout << "Twoja drużyna broni strzał!\n";
  107. } else {
  108. goleB++;
  109. cout << "GOOOOL dla przeciwników! Strzelec: " << strzelec << "\n";
  110. }
  111. }
  112. else if (zdarzenie < 85) {
  113. int dru = rand() % 2;
  114. if (dru == 0) {
  115. fauleA++;
  116. cout << losowy(druzyna) << " fauluje. ";
  117. if (rand() % 100 < 20) { kartkiA++; cout << "Żółta kartka!\n"; }
  118. else cout << "\n";
  119. } else {
  120. fauleB++;
  121. cout << losowy(przeciwnicy) << " fauluje. ";
  122. if (rand() % 100 < 20) { kartkiB++; cout << "Żółta kartka!\n"; }
  123. else cout << "\n";
  124. }
  125. }
  126. else {
  127. string strzelec = losowy(druzyna);
  128. string obronca = losowy(przeciwnicy);
  129. string trik = losowy_trik();
  130. cout << strzelec << " drybluje, używa " << trik
  131. << " i próbuje minąć " << obronca << ". ";
  132. if (rand() % 100 < 70) {
  133. goleA++;
  134. cout << "GOOOOL!!! ⚽\n";
  135. } else {
  136. cout << "Bramkarz broni strzał!\n";
  137. }
  138. }
  139. }
  140.  
  141. // ===== DOGRYWKA: RZUTY KARNE =====
  142. cout << "\n🏁 KONIEC REGULARNEGO CZASU. RZUTY KARNE!\n";
  143. for (int i = 0; i < 5; i++) {
  144. string strzelec = losowy(druzyna);
  145. string bramkarz = losowy(przeciwnicy);
  146. cout << "Rzut karny: " << strzelec << " kontra bramkarz " << bramkarz << ". ";
  147. if (rand() % 100 < 75) { goleA++; cout << "GOOOOL!\n"; }
  148. else cout << "Bramkarz broni!\n";
  149. }
  150.  
  151. cout << "\n=== KONIEC MECZU ===\n";
  152. cout << "WYNIK KOŃCOWY:\n";
  153. cout << "Twoja drużyna " << goleA
  154. << " : " << goleB << " Drużyna przeciwników\n";
  155. cout << "Faule: Twoja drużyna " << fauleA << ", Drużyna przeciwników " << fauleB << "\n";
  156. cout << "Kartki: Twoja drużyna " << kartkiA << ", Drużyna przeciwników " << kartkiB << "\n";
  157.  
  158. if (goleA > goleB) cout << "🏆 WYGRANA TWOJEJ DRUŻYNY!\n";
  159. else if (goleA < goleB) cout << "😢 PORAŻKA TWOJEJ DRUŻYNY.\n";
  160. else cout << "🤝 REMIS.\n";
  161.  
  162. return 0;
  163. }
  164.  
Success #stdin #stdout 0.01s 5324KB
stdin
Standard input is empty
stdout
⚽ ROZPOCZYNAMY MECZ! Symulacja 90 minut z trikami.

1' Mariusz Gładysek drybluje i używa Elastico, oddaje strzał! Bramkarz drużyny przeciwnej broni!
2' Manedonedyno wymienia podania z Daniel Kulka. Obrońcy próbują antycypować ruchy.
3' Pitor Ścibor drybluje i używa Step-over, oddaje strzał! Bramkarz drużyny przeciwnej broni!
4' Pitor Ścibor drybluje i używa Nutmeg, oddaje strzał! GOOOOL!!! ⚽ Strzelec: Pitor Ścibor
5' Daniel Kulka wykonuje trik La Croqueta próbując minąć Piotr Zięba. Piotr Zięba udanie przechwytuje piłkę.
6' Dawid Gładysek drybluje i używa La Croqueta, oddaje strzał! GOOOOL!!! ⚽ Strzelec: Dawid Gładysek
7' Daniel Kulka wymienia podania z Marek Mączka. Obrońcy próbują antycypować ruchy.
8' Klim wykonuje trik Double-step-over próbując minąć Marcin Korecki. Marcin Korecki udanie przechwytuje piłkę.
9' Anna Gładysek drybluje, używa Nutmeg i próbuje minąć Michał Chrzanowski. Bramkarz broni strzał!
10' Daniel Kulka wymienia podania z Jan Bylica. Obrońcy próbują antycypować ruchy.
11' Anna Gładysek wykonuje trik Roulette próbując minąć Michał Chrzanowski. Michał Chrzanowski udanie przechwytuje piłkę.
12' Krzysztof Górka drybluje i używa Drag-back, oddaje strzał! Bramkarz drużyny przeciwnej broni!
13' Manedonedyno wykonuje trik Roulette próbując minąć Marcin Korecki. Marcin Korecki udanie przechwytuje piłkę.
14' Skim wymienia podania z Dariusz Hirsz. Obrońcy próbują antycypować ruchy.
15' Piotr Zięba wykonuje trik Double-step-over i próbuje strzału na bramkę! GOOOOL dla przeciwników! Strzelec: Piotr Zięba
16' Dawid Gładysek wymienia podania z Klim. Obrońcy próbują antycypować ruchy.
17' Mariusz Gładysek drybluje, używa Step-over i próbuje minąć Michał Chrzanowski. GOOOOL!!! ⚽
18' Mariusz Gładysek wykonuje trik Nutmeg próbując minąć Małgorzata Żądło. Akcja udana! Podanie dociera do kolegi z drużyny.
19' Lucyna Chrzanowska Topa wykonuje trik La Croqueta i próbuje strzału na bramkę! GOOOOL dla przeciwników! Strzelec: Lucyna Chrzanowska Topa
20' Klim wymienia podania z Mim. Obrońcy próbują antycypować ruchy.
21' Paweł Żądło wykonuje trik Double-step-over i próbuje strzału na bramkę! GOOOOL dla przeciwników! Strzelec: Paweł Żądło
22' Mim fauluje. 
23' Dawid Gładysek drybluje i używa La Croqueta, oddaje strzał! GOOOOL!!! ⚽ Strzelec: Dawid Gładysek
24' Marek Mączka wykonuje trik Body feint próbując minąć Małgorzata Żądło. Małgorzata Żądło udanie przechwytuje piłkę.
25' Anna Gładysek fauluje. Żółta kartka!
26' Anna Gładysek wymienia podania z Mariusz Gładysek. Obrońcy próbują antycypować ruchy.
27' Manedonedyno wykonuje trik Nutmeg próbując minąć Michał Murzyn. Michał Murzyn udanie przechwytuje piłkę.
28' Dawid Gładysek wymienia podania z Manedonedyno. Obrońcy próbują antycypować ruchy.
29' Marek Mączka fauluje. 
30' Marcin Korecki wykonuje trik Step-over i próbuje strzału na bramkę! Twoja drużyna broni strzał!
31' Krzysztof Górka wymienia podania z Anna Gładysek. Obrońcy próbują antycypować ruchy.
32' Daniel Kulka drybluje i używa Fake Shot, oddaje strzał! GOOOOL!!! ⚽ Strzelec: Daniel Kulka
33' Paweł Żądło wykonuje trik Elastico i próbuje strzału na bramkę! GOOOOL dla przeciwników! Strzelec: Paweł Żądło
34' Jan Bylica wykonuje trik Double-step-over próbując minąć Piotr Zięba. Piotr Zięba udanie przechwytuje piłkę.
35' Mim drybluje i używa La Croqueta, oddaje strzał! Bramkarz drużyny przeciwnej broni!
36' Dariusz Hirsz wykonuje trik Roulette próbując minąć Agnieszka Murzyn. Akcja udana! Podanie dociera do kolegi z drużyny.
37' Skim drybluje i używa Fake Shot, oddaje strzał! Bramkarz drużyny przeciwnej broni!
38' Dawid Gładysek wymienia podania z Skim. Obrońcy próbują antycypować ruchy.
39' Krzysztof Górka wymienia podania z Anna Gładysek. Obrońcy próbują antycypować ruchy.
40' Klim wymienia podania z Pitor Ścibor. Obrońcy próbują antycypować ruchy.
41' Pitor Ścibor drybluje, używa Drag-back i próbuje minąć Michał Murzyn. Bramkarz broni strzał!
42' Marek Mączka drybluje i używa Body feint, oddaje strzał! Bramkarz drużyny przeciwnej broni!
43' Krzysztof Górka wykonuje trik Step-over próbując minąć Lucyna Chrzanowska Topa. Lucyna Chrzanowska Topa udanie przechwytuje piłkę.
44' Pitor Ścibor drybluje i używa Double-step-over, oddaje strzał! Bramkarz drużyny przeciwnej broni!
45' Daniel Kulka drybluje i używa Fake Shot, oddaje strzał! Bramkarz drużyny przeciwnej broni!
46' Małgorzata Żądło wykonuje trik Roulette i próbuje strzału na bramkę! GOOOOL dla przeciwników! Strzelec: Małgorzata Żądło
47' Agnieszka Murzyn wykonuje trik Fake Shot i próbuje strzału na bramkę! Twoja drużyna broni strzał!
48' Jan Bylica wykonuje trik Body feint próbując minąć Marcin Korecki. Marcin Korecki udanie przechwytuje piłkę.
49' Mariusz Gładysek drybluje i używa Drag-back, oddaje strzał! Bramkarz drużyny przeciwnej broni!
50' Jan Bylica wymienia podania z Klim. Obrońcy próbują antycypować ruchy.
51' Jan Bylica wymienia podania z Anna Gładysek. Obrońcy próbują antycypować ruchy.
52' Lucyna Chrzanowska Topa wykonuje trik La Croqueta i próbuje strzału na bramkę! Twoja drużyna broni strzał!
53' Mim drybluje, używa Fake Shot i próbuje minąć Lucyna Chrzanowska Topa. Bramkarz broni strzał!
54' Skim drybluje i używa Elastico, oddaje strzał! GOOOOL!!! ⚽ Strzelec: Skim
55' Mim drybluje i używa Body feint, oddaje strzał! Bramkarz drużyny przeciwnej broni!
56' Agnieszka Murzyn wykonuje trik Roulette i próbuje strzału na bramkę! Twoja drużyna broni strzał!
57' Daniel Kulka wymienia podania z Dawid Gładysek. Obrońcy próbują antycypować ruchy.
58' Mariusz Gładysek wymienia podania z Mim. Obrońcy próbują antycypować ruchy.
59' Marcin Korecki wykonuje trik Elastico i próbuje strzału na bramkę! GOOOOL dla przeciwników! Strzelec: Marcin Korecki
60' Dariusz Hirsz wykonuje trik Body feint próbując minąć Michał Chrzanowski. Michał Chrzanowski udanie przechwytuje piłkę.
61' Dariusz Hirsz wymienia podania z Skim. Obrońcy próbują antycypować ruchy.
62' Klim drybluje i używa Step-over, oddaje strzał! GOOOOL!!! ⚽ Strzelec: Klim
63' Paweł Żądło fauluje. Żółta kartka!
64' Skim wykonuje trik Drag-back próbując minąć Lucyna Chrzanowska Topa. Lucyna Chrzanowska Topa udanie przechwytuje piłkę.
65' Skim drybluje i używa Roulette, oddaje strzał! Bramkarz drużyny przeciwnej broni!
66' Marek Mączka wykonuje trik Step-over próbując minąć Piotr Zięba. Akcja udana! Podanie dociera do kolegi z drużyny.
67' Dariusz Hirsz wymienia podania z Pitor Ścibor. Obrońcy próbują antycypować ruchy.
68' Piotr Zięba wykonuje trik Nutmeg i próbuje strzału na bramkę! Twoja drużyna broni strzał!
69' Pitor Ścibor wymienia podania z Dawid Gładysek. Obrońcy próbują antycypować ruchy.
70' Anna Gładysek wykonuje trik Step-over próbując minąć Paweł Żądło. Paweł Żądło udanie przechwytuje piłkę.
71' Daniel Kulka drybluje i używa Roulette, oddaje strzał! Bramkarz drużyny przeciwnej broni!
72' Skim wymienia podania z Skim. Obrońcy próbują antycypować ruchy.
73' Mariusz Gładysek wymienia podania z Mariusz Gładysek. Obrońcy próbują antycypować ruchy.
74' Skim drybluje, używa Roulette i próbuje minąć Michał Chrzanowski. GOOOOL!!! ⚽
75' Dariusz Hirsz wymienia podania z Daniel Kulka. Obrońcy próbują antycypować ruchy.
76' Daniel Kulka drybluje, używa Elastico i próbuje minąć Michał Chrzanowski. GOOOOL!!! ⚽
77' Jan Bylica drybluje i używa La Croqueta, oddaje strzał! GOOOOL!!! ⚽ Strzelec: Jan Bylica
78' Mariusz Gładysek drybluje i używa Step-over, oddaje strzał! Bramkarz drużyny przeciwnej broni!
79' Daniel Kulka drybluje, używa La Croqueta i próbuje minąć Michał Chrzanowski. GOOOOL!!! ⚽
80' Daniel Kulka fauluje. 
81' Piotr Zięba fauluje. Żółta kartka!
82' Krzysztof Górka wykonuje trik Elastico próbując minąć Piotr Zięba. Akcja udana! Podanie dociera do kolegi z drużyny.
83' Michał Murzyn fauluje. 
84' Mim drybluje i używa Fake Shot, oddaje strzał! Bramkarz drużyny przeciwnej broni!
85' Dawid Gładysek wykonuje trik Roulette próbując minąć Michał Chrzanowski. Michał Chrzanowski udanie przechwytuje piłkę.
86' Marcin Korecki wykonuje trik Elastico i próbuje strzału na bramkę! Twoja drużyna broni strzał!
87' Mariusz Gładysek drybluje, używa Nutmeg i próbuje minąć Agnieszka Murzyn. GOOOOL!!! ⚽
88' Manedonedyno fauluje. 
89' Dawid Gładysek wykonuje trik Drag-back próbując minąć Małgorzata Żądło. Małgorzata Żądło udanie przechwytuje piłkę.
90' Krzysztof Górka wymienia podania z Skim. Obrońcy próbują antycypować ruchy.

🏁 KONIEC REGULARNEGO CZASU. RZUTY KARNE!
Rzut karny: Marek Mączka kontra bramkarz Michał Murzyn. Bramkarz broni!
Rzut karny: Jan Bylica kontra bramkarz Marcin Korecki. GOOOOL!
Rzut karny: Dawid Gładysek kontra bramkarz Małgorzata Żądło. GOOOOL!
Rzut karny: Mariusz Gładysek kontra bramkarz Michał Murzyn. GOOOOL!
Rzut karny: Mariusz Gładysek kontra bramkarz Piotr Zięba. GOOOOL!

=== KONIEC MECZU ===
WYNIK KOŃCOWY:
Twoja drużyna 16 : 6 Drużyna przeciwników
Faule: Twoja drużyna 5, Drużyna przeciwników 3
Kartki: Twoja drużyna 1, Drużyna przeciwników 2
🏆 WYGRANA TWOJEJ DRUŻYNY!