0 / 0 / 0
Регистрация: 05.04.2020
Сообщений: 5
|
|
1 | |
Перевод дробной части из десятичной в восьмиричную (маленький фрагмент)05.04.2020, 13:35. Показов 1522. Ответов 10
Метки нет (Все метки)
Необходимо перевести число из восьмеричной в десятичную систему счисления, а именно дробную часть.
Попытаюсь объяснить сам алгоритм на примере: 1)У нас есть число 0.94, которое мы умножаем на восемь. Получаем 7.52 (0.94 * 8 = 7.52) 2)Теперь нужно умножить дробную часть полученного числа на 8 (0.52 * 8 = 4.16) и так далее 3) Повторяем умножение до тех пор, пока последняя дробная часть не обратится в ноль. 4) Целая часть у нас равна нулю, а цифры в дробной части (слева на право) это есть целые части наших произведений (сверху вниз). То есть, в самом младшем разряде оказывается целая часть последнего произведения. Т.е. 0.94 = 0.74 (берутся целые числа деления!) Заранее спасибо за помочь.
0
|
05.04.2020, 13:35 | |
Ответы с готовыми решениями:
10
Перевод десятичной дроби в восьмиричную Перевод дробной части числа из десятичной системы счисления в любую другую систему счисления Перевод числа N из десятичной системы счисления в восьмиричную Перевод из десятичной системы счисления в восьмиричную с плавующей запятой |
0 / 0 / 0
Регистрация: 05.04.2020
Сообщений: 5
|
|
05.04.2020, 14:51 [ТС] | 4 |
Простите, я случайно ошибся. Нужно перевести ИЗ ДЕСЯТИЧНОЙ В ВОСЬМЕРИЧНУЮ.
0
|
2528 / 1247 / 461
Регистрация: 08.11.2016
Сообщений: 3,428
|
|||||||||||
05.04.2020, 15:40 | 6 | ||||||||||
Подключите библиотеку cmath
std::modf
0
|
0 / 0 / 0
Регистрация: 05.04.2020
Сообщений: 5
|
|
05.04.2020, 16:30 [ТС] | 7 |
Annemesski, спасибо, но это не то. Это я и так сделал.
0
|
2528 / 1247 / 461
Регистрация: 08.11.2016
Сообщений: 3,428
|
||||||
05.04.2020, 17:24 | 8 | |||||
Jeffrey Rout, и? То что Вы описали выглядит так:
0
|
0 / 0 / 0
Регистрация: 05.04.2020
Сообщений: 5
|
|
05.04.2020, 17:29 [ТС] | 9 |
Annemesski, Спасибо, уже не надо. И это тоже не то.
0
|
Заблокирован
|
||||||
05.04.2020, 18:30 | 10 | |||||
Сообщение было отмечено Jeffrey Rout как решение
РешениеКликните здесь для просмотра всего текста
В общем случае дробь может быть бесконечной. Именно поэтому дробные числа переводятся с погрешностью. Я в своём говнокоде ограничил кол-во выходных восмеричных разрядов дробной части количеством входных десятичных разрядов дробной части плюс 1, ибо на входе я интерпретирую строку как десятичное с фиксированной точкой.
1
|
0 / 0 / 0
Регистрация: 05.04.2020
Сообщений: 5
|
|
05.04.2020, 18:39 [ТС] | 11 |
СПАСИБО ТЕБЕ ОГРОМНОЕ за то, что потратил на меня время. Я недавно закончил с этой задачкой, но я правда очень сильно рад, что кто-то потратил на меня время. Ещё раз спасибо. Здоровья и успехов тебе.
0
|
05.04.2020, 18:39 | |
05.04.2020, 18:39 | |
Помогаю со студенческими работами здесь
11
Перевод чисел из ДЕСЯТИЧНОЙ системы счисления в ВОСЬМИРИЧНУЮ и ДВОИЧНУЮ Рекурсия.Перевод с десятичной в двоичную, восьмиричную и шестнадцатиричную системы Перевод чисел в десятичную систему счисления, из десятичной в восьмиричную Перевод из десятичной дробной в двоичной сс Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |