From 816f3c2ac687fc6e4a1fecc1afb572e3238fc289 Mon Sep 17 00:00:00 2001 From: Pavloxes Date: Fri, 3 Oct 2025 00:04:56 +0500 Subject: [PATCH 1/2] =?UTF-8?q?=D0=9F=D0=B0=D0=BA?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- build.gradle.kts | 1 + jfreechart-1.5.6.zip:Zone.Identifier | 4 + src/main/java/ru/urfu/Main.java | 14 +- .../java/ru/urfu/console/Communicator.java | 42 ++++++ src/main/java/ru/urfu/graphics/Graphic.java | 42 ++++++ src/main/java/ru/urfu/model/Player.java | 13 ++ src/main/java/ru/urfu/model/Position.java | 19 +++ src/main/java/ru/urfu/parser/CsvParser.java | 47 +++++++ src/main/java/ru/urfu/resolver/IResolver.java | 3 + src/main/java/ru/urfu/resolver/Resolver.java | 72 ++++++++++ src/test/java/ru/.LCKResolverTest.java~ | 1 + src/test/java/ru/ResolverTest.java | 5 + src/test/java/ru/urfu/ResolverTest.java | 104 ++++++++++++++ .../java/ru/urfu/resources/testPlayers.csv | 128 ++++++++++++++++++ 14 files changed, 484 insertions(+), 11 deletions(-) create mode 100644 jfreechart-1.5.6.zip:Zone.Identifier create mode 100644 src/main/java/ru/urfu/console/Communicator.java create mode 100644 src/main/java/ru/urfu/graphics/Graphic.java create mode 100644 src/main/java/ru/urfu/model/Player.java create mode 100644 src/main/java/ru/urfu/model/Position.java create mode 100644 src/main/java/ru/urfu/parser/CsvParser.java create mode 100644 src/main/java/ru/urfu/resolver/Resolver.java create mode 100644 src/test/java/ru/.LCKResolverTest.java~ create mode 100644 src/test/java/ru/ResolverTest.java create mode 100644 src/test/java/ru/urfu/ResolverTest.java create mode 100644 src/test/java/ru/urfu/resources/testPlayers.csv diff --git a/build.gradle.kts b/build.gradle.kts index 72be7ed..073578f 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -10,6 +10,7 @@ repositories { } dependencies { + implementation("org.jfree:jfreechart:1.5.6") testImplementation(platform("org.junit:junit-bom:5.10.0")) testImplementation("org.junit.jupiter:junit-jupiter") } diff --git a/jfreechart-1.5.6.zip:Zone.Identifier b/jfreechart-1.5.6.zip:Zone.Identifier new file mode 100644 index 0000000..1917f1f --- /dev/null +++ b/jfreechart-1.5.6.zip:Zone.Identifier @@ -0,0 +1,4 @@ +[ZoneTransfer] +ZoneId=3 +ReferrerUrl=https://github.com/jfree/jfreechart/releases/ +HostUrl=https://codeload.github.com/jfree/jfreechart/zip/refs/tags/v1.5.6 diff --git a/src/main/java/ru/urfu/Main.java b/src/main/java/ru/urfu/Main.java index 5845f6d..32afcfa 100644 --- a/src/main/java/ru/urfu/Main.java +++ b/src/main/java/ru/urfu/Main.java @@ -1,17 +1,9 @@ package ru.urfu; -//TIP To Run code, press or -// click the icon in the gutter. +import ru.urfu.console.Communicator; + public class Main { public static void main(String[] args) { - //TIP Press with your caret at the highlighted text - // to see how GIGA IDE suggests fixing it. - System.out.printf("Hello and welcome!"); - - for (int i = 1; i <= 5; i++) { - //TIP Press to start debugging your code. We have set one breakpoint - // for you, but you can always add more by pressing . - System.out.println("i = " + i); - } + Communicator.runChampionship(); } } \ No newline at end of file diff --git a/src/main/java/ru/urfu/console/Communicator.java b/src/main/java/ru/urfu/console/Communicator.java new file mode 100644 index 0000000..3c89dd8 --- /dev/null +++ b/src/main/java/ru/urfu/console/Communicator.java @@ -0,0 +1,42 @@ +package ru.urfu.console; + +import java.util.Scanner; +import java.util.stream.Collectors; + +import ru.urfu.graphics.Graphic; +import ru.urfu.model.Player; +import ru.urfu.parser.CsvParser; +import ru.urfu.resolver.Resolver; + +public class Communicator { + public static void runChampionship() { + var scanner = new Scanner(System.in); + System.out.print("Введите файл для анализа: "); + String filePath = "/home/pavloxes/Java2025_2/src/main/resources/fakePlayers.csv"; + //String fileName = scanner.nextLine(); + var players = CsvParser.parseCsvToList(filePath); + + var resolver = new Resolver(players); + + System.out.print("Количество игроков, интересы которых не представляет агентство: "); + System.out.println(resolver.getCountWithoutAgency()); + + System.out.print("Автор наибольшего числа голов из числа защитников: "); + System.out.println(resolver.getDefenderWithMaxGoalsName()); + + System.out.print("Наибольшее число голов, забитых защитником: "); + System.out.println(resolver.getMaxDefenderGoalsCount()); + + System.out.print("Русское название позиции самого дорогого немецкого игрока: "); + System.out.println(resolver.getTheExpensiveGermanPlayerPosition()); + + System.out.print("Команда с наибольшим средним числом красных карточек на одного игрока: "); + System.out.println(resolver.getTheRudestTeam()); + + var graphic = new Graphic(); + + graphic.drawDiagramPlayersByPosition( players.stream() + .collect(Collectors.groupingBy(Player::position, Collectors.counting()))); + + } +} \ No newline at end of file diff --git a/src/main/java/ru/urfu/graphics/Graphic.java b/src/main/java/ru/urfu/graphics/Graphic.java new file mode 100644 index 0000000..fd03266 --- /dev/null +++ b/src/main/java/ru/urfu/graphics/Graphic.java @@ -0,0 +1,42 @@ +package ru.urfu.graphics; + +import java.awt.Color; +import java.text.DecimalFormat; +import java.util.Map; + +import org.jfree.chart.ChartFactory; +import org.jfree.chart.ChartFrame; +import org.jfree.chart.JFreeChart; +import org.jfree.chart.labels.StandardPieSectionLabelGenerator; +import org.jfree.chart.plot.PiePlot; +import org.jfree.data.general.DefaultPieDataset; + +import ru.urfu.model.Position; + +public class Graphic { + public void drawDiagramPlayersByPosition(Map positionsCount) { + DefaultPieDataset dataset = new DefaultPieDataset<>(); + + String title = "Распределение позиций среди игроков"; + + positionsCount.forEach((pos, count) -> + dataset.setValue(pos.getTitleRu(), count) + ); + + JFreeChart chart = ChartFactory.createPieChart(title, dataset, true, true, false); + + PiePlot plot = (PiePlot) chart.getPlot(); + plot.setLabelGenerator(new StandardPieSectionLabelGenerator( + "{0}: {1} ({2})", + new DecimalFormat("0"), + new DecimalFormat("0.00%") + )); + + plot.setLabelBackgroundPaint(Color.WHITE); + + ChartFrame frame = new ChartFrame(title, chart); + frame.pack(); + frame.setAlwaysOnTop(true); + frame.setVisible(true); + } +} \ No newline at end of file diff --git a/src/main/java/ru/urfu/model/Player.java b/src/main/java/ru/urfu/model/Player.java new file mode 100644 index 0000000..eb478e5 --- /dev/null +++ b/src/main/java/ru/urfu/model/Player.java @@ -0,0 +1,13 @@ +package ru.urfu.model; + +public record Player( + String name, + Position position, + String agency, + int goals, + String nation, + int cost, + String team, + int redCards +) { +} \ No newline at end of file diff --git a/src/main/java/ru/urfu/model/Position.java b/src/main/java/ru/urfu/model/Position.java new file mode 100644 index 0000000..cf51561 --- /dev/null +++ b/src/main/java/ru/urfu/model/Position.java @@ -0,0 +1,19 @@ +package ru.urfu.model; + +public enum Position { + GOALKEEPER("Вратарь"), + DEFENDER("Защитник"), + MIDFIELD("Полузащитик"), + FORWARD("Нападающий"); + + private final String titleRu; + + Position(String title){ + this.titleRu = title; + } + + public String getTitleRu(){ + return this.titleRu; + } + +} \ No newline at end of file diff --git a/src/main/java/ru/urfu/parser/CsvParser.java b/src/main/java/ru/urfu/parser/CsvParser.java new file mode 100644 index 0000000..d221f9c --- /dev/null +++ b/src/main/java/ru/urfu/parser/CsvParser.java @@ -0,0 +1,47 @@ +package ru.urfu.parser; + +import ru.urfu.model.Player; +import ru.urfu.model.Position; + +import java.io.IOException; +import java.nio.file.Path; +import java.nio.file.Paths; +import java.util.ArrayList; +import java.util.Scanner; + +public class CsvParser { + + public static ArrayList parseCsvToList(String pathString) { + Path path = Paths.get(pathString); + Scanner scanner = getScanner(path); + var list = new ArrayList(); + scanner.nextLine(); + while (scanner.hasNextLine()) { + list.add(parsePlayerRow(scanner.nextLine())); + } + + return list; + } + + private static Player parsePlayerRow(String row) { + var cells = row.split(";"); + return new Player( + cells[0], + Position.valueOf(cells[3]), + cells[5], + Integer.parseInt(cells[8]), + cells[4], + Integer.parseInt(cells[6]), + cells[1], + Integer.parseInt(cells[11]) + ); + } + + private static Scanner getScanner(Path path) { + try { + return new Scanner(path); + } catch (IOException e) { + throw new RuntimeException(e); + } + } +} \ No newline at end of file diff --git a/src/main/java/ru/urfu/resolver/IResolver.java b/src/main/java/ru/urfu/resolver/IResolver.java index c806b3a..a5a625c 100644 --- a/src/main/java/ru/urfu/resolver/IResolver.java +++ b/src/main/java/ru/urfu/resolver/IResolver.java @@ -4,6 +4,9 @@ public interface IResolver { // Выведите количество игроков, интересы которых не представляет агентство. int getCountWithoutAgency(); + // Выведите защитника с максимальным числом голов. + String getDefenderWithMaxGoalsName(); + // Выведите максимальное число голов, забитых защинтником. int getMaxDefenderGoalsCount(); diff --git a/src/main/java/ru/urfu/resolver/Resolver.java b/src/main/java/ru/urfu/resolver/Resolver.java new file mode 100644 index 0000000..264aab0 --- /dev/null +++ b/src/main/java/ru/urfu/resolver/Resolver.java @@ -0,0 +1,72 @@ +package ru.urfu.resolver; + +import java.util.Comparator; +import java.util.List; +import java.util.Map; +import java.util.stream.Collectors; + +import ru.urfu.model.Player; +import ru.urfu.model.Position; + + +public class Resolver implements IResolver { + + private final List players; + + public Resolver(List players) { + this.players = players; + } + + @Override + public int getCountWithoutAgency() { + // int count = 0; + // for (Player player : players) { + // if (player.agency().isEmpty()) { + // count++; + // } + // } + // return count; + return (int) players.stream() + .filter(player -> player.agency().isEmpty()) + .count(); + } + + @Override + public String getDefenderWithMaxGoalsName() { + return players.stream() + .filter(player -> player.position() == Position.DEFENDER) + .max(Comparator.comparingInt(Player::goals)) + .map(Player::name) + .orElse("Нет защитников"); + } + + @Override + public int getMaxDefenderGoalsCount() { + return players.stream() + .filter(player -> player.position() == Position.DEFENDER) + .mapToInt(Player::goals) + .max() + .orElse(0); + } + + @Override + public String getTheExpensiveGermanPlayerPosition() { + return players.stream() + .filter(player -> player.nation().equals("Germany")) + .max(Comparator.comparing(Player::cost)) + .map(Player::position) + .map(Position::getTitleRu) + .orElse("Немецких игроков не найдено"); + } + + @Override + public String getTheRudestTeam() { + return players.stream() + .collect(Collectors.groupingBy(Player::team, Collectors.averagingDouble(Player::redCards))) + .entrySet().stream() + .max(Map.Entry.comparingByValue()) + .map(Map.Entry::getKey) + .orElse("Нет команд"); + } + +} diff --git a/src/test/java/ru/.LCKResolverTest.java~ b/src/test/java/ru/.LCKResolverTest.java~ new file mode 100644 index 0000000..f6b719d --- /dev/null +++ b/src/test/java/ru/.LCKResolverTest.java~ @@ -0,0 +1 @@ +/home/pavloxes/Java2025_2/src/test/java/ru/ResolverTest.java \ No newline at end of file diff --git a/src/test/java/ru/ResolverTest.java b/src/test/java/ru/ResolverTest.java new file mode 100644 index 0000000..702b32c --- /dev/null +++ b/src/test/java/ru/ResolverTest.java @@ -0,0 +1,5 @@ +package ru; + +public class ResolverTest { + +} diff --git a/src/test/java/ru/urfu/ResolverTest.java b/src/test/java/ru/urfu/ResolverTest.java new file mode 100644 index 0000000..91db8ac --- /dev/null +++ b/src/test/java/ru/urfu/ResolverTest.java @@ -0,0 +1,104 @@ +package ru.urfu; + +import java.util.Collections; +import java.util.List; + +import static org.junit.jupiter.api.Assertions.assertEquals; +import org.junit.jupiter.api.Test; + +import ru.urfu.model.Player; +import ru.urfu.model.Position; +import ru.urfu.resolver.Resolver; + +public class ResolverTest { + + @Test + void getCountWithoutAgencyTest() { + List players = List.of( + new Player("Iva Streich", Position.MIDFIELD, "D'Amore LLC", 19, "Colombia", 75012006, "Nevada whales", 7), + new Player("Miss Buck Bradtke", Position.DEFENDER, "D'Amore LLC", 26, "Brazil", 33850831, "Nevada whales", 9), + new Player("Everette Kovacek MD", Position.DEFENDER, "Walker and Sons", 11, "Palau", 64396675, "Wisconsin prophets", 5), + new Player("Ms. Adolph Hartmann", Position.FORWARD, "", 10, "Croatia", 52944545, "North Carolina dolphins", 8), + new Player("Kenyetta Emard", Position.GOALKEEPER, "D'Amore LLC", 24, "Ecuador", 94715977, "Mississippi witches", 7), + new Player("Mrs. Celina Abshire", Position.GOALKEEPER, "D'Amore LLC", 4, "Qatar", 41436703, "Massachusetts enchanters", 0), + new Player("Dr. Royal King", Position.GOALKEEPER, "Walker and Sons", 6, "Ecuador", 50056961, "Florida tigers", 4), + new Player("Terry Hegmann", Position.DEFENDER, "", 11, "Germany", 7294362, "Wisconsin prophets", 8) + ); + Resolver resolver = new Resolver(players); + assertEquals(2, resolver.getCountWithoutAgency()); + + List emptyPlayers = Collections.emptyList(); + Resolver resolverEmpty = new Resolver(emptyPlayers); + assertEquals(0, resolverEmpty.getCountWithoutAgency()); + } + + @Test + void getMaxDefenderGoalsCountTest() { + List players = List.of( + new Player("Iva Streich", Position.MIDFIELD, "D'Amore LLC", 19, "Colombia", 75012006, "Nevada whales", 7), + new Player("Miss Buck Bradtke", Position.DEFENDER, "D'Amore LLC", 26, "Brazil", 33850831, "Nevada whales", 9), + new Player("Everette Kovacek MD", Position.DEFENDER, "Walker and Sons", 11, "Palau", 64396675, "Wisconsin prophets", 5), + new Player("Ms. Adolph Hartmann", Position.FORWARD, "", 10, "Croatia", 52944545, "North Carolina dolphins", 8), + new Player("Kenyetta Emard", Position.GOALKEEPER, "D'Amore LLC", 24, "Ecuador", 94715977, "Mississippi witches", 7), + new Player("Mrs. Celina Abshire", Position.GOALKEEPER, "D'Amore LLC", 4, "Qatar", 41436703, "Massachusetts enchanters", 0), + new Player("Dr. Royal King", Position.GOALKEEPER, "Walker and Sons", 6, "Ecuador", 50056961, "Florida tigers", 4) + ); + Resolver resolver = new Resolver(players); + assertEquals(26, resolver.getMaxDefenderGoalsCount()); + + List emptyPlayers = Collections.emptyList(); + Resolver resolverEmpty = new Resolver(emptyPlayers); + assertEquals(0, resolverEmpty.getMaxDefenderGoalsCount()); + } + + @Test + void getTheExpensiveGermanPlayerPositionTest() { + List players = List.of( + new Player("Iva Streich", Position.MIDFIELD, "D'Amore LLC", 19, "Colombia", 75012006, "Nevada whales", 7), + new Player("Miss Buck Bradtke", Position.DEFENDER, "D'Amore LLC", 26, "Brazil", 33850831, "Nevada whales", 9), + new Player("Everette Kovacek MD", Position.DEFENDER, "Walker and Sons", 11, "Palau", 64396675, "Wisconsin prophets", 5), + new Player("Ms. Adolph Hartmann", Position.FORWARD, "", 10, "Croatia", 52944545, "North Carolina dolphins", 8), + new Player("Kenyetta Emard", Position.GOALKEEPER, "D'Amore LLC", 24, "Ecuador", 94715977, "Mississippi witches", 7), + new Player("Mrs. Celina Abshire", Position.GOALKEEPER, "D'Amore LLC", 4, "Qatar", 41436703, "Massachusetts enchanters", 0), + new Player("Dr. Royal King", Position.GOALKEEPER, "Walker and Sons", 6, "Ecuador", 50056961, "Florida tigers", 4), + new Player("Lorinda Labadie", Position.MIDFIELD, "Price-Hirthe", 13, "Germany", 33413181, "Utah nemesis", 4), + new Player("Ms. Erwin Hoeger", Position.DEFENDER, "Fadel LLC", 28, "Qatar", 71207725, "Minnesota giants", 1), + new Player("Terry Hegmann", Position.DEFENDER, "Graham-Powlowski", 11, "Germany", 7294362, "Wisconsin prophets", 8) + ); + Resolver resolver = new Resolver(players); + assertEquals("Полузащитик", resolver.getTheExpensiveGermanPlayerPosition()); + + List noGermanPlayers = List.of( + new Player("Iva Streich", Position.MIDFIELD, "D'Amore LLC", 19, "Colombia", 75012006, "Nevada whales", 7), + new Player("Miss Buck Bradtke", Position.DEFENDER, "D'Amore LLC", 26, "Brazil", 33850831, "Nevada whales", 9), + new Player("Everette Kovacek MD", Position.DEFENDER, "Walker and Sons", 11, "Palau", 64396675, "Wisconsin prophets", 5), + new Player("Ms. Adolph Hartmann", Position.FORWARD, "", 10, "Croatia", 52944545, "North Carolina dolphins", 8), + new Player("Kenyetta Emard", Position.GOALKEEPER, "D'Amore LLC", 24, "Ecuador", 94715977, "Mississippi witches", 7), + new Player("Mrs. Celina Abshire", Position.GOALKEEPER, "D'Amore LLC", 4, "Qatar", 41436703, "Massachusetts enchanters", 0) + ); + Resolver resolverNoGerman = new Resolver(noGermanPlayers); + assertEquals("Немецких игроков не найдено", resolverNoGerman.getTheExpensiveGermanPlayerPosition()); + } + + @Test + void getTheRudestTeamTest() { + List players = List.of( + new Player("Iva Streich", Position.MIDFIELD, "D'Amore LLC", 19, "Colombia", 75012006, "Nevada whales", 7), + new Player("Miss Buck Bradtke", Position.DEFENDER, "D'Amore LLC", 26, "Brazil", 33850831, "Nevada whales", 9), + new Player("Everette Kovacek MD", Position.DEFENDER, "Walker and Sons", 11, "Palau", 64396675, "Wisconsin prophets", 5), + new Player("Ms. Adolph Hartmann", Position.FORWARD, "", 10, "Croatia", 52944545, "North Carolina dolphins", 8), + new Player("Kenyetta Emard", Position.GOALKEEPER, "D'Amore LLC", 24, "Ecuador", 94715977, "Mississippi witches", 7), + new Player("Mrs. Celina Abshire", Position.GOALKEEPER, "D'Amore LLC", 4, "Qatar", 41436703, "Massachusetts enchanters", 0), + new Player("Dr. Royal King", Position.GOALKEEPER, "Walker and Sons", 6, "Ecuador", 50056961, "Florida tigers", 4), + new Player("Lorinda Labadie", Position.MIDFIELD, "Price-Hirthe", 13, "Germany", 33413181, "Utah nemesis", 4), + new Player("Ms. Erwin Hoeger", Position.DEFENDER, "Fadel LLC", 28, "Qatar", 71207725, "Minnesota giants", 1), + new Player("Terry Hegmann", Position.DEFENDER, "Graham-Powlowski", 11, "Germany", 7294362, "Wisconsin prophets", 8) + ); + Resolver resolver = new Resolver(players); + assertEquals("Nevada whales", resolver.getTheRudestTeam()); + + List emptyPlayers = Collections.emptyList(); + Resolver resolverEmpty = new Resolver(emptyPlayers); + assertEquals("Нет команд", resolverEmpty.getTheRudestTeam()); + } +} \ No newline at end of file diff --git a/src/test/java/ru/urfu/resources/testPlayers.csv b/src/test/java/ru/urfu/resources/testPlayers.csv new file mode 100644 index 0000000..e2f1389 --- /dev/null +++ b/src/test/java/ru/urfu/resources/testPlayers.csv @@ -0,0 +1,128 @@ +Name;Team;City;Position;Nationality;Agency;Transfer cost;Participations;Goals;Assists;Yellow cards;Red cards +Iva Streich;Nevada whales;South Carolina;MIDFIELD;Colombia;D'Amore LLC;75012006;22;19;6;3;7 +Miss Buck Bradtke;Nevada whales;South Carolina;DEFENDER;Brazil;D'Amore LLC;33850831;20;26;18;6;9 +Everette Kovacek MD;Wisconsin prophets;Vermont;DEFENDER;Palau;Walker and Sons;64396675;27;11;25;0;5 +Ms. Adolph Hartmann;North Carolina dolphins;Tennessee;FORWARD;Croatia;;52944545;27;10;5;5;8 +Kenyetta Emard;Mississippi witches;Virginia;GOALKEEPER;Ecuador;D'Amore LLC;94715977;10;24;18;0;7 +Mrs. Celina Abshire;Massachusetts enchanters;Connecticut;GOALKEEPER;Qatar;D'Amore LLC;41436703;27;4;1;0;0 +Dr. Royal King;Florida tigers;Washington;GOALKEEPER;Ecuador;Walker and Sons;50056961;21;6;3;5;4 +Rory Koss;Utah nemesis;New York;MIDFIELD;Ghana;Jakubowski and Sons;4483194;20;13;11;9;2 +Lorinda Labadie;Utah nemesis;New York;MIDFIELD;Germany;Price-Hirthe;33413181;22;13;21;0;4 +Ms. Erwin Hoeger;Minnesota giants;Washington;DEFENDER;Qatar;Fadel LLC;71207725;26;28;15;7;1 +Terry Hegmann;Wisconsin prophets;Vermont;DEFENDER;Germany;Graham-Powlowski;7294362;12;11;28;1;8 +Serina Moen;Nevada whales;South Carolina;MIDFIELD;Brazil;Bogisich-Rempel;91242062;28;0;22;0;6 +Moshe Wiegand;North Carolina dolphins;Tennessee;DEFENDER;Brazil;Jakubowski and Sons;30073197;28;19;25;9;0 +Zackary Kilback;Nevada whales;South Carolina;MIDFIELD;Korea (Democratic People's Republic of);D'Amore LLC;63619334;12;23;22;4;4 +Beckie Lindgren;Nevada whales;South Carolina;DEFENDER;Germany;Walker and Sons;11576194;25;16;15;0;7 +Eusebio Beatty IV;New Mexico ogres;Georgia;DEFENDER;Ecuador;D'Amore LLC;17429288;0;10;6;1;4 +Lannie Brakus;Utah nemesis;New York;GOALKEEPER;Ghana;Bogisich-Rempel;71830024;19;1;19;5;6 +Carson Bradtke;Florida tigers;Washington;FORWARD;Colombia;;61663205;8;24;28;0;1 +Miss Niesha Aufderhar;North Carolina dolphins;Tennessee;FORWARD;Ecuador;Graham-Powlowski;28665746;0;16;21;0;6 +Wiley Gutmann;Utah nemesis;New York;GOALKEEPER;Korea (Democratic People's Republic of);D'Amore LLC;46579365;23;18;26;7;1 +Micha Koch;New Mexico ogres;Georgia;GOALKEEPER;Croatia;;32216127;15;20;0;7;1 +Loyd Reinger;Florida tigers;Washington;FORWARD;Ghana;Graham-Powlowski;35819257;17;24;23;4;9 +Tammi Kirlin;Florida tigers;Washington;FORWARD;Qatar;D'Amore LLC;98013441;26;12;24;2;1 +Marcelino Strosin;Nevada whales;South Carolina;DEFENDER;Ghana;Walker and Sons;37747125;4;27;13;8;1 +Darwin Lang I;Utah nemesis;New York;MIDFIELD;Ecuador;Walker and Sons;62146819;1;20;25;7;1 +Steven O'Conner DDS;Nevada whales;South Carolina;DEFENDER;Ghana;Bogisich-Rempel;32437027;26;15;16;1;6 +Cathie Mills;Massachusetts enchanters;Connecticut;DEFENDER;Korea (Democratic People's Republic of);Walker and Sons;92423724;1;1;1;7;4 +Mrs. Refugio Heaney;New Mexico ogres;Georgia;DEFENDER;Palau;;28157018;23;16;2;6;7 +Kory Shanahan;Mississippi witches;Virginia;DEFENDER;Mozambique;Price-Hirthe;76160201;3;4;7;9;7 +Christoper Hickle II;Mississippi witches;Virginia;GOALKEEPER;Ecuador;Graham-Powlowski;81406645;25;14;1;3;1 +Miss Gavin Homenick;Massachusetts enchanters;Connecticut;FORWARD;Palau;D'Amore LLC;69853008;13;1;13;8;3 +Ambrose Bruen;Utah nemesis;New York;MIDFIELD;Germany;Price-Hirthe;83408744;6;11;29;8;7 +Lynnette Mosciski;North Carolina dolphins;Tennessee;MIDFIELD;Mozambique;D'Amore LLC;78672711;23;1;23;7;6 +Mr. Roxanna Ruecker;Wisconsin prophets;Vermont;GOALKEEPER;Brazil;;89763637;14;7;10;6;9 +Theron Boyer;Minnesota giants;Washington;GOALKEEPER;Germany;Price-Hirthe;84797258;25;17;29;7;5 +Sindy Padberg;Nevada whales;South Carolina;GOALKEEPER;Qatar;;64825412;23;4;18;1;6 +Fred O'Reilly Sr.;Hawaii oxen;Oklahoma;GOALKEEPER;Mozambique;Bogisich-Rempel;81982516;2;23;7;3;7 +Rey Hickle;Nevada whales;South Carolina;GOALKEEPER;Ecuador;Fadel LLC;374808;17;2;29;8;0 +Miss Jamal Smith;Hawaii oxen;Oklahoma;FORWARD;Croatia;Bahringer-Larson;80645470;12;13;0;6;0 +Miss Dian Gaylord;Wisconsin prophets;Vermont;DEFENDER;Croatia;;23751846;12;28;21;8;7 +Casey Streich;Massachusetts enchanters;Connecticut;DEFENDER;Mozambique;Price-Hirthe;76599052;1;13;19;0;6 +Brian Armstrong PhD;Wisconsin prophets;Vermont;GOALKEEPER;Palau;Hauck Inc;15642504;23;23;2;7;5 +Margarito Hyatt;Hawaii oxen;Oklahoma;DEFENDER;Mozambique;Graham-Powlowski;90053358;28;17;19;7;1 +Corey Ryan;Wisconsin prophets;Vermont;FORWARD;Qatar;Bogisich-Rempel;54337623;23;14;14;7;5 +Barry O'Hara IV;Utah nemesis;New York;FORWARD;Palau;Bogisich-Rempel;37451722;5;24;0;7;5 +Herschel Carroll;Massachusetts enchanters;Connecticut;DEFENDER;Korea (Democratic People's Republic of);Schaden, Robel and Raynor;31255327;22;21;1;0;8 +Katherina Gibson DDS;North Carolina dolphins;Tennessee;GOALKEEPER;Qatar;Fadel LLC;82762815;5;3;16;1;8 +Zonia Ferry;Wisconsin prophets;Vermont;DEFENDER;Croatia;D'Amore LLC;43200244;5;1;7;6;0 +Annabell Baumbach;Mississippi witches;Virginia;MIDFIELD;Korea (Democratic People's Republic of);Price-Hirthe;29739181;12;4;21;1;4 +Nickolas Abernathy;Mississippi witches;Virginia;FORWARD;Ghana;;95940267;9;7;2;6;4 +Casey Stanton;Florida tigers;Washington;MIDFIELD;Croatia;Bogisich-Rempel;47790905;21;6;0;6;2 +Alex Sporer;Nevada whales;South Carolina;MIDFIELD;Ecuador;Walker and Sons;82241450;17;16;27;7;4 +Reina Klein;New Mexico ogres;Georgia;MIDFIELD;Qatar;Graham-Powlowski;98335221;3;15;2;6;5 +Mackenzie Schmidt DVM;Massachusetts enchanters;Connecticut;DEFENDER;Ecuador;Bahringer-Larson;73823976;16;19;8;7;3 +Cecila Considine;Nevada whales;South Carolina;FORWARD;Ghana;Bahringer-Larson;90711076;6;10;15;4;1 +Gala Hodkiewicz V;Minnesota giants;Washington;MIDFIELD;Brazil;Walker and Sons;87364089;24;9;19;3;5 +Zane Keeling;New Mexico ogres;Georgia;GOALKEEPER;Colombia;Price-Hirthe;45387683;19;24;23;1;7 +Kirby Johns II;Nevada whales;South Carolina;GOALKEEPER;Korea (Democratic People's Republic of);Schaden, Robel and Raynor;16485961;19;13;22;9;9 +Ms. Hosea Lueilwitz;Nevada whales;South Carolina;MIDFIELD;Germany;D'Amore LLC;42766444;21;19;19;0;6 +Azalee Stehr;Mississippi witches;Virginia;MIDFIELD;Ecuador;D'Amore LLC;1400434;11;16;27;5;2 +Mrs. Adan Swift;Florida tigers;Washington;FORWARD;Korea (Democratic People's Republic of);Fadel LLC;37558077;25;16;18;8;4 +Jeremy Lemke;Minnesota giants;Washington;FORWARD;Brazil;Jakubowski and Sons;55354033;19;10;10;1;4 +Roscoe Larson;Wisconsin prophets;Vermont;MIDFIELD;Brazil;;51592286;13;24;25;0;7 +Ramona Hoppe II;Utah nemesis;New York;MIDFIELD;Mozambique;Bogisich-Rempel;63853946;4;14;21;5;6 +Vikki Schmidt;Wisconsin prophets;Vermont;GOALKEEPER;Qatar;;46890120;15;29;19;2;3 +Miss Kari Marquardt;Wisconsin prophets;Vermont;MIDFIELD;Palau;Hauck Inc;81194802;18;9;21;8;8 +Jennefer Kshlerin III;Wisconsin prophets;Vermont;GOALKEEPER;Mozambique;Fadel LLC;10704361;28;23;9;9;0 +Xavier Farrell;Wisconsin prophets;Vermont;MIDFIELD;Qatar;Schaden, Robel and Raynor;67677680;17;29;1;4;7 +Alysia Mann IV;Hawaii oxen;Oklahoma;DEFENDER;Croatia;Schaden, Robel and Raynor;16170779;10;23;8;4;3 +Miss Fidel McDermott;New Mexico ogres;Georgia;MIDFIELD;Croatia;Bogisich-Rempel;19662027;29;17;28;5;8 +Paris Pouros;Massachusetts enchanters;Connecticut;FORWARD;Croatia;Jakubowski and Sons;41760175;20;20;24;9;0 +Sidney Durgan;North Carolina dolphins;Tennessee;DEFENDER;Croatia;Walker and Sons;64847650;23;29;26;9;6 +Jimmy Krajcik;Nevada whales;South Carolina;DEFENDER;Brazil;Fadel LLC;28059144;13;18;1;9;1 +Cruz Dickinson;Wisconsin prophets;Vermont;DEFENDER;Ecuador;Price-Hirthe;35839056;17;18;20;8;8 +Isidra Koch;Florida tigers;Washington;DEFENDER;Qatar;D'Amore LLC;56455685;4;13;21;3;9 +Lessie Graham;Minnesota giants;Washington;GOALKEEPER;Ecuador;;31052070;25;14;23;1;3 +Lanell Krajcik;Mississippi witches;Virginia;MIDFIELD;Croatia;Jakubowski and Sons;73478503;28;27;7;1;5 +Marty Bednar DDS;Wisconsin prophets;Vermont;MIDFIELD;Brazil;D'Amore LLC;11543884;19;17;22;7;5 +Ms. Maire Kozey;Hawaii oxen;Oklahoma;MIDFIELD;Brazil;Hauck Inc;88643847;25;12;22;5;6 +Wilfred Davis;Hawaii oxen;Oklahoma;MIDFIELD;Mozambique;;50822344;27;15;0;1;7 +Debrah McDermott;Mississippi witches;Virginia;GOALKEEPER;Germany;Graham-Powlowski;30423082;17;8;19;8;0 +Chance Fahey;North Carolina dolphins;Tennessee;MIDFIELD;Ecuador;Price-Hirthe;72009124;20;13;22;3;6 +Marcus Lind;New Mexico ogres;Georgia;DEFENDER;Ecuador;Bogisich-Rempel;20730872;14;15;2;3;5 +Jacquetta Heidenreich;Minnesota giants;Washington;DEFENDER;Croatia;;42400437;2;13;24;9;1 +Miss Loni Hermann;Minnesota giants;Washington;GOALKEEPER;Palau;Graham-Powlowski;88718909;14;16;10;1;5 +Judi Nikolaus;Wisconsin prophets;Vermont;DEFENDER;Ghana;Price-Hirthe;23081398;10;29;8;6;5 +Daniella Blick;Utah nemesis;New York;DEFENDER;Korea (Democratic People's Republic of);Graham-Powlowski;97991859;16;16;8;6;6 +Dr. Hershel Christiansen;Nevada whales;South Carolina;GOALKEEPER;Ghana;Price-Hirthe;35270530;12;27;12;4;0 +Svetlana Raynor;New Mexico ogres;Georgia;FORWARD;Ecuador;Schaden, Robel and Raynor;59547765;13;12;22;8;2 +Angelena Walter;Nevada whales;South Carolina;FORWARD;Qatar;Bahringer-Larson;63096649;23;4;23;7;2 +Jerald Nikolaus Sr.;Minnesota giants;Washington;DEFENDER;Qatar;Bogisich-Rempel;40298215;12;14;23;7;5 +Buddy West III;Mississippi witches;Virginia;MIDFIELD;Qatar;Bogisich-Rempel;10208129;25;20;26;2;1 +Rupert Casper;Florida tigers;Washington;MIDFIELD;Croatia;Schaden, Robel and Raynor;19780728;29;12;28;8;2 +Jean Dare;Hawaii oxen;Oklahoma;MIDFIELD;Qatar;Hauck Inc;13756247;8;17;1;1;4 +Donya King;Minnesota giants;Washington;FORWARD;Brazil;Bahringer-Larson;93705885;1;8;10;5;0 +Johnie Kuphal;Utah nemesis;New York;DEFENDER;Brazil;D'Amore LLC;47127997;2;3;12;9;4 +Rubin Greenfelder;Mississippi witches;Virginia;MIDFIELD;Croatia;Price-Hirthe;12305524;8;10;16;9;0 +Franklin Fritsch;Florida tigers;Washington;DEFENDER;Korea (Democratic People's Republic of);Bogisich-Rempel;62431251;26;8;5;6;8 +Debbi Bergnaum;Wisconsin prophets;Vermont;FORWARD;Colombia;Walker and Sons;52894208;17;14;26;3;9 +Mary Leannon Jr.;Hawaii oxen;Oklahoma;GOALKEEPER;Germany;Walker and Sons;10169185;24;26;5;6;7 +Rex Adams;Minnesota giants;Washington;GOALKEEPER;Qatar;Fadel LLC;3202524;27;27;21;6;4 +Luann Jerde;Mississippi witches;Virginia;MIDFIELD;Qatar;Bogisich-Rempel;33023445;27;10;25;8;3 +Brant Ledner;Nevada whales;South Carolina;GOALKEEPER;Croatia;Graham-Powlowski;17287154;21;26;12;2;0 +Ms. Austin Spencer;Utah nemesis;New York;MIDFIELD;Palau;Graham-Powlowski;9262668;8;6;23;2;4 +Nestor Rolfson;New Mexico ogres;Georgia;DEFENDER;Qatar;Hauck Inc;43127466;14;25;25;7;9 +Brandon Wehner;Hawaii oxen;Oklahoma;GOALKEEPER;Palau;Bogisich-Rempel;40261879;20;15;23;5;0 +Noble Walker;New Mexico ogres;Georgia;DEFENDER;Mozambique;Fadel LLC;15134083;11;24;20;3;9 +Junior Steuber;Hawaii oxen;Oklahoma;DEFENDER;Palau;Graham-Powlowski;88584168;14;21;0;9;0 +Dr. Valeria Mann;Nevada whales;South Carolina;FORWARD;Korea (Democratic People's Republic of);Fadel LLC;92814158;19;25;10;6;3 +Ms. Sharan Skiles;Wisconsin prophets;Vermont;FORWARD;Qatar;Hauck Inc;732179;12;23;5;4;0 +Charleen Sipes;Nevada whales;South Carolina;DEFENDER;Qatar;Jakubowski and Sons;2789526;7;3;7;7;8 +Alan Thompson DDS;Nevada whales;South Carolina;FORWARD;Germany;Fadel LLC;15436632;12;17;27;9;5 +Kattie Pollich;Florida tigers;Washington;FORWARD;Germany;Price-Hirthe;55115120;22;16;8;5;0 +Mrs. Constance Willms;Nevada whales;South Carolina;GOALKEEPER;Palau;Jakubowski and Sons;74350559;12;18;20;9;3 +Rheba Ebert MD;Mississippi witches;Virginia;DEFENDER;Croatia;D'Amore LLC;9433827;13;14;1;6;9 +Jacque Quitzon;New Mexico ogres;Georgia;DEFENDER;Brazil;;95378205;3;26;16;0;0 +Sharri Carter Sr.;New Mexico ogres;Georgia;FORWARD;Brazil;Price-Hirthe;54636028;14;18;20;8;3 +Kristal Rippin;Mississippi witches;Virginia;DEFENDER;Qatar;Hauck Inc;19548523;19;3;13;0;4 +Marquis McDermott;New Mexico ogres;Georgia;GOALKEEPER;Croatia;D'Amore LLC;48337017;16;14;1;3;9 +Miss Mariette Beer;North Carolina dolphins;Tennessee;DEFENDER;Germany;Walker and Sons;93300806;19;29;28;3;4 +Hollis Gislason;Minnesota giants;Washington;FORWARD;Mozambique;;65154327;13;25;2;8;4 +Elijah Runte;Florida tigers;Washington;DEFENDER;Colombia;Bogisich-Rempel;83396911;21;8;18;7;0 +Juliet Halvorson;Massachusetts enchanters;Connecticut;MIDFIELD;Germany;Hauck Inc;77111426;6;22;21;5;8 +Ms. Kennith Greenfelder;Nevada whales;South Carolina;GOALKEEPER;Palau;Bahringer-Larson;16839208;28;14;19;9;4 +Valarie Kozey;New Mexico ogres;Georgia;FORWARD;Ghana;Bogisich-Rempel;35776993;26;10;28;5;6 +Rebeca Heller PhD;Florida tigers;Washington;GOALKEEPER;Croatia;Bahringer-Larson;72494545;18;4;29;4;9 +Danette Heaney;Mississippi witches;Virginia;MIDFIELD;Korea (Democratic People's Republic of);Schaden, Robel and Raynor;77198084;4;3;13;1;5 From 96509756b4b3d27f370285c78749743618ba70b5 Mon Sep 17 00:00:00 2001 From: Pavloxes Date: Fri, 3 Oct 2025 07:38:15 +0500 Subject: [PATCH 2/2] =?UTF-8?q?=D0=9F=D0=B0=D0=BA?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/main/java/ru/urfu/model/Position.java | 2 +- src/test/java/ru/.LCKResolverTest.java~ | 1 - src/test/java/ru/ResolverTest.java | 5 ----- src/test/java/ru/urfu/ResolverTest.java | 2 +- 4 files changed, 2 insertions(+), 8 deletions(-) delete mode 100644 src/test/java/ru/.LCKResolverTest.java~ delete mode 100644 src/test/java/ru/ResolverTest.java diff --git a/src/main/java/ru/urfu/model/Position.java b/src/main/java/ru/urfu/model/Position.java index cf51561..9d1936f 100644 --- a/src/main/java/ru/urfu/model/Position.java +++ b/src/main/java/ru/urfu/model/Position.java @@ -3,7 +3,7 @@ public enum Position { GOALKEEPER("Вратарь"), DEFENDER("Защитник"), - MIDFIELD("Полузащитик"), + MIDFIELD("Полузащитник"), FORWARD("Нападающий"); private final String titleRu; diff --git a/src/test/java/ru/.LCKResolverTest.java~ b/src/test/java/ru/.LCKResolverTest.java~ deleted file mode 100644 index f6b719d..0000000 --- a/src/test/java/ru/.LCKResolverTest.java~ +++ /dev/null @@ -1 +0,0 @@ -/home/pavloxes/Java2025_2/src/test/java/ru/ResolverTest.java \ No newline at end of file diff --git a/src/test/java/ru/ResolverTest.java b/src/test/java/ru/ResolverTest.java deleted file mode 100644 index 702b32c..0000000 --- a/src/test/java/ru/ResolverTest.java +++ /dev/null @@ -1,5 +0,0 @@ -package ru; - -public class ResolverTest { - -} diff --git a/src/test/java/ru/urfu/ResolverTest.java b/src/test/java/ru/urfu/ResolverTest.java index 91db8ac..897636f 100644 --- a/src/test/java/ru/urfu/ResolverTest.java +++ b/src/test/java/ru/urfu/ResolverTest.java @@ -66,7 +66,7 @@ void getTheExpensiveGermanPlayerPositionTest() { new Player("Terry Hegmann", Position.DEFENDER, "Graham-Powlowski", 11, "Germany", 7294362, "Wisconsin prophets", 8) ); Resolver resolver = new Resolver(players); - assertEquals("Полузащитик", resolver.getTheExpensiveGermanPlayerPosition()); + assertEquals("Полузащитник", resolver.getTheExpensiveGermanPlayerPosition()); List noGermanPlayers = List.of( new Player("Iva Streich", Position.MIDFIELD, "D'Amore LLC", 19, "Colombia", 75012006, "Nevada whales", 7),