Раціональне число визначається як частка двох цілих чисел a і b, які називаються відповідно чисельником і знаменником, де b != 0.
Зауважмо, що математично знаменник не може дорівнювати нулю. Однак у багатьох реалізаціях раціональних чисел знаменник може бути нулем, а поведінка при цьому подібна до додатної чи відʼємної нескінченності в числах з плаваючою комою. У таких випадках знаменник і чисельник зазвичай усе одно не можуть бути нулями одночасно.
Абсолютна величина |r| раціонального числа r = a/b дорівнює |a|/|b|.
Сума двох раціональних чисел r₁ = a₁/b₁ і r₂ = a₂/b₂ дорівнює r₁ + r₂ = a₁/b₁ + a₂/b₂ = (a₁ * b₂ + a₂ * b₁) / (b₁ * b₂).
Різниця двох раціональних чисел r₁ = a₁/b₁ і r₂ = a₂/b₂ дорівнює r₁ - r₂ = a₁/b₁ - a₂/b₂ = (a₁ * b₂ - a₂ * b₁) / (b₁ * b₂).
Добуток (множення) двох раціональних чисел r₁ = a₁/b₁ і r₂ = a₂/b₂ дорівнює r₁ * r₂ = (a₁ * a₂) / (b₁ * b₂).
Ділення раціонального числа r₁ = a₁/b₁ на інше r₂ = a₂/b₂ дає r₁ / r₂ = (a₁ * b₂) / (a₂ * b₁), якщо a₂ не дорівнює нулю.
Піднесення раціонального числа r = a/b до невідʼємного цілого степеня n дає r^n = (a^n)/(b^n).
Піднесення раціонального числа r = a/b до відʼємного цілого степеня n дає r^n = (b^m)/(a^m), де m = |n|.
Піднесення раціонального числа r = a/b до дійсного (з плаваючою комою) числа x дає частку (a^x)/(b^x), яка є дійсним числом.
Піднесення дійсного числа x до раціонального числа r = a/b дає x^(a/b) = root(x^a, b), де root(p, q) позначає корінь q-го степеня з p.
Реалізуйте такі операції:
Реалізація раціональних чисел завжди повинна бути зведена до нескоротного вигляду.
Наприклад, 4/4 має зводитися до 1/1, 30/60 має зводитися до 1/2, 12/8 має зводитися до 3/2 тощо.
Щоб скоротити раціональне число r = a/b, треба поділити a і b на найбільший спільний дільник (НСД) чисел a і b.
Так, наприклад, gcd(12, 8) = 4, тому r = 12/8 можна звести до (12/4)/(8/4) = 3/2.
Зведена форма раціонального числа має бути в «стандартному вигляді» (знаменник завжди має бути додатним цілим числом).
Якщо знаменник є відʼємним цілим числом, треба помножити і чисельник, і знаменник на -1, щоб досягти стандартного вигляду.
Наприклад, 3/-4 має бути зведено до -3/4
Вважайте, що в мові програмування, з якою ми працюємо, немає реалізації раціональних чисел.
Зареєструйтеся на Exercism, щоб вивчати й опановувати Java, а також 26 концепцій158 вправ та справжнє наставництво від людей, і все це безкоштовно.