Advertisement
popovstefan

[NP, 2 kol.] Fudbalska tabela

Dec 2nd, 2018
179
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 6.79 KB | None | 0 0
  1. Фудбалска табела (30 поени) Problem 1 (0 / 0)
  2. Да се имплементира класа FootballTable за обработка од податоците за повеќе фудбласки натпревари од една лига и прикажување на табелата на освоени поени според резултатите од натпреварите. Во класата да се имплементираат:
  3.  
  4. public void addGame(String homeTeam, String awayTeam, int homeGoals, int awayGoals) - метод за додавање податоци за одигран натпревар помеѓу тимот со име homeTeam (домашен тим) и тимот со име awayTeam (гостински тим), при што homeGoals претставува бројот на постигнати голови од домашниот тим, а awayGoals бројот на постигнати голови од гостинскиот тим.
  5. public void printTable() - метод за печатење на табелата според одиграните (внесените) натпревари. Во табелата се прикажуваат редниот број на тимот во табелата, името (со 15 места порамнето во лево), бројот на одиграни натпревари, бројот на победи, бројот на нерешени натпревари, бројот на освоени поени (сите броеви се печатат со 5 места порамнети во десно). Бројот на освоени поени се пресметува како број_на_победи x 3 + број_на_нерешени x 1. Тимовите се подредени според бројот на освоени поени во опаѓачки редослед, ако имаат ист број на освоени поени според гол разликата (разлика од постигнатите голови и примените голови) во опаѓачки редослед, а ако имаат иста гол разлика, според името.
  6.  
  7. ============================================================================================================
  8.  
  9. import java.io.BufferedReader;
  10. import java.io.IOException;
  11. import java.io.InputStreamReader;
  12. import java.util.Comparator;
  13. import java.util.HashMap;
  14. import java.util.List;
  15. import java.util.Map;
  16. import java.util.stream.Collectors;
  17. import java.util.stream.IntStream;
  18.  
  19. /**
  20.  * Partial exam II 2016/2017
  21.  */
  22. public class FootballTableTest {
  23.     public static void main(String[] args) throws IOException {
  24.         FootballTable table = new FootballTable();
  25.         BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));
  26.         reader.lines()
  27.                 .map(line -> line.split(";"))
  28.                 .forEach(parts -> table.addGame(parts[0], parts[1],
  29.                         Integer.parseInt(parts[2]),
  30.                         Integer.parseInt(parts[3])));
  31.         reader.close();
  32.         System.out.println("=== TABLE ===");
  33.         System.out.printf("%-19s%5s%5s%5s%5s%5s\n", "Team", "P", "W", "D", "L", "PTS");
  34.         table.printTable();
  35.     }
  36. }
  37.  
  38. // Your code here
  39. ============================================================================================================
  40.  
  41. Sample input
  42. Bournemouth;Man Utd;1;5
  43. Burnley;Swansea;4;3
  44. Chelsea;West Ham;2;5
  45. Crystal Palace;West Brom;1;2
  46. Everton;Tottenham;0;0
  47. Hull;Leicester;5;0
  48. Man City;Sunderland;5;1
  49. Middlesbrough;Stoke;2;2
  50. Southampton;Watford;3;1
  51. Leicester;Arsenal;4;1
  52. Liverpool;Burnley;2;1
  53. Man Utd;Southampton;0;1
  54. Stoke;Man City;1;3
  55. Sunderland;Middlesbrough;0;4
  56. Swansea;Hull;5;0
  57. Tottenham;Crystal Palace;2;3
  58. Watford;Chelsea;2;1
  59. West Brom;Everton;4;4
  60. West Ham;Bournemouth;3;2
  61. Chelsea;Burnley;4;4
  62. Crystal Palace;Bournemouth;5;1
  63. Everton;Stoke;4;5
  64. Hull;Man Utd;5;5
  65. Leicester;Swansea;4;5
  66. Man City;West Ham;2;5
  67. Southampton;Sunderland;5;5
  68. Tottenham;Liverpool;5;4
  69. Watford;Arsenal;3;4
  70. West Brom;Middlesbrough;4;3
  71. Arsenal;Southampton;0;1
  72. Bournemouth;West Brom;5;4
  73. Burnley;Hull;0;4
  74. Liverpool;Leicester;0;3
  75. Man Utd;Man City;3;1
  76. Middlesbrough;Crystal Palace;0;3
  77. Stoke;Tottenham;3;3
  78. Sunderland;Everton;2;3
  79. Swansea;Chelsea;5;3
  80. West Ham;Watford;0;1
  81. Chelsea;Liverpool;4;5
  82. Crystal Palace;Stoke;3;4
  83. Everton;Middlesbrough;5;5
  84. Hull;Arsenal;2;1
  85. Leicester;Burnley;0;4
  86. Man City;Bournemouth;2;4
  87. Southampton;Swansea;3;1
  88. Tottenham;Sunderland;3;0
  89. Watford;Man Utd;2;0
  90. West Brom;West Ham;4;2
  91. Arsenal;Chelsea;1;4
  92. Bournemouth;Everton;0;0
  93. Burnley;Watford;0;0
  94. Liverpool;Hull;4;3
  95. Man Utd;Leicester;1;0
  96. Middlesbrough;Tottenham;4;2
  97. Stoke;West Brom;0;5
  98. Sunderland;Crystal Palace;2;3
  99. Swansea;Man City;4;1
  100. West Ham;Southampton;5;0
  101. Burnley;Arsenal;3;3
  102. Everton;Crystal Palace;3;3
  103. Hull;Chelsea;0;4
  104. Leicester;Southampton;4;1
  105. Man Utd;Stoke;0;5
  106. Sunderland;West Brom;0;5
  107. Swansea;Liverpool;4;4
  108. Tottenham;Man City;0;1
  109. Watford;Bournemouth;1;2
  110. West Ham;Middlesbrough;5;3
  111. Arsenal;Swansea;1;1
  112. Bournemouth;Hull;0;1
  113. Chelsea;Leicester;4;5
  114. Crystal Palace;West Ham;5;5
  115. Liverpool;Man Utd;1;5
  116. Man City;Everton;1;4
  117. Middlesbrough;Watford;4;0
  118. Southampton;Burnley;4;5
  119. Stoke;Sunderland;3;0
  120. West Brom;Tottenham;4;2
  121. Arsenal;Middlesbrough;2;1
  122. Bournemouth;Tottenham;1;3
  123. Burnley;Everton;4;3
  124. Chelsea;Man Utd;5;4
  125. Hull;Stoke;1;1
  126. Leicester;Crystal Palace;1;4
  127. Liverpool;West Brom;3;2
  128. Man City;Southampton;4;1
  129. Swansea;Watford;5;2
  130. West Ham;Sunderland;5;2
  131. Crystal Palace;Liverpool;3;2
  132. Everton;West Ham;3;3
  133. Man Utd;Burnley;1;2
  134. Middlesbrough;Bournemouth;5;2
  135. Southampton;Chelsea;5;3
  136. Stoke;Swansea;0;1
  137. Sunderland;Arsenal;4;5
  138. Tottenham;Leicester;3;0
  139. Watford;Hull;4;4
  140.  
  141. ==================================================================================================================
  142.  
  143. Sample output
  144. === TABLE ===
  145. Team                   P    W    D    L  PTS
  146.  1. West Ham          10    6    2    2   20
  147.  2. Swansea           10    6    2    2   20
  148.  3. Crystal Palace    10    6    2    2   20
  149.  4. West Brom          9    6    1    2   19
  150.  5. Burnley           10    5    3    2   18
  151.  6. Southampton       10    5    1    4   16
  152.  7. Stoke             10    4    3    3   15
  153.  8. Hull              10    4    3    3   15
  154.  9. Middlesbrough     10    4    2    4   14
  155. 10. Tottenham         10    4    2    4   14
  156. 11. Man Utd           10    4    1    5   13
  157. 12. Liverpool          9    4    1    4   13
  158. 13. Everton           10    2    6    2   12
  159. 14. Man City           9    4    0    5   12
  160. 15. Leicester         10    4    0    6   12
  161. 16. Arsenal            9    3    2    4   11
  162. 17. Watford           10    3    2    5   11
  163. 18. Chelsea           10    3    1    6   10
  164. 19. Bournemouth       10    3    1    6   10
  165. 20. Sunderland        10    0    1    9    1
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement