diff --git a/task01/src/com/example/task01/Task01.java b/task01/src/com/example/task01/Task01.java index f3c626eb8..7be260aae 100644 --- a/task01/src/com/example/task01/Task01.java +++ b/task01/src/com/example/task01/Task01.java @@ -1,15 +1,16 @@ package com.example.task01; -public class Task01 { +public class Task01 +{ - public static String solution() { + public static String solution() + { - // TODO напишите здесь свою корректную реализацию этого метода, вместо сеществующей - - return "здесь какая-то неправильная строка"; + return "Я думаю, быть программистом - это круто"; } - public static void main(String[] args) { + public static void main(String[] args) + { // Здесь вы можете вручную протестировать ваше решение, вызывая реализуемый метод и смотря результат // например вот так: /* @@ -17,5 +18,4 @@ public static void main(String[] args) { System.out.println(result); */ } - -} +} \ No newline at end of file diff --git a/task02/src/com/example/task02/Task02.java b/task02/src/com/example/task02/Task02.java index e09621d98..7f5546739 100644 --- a/task02/src/com/example/task02/Task02.java +++ b/task02/src/com/example/task02/Task02.java @@ -1,12 +1,17 @@ package com.example.task02; -public class Task02 { +public class Task02 +{ + public static String solution(String input) + { - public static String solution(String input) { + long number = Long.parseLong(input); - // TODO напишите здесь свою корректную реализацию этого метода, вместо сеществующей + if (number >= -128 && number <= 127) return "byte"; + else if (number >= -32768 && number <= 32767) return "short"; + else if (number >= -2147483648 && number <= 2147483647) return "int"; - return ""; + return "long"; } public static void main(String[] args) { @@ -17,5 +22,4 @@ public static void main(String[] args) { System.out.println(result); */ } - -} +} \ No newline at end of file diff --git a/task03/src/com/example/task03/Task03.java b/task03/src/com/example/task03/Task03.java index 1b150447a..3e54456d2 100644 --- a/task03/src/com/example/task03/Task03.java +++ b/task03/src/com/example/task03/Task03.java @@ -1,12 +1,12 @@ package com.example.task03; -public class Task03 { +public class Task03 +{ - public static int getMetreFromCentimetre(int centimetre) { + public static int getMetreFromCentimetre(int centimetre) + { - // TODO напишите здесь свою корректную реализацию этого метода, вместо сеществующей - - return 0; + return centimetre / 100; } public static void main(String[] args) { @@ -17,5 +17,4 @@ public static void main(String[] args) { System.out.println(result); */ } - -} +} \ No newline at end of file diff --git a/task04/src/com/example/task04/Task04.java b/task04/src/com/example/task04/Task04.java index 84d94a730..1dc7c070c 100644 --- a/task04/src/com/example/task04/Task04.java +++ b/task04/src/com/example/task04/Task04.java @@ -2,20 +2,31 @@ public class Task04 { - public static float calculate(int a, int b, String operation) { + public static float calculate(int a, int b, String operation) + { + float result; - // TODO напишите здесь свою корректную реализацию этого метода, вместо сеществующей - - return 0; + switch (operation) + { + case "+": + result = a + b; + break; + case "-": + result = a - b; + break; + case "/": + result = (float) a / b; + break; + default: + result = a * b; + break; + } + return result; } - public static void main(String[] args) { - // Здесь вы можете вручную протестировать ваше решение, вызывая реализуемый метод и смотря результат - // например вот так: - /* + public static void main(String[] args) + { float result = calculate(-25, 5, "/"); System.out.println(result); - */ } - -} +} \ No newline at end of file diff --git a/task05/src/com/example/task05/Task05.java b/task05/src/com/example/task05/Task05.java index df61b168d..0221313f0 100644 --- a/task05/src/com/example/task05/Task05.java +++ b/task05/src/com/example/task05/Task05.java @@ -2,20 +2,19 @@ public class Task05 { - public static String solution(int x) { - - // TODO напишите здесь свою корректную реализацию этого метода, вместо сеществующей - - return "FALSE"; + public static String solution(int x) + { + while (x != 0) + { + if ((x % 10) % 2 == 1) return "FALSE"; + x /= 10; + } + return "TRUE"; } - public static void main(String[] args) { - // Здесь вы можете вручную протестировать ваше решение, вызывая реализуемый метод и смотря результат - // например вот так: - /* + public static void main(String[] args) + { String result = solution(1234); System.out.println(result); - */ } - -} +} \ No newline at end of file diff --git a/task06/src/com/example/task06/Task06.java b/task06/src/com/example/task06/Task06.java index c532b65ee..e04ca9e6f 100644 --- a/task06/src/com/example/task06/Task06.java +++ b/task06/src/com/example/task06/Task06.java @@ -2,20 +2,25 @@ public class Task06 { - public static int solution(int x, int y) { + public static int solution(int x, int y) + { + int sum = x + y; + int numbDigit = 0; - // TODO напишите здесь свою корректную реализацию этого метода, вместо сеществующей + do + { + numbDigit++; + sum /= 10; + } + while (sum != 0); - return 0; + return numbDigit; } - public static void main(String[] args) { - // Здесь вы можете вручную протестировать ваше решение, вызывая реализуемый метод и смотря результат - // например вот так: - /* + public static void main(String[] args) + { int result = solution(12, 34); System.out.println(result); - */ } -} +} \ No newline at end of file diff --git a/task07/src/com/example/task07/Task07.java b/task07/src/com/example/task07/Task07.java index 5e3f2b225..dee982b0d 100644 --- a/task07/src/com/example/task07/Task07.java +++ b/task07/src/com/example/task07/Task07.java @@ -1,21 +1,18 @@ package com.example.task07; -public class Task07 { +public class Task07 +{ - public static int solution(int n, int m, int k) { - - // TODO напишите здесь свою корректную реализацию этого метода, вместо сеществующей - - return 0; + public static int solution(int n, int m, int k) + { + int oX = n / k; + int oY = m / k; + return oX * oY; } - public static void main(String[] args) { - // Здесь вы можете вручную протестировать ваше решение, вызывая реализуемый метод и смотря результат - // например вот так: - /* + public static void main(String[] args) + { int result = solution(10, 20, 5); System.out.println(result); - */ } - -} +} \ No newline at end of file diff --git a/task08/src/com/example/task08/Task08.java b/task08/src/com/example/task08/Task08.java index e0a5cb0ff..7496dac84 100644 --- a/task08/src/com/example/task08/Task08.java +++ b/task08/src/com/example/task08/Task08.java @@ -1,19 +1,15 @@ package com.example.task08; -public class Task08 { - - public static boolean solution() { - // TODO измените тип и значение переменной x, чтобы возвращалось значение true - - int x = 100; +public class Task08 +{ + public static boolean solution() + { + double x = Double.POSITIVE_INFINITY; return x == x + 1; } - public static void main(String[] args) { - // Здесь вы можете вручную протестировать ваше решение - /* + public static void main(String[] args) + { System.out.println(solution()); - */ } - -} +} \ No newline at end of file diff --git a/task09/src/com/example/task09/Task09.java b/task09/src/com/example/task09/Task09.java index 2c6d1f834..29928eaa1 100644 --- a/task09/src/com/example/task09/Task09.java +++ b/task09/src/com/example/task09/Task09.java @@ -1,22 +1,18 @@ package com.example.task09; -public class Task09 { - - public static double solution() { - // TODO Устраните ошибку вычисления выражения, не изменяя типы данных у переменных - +public class Task09 +{ + public static double solution() + { float a = 1.0f; float b = 3.0f; - double x = (a / b - 1.0 / 3.0) * 1.0e9; + double x = ( (double) a / b - 1.0 / 3.0) * 1.0e9; return x; } - public static void main(String[] args) { - // Здесь вы можете вручную протестировать ваше решение - /* + public static void main(String[] args) + { System.out.println(solution()); - */ } - -} +} \ No newline at end of file diff --git a/task10/src/com/example/task10/Task10.java b/task10/src/com/example/task10/Task10.java index ad8eedab6..412761a53 100644 --- a/task10/src/com/example/task10/Task10.java +++ b/task10/src/com/example/task10/Task10.java @@ -1,18 +1,26 @@ package com.example.task10; -public class Task10 { +public class Task10 +{ + public static boolean compare(float a, float b, int precision) + { + if (Float.isNaN(a) && Float.isNaN(b)) + return true; + + if (Float.isInfinite(a) || Float.isInfinite(b)) + return a == b; + + if (precision != 0) + { + float tolerance = (float) Math.pow(10, -precision); + return Math.abs(a - b) <= tolerance; + } - public static boolean compare(float a, float b, int precision) { - - // TODO корректно сравнивать два значения типа float с заданной пользователем точностью (параметр - количество знаков после запятой). - // Функция должна корректно обрабатывать ситуацию со сравнением значений бесконечности. - // Функция должна считать значения «не число» NaN (например 0.0/0.0) равными между собой. - return a == b; - } - public static void main(String[] args) { + public static void main(String[] args) + { float a = 0.3f; float b = 0.4f; float sum = a + b; @@ -20,7 +28,5 @@ public static void main(String[] args) { boolean result = compare(sum, c, 2); System.out.println(result); - } - -} +} \ No newline at end of file diff --git a/task11/src/com/example/task11/Task11.java b/task11/src/com/example/task11/Task11.java index 47b80595a..59b054448 100644 --- a/task11/src/com/example/task11/Task11.java +++ b/task11/src/com/example/task11/Task11.java @@ -1,19 +1,19 @@ package com.example.task11; -public class Task11 { +public class Task11 +{ - public static float benefit(float sum, float percent) { - - // TODO исправьте функцию, чтобы избежать накопления ошибки - - // Считаем проценты за год - for (int i = 1; i <= 12; i++) { + public static float benefit(float sum, float percent) + { + for (int i = 1; i <= 12; i++) + { sum += sum * percent; } - return sum; + return (float) (sum * Math.pow(1 + (double) percent, 12)); } - public static void main(String[] args) { + public static void main(String[] args) + { float sum = 500; // 500 руб. на счете float percent = 0.00000001f; // 0.000001% ежемесячно @@ -23,5 +23,4 @@ public static void main(String[] args) { System.out.println("Сумма на счете через год: " + sum); } - -} +} \ No newline at end of file diff --git a/task12/src/com/example/task12/Task12.java b/task12/src/com/example/task12/Task12.java index 12da72ee7..537ec202e 100644 --- a/task12/src/com/example/task12/Task12.java +++ b/task12/src/com/example/task12/Task12.java @@ -1,34 +1,26 @@ package com.example.task12; +import java.math.*; -import java.math.BigDecimal; +public class Task12 +{ -public class Task12 { - - public static BigDecimal benefit(BigDecimal sum, BigDecimal percent) { - - // TODO раскомментируйте и исправьте код - - // Считаем проценты за год - - /* - for (int i = 1; i <= 12; i++) { - sum += sum * percent; + public static BigDecimal benefit(BigDecimal sum, BigDecimal percent) + { + for (int i = 1; i <= 12; i++) + { + BigDecimal interest = sum.multiply(percent).setScale(9, RoundingMode.HALF_UP); + sum = sum.add(interest).setScale(9, RoundingMode.HALF_UP); } return sum; - */ - - return BigDecimal.ZERO; } - public static void main(String[] args) { - + public static void main(String[] args) + { BigDecimal sum = new BigDecimal(500).setScale(9, BigDecimal.ROUND_HALF_UP); // 500 руб. на счете BigDecimal percent = new BigDecimal(0.00000001f).setScale(9, BigDecimal.ROUND_HALF_UP); // 0.000001% ежемесячно sum = benefit(sum, percent); System.out.println("Сумма на счете через год: " + sum); - } - -} +} \ No newline at end of file diff --git a/task13/src/com/example/task13/Task13.java b/task13/src/com/example/task13/Task13.java index a3ea65e2c..3cb02b048 100644 --- a/task13/src/com/example/task13/Task13.java +++ b/task13/src/com/example/task13/Task13.java @@ -1,21 +1,15 @@ package com.example.task13; -public class Task13 { - - public static char toUpperCase(char c) { - - // TODO привести букву к верхнему регистру - - return c; +public class Task13 +{ + public static char toUpperCase(char c) + { + return (char) (c - 32); } - public static void main(String[] args) { - // Здесь вы можете вручную протестировать ваше решение, вызывая реализуемый метод и смотря результат - // например вот так: - /* - char result = solution('x'); + public static void main(String[] args) + { + char result = toUpperCase('x'); System.out.println(result); - */ } - -} +} \ No newline at end of file diff --git a/task14/src/com/example/task14/Task14.java b/task14/src/com/example/task14/Task14.java index 5f07aaab3..cd0a4f35d 100644 --- a/task14/src/com/example/task14/Task14.java +++ b/task14/src/com/example/task14/Task14.java @@ -1,23 +1,17 @@ package com.example.task14; -public class Task14 { - - - public static int reverse(int value) { - - // TODO напишите здесь код, переставляющий цифры числа в обратном порядке - - return 0; +public class Task14 +{ + public static int reverse(int value) + { + String strValue = Integer.toString(value); + String revStrValue = new StringBuilder(strValue).reverse().toString(); + return Integer.parseInt(revStrValue); } - public static void main(String[] args) { - // Здесь вы можете вручную протестировать ваше решение, вызывая реализуемый метод и смотря результат - // например вот так: - /* + public static void main(String[] args) + { int result = reverse(345); System.out.println(result); - */ } - - -} +} \ No newline at end of file