From d0ad9654f9d3554b6b896a2c7afc04176295090d Mon Sep 17 00:00:00 2001 From: Denis Kitrish Date: Thu, 11 Aug 2022 19:34:04 +0300 Subject: [PATCH 01/13] =?UTF-8?q?=D0=A0=D0=B0=D0=B7=D0=B4=D0=B5=D0=BB=202.?= =?UTF-8?q?=20=D0=9A=D0=BE=D0=BC=D0=B0=D0=BD=D0=B4=D1=8B=20=D0=B2=D1=8B?= =?UTF-8?q?=D0=B2=D0=BE=D0=B4=D0=B0.=20=D0=9A=D0=BE=D0=BC=D0=B0=D0=BD?= =?UTF-8?q?=D0=B4=D1=8B=20=D0=B2=D0=B2=D0=BE=D0=B4=D0=B0=20=D0=97=D0=B0?= =?UTF-8?q?=D0=B4=D0=B0=D0=BD=D0=B8=D0=B5=202.2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/main/java/ru/job4j/io/Task13.java | 14 ++++++++++++++ src/test/java/ru/job4j/io/Task13Test.java | 23 +++++++++++++++++++++++ 2 files changed, 37 insertions(+) create mode 100644 src/main/java/ru/job4j/io/Task13.java create mode 100644 src/test/java/ru/job4j/io/Task13Test.java diff --git a/src/main/java/ru/job4j/io/Task13.java b/src/main/java/ru/job4j/io/Task13.java new file mode 100644 index 0000000..d11313d --- /dev/null +++ b/src/main/java/ru/job4j/io/Task13.java @@ -0,0 +1,14 @@ +package ru.job4j.io; + +import java.util.Scanner; + +public class Task13 { + public static void main(String[] args) { + Scanner input = new Scanner(System.in); + String inString = input.nextLine(); + // YOUR CODE + String[] split = inString.replaceAll("\\s+", "").split(""); + String result = String.join("-", split).replace("-!", "!"); + System.out.print(result); + } +} diff --git a/src/test/java/ru/job4j/io/Task13Test.java b/src/test/java/ru/job4j/io/Task13Test.java new file mode 100644 index 0000000..8a7c0bf --- /dev/null +++ b/src/test/java/ru/job4j/io/Task13Test.java @@ -0,0 +1,23 @@ +package ru.job4j.io; + +import org.junit.Test; + +import java.io.ByteArrayInputStream; +import java.io.ByteArrayOutputStream; +import java.io.PrintStream; + +import static org.hamcrest.MatcherAssert.assertThat; +import static org.hamcrest.Matchers.is; + +public class Task13Test { + + @Test + public void whenDelimiterIsPastedBetweenLettersOfString() { + ByteArrayInputStream in = new ByteArrayInputStream("Hello, friend!".getBytes()); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + System.setOut(new PrintStream(out)); + System.setIn(in); + Task13.main(null); + assertThat(out.toString(), is("H-e-l-l-o-,-f-r-i-e-n-d!")); + } +} \ No newline at end of file From cfad8fc4dcd27b89cb9180b2145492ec83879e43 Mon Sep 17 00:00:00 2001 From: Denis Kitrish Date: Sat, 13 Aug 2022 23:09:14 +0300 Subject: [PATCH 02/13] =?UTF-8?q?=D0=A0=D0=B0=D0=B7=D0=B4=D0=B5=D0=BB=202.?= =?UTF-8?q?=20=D0=9A=D0=BE=D0=BC=D0=B0=D0=BD=D0=B4=D1=8B=20=D0=B2=D1=8B?= =?UTF-8?q?=D0=B2=D0=BE=D0=B4=D0=B0.=20=D0=9A=D0=BE=D0=BC=D0=B0=D0=BD?= =?UTF-8?q?=D0=B4=D1=8B=20=D0=B2=D0=B2=D0=BE=D0=B4=D0=B0=20=D0=97=D0=B0?= =?UTF-8?q?=D0=B4=D0=B0=D0=BD=D0=B8=D0=B5=202.2=20=D0=9E=D0=BF=D1=82=D0=B8?= =?UTF-8?q?=D0=BC=D0=B8=D0=B7=D0=B0=D1=86=D0=B8=D1=8F=20=D0=BA=D0=BE=D0=B4?= =?UTF-8?q?=D0=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/main/java/ru/job4j/io/Task13.java | 7 ++----- src/test/java/ru/job4j/io/Task13Test.java | 3 --- 2 files changed, 2 insertions(+), 8 deletions(-) diff --git a/src/main/java/ru/job4j/io/Task13.java b/src/main/java/ru/job4j/io/Task13.java index d11313d..232e3c1 100644 --- a/src/main/java/ru/job4j/io/Task13.java +++ b/src/main/java/ru/job4j/io/Task13.java @@ -1,13 +1,10 @@ package ru.job4j.io; -import java.util.Scanner; - public class Task13 { public static void main(String[] args) { - Scanner input = new Scanner(System.in); - String inString = input.nextLine(); // YOUR CODE - String[] split = inString.replaceAll("\\s+", "").split(""); + String greeting = "Hello, friend!"; + String[] split = greeting.replaceAll("\\s+", "").split(""); String result = String.join("-", split).replace("-!", "!"); System.out.print(result); } diff --git a/src/test/java/ru/job4j/io/Task13Test.java b/src/test/java/ru/job4j/io/Task13Test.java index 8a7c0bf..37744d5 100644 --- a/src/test/java/ru/job4j/io/Task13Test.java +++ b/src/test/java/ru/job4j/io/Task13Test.java @@ -2,7 +2,6 @@ import org.junit.Test; -import java.io.ByteArrayInputStream; import java.io.ByteArrayOutputStream; import java.io.PrintStream; @@ -13,10 +12,8 @@ public class Task13Test { @Test public void whenDelimiterIsPastedBetweenLettersOfString() { - ByteArrayInputStream in = new ByteArrayInputStream("Hello, friend!".getBytes()); ByteArrayOutputStream out = new ByteArrayOutputStream(); System.setOut(new PrintStream(out)); - System.setIn(in); Task13.main(null); assertThat(out.toString(), is("H-e-l-l-o-,-f-r-i-e-n-d!")); } From fdc56061903074e71b90acd4395b8863b22271e6 Mon Sep 17 00:00:00 2001 From: Denis Kitrish Date: Sat, 13 Aug 2022 23:11:39 +0300 Subject: [PATCH 03/13] =?UTF-8?q?=D0=A0=D0=B0=D0=B7=D0=B4=D0=B5=D0=BB=202.?= =?UTF-8?q?=20=D0=9A=D0=BE=D0=BC=D0=B0=D0=BD=D0=B4=D1=8B=20=D0=B2=D1=8B?= =?UTF-8?q?=D0=B2=D0=BE=D0=B4=D0=B0.=20=D0=9A=D0=BE=D0=BC=D0=B0=D0=BD?= =?UTF-8?q?=D0=B4=D1=8B=20=D0=B2=D0=B2=D0=BE=D0=B4=D0=B0=20=D0=97=D0=B0?= =?UTF-8?q?=D0=B4=D0=B0=D0=BD=D0=B8=D0=B5=202.3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/main/java/ru/job4j/io/Task14.java | 13 +++++++++++++ src/test/java/ru/job4j/io/Task14Test.java | 20 ++++++++++++++++++++ 2 files changed, 33 insertions(+) create mode 100644 src/main/java/ru/job4j/io/Task14.java create mode 100644 src/test/java/ru/job4j/io/Task14Test.java diff --git a/src/main/java/ru/job4j/io/Task14.java b/src/main/java/ru/job4j/io/Task14.java new file mode 100644 index 0000000..a51b2c6 --- /dev/null +++ b/src/main/java/ru/job4j/io/Task14.java @@ -0,0 +1,13 @@ +package ru.job4j.io; + +public class Task14 { + public static void main(String[] args) { + String source = "+!?"; + // YOUR CODE + String[] symbols = source.split(""); + String string = symbols[0].repeat(3) + System.lineSeparator() + + symbols[1].repeat(4) + System.lineSeparator() + + symbols[2].repeat(2); + System.out.print(string); + } +} diff --git a/src/test/java/ru/job4j/io/Task14Test.java b/src/test/java/ru/job4j/io/Task14Test.java new file mode 100644 index 0000000..3762915 --- /dev/null +++ b/src/test/java/ru/job4j/io/Task14Test.java @@ -0,0 +1,20 @@ +package ru.job4j.io; + +import org.junit.Test; + +import java.io.ByteArrayOutputStream; +import java.io.PrintStream; + +import static org.hamcrest.MatcherAssert.assertThat; +import static org.hamcrest.Matchers.is; + +public class Task14Test { + @Test + public void eachSequenceOfSameSymbolsOnSeparateLine() { + ByteArrayOutputStream out = new ByteArrayOutputStream(); + System.setOut(new PrintStream(out)); + Task14.main(null); + String expected = String.format("+++%S!!!!%S??", System.lineSeparator(), System.lineSeparator()); + assertThat(out.toString(), is(expected)); + } +} \ No newline at end of file From 32635a6c5fa9f7ad44929d5ac1de69c4ae485b8b Mon Sep 17 00:00:00 2001 From: Denis Kitrish Date: Sat, 13 Aug 2022 23:34:14 +0300 Subject: [PATCH 04/13] =?UTF-8?q?=D0=A0=D0=B0=D0=B7=D0=B4=D0=B5=D0=BB=202.?= =?UTF-8?q?=20=D0=9A=D0=BE=D0=BC=D0=B0=D0=BD=D0=B4=D1=8B=20=D0=B2=D1=8B?= =?UTF-8?q?=D0=B2=D0=BE=D0=B4=D0=B0.=20=D0=9A=D0=BE=D0=BC=D0=B0=D0=BD?= =?UTF-8?q?=D0=B4=D1=8B=20=D0=B2=D0=B2=D0=BE=D0=B4=D0=B0=20=D0=97=D0=B0?= =?UTF-8?q?=D0=B4=D0=B0=D0=BD=D0=B8=D0=B5=202.2=20=D0=9F=D0=B5=D1=80=D0=B5?= =?UTF-8?q?=D0=B8=D0=BC=D0=B5=D0=BD=D0=BE=D0=B2=D0=B0=D0=BD=D0=B8=D0=B5=20?= =?UTF-8?q?=D0=B8=D0=BC=D0=B5=D0=BD=D0=B8=20=D0=BA=D0=BB=D0=B0=D1=81=D1=81?= =?UTF-8?q?=D0=B0=20Task13=20->=20Task14?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/main/java/ru/job4j/io/Task13.java | 11 ----------- src/main/java/ru/job4j/io/Task14.java | 10 ++++------ src/test/java/ru/job4j/io/Task14Test.java | 6 +++--- 3 files changed, 7 insertions(+), 20 deletions(-) delete mode 100644 src/main/java/ru/job4j/io/Task13.java diff --git a/src/main/java/ru/job4j/io/Task13.java b/src/main/java/ru/job4j/io/Task13.java deleted file mode 100644 index 232e3c1..0000000 --- a/src/main/java/ru/job4j/io/Task13.java +++ /dev/null @@ -1,11 +0,0 @@ -package ru.job4j.io; - -public class Task13 { - public static void main(String[] args) { - // YOUR CODE - String greeting = "Hello, friend!"; - String[] split = greeting.replaceAll("\\s+", "").split(""); - String result = String.join("-", split).replace("-!", "!"); - System.out.print(result); - } -} diff --git a/src/main/java/ru/job4j/io/Task14.java b/src/main/java/ru/job4j/io/Task14.java index a51b2c6..f7fc0c7 100644 --- a/src/main/java/ru/job4j/io/Task14.java +++ b/src/main/java/ru/job4j/io/Task14.java @@ -2,12 +2,10 @@ public class Task14 { public static void main(String[] args) { - String source = "+!?"; // YOUR CODE - String[] symbols = source.split(""); - String string = symbols[0].repeat(3) + System.lineSeparator() + - symbols[1].repeat(4) + System.lineSeparator() + - symbols[2].repeat(2); - System.out.print(string); + String greeting = "Hello, friend!"; + String[] split = greeting.replaceAll("\\s+", "").split(""); + String result = String.join("-", split).replace("-!", "!"); + System.out.print(result); } } diff --git a/src/test/java/ru/job4j/io/Task14Test.java b/src/test/java/ru/job4j/io/Task14Test.java index 3762915..dc179b2 100644 --- a/src/test/java/ru/job4j/io/Task14Test.java +++ b/src/test/java/ru/job4j/io/Task14Test.java @@ -9,12 +9,12 @@ import static org.hamcrest.Matchers.is; public class Task14Test { + @Test - public void eachSequenceOfSameSymbolsOnSeparateLine() { + public void whenDelimiterIsPastedBetweenLettersOfString() { ByteArrayOutputStream out = new ByteArrayOutputStream(); System.setOut(new PrintStream(out)); Task14.main(null); - String expected = String.format("+++%S!!!!%S??", System.lineSeparator(), System.lineSeparator()); - assertThat(out.toString(), is(expected)); + assertThat(out.toString(), is("H-e-l-l-o-,-f-r-i-e-n-d!")); } } \ No newline at end of file From a73f48577b38560690289a0fcce40ad027d63401 Mon Sep 17 00:00:00 2001 From: Denis Kitrish Date: Sat, 13 Aug 2022 23:34:29 +0300 Subject: [PATCH 05/13] =?UTF-8?q?=D0=A0=D0=B0=D0=B7=D0=B4=D0=B5=D0=BB=202.?= =?UTF-8?q?=20=D0=9A=D0=BE=D0=BC=D0=B0=D0=BD=D0=B4=D1=8B=20=D0=B2=D1=8B?= =?UTF-8?q?=D0=B2=D0=BE=D0=B4=D0=B0.=20=D0=9A=D0=BE=D0=BC=D0=B0=D0=BD?= =?UTF-8?q?=D0=B4=D1=8B=20=D0=B2=D0=B2=D0=BE=D0=B4=D0=B0=20=D0=97=D0=B0?= =?UTF-8?q?=D0=B4=D0=B0=D0=BD=D0=B8=D0=B5=202.3=20=D0=9F=D0=B5=D1=80=D0=B5?= =?UTF-8?q?=D0=B8=D0=BC=D0=B5=D0=BD=D0=BE=D0=B2=D0=B0=D0=BD=D0=B8=D0=B5=20?= =?UTF-8?q?=D0=B8=D0=BC=D0=B5=D0=BD=D0=B8=20=D0=BA=D0=BB=D0=B0=D1=81=D1=81?= =?UTF-8?q?=D0=B0=20Task14=20->=20Task15?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/main/java/ru/job4j/io/Task15.java | 13 +++++++++++++ .../job4j/io/{Task13Test.java => Task15Test.java} | 10 +++++----- 2 files changed, 18 insertions(+), 5 deletions(-) create mode 100644 src/main/java/ru/job4j/io/Task15.java rename src/test/java/ru/job4j/io/{Task13Test.java => Task15Test.java} (55%) diff --git a/src/main/java/ru/job4j/io/Task15.java b/src/main/java/ru/job4j/io/Task15.java new file mode 100644 index 0000000..8ec9b9b --- /dev/null +++ b/src/main/java/ru/job4j/io/Task15.java @@ -0,0 +1,13 @@ +package ru.job4j.io; + +public class Task15 { + public static void main(String[] args) { + String source = "+!?"; + // YOUR CODE + String[] symbols = source.split(""); + String string = symbols[0].repeat(3) + System.lineSeparator() + + symbols[1].repeat(4) + System.lineSeparator() + + symbols[2].repeat(2); + System.out.print(string); + } +} diff --git a/src/test/java/ru/job4j/io/Task13Test.java b/src/test/java/ru/job4j/io/Task15Test.java similarity index 55% rename from src/test/java/ru/job4j/io/Task13Test.java rename to src/test/java/ru/job4j/io/Task15Test.java index 37744d5..348a369 100644 --- a/src/test/java/ru/job4j/io/Task13Test.java +++ b/src/test/java/ru/job4j/io/Task15Test.java @@ -8,13 +8,13 @@ import static org.hamcrest.MatcherAssert.assertThat; import static org.hamcrest.Matchers.is; -public class Task13Test { - +public class Task15Test { @Test - public void whenDelimiterIsPastedBetweenLettersOfString() { + public void eachSequenceOfSameSymbolsOnSeparateLine() { ByteArrayOutputStream out = new ByteArrayOutputStream(); System.setOut(new PrintStream(out)); - Task13.main(null); - assertThat(out.toString(), is("H-e-l-l-o-,-f-r-i-e-n-d!")); + Task15.main(null); + String expected = String.format("+++%S!!!!%S??", System.lineSeparator(), System.lineSeparator()); + assertThat(out.toString(), is(expected)); } } \ No newline at end of file From 054846e3cca56dbae1be5cb8a1272be8391ede62 Mon Sep 17 00:00:00 2001 From: Denis Kitrish Date: Sun, 14 Aug 2022 09:24:58 +0300 Subject: [PATCH 06/13] =?UTF-8?q?=D0=A0=D0=B0=D0=B7=D0=B4=D0=B5=D0=BB=202.?= =?UTF-8?q?=20=D0=9A=D0=BE=D0=BC=D0=B0=D0=BD=D0=B4=D1=8B=20=D0=B2=D1=8B?= =?UTF-8?q?=D0=B2=D0=BE=D0=B4=D0=B0.=20=D0=9A=D0=BE=D0=BC=D0=B0=D0=BD?= =?UTF-8?q?=D0=B4=D1=8B=20=D0=B2=D0=B2=D0=BE=D0=B4=D0=B0=20=D0=97=D0=B0?= =?UTF-8?q?=D0=B4=D0=B0=D0=BD=D0=B8=D0=B5=202.4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/main/java/ru/job4j/io/Task16.java | 12 ++++++++++++ src/test/java/ru/job4j/io/Task16Test.java | 19 +++++++++++++++++++ 2 files changed, 31 insertions(+) create mode 100644 src/main/java/ru/job4j/io/Task16.java create mode 100644 src/test/java/ru/job4j/io/Task16Test.java diff --git a/src/main/java/ru/job4j/io/Task16.java b/src/main/java/ru/job4j/io/Task16.java new file mode 100644 index 0000000..f7bf482 --- /dev/null +++ b/src/main/java/ru/job4j/io/Task16.java @@ -0,0 +1,12 @@ +package ru.job4j.io; + +public class Task16 { + public static void main(String[] args) { + String source = "+!?"; + // YOUR CODE + String[] symbols = source.split(""); + String string = symbols[0].repeat(3) + + symbols[1].repeat(4) + symbols[2].repeat(2); + System.out.print(string); + } +} diff --git a/src/test/java/ru/job4j/io/Task16Test.java b/src/test/java/ru/job4j/io/Task16Test.java new file mode 100644 index 0000000..02a7b50 --- /dev/null +++ b/src/test/java/ru/job4j/io/Task16Test.java @@ -0,0 +1,19 @@ +package ru.job4j.io; + +import org.junit.Test; + +import java.io.ByteArrayOutputStream; +import java.io.PrintStream; + +import static org.hamcrest.MatcherAssert.assertThat; +import static org.hamcrest.Matchers.is; + +public class Task16Test { + @Test + public void eachSequenceOfSameSymbolsOnSeparateLine() { + ByteArrayOutputStream out = new ByteArrayOutputStream(); + System.setOut(new PrintStream(out)); + Task16.main(null); + assertThat(out.toString(), is("+++!!!!??")); + } +} \ No newline at end of file From 9506510171f3ba562ef60069a42cb219792d0a8c Mon Sep 17 00:00:00 2001 From: Denis Kitrish Date: Sun, 14 Aug 2022 10:02:44 +0300 Subject: [PATCH 07/13] =?UTF-8?q?=D0=A0=D0=B0=D0=B7=D0=B4=D0=B5=D0=BB=202.?= =?UTF-8?q?=20=D0=9A=D0=BE=D0=BC=D0=B0=D0=BD=D0=B4=D1=8B=20=D0=B2=D1=8B?= =?UTF-8?q?=D0=B2=D0=BE=D0=B4=D0=B0.=20=D0=9A=D0=BE=D0=BC=D0=B0=D0=BD?= =?UTF-8?q?=D0=B4=D1=8B=20=D0=B2=D0=B2=D0=BE=D0=B4=D0=B0=20=D0=97=D0=B0?= =?UTF-8?q?=D0=B4=D0=B0=D0=BD=D0=B8=D0=B5=202.4=20=D0=9F=D0=B5=D1=80=D0=B5?= =?UTF-8?q?=D0=B8=D0=BC=D0=B5=D0=BD=D0=BE=D0=B2=D0=B0=D0=BD=D0=B8=D0=B5=20?= =?UTF-8?q?=D0=BD=D0=B0=D0=B7=D0=B2=D0=B0=D0=BD=D0=B8=D1=8F=20=D1=82=D0=B5?= =?UTF-8?q?=D1=81=D1=82=D0=BE=D0=B2=D0=BE=D0=B3=D0=BE=20=D0=BC=D0=B5=D1=82?= =?UTF-8?q?=D0=BE=D0=B4=D0=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/test/java/ru/job4j/io/Task16Test.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/test/java/ru/job4j/io/Task16Test.java b/src/test/java/ru/job4j/io/Task16Test.java index 02a7b50..01183a9 100644 --- a/src/test/java/ru/job4j/io/Task16Test.java +++ b/src/test/java/ru/job4j/io/Task16Test.java @@ -10,7 +10,7 @@ public class Task16Test { @Test - public void eachSequenceOfSameSymbolsOnSeparateLine() { + public void eachSequenceOfSameSymbolsOnOneLine() { ByteArrayOutputStream out = new ByteArrayOutputStream(); System.setOut(new PrintStream(out)); Task16.main(null); From f9b8c1b45d87c876c17003c8736b44de241d5a8a Mon Sep 17 00:00:00 2001 From: Denis Kitrish Date: Sun, 14 Aug 2022 10:11:40 +0300 Subject: [PATCH 08/13] =?UTF-8?q?=D0=A0=D0=B0=D0=B7=D0=B4=D0=B5=D0=BB=202.?= =?UTF-8?q?=20=D0=9A=D0=BE=D0=BC=D0=B0=D0=BD=D0=B4=D1=8B=20=D0=B2=D1=8B?= =?UTF-8?q?=D0=B2=D0=BE=D0=B4=D0=B0.=20=D0=9A=D0=BE=D0=BC=D0=B0=D0=BD?= =?UTF-8?q?=D0=B4=D1=8B=20=D0=B2=D0=B2=D0=BE=D0=B4=D0=B0=20=D0=97=D0=B0?= =?UTF-8?q?=D0=B4=D0=B0=D0=BD=D0=B8=D0=B5=202.8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/main/java/ru/job4j/io/Task17.java | 11 +++++++++++ src/test/java/ru/job4j/io/Task17Test.java | 21 +++++++++++++++++++++ 2 files changed, 32 insertions(+) create mode 100644 src/main/java/ru/job4j/io/Task17.java create mode 100644 src/test/java/ru/job4j/io/Task17Test.java diff --git a/src/main/java/ru/job4j/io/Task17.java b/src/main/java/ru/job4j/io/Task17.java new file mode 100644 index 0000000..ac44849 --- /dev/null +++ b/src/main/java/ru/job4j/io/Task17.java @@ -0,0 +1,11 @@ +package ru.job4j.io; + +public class Task17 { + public static void main(String[] args) { + // YOUR CODE + int x = 6; + System.out.println(x); + System.out.println(x * x); + System.out.print(x * x * x); + } +} diff --git a/src/test/java/ru/job4j/io/Task17Test.java b/src/test/java/ru/job4j/io/Task17Test.java new file mode 100644 index 0000000..47ed189 --- /dev/null +++ b/src/test/java/ru/job4j/io/Task17Test.java @@ -0,0 +1,21 @@ +package ru.job4j.io; + +import org.junit.Test; + +import java.io.ByteArrayOutputStream; +import java.io.PrintStream; + +import static org.hamcrest.MatcherAssert.assertThat; +import static org.hamcrest.Matchers.is; + +public class Task17Test { + @Test + public void shouldOutputSqrAndCubeOf6() { + ByteArrayOutputStream out = new ByteArrayOutputStream(); + System.setOut(new PrintStream(out)); + Task17.main(null); + String expected = "6" + System.lineSeparator() + "36" + System.lineSeparator() + + "216"; + assertThat(out.toString(), is(expected)); + } +} \ No newline at end of file From 4954bda7401ae26b9b0e1c1103d7938df9570636 Mon Sep 17 00:00:00 2001 From: Denis Kitrish Date: Sun, 14 Aug 2022 16:07:24 +0300 Subject: [PATCH 09/13] =?UTF-8?q?=D0=A0=D0=B0=D0=B7=D0=B4=D0=B5=D0=BB=202.?= =?UTF-8?q?=20=D0=9A=D0=BE=D0=BC=D0=B0=D0=BD=D0=B4=D1=8B=20=D0=B2=D1=8B?= =?UTF-8?q?=D0=B2=D0=BE=D0=B4=D0=B0.=20=D0=9A=D0=BE=D0=BC=D0=B0=D0=BD?= =?UTF-8?q?=D0=B4=D1=8B=20=D0=B2=D0=B2=D0=BE=D0=B4=D0=B0=20=D0=97=D0=B0?= =?UTF-8?q?=D0=B4=D0=B0=D0=BD=D0=B8=D0=B5=202.9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/main/java/ru/job4j/io/Task18.java | 10 ++++++++++ src/test/java/ru/job4j/io/Task18Test.java | 20 ++++++++++++++++++++ 2 files changed, 30 insertions(+) create mode 100644 src/main/java/ru/job4j/io/Task18.java create mode 100644 src/test/java/ru/job4j/io/Task18Test.java diff --git a/src/main/java/ru/job4j/io/Task18.java b/src/main/java/ru/job4j/io/Task18.java new file mode 100644 index 0000000..8a29ec9 --- /dev/null +++ b/src/main/java/ru/job4j/io/Task18.java @@ -0,0 +1,10 @@ +package ru.job4j.io; + +public class Task18 { + public static void main(String[] args) { + // YOUR CODE + int x = 9; + System.out.println("Значение x равно " + x); + System.out.print("Значение x^2 равно " + (x * x)); + } +} diff --git a/src/test/java/ru/job4j/io/Task18Test.java b/src/test/java/ru/job4j/io/Task18Test.java new file mode 100644 index 0000000..1cd260f --- /dev/null +++ b/src/test/java/ru/job4j/io/Task18Test.java @@ -0,0 +1,20 @@ +package ru.job4j.io; + +import org.junit.Test; + +import java.io.ByteArrayOutputStream; +import java.io.PrintStream; + +import static org.hamcrest.MatcherAssert.assertThat; +import static org.hamcrest.Matchers.is; + +public class Task18Test { + @Test + public void shouldOutputStringPlusNumber() { + ByteArrayOutputStream out = new ByteArrayOutputStream(); + System.setOut(new PrintStream(out)); + Task18.main(null); + String expected = "Значение x равно 9" + System.lineSeparator() + "Значение x^2 равно 81"; + assertThat(out.toString(), is(expected)); + } +} \ No newline at end of file From 60c7742d8cef60b0dac5da1c3edeff2e607ae82c Mon Sep 17 00:00:00 2001 From: Denis Kitrish Date: Sun, 14 Aug 2022 16:32:33 +0300 Subject: [PATCH 10/13] =?UTF-8?q?=D0=A0=D0=B0=D0=B7=D0=B4=D0=B5=D0=BB=202.?= =?UTF-8?q?=20=D0=9A=D0=BE=D0=BC=D0=B0=D0=BD=D0=B4=D1=8B=20=D0=B2=D1=8B?= =?UTF-8?q?=D0=B2=D0=BE=D0=B4=D0=B0.=20=D0=9A=D0=BE=D0=BC=D0=B0=D0=BD?= =?UTF-8?q?=D0=B4=D1=8B=20=D0=B2=D0=B2=D0=BE=D0=B4=D0=B0=20=D0=97=D0=B0?= =?UTF-8?q?=D0=B4=D0=B0=D0=BD=D0=B8=D0=B5=202.10?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/main/java/ru/job4j/io/Task19.java | 12 ++++++++++++ src/test/java/ru/job4j/io/Task19Test.java | 22 ++++++++++++++++++++++ 2 files changed, 34 insertions(+) create mode 100644 src/main/java/ru/job4j/io/Task19.java create mode 100644 src/test/java/ru/job4j/io/Task19Test.java diff --git a/src/main/java/ru/job4j/io/Task19.java b/src/main/java/ru/job4j/io/Task19.java new file mode 100644 index 0000000..e5424ce --- /dev/null +++ b/src/main/java/ru/job4j/io/Task19.java @@ -0,0 +1,12 @@ +package ru.job4j.io; + +public class Task19 { + public static void main(String[] args) { + // YOUR CODE + int x = 4; + int y = 11; + System.out.println("Значение x равно " + x + "; значение y равно " + y); + System.out.println("Произведение x и y равно " + (x * y)); + System.out.print("Сумма x и y равно " + (x + y)); + } +} diff --git a/src/test/java/ru/job4j/io/Task19Test.java b/src/test/java/ru/job4j/io/Task19Test.java new file mode 100644 index 0000000..b45f76c --- /dev/null +++ b/src/test/java/ru/job4j/io/Task19Test.java @@ -0,0 +1,22 @@ +package ru.job4j.io; + +import org.junit.Test; + +import java.io.ByteArrayOutputStream; +import java.io.PrintStream; + +import static org.hamcrest.MatcherAssert.assertThat; +import static org.hamcrest.Matchers.is; + +public class Task19Test { + @Test + public void shouldOutputStringWithTwoVariables() { + ByteArrayOutputStream out = new ByteArrayOutputStream(); + System.setOut(new PrintStream(out)); + Task19.main(null); + String expected = "Значение x равно 4; значение y равно 11" + System.lineSeparator() + + "Произведение x и y равно 44" + System.lineSeparator() + + "Сумма x и y равно 15"; + assertThat(out.toString(), is(expected)); + } +} \ No newline at end of file From bc8068e7ff3190773dc47093dff42f80145be050 Mon Sep 17 00:00:00 2001 From: Denis Kitrish Date: Sun, 14 Aug 2022 18:09:16 +0300 Subject: [PATCH 11/13] =?UTF-8?q?=D0=A0=D0=B0=D0=B7=D0=B4=D0=B5=D0=BB=202.?= =?UTF-8?q?=20=D0=9A=D0=BE=D0=BC=D0=B0=D0=BD=D0=B4=D1=8B=20=D0=B2=D1=8B?= =?UTF-8?q?=D0=B2=D0=BE=D0=B4=D0=B0.=20=D0=9A=D0=BE=D0=BC=D0=B0=D0=BD?= =?UTF-8?q?=D0=B4=D1=8B=20=D0=B2=D0=B2=D0=BE=D0=B4=D0=B0=20=D0=97=D0=B0?= =?UTF-8?q?=D0=B4=D0=B0=D0=BD=D0=B8=D0=B5=202.11?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/main/java/ru/job4j/io/Task20.java | 18 ++++++++++++++++++ src/test/java/ru/job4j/io/Task20Test.java | 23 +++++++++++++++++++++++ 2 files changed, 41 insertions(+) create mode 100644 src/main/java/ru/job4j/io/Task20.java create mode 100644 src/test/java/ru/job4j/io/Task20Test.java diff --git a/src/main/java/ru/job4j/io/Task20.java b/src/main/java/ru/job4j/io/Task20.java new file mode 100644 index 0000000..b0cf9c1 --- /dev/null +++ b/src/main/java/ru/job4j/io/Task20.java @@ -0,0 +1,18 @@ +package ru.job4j.io; + +public class Task20 { + public static void main(String[] args) { + String fullName = "Фамилия Имя Отчество"; + String phoneNumber = "+7(938) 123-45-67"; + int maxLenght = Math.max(fullName.length(), phoneNumber.length()); + String topBorders = "*".repeat(maxLenght + 4); + String bottomBorders = topBorders; + String result = topBorders + System.lineSeparator(); + result += "* " + fullName + " ".repeat(maxLenght - fullName.length() + 1) + + "*" + System.lineSeparator(); + result += "* " + phoneNumber + " ".repeat(maxLenght - phoneNumber.length() + 1) + + "*" + System.lineSeparator(); + result += bottomBorders; + System.out.print(result); + } +} diff --git a/src/test/java/ru/job4j/io/Task20Test.java b/src/test/java/ru/job4j/io/Task20Test.java new file mode 100644 index 0000000..caf32b6 --- /dev/null +++ b/src/test/java/ru/job4j/io/Task20Test.java @@ -0,0 +1,23 @@ +package ru.job4j.io; + +import org.junit.Test; + +import java.io.ByteArrayOutputStream; +import java.io.PrintStream; + +import static org.hamcrest.MatcherAssert.assertThat; +import static org.hamcrest.Matchers.is; + +public class Task20Test { + @Test + public void shouldOutputFullNameAndPhoneInFrame() { + ByteArrayOutputStream out = new ByteArrayOutputStream(); + System.setOut(new PrintStream(out)); + Task20.main(null); + String expected = "************************" + System.lineSeparator() + + "* Фамилия Имя Отчество *" + System.lineSeparator() + + "* +7(938) 123-45-67 *" + System.lineSeparator() + + "************************"; + assertThat(out.toString(), is(expected)); + } +} \ No newline at end of file From 53400b269edd1994f7ab0766b612a8154f5a1dc2 Mon Sep 17 00:00:00 2001 From: Denis Kitrish Date: Sun, 14 Aug 2022 18:13:54 +0300 Subject: [PATCH 12/13] =?UTF-8?q?=D0=A0=D0=B0=D0=B7=D0=B4=D0=B5=D0=BB=202.?= =?UTF-8?q?=20=D0=9A=D0=BE=D0=BC=D0=B0=D0=BD=D0=B4=D1=8B=20=D0=B2=D1=8B?= =?UTF-8?q?=D0=B2=D0=BE=D0=B4=D0=B0.=20=D0=9A=D0=BE=D0=BC=D0=B0=D0=BD?= =?UTF-8?q?=D0=B4=D1=8B=20=D0=B2=D0=B2=D0=BE=D0=B4=D0=B0=20=D0=97=D0=B0?= =?UTF-8?q?=D0=B4=D0=B0=D0=BD=D0=B8=D0=B5=202.11=20=D0=A1=D0=BC=D0=B5?= =?UTF-8?q?=D1=89=D1=91=D0=BD=20=D0=BA=D0=BE=D0=BC=D0=BC=D0=B5=D0=BD=D1=82?= =?UTF-8?q?=D0=B0=D1=80=D0=B8=D0=B9=20//=20YOUR=20CODE=20=D0=BD=D0=B8?= =?UTF-8?q?=D0=B6=D0=B5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/main/java/ru/job4j/io/Task20.java | 1 + 1 file changed, 1 insertion(+) diff --git a/src/main/java/ru/job4j/io/Task20.java b/src/main/java/ru/job4j/io/Task20.java index b0cf9c1..fe1d164 100644 --- a/src/main/java/ru/job4j/io/Task20.java +++ b/src/main/java/ru/job4j/io/Task20.java @@ -4,6 +4,7 @@ public class Task20 { public static void main(String[] args) { String fullName = "Фамилия Имя Отчество"; String phoneNumber = "+7(938) 123-45-67"; + // YOUR CODE int maxLenght = Math.max(fullName.length(), phoneNumber.length()); String topBorders = "*".repeat(maxLenght + 4); String bottomBorders = topBorders; From 735e6d9ed01ce0bbe158b8b1db5a88248fd52618 Mon Sep 17 00:00:00 2001 From: Denis Kitrish Date: Wed, 17 Aug 2022 16:18:15 +0300 Subject: [PATCH 13/13] =?UTF-8?q?=D0=A0=D0=B0=D0=B7=D0=B4=D0=B5=D0=BB=202.?= =?UTF-8?q?=20=D0=9A=D0=BE=D0=BC=D0=B0=D0=BD=D0=B4=D1=8B=20=D0=B2=D1=8B?= =?UTF-8?q?=D0=B2=D0=BE=D0=B4=D0=B0.=20=D0=9A=D0=BE=D0=BC=D0=B0=D0=BD?= =?UTF-8?q?=D0=B4=D1=8B=20=D0=B2=D0=B2=D0=BE=D0=B4=D0=B0=20=D0=97=D0=B0?= =?UTF-8?q?=D0=B4=D0=B0=D0=BD=D0=B8=D0=B5=202.12?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/main/java/ru/job4j/io/Task21.java | 35 ++++++++++++ src/test/java/ru/job4j/io/Task21Test.java | 67 +++++++++++++++++++++++ 2 files changed, 102 insertions(+) create mode 100644 src/main/java/ru/job4j/io/Task21.java create mode 100644 src/test/java/ru/job4j/io/Task21Test.java diff --git a/src/main/java/ru/job4j/io/Task21.java b/src/main/java/ru/job4j/io/Task21.java new file mode 100644 index 0000000..8096b83 --- /dev/null +++ b/src/main/java/ru/job4j/io/Task21.java @@ -0,0 +1,35 @@ +package ru.job4j.io; + +import java.util.Scanner; + +public class Task21 { + public static void main(String[] args) { + Scanner in = new Scanner(System.in); + int columnCount = in.nextInt(); + String star = "*"; + String space = " "; + // YOUR CODE + int level = 2; + String topSide = star.repeat(columnCount); + int currentColumn = 1; + // Количество символов на каждом уровне кроме первого и последнего, чтобы не печатать ненужные крайние пробелы. + int levelColumnCount; + StringBuilder result = new StringBuilder(topSide).append(System.lineSeparator()); + while (level < columnCount) { + levelColumnCount = level <= columnCount / 2 ? columnCount - level + 1 : level; + while (currentColumn <= levelColumnCount) { + if (currentColumn == level || currentColumn == columnCount - level + 1) { + result.append(star); + } else { + result.append(space); + } + currentColumn++; + } + result.append(System.lineSeparator()); + level++; + currentColumn = 1; + } + result.append(topSide); + System.out.print(result); + } +} diff --git a/src/test/java/ru/job4j/io/Task21Test.java b/src/test/java/ru/job4j/io/Task21Test.java new file mode 100644 index 0000000..1cd6f2a --- /dev/null +++ b/src/test/java/ru/job4j/io/Task21Test.java @@ -0,0 +1,67 @@ +package ru.job4j.io; + +import org.junit.Test; + +import java.io.ByteArrayInputStream; +import java.io.ByteArrayOutputStream; +import java.io.PrintStream; + +import static org.hamcrest.MatcherAssert.assertThat; +import static org.hamcrest.Matchers.is; + +public class Task21Test { + @Test + public void whenHourglassWidthEquals3() { + ByteArrayInputStream in = new ByteArrayInputStream("5".getBytes()); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + System.setOut(new PrintStream(out)); + System.setIn(in); + Task21.main(null); + String expected = + "*****" + System.lineSeparator() + + " * *" + System.lineSeparator() + + " *" + System.lineSeparator() + + " * *" + System.lineSeparator() + + "*****"; + assertThat(out.toString(), is(expected)); + } + + @Test + public void whenHourglassWidthEquals8() { + ByteArrayInputStream in = new ByteArrayInputStream("8".getBytes()); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + System.setOut(new PrintStream(out)); + System.setIn(in); + Task21.main(null); + String expected = + "********" + System.lineSeparator() + + " * *" + System.lineSeparator() + + " * *" + System.lineSeparator() + + " **" + System.lineSeparator() + + " **" + System.lineSeparator() + + " * *" + System.lineSeparator() + + " * *" + System.lineSeparator() + + "********"; + assertThat(out.toString(), is(expected)); + } + + @Test + public void whenHourglassWidthEquals9() { + ByteArrayInputStream in = new ByteArrayInputStream("9".getBytes()); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + System.setOut(new PrintStream(out)); + System.setIn(in); + Task21.main(null); + String expected = + "*********" + System.lineSeparator() + + " * *" + System.lineSeparator() + + " * *" + System.lineSeparator() + + " * *" + System.lineSeparator() + + " *" + System.lineSeparator() + + " * *" + System.lineSeparator() + + " * *" + System.lineSeparator() + + " * *" + System.lineSeparator() + + "*********"; + assertThat(out.toString(), is(expected)); + } +} \ No newline at end of file