Форум программистов, компьютерный форум CyberForum.ru

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
JerryI
0 / 0 / 0
Регистрация: 26.04.2013
Сообщений: 31
#1

Тип данных с фиксированной точкой - C++

22.11.2013, 17:16. Просмотров 630. Ответов 5
Метки нет (Все метки)

Добрый день.
Возможно вопрос некорректный, но все же...
Типа данных float хорошо подходит для работы с нецелыми числами, но процессор обрабатывает их гораздо медленней, чем целочисленные типы.
Мне неплохо подошел бы тип с одним/двумя знаком после запятой. Имеется много участков, которые инкрементируют переменные, а нужно, чтобы некоторые участки(функции) делали инкремент через-раз (+=.5), городить кучу доп.переменных не хочется, а в программе важен каждый такт, поэтому приходится прибегать к низкоуровневым оптимизациям.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
22.11.2013, 17:16     Тип данных с фиксированной точкой
Посмотрите здесь:

Вывод с фиксированной точкой - C++
Доброго времени сток. Возник вопрос а как представить ответ уравнения в формате с ФИКСИРОВАННОЙ ТОЧКОЙ? int main() { long double...

Способы представление чисел с фиксированной точкой - C++
Суть задачи перевести не целое число в систему исчисления-в 16 и 8сч. Чтобы когда вводишь число 12,3,программа переводила их в 16 и 8...

Объясните значение манипулятора: формат с фиксированной точкой - C++
Изучаю с++, начал недавно, выучил только типы данных. Наткнулся на непонятный мне момент. Кто может объяснить, что делает манипулятор...

Преобразовать числа в форме с фиксированной точкой в форму с плавающей - C++
Помогите пожалуйста с задачей, в текстовом файле записаны вещественные числа в форме с фиксированной точкой. Преобразовать файл, представив...

Выделить подстроку, задающую вещественное число с фиксированной точкой - C++
Задание: Из строки, состоящей из букв, цифр, запятых, точек, знаков + и – , выделить подстроку, задающую вещественное число с...

Выделить подстроку, которая соответствует записи вещественного числа с фиксированной точкой - C++
Здравствуйте. Такое вот задание: "Дана строка символов, состоящая из букв, цифр, запятых, точек, знаков «+» и «–». Выделить подстроку,...

После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Nick Alte
Эксперт С++
1608 / 1000 / 118
Регистрация: 27.09.2009
Сообщений: 1,930
Завершенные тесты: 1
22.11.2013, 17:25     Тип данных с фиксированной точкой #2
Тогда почему бы не пользоваться целыми числами, умноженными на нужный коэффициент? Если нужна точность до 1/2, достаточно умножать на 2. Число 3 будет соответствовать 1.5 и так далее.
JerryI
0 / 0 / 0
Регистрация: 26.04.2013
Сообщений: 31
22.11.2013, 17:27  [ТС]     Тип данных с фиксированной точкой #3
Цитата Сообщение от Nick Alte Посмотреть сообщение
Тогда почему бы не пользоваться целыми числами, умноженными на нужный коэффициент? Если нужна точность до 1/2, достаточно умножать на 2. Число 3 будет соответствовать 1.5 и так далее.
А можно ли по шаблону сделать работу с переменной. Я имею ввиду - не писать в каждом месте коэффициент.
Nick Alte
Эксперт С++
1608 / 1000 / 118
Регистрация: 27.09.2009
Сообщений: 1,930
Завершенные тесты: 1
22.11.2013, 17:57     Тип данных с фиксированной точкой #4
Можно, например, написать класс и перегрузить в нём арифметические операции, для полного комплекта сделать операции преобразования из/в int, автоматически применяющие тот же коэффициент.
kazak
3034 / 2355 / 155
Регистрация: 11.03.2009
Сообщений: 5,401
22.11.2013, 18:06     Тип данных с фиксированной точкой #5
Цитата Сообщение от Nick Alte Посмотреть сообщение
Если нужна точность до 1/2, достаточно умножать на 2.
Проще для n знаков после точки умножать число на 10^n, и держать в уме что последние n разрядов - дробь.
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
22.11.2013, 18:17     Тип данных с фиксированной точкой
Еще ссылки по теме:

В заданой строке выделить подстроку, которая соответствует записи вещественного числа с фиксированной точкой - C++
Дана срока из символов, состоящая из букв, цифр, запятых, точек и знаков "+" и "-". Выделить подстроку, которая соответствует записи...

В строке записано вещественное число в форме с фиксированной точкой. Преобразовать строку, записав в нее округленное до целых значение данного числа. - C++
помогите пожалуйста!!!! В строке записано вещественное число в форме с фиксированной точкой. Преобразовать строку, записав в нее...

Перечисляемый тип данных.Символьный тип. - C++
1.type месяц = ( янв, фев, мар, апр, май, июн, июл, авг, сен, окт, ноя, дек ); год = (високосный, невисокосный); var d:28..31;...

Типы данных с плавающей точкой - C++
Есть какие-нибудь типы данных фиксированной длины, вроде int16_t или __u16, но для работы с плавающей точкой? Вроде бы __fp32...

Путаница с типами данных TCHAR и char. Какой тип данных выбрать? - C++
Я создавал тему в соседнем разделе:http://www.cyberforum.ru/cpp-networks/thread1119035.html Насколько я понял, то POST-данные в TCHAR...

тип данных - C++
как создать в С++ тип данных от 0 до 9?


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
Nick Alte
Эксперт С++
1608 / 1000 / 118
Регистрация: 27.09.2009
Сообщений: 1,930
Завершенные тесты: 1
22.11.2013, 18:17     Тип данных с фиксированной точкой #6
Цитата Сообщение от kazak Посмотреть сообщение
Проще для n знаков после точки умножать число на 10^n, и держать в уме что последние n разрядов - дробь.
В каких-то ситуациях проще, да. Но класс с преобразованиями надёжнее, да и точнее: зачем терять 3 с копейками бита там, где достаточно "откусить" один?
Yandex
Объявления
22.11.2013, 18:17     Тип данных с фиксированной точкой
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru