Member 13923312 Ответов: 2

Как преобразовать результат этого кода в десятичную дробь?


Я пытаюсь написать калькулятор, где он складывает дроби вместе, и поэтому я сделал это, но вместо того, чтобы вернуть мне другую дробь, он дает мне десятичную дробь.

Что я уже пробовал:

публичный класс AddFractions расширяет ConsoleProgram
{
общественного недействительными Run()
{
double numerator = readInt("что такое числитель первой дроби? ");
двойной знаменатель = readInt("каков знаменатель первой дроби? ");
double numeratorB = readInt("что такое числитель второй дроби? ");
двойной знаменательb = readInt("каков знаменатель второй дроби? ");
двойная сумма = числитель/знаменатель * знаменательb/числительb;
Системы.из.код println(сумма);
}
}

2 Ответов

Рейтинг:
1

CPallini

Вы должны отдельно вычислите числитель и деноминатор результата:
n = n1*d2 + n2*d1
d = d1*d2
а потом (необязательно) найти их GCD для того чтобы упростить дробь.


Рейтинг:
1

Patrice T

Цитата:
Я пытаюсь написать калькулятор, где он складывает дроби вместе, и поэтому я сделал это, но вместо того, чтобы вернуть мне другую дробь, он дает мне десятичную дробь.

Вы уже знаете, что не можете хранить пользовательский ввод в виде дроби в a double переменная. Вы используете 2 переменные.
Что заставляет вас думать, что вы можете сделать это с результатом расчета ?