![]() |
Модераторы: Daevaorn |
![]() ![]() ![]() |
|
_nIx_ |
|
|||
Новичок Профиль Группа: Участник Сообщений: 23 Регистрация: 2.9.2006 Репутация: нет Всего: нет |
В общем , например , имеется float X1 = 16.15. Как вынести из нее,все что стоит до точки в одну переменную, и все что стоит после точки в другую переменную?
![]() ![]() |
|||
|
||||
CaptainFlint |
|
|||
![]() Искатель сокровищ ![]() ![]() Профиль Группа: Участник Сообщений: 393 Регистрация: 26.2.2003 Где: Москва Репутация: нет Всего: 23 |
Смотря какие ограничения на величину числа. Если числа небольшие, подойдёт простейший вариант:
В противном случае придётся, наверное, пользоваться функциями из math.h для взятия целой/дробной части. Это сообщение отредактировал(а) CaptainFlint - 11.9.2006, 17:33 -------------------- Почему же, ё-моё, ты нигде не пишешь "ё"? -------------------- Для тех, кто не знает: CaptainFlint - это бывший Константин. ;) |
|||
|
||||
Athlon |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 100 Регистрация: 15.1.2006 Где: Украина:: Запорож ье Репутация: нет Всего: нет |
если не ошибаюсь есть такая функция trunc, которая выделяет целую часть, что-то подобное:
P.S. а самый верный способ посмотреть в MSDN! |
|||
|
||||
Damarus |
|
||||
![]() Опытный ![]() ![]() Профиль Группа: Awaiting Authorisation Сообщений: 671 Регистрация: 6.5.2006 Репутация: 6 Всего: 29 |
|
||||
|
|||||
_nIx_ |
|
|||
Новичок Профиль Группа: Участник Сообщений: 23 Регистрация: 2.9.2006 Репутация: нет Всего: нет |
Да, спс всем......
![]() преобразовать в целое? ![]() ![]() ![]() |
|||
|
||||
Sceptik |
|
|||
Новичок Профиль Группа: Участник Сообщений: 36 Регистрация: 29.8.2006 Где: Екатеринбург Репутация: нет Всего: нет |
_nIx_, а как ты себе это представляешь?
![]() |
|||
|
||||
CaptainFlint |
|
|||
![]() Искатель сокровищ ![]() ![]() Профиль Группа: Участник Сообщений: 393 Регистрация: 26.2.2003 Где: Москва Репутация: нет Всего: 23 |
Не понял. Какое конкретно целое число нужно получить из дробного 0.15? -------------------- Почему же, ё-моё, ты нигде не пишешь "ё"? -------------------- Для тех, кто не знает: CaptainFlint - это бывший Константин. ;) |
|||
|
||||
vinter |
|
|||
![]() Explorer ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2735 Регистрация: 1.4.2006 Где: Н.Новгород Репутация: 13 Всего: 56 |
наверное 15.. просто домножай на 10 в степени сколько у тебя цифр.. |
|||
|
||||
_nIx_ |
|
|||
Новичок Профиль Группа: Участник Сообщений: 23 Регистрация: 2.9.2006 Репутация: нет Всего: нет |
Черт,перечитал свой пост,в общем обяснил я коряво.
![]() ![]() ![]() |
|||
|
||||
Sceptik |
|
|||
Новичок Профиль Группа: Участник Сообщений: 36 Регистрация: 29.8.2006 Где: Екатеринбург Репутация: нет Всего: нет |
_nIx_, хм.. юзай std::map с ключом который твой остаток.
|
|||
|
||||
bsa |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 9185 Регистрация: 6.4.2006 Где: Москва, Россия Репутация: 63 Всего: 196 |
_nIx_, понимаешь в чем дело, целое на то и целое, что у него нет дробной части. И если ты пытаешься преобразовать 0.15 к целому, ты получаешь (и вполне закономерно) результат 0. Если тебе из 0.15 надо получить целое число 15, то в этом случае просто умножаешь на 100: int i = (int)(0.15 * 100);
Если же тебе надо 0.15 преобразовать к 1, а 0.5 к 10-ти, то тут логичнее уже использовать std:map... Но что-то мне подсказывает, что ты не то с самого начала делаешь. В моей практике такие задачи (использовать дробную часть в качестве индекса) не встречались, если честно. |
|||
|
||||
zkv |
|
|||
![]() ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 2133 Регистрация: 23.7.2006 Где: Санкт-Петербург Репутация: 26 Всего: 92 |
||||
|
||||
![]() ![]() ![]() |
Правила форума "С++:Общие вопросы" | |
|
Добро пожаловать!
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Earnest Daevaorn |
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | C/C++: Общие вопросы | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |