diff --git a/task01/src/com/example/task01/Task01.java b/task01/src/com/example/task01/Task01.java index f3c626eb8..670b31296 100644 --- a/task01/src/com/example/task01/Task01.java +++ b/task01/src/com/example/task01/Task01.java @@ -3,19 +3,11 @@ public class Task01 { public static String solution() { - - // TODO напишите здесь свою корректную реализацию этого метода, вместо сеществующей - - return "здесь какая-то неправильная строка"; + return "Я думаю, быть программистом - это круто"; } public static void main(String[] args) { - // Здесь вы можете вручную протестировать ваше решение, вызывая реализуемый метод и смотря результат - // например вот так: - /* String result = solution(); System.out.println(result); - */ } - } diff --git a/task02/src/com/example/task02/Task02.java b/task02/src/com/example/task02/Task02.java index e09621d98..2f4c63b0a 100644 --- a/task02/src/com/example/task02/Task02.java +++ b/task02/src/com/example/task02/Task02.java @@ -4,9 +4,23 @@ public class Task02 { public static String solution(String input) { - // TODO напишите здесь свою корректную реализацию этого метода, вместо сеществующей + long longInput = Long.parseLong(input); - return ""; + if (Byte.MIN_VALUE <= longInput && longInput <= Byte.MAX_VALUE){ + return "byte"; + } + + if (Short.MIN_VALUE <= longInput && longInput <= Short.MAX_VALUE){ + return "short"; + } + + if (Integer.MIN_VALUE <= longInput && longInput <= Integer.MAX_VALUE){ + return "int"; + } + + else{ + return "long"; + } } public static void main(String[] args) { diff --git a/task03/src/com/example/task03/Task03.java b/task03/src/com/example/task03/Task03.java index 1b150447a..60cf575ae 100644 --- a/task03/src/com/example/task03/Task03.java +++ b/task03/src/com/example/task03/Task03.java @@ -3,10 +3,7 @@ public class Task03 { public static int getMetreFromCentimetre(int centimetre) { - - // TODO напишите здесь свою корректную реализацию этого метода, вместо сеществующей - - return 0; + return centimetre / 100; } public static void main(String[] args) { diff --git a/task04/src/com/example/task04/Task04.java b/task04/src/com/example/task04/Task04.java index 84d94a730..d3725d9d3 100644 --- a/task04/src/com/example/task04/Task04.java +++ b/task04/src/com/example/task04/Task04.java @@ -3,19 +3,27 @@ public class Task04 { public static float calculate(int a, int b, String operation) { + if (operation == "+"){ + return (float)a+b; + } - // TODO напишите здесь свою корректную реализацию этого метода, вместо сеществующей + if (operation == "-"){ + return (float)a-b; + } + + if (operation == "/"){ + return (float)a/b; + } + + if (operation == "*"){ + return (float)a*b; + } return 0; } public static void main(String[] args) { - // Здесь вы можете вручную протестировать ваше решение, вызывая реализуемый метод и смотря результат - // например вот так: - /* float result = calculate(-25, 5, "/"); System.out.println(result); - */ } - } diff --git a/task05/src/com/example/task05/Task05.java b/task05/src/com/example/task05/Task05.java index df61b168d..4ea88a7ef 100644 --- a/task05/src/com/example/task05/Task05.java +++ b/task05/src/com/example/task05/Task05.java @@ -3,19 +3,19 @@ public class Task05 { public static String solution(int x) { + String xStr = String.valueOf(x); - // TODO напишите здесь свою корректную реализацию этого метода, вместо сеществующей + for (int i = 0; i < xStr.length(); i++){ + int num = Character.getNumericValue(xStr.charAt(i)); + if (num % 2 != 0) return "FALSE"; + else i++; + } - return "FALSE"; + return "TRUE"; } public static void main(String[] args) { - // Здесь вы можете вручную протестировать ваше решение, вызывая реализуемый метод и смотря результат - // например вот так: - /* String result = solution(1234); System.out.println(result); - */ } - } diff --git a/task06/src/com/example/task06/Task06.java b/task06/src/com/example/task06/Task06.java index c532b65ee..341561bed 100644 --- a/task06/src/com/example/task06/Task06.java +++ b/task06/src/com/example/task06/Task06.java @@ -5,17 +5,12 @@ public class Task06 { public static int solution(int x, int y) { // TODO напишите здесь свою корректную реализацию этого метода, вместо сеществующей - - return 0; + int sum = x + y; + return String.valueOf(Math.abs(sum)).length(); } public static void main(String[] args) { - // Здесь вы можете вручную протестировать ваше решение, вызывая реализуемый метод и смотря результат - // например вот так: - /* int result = solution(12, 34); System.out.println(result); - */ } - } diff --git a/task07/src/com/example/task07/Task07.java b/task07/src/com/example/task07/Task07.java index 5e3f2b225..c0118477d 100644 --- a/task07/src/com/example/task07/Task07.java +++ b/task07/src/com/example/task07/Task07.java @@ -6,7 +6,7 @@ public static int solution(int n, int m, int k) { // TODO напишите здесь свою корректную реализацию этого метода, вместо сеществующей - return 0; + return (n / k) * (m / k); } public static void main(String[] args) { diff --git a/task08/src/com/example/task08/Task08.java b/task08/src/com/example/task08/Task08.java index e0a5cb0ff..5be0d305b 100644 --- a/task08/src/com/example/task08/Task08.java +++ b/task08/src/com/example/task08/Task08.java @@ -5,7 +5,7 @@ public class Task08 { public static boolean solution() { // TODO измените тип и значение переменной x, чтобы возвращалось значение true - int x = 100; + double x = Double.POSITIVE_INFINITY; return x == x + 1; } diff --git a/task09/src/com/example/task09/Task09.java b/task09/src/com/example/task09/Task09.java index 2c6d1f834..d71a66a39 100644 --- a/task09/src/com/example/task09/Task09.java +++ b/task09/src/com/example/task09/Task09.java @@ -7,7 +7,7 @@ public static double solution() { float a = 1.0f; float b = 3.0f; - double x = (a / b - 1.0 / 3.0) * 1.0e9; + double x = (a / b - 1.0f / 3.0f) * 1.0e9; return x; } diff --git a/task10/src/com/example/task10/Task10.java b/task10/src/com/example/task10/Task10.java index ad8eedab6..6dbea822f 100644 --- a/task10/src/com/example/task10/Task10.java +++ b/task10/src/com/example/task10/Task10.java @@ -7,9 +7,12 @@ public static boolean compare(float a, float b, int precision) { // TODO корректно сравнивать два значения типа float с заданной пользователем точностью (параметр - количество знаков после запятой). // Функция должна корректно обрабатывать ситуацию со сравнением значений бесконечности. // Функция должна считать значения «не число» NaN (например 0.0/0.0) равными между собой. - - return a == b; + if (Float.isNaN(a) && Float.isNaN(b)) return true; + if (Float.isInfinite(a) && Float.isInfinite(b)) return a == b; + float tolerance = (float)Math.pow(10, -precision); + + return Math.abs(a-b) < tolerance; } public static void main(String[] args) { @@ -20,7 +23,5 @@ public static void main(String[] args) { boolean result = compare(sum, c, 2); System.out.println(result); - } - } diff --git a/task11/src/com/example/task11/Task11.java b/task11/src/com/example/task11/Task11.java index 47b80595a..8ac6ab619 100644 --- a/task11/src/com/example/task11/Task11.java +++ b/task11/src/com/example/task11/Task11.java @@ -7,10 +7,7 @@ public static float benefit(float sum, float percent) { // TODO исправьте функцию, чтобы избежать накопления ошибки // Считаем проценты за год - for (int i = 1; i <= 12; i++) { - sum += sum * percent; - } - return sum; + return (float)(sum * Math.pow(percent + 1.0, 12)); } public static void main(String[] args) { @@ -21,7 +18,5 @@ public static void main(String[] args) { sum = benefit(sum, percent); System.out.println("Сумма на счете через год: " + sum); - } - } diff --git a/task12/src/com/example/task12/Task12.java b/task12/src/com/example/task12/Task12.java index 12da72ee7..25ed1d5ed 100644 --- a/task12/src/com/example/task12/Task12.java +++ b/task12/src/com/example/task12/Task12.java @@ -10,14 +10,11 @@ public static BigDecimal benefit(BigDecimal sum, BigDecimal percent) { // Считаем проценты за год - /* for (int i = 1; i <= 12; i++) { - sum += sum * percent; + sum = sum.add(sum.multiply(percent)); } - return sum; - */ - return BigDecimal.ZERO; + return sum.setScale(9, BigDecimal.ROUND_HALF_UP); } public static void main(String[] args) { diff --git a/task13/src/com/example/task13/Task13.java b/task13/src/com/example/task13/Task13.java index a3ea65e2c..397cd4f95 100644 --- a/task13/src/com/example/task13/Task13.java +++ b/task13/src/com/example/task13/Task13.java @@ -5,8 +5,8 @@ public class Task13 { public static char toUpperCase(char c) { // TODO привести букву к верхнему регистру - - return c; + int cInt = (int)c; + return (char)(cInt - 32); } public static void main(String[] args) { diff --git a/task14/src/com/example/task14/Task14.java b/task14/src/com/example/task14/Task14.java index 5f07aaab3..d913e1787 100644 --- a/task14/src/com/example/task14/Task14.java +++ b/task14/src/com/example/task14/Task14.java @@ -6,8 +6,11 @@ public class Task14 { public static int reverse(int value) { // TODO напишите здесь код, переставляющий цифры числа в обратном порядке - - return 0; + String valueString = new StringBuilder( + Integer.toString(value)). + reverse(). + toString(); + return Integer.parseInt(valueString); } public static void main(String[] args) {