Immutable fractions

Задание

Создайте класс для выполнения основных операций с дробями. В данном варианте дроби не должны изменяться после создания, а методы, реализующие арифметические операции должны быть статическими. Реализуйте метод для автоматического получения строкового представления дроби при печати. Протестируйте своё решение в методе main().
Желательно реализовать метод сокращения дробей через алгоритм Евклида для поиска наибольшего общего делителя (НОД, GCD). Вполне уместной было бы реализовать в этом классе интерфейс Comparable и продемонстрировать работу метода java.util.Arrays.sort().

Решение

 

Wallpainter

Task

One construction company wants to minimize paint expenses. For this reason has to be made a program which can calculate an amount of a paint for the each order. Usually the owner know the longness L , wideness  W , and highness  H of the each room. Also one can of pain is good enough to paint 16 m2, and the size of windows and doors are not important in this calculation

 Input: 

In the first line should be orders` amount. In the each next line —  L, W, H  and the wideness, longness, and highness are not more than 1000 .

 Output: 

For the each order will be shown one one number, what is required amount of the paint cans  

Tests

Input Output
2
 8 8 2 4
1 1 3 1
10 6 2 4
11 6 2 5

Solution

Task «Repair» can be solved by using Data Strim processing.

 

Between two values

Task

Were given three real numbers x, y, z. Check whether the inequality [latex]x < y < z[/latex] is correct. If it is correct, show as an result the word «true». If it is not correct, show as an result the word «false».

Tests

Input Output
8 9 25  true
9 25 8 false
8 25 9  false
9 8 25  false
25 8 9  false
25 9 8  false

Solution

With «if» statement:

Code refactoring

 

Find the maximum of three numbers

Task. Were given three real numbers [latex]x[/latex], [latex]y[/latex], [latex]z[/latex]. Find [latex]\max (x, y, z)[/latex].

Tests

Input Output
4 3 8  8
0 179 45 179

Solution

With if-statement

Code refactoring

 

Find the minimum of two numbers

Task. Were given two real numbers [latex]x[/latex] and [latex]y[/latex]. Find [latex]\min (x, y)[/latex].

Tests

Input Output
758 843 Maximum number is: 843
459 238 Maximum number is: 459

Solution

With if-statement

Code refactoring

Without if-statement

 

Three flowers

Задача взята с сайта e-olymp.com.

В рождественский вечер на окошке стояло три цветочка, слева на право: герань, крокус и фиалка. Каждое утро Маша вытирала окошко и меняла местами стоящий справа цветок с центральным цветком. А Таня каждый вечер поливала цветочки и меняла местами левый и центральный цветок. Требуется определить порядок цветов ночью по прошествии k дней.

Входные данные

Первая строка содержит количество тестов m (1 ≤ m ≤ 12). В каждой из следующих m строк находится количество дней k (1 ≤ k ≤ 1000).

Выходные данные

Вывести m строк, содержащих по три латинских буквы: «G», «C» и «V» (заглавные буквы без пробелов), описывающие порядок цветов на окошке по истечении k дней (слева направо). Обозначения: G – герань, C – крокус, V – фиалка.

Тесты

Input Output
2
1 VGC
5 CVG

Решение

 

Find the minimum of three numbers

Task. Were given three real numbers [latex]x[/latex], [latex]y[/latex], [latex]z[/latex]. Find [latex]\min (x, y, z)[/latex].

Tests

Input Output
7 8 9  7
8771 1346574 1131  1131

Solution

With if-statement

Code refactoring

Find the maximum of two numbers

Task. Were given two real numbers [latex]x[/latex] and [latex]y[/latex]. Find [latex]\max (x, y)[/latex].

Tests

Input Output
758 843 Maximum number is: 843
459 238 Maximum number is: 459

Solution