Практика 2021 (05.07) Каравелков Дмитрий Сергеевич Задача 1 <a href="https://www.codewars.com/kata/55685cd7ad70877c23000102">Return negative 8qyu</a> Вернуть Отрицательное значение В этом простом задании вам дается число, и вы должны сделать его отрицательным. Но, может быть, число уже отрицательное? Решение на языке c++. ```c++= int makeNegative(int num) { if(num < 0) return num; else if(num > 0) return num * (-1); else return 0; } ``` Решение на языке java. ```java= public class Kata { public static int makeNegative(final int x) { if(x < 0) return x; else if(x > 0) return x * (-1); else return 0; } } ``` Задача 2 <a href="https://www.codewars.com/kata/5861d28f124b35723e00005e">Will you make it? 8qyu</a> Доедем ли мы? Вы были в походе с друзьями вдали от дома, но когда пришло время возвращаться, вы понимаете, что у вас заканчивается топливо, а ближайший насос находится в 50 милях от дома! Вы знаете, что в среднем ваша машина проезжает около 25 миль на галлон. Осталось 2 галлона. Учитывая эти факторы, напишите функцию, которая сообщит вам, можно ли добраться до помпы или нет. Функция должна возвращать истину , если это возможно, и ложь , если нет. Входные значения всегда положительны. Решение на языке c++. ```c++= bool zero_fuel(uint32_t distance_to_pump, uint32_t mpg, uint32_t fuel_left) { uint32_t c = mpg*fuel_left; if(distance_to_pump <= c)return true; else return false; } ``` Решение на языке java. ```java= public class Kata { public static boolean zeroFuel(double distanceToPump, double mpg, double fuelLeft) { double c = fuelLeft*mpg; if(distanceToPump <= c)return true; else return false; } } ``` Задача 3 <a href="https://www.codewars.com/kata/53ee5429ba190077850011d4">You Can't Code Under Pressure #1 8qyu</a> Кодируйте так быстро, как только можете! Вам нужно удвоить целое число и вернуть его. Решение на языке c++. ```c++= #include <cstdint> int32_t double_integer(int32_t n) { n = n * 2; return n; } ``` Решение на языке java. ```java= class Java { public static int doubleInteger(int i) { i = i * 2; return i; } } ``` Задача 4 <a href="https://www.codewars.com/kata/55192f4ecd82ff826900089e">Watermelon #1 8qyu</a> Слишком жарко, а они даже не могут… В один жаркий летний день Пит и его друг Билли решили купить арбузы. Они выбрали самый большой ящик. Они бросились домой, умирая от жажды, и решили разделить добычу, однако столкнулись с трудной проблемой. Пит и Билли - большие любители четных чисел, поэтому они хотят разделить количество арбузов таким образом, чтобы каждая из двух частей состояла из четного числа арбузов. Однако не обязательно, чтобы части были равны. Пример: мальчики могут разделить стопку из 8 арбузов на 2 + 6 арбузов или 4 + 4 арбуза. Мальчики очень устали и хотят как можно скорее приступить к трапезе, поэтому вы должны помочь им и узнать, смогут ли они разделить фрукты так, как им хочется. Конечно, каждый из них должен получить часть положительного веса. Решение на языке c++. ```c++= bool divide(unsigned weight) { if(weight < 3) return false; else if(weight%2 == 0)return true; else return false; } ``` Решение на языке java. ```java= public class Kata { public static boolean divide(int weight) { if(weight < 3) return false; else if(weight%2 == 0)return true; else return false; } } ```