Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 5.00/9: Рейтинг темы: голосов - 9, средняя оценка - 5.00
79 / 79 / 20
Регистрация: 13.05.2009
Сообщений: 537
Записей в блоге: 1
1

При присвоении числа float появляется хвост!

15.05.2009, 16:07. Показов 1819. Ответов 5
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
присваеваю переменной Float 1.44 получаю 1,44000005722046
может FloatToStr работает некоректно?
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
class computer 
 
{
public:
   computer(char *, int, float);
   String Text(void);
private:
   char name[64];
   int hard_disk;
   float floppy;
};
 
computer::computer(char *name,int hard_disk,float floppy,)
{  strcpy(computer::name, name);
   computer::hard_disk = hard_disk;
   computer::floppy=floppy;}
 
String computer::Text(void)
{return "Название: "+String(name)+"\nВинчестер: "+IntToStr(hard_disk)+
"GB\nВлоппи "+FloatToStr(floppy);
}
 
void __fastcall TForm1::Button1Click(TObject *Sender)
{
computer my_pc("Compaq", 250, 1.44);
ShowMessage(my_pc.Text());
}
В итоге программа выдает строку:
Название: Compaq
Винчестер: 250GB
Влоппи 1,44000005722046 \\а вот почему тут не 1,44 не пойму
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
15.05.2009, 16:07
Ответы с готовыми решениями:

При сохранении датасета появляется хвост у даблов
Наполняю датасет. Сохраняю в xml. Открываю просмоторщиком и вижу, что у 1% записей даблы...

Ошибка при присвоении числа переменной
Доброго времени суток. На днях дали задание написать алгоритм RSA. Вроде бы он легкий и понятный и...

Игра змейка С++ . Хвост. как создать хвост змейки
День добрый помогите, не знаю как сделать хвост. Код был взят с форума и переделан. Но с хвостом не...

Корректное отображение числа при переводе во Float
Всем доброго здравия. Как мне корректно перевести число из строки во Float: a =...

5
Супер-модератор
8783 / 2536 / 144
Регистрация: 07.03.2007
Сообщений: 11,873
15.05.2009, 16:33 2
используй FloatToStrF, просто есть такая беда с числами с плавающей запятой
0
MCSD: APP BUILDER
8794 / 1073 / 104
Регистрация: 17.06.2006
Сообщений: 12,602
15.05.2009, 16:42 3
MrAndrey_ka,
может FloatToStr работает некоректно?
всё правильно. числа с плавающей запятой невозможно точно представить в машинном виде, поэтому используется приближенное представление.
отсюда кстати, вытекает правило что нельзя напрямую сравнивать два вещественных числа.
0
79 / 79 / 20
Регистрация: 13.05.2009
Сообщений: 537
Записей в блоге: 1
15.05.2009, 16:46  [ТС] 4
Цитата Сообщение от Rififi Посмотреть сообщение
всё правильно. числа с плавающей запятой невозможно точно представить в машинном виде, поэтому используется приближенное представление.
и какова погрешность представления?
0
MCSD: APP BUILDER
8794 / 1073 / 104
Регистрация: 17.06.2006
Сообщений: 12,602
15.05.2009, 16:49 5
MrAndrey_ka,
и какова погрешность представления?
FLT_EPSILON, DBL_EPSILON
0
35 / 12 / 0
Регистрация: 06.05.2009
Сообщений: 214
15.05.2009, 17:08 6
тип данных float такой и есть, попробуй подключи longdubl
0
15.05.2009, 17:08
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
15.05.2009, 17:08
Помогаю со студенческими работами здесь

Ошибка при создании трех колонок (float:left, float:right и margin:0 auto;)
3-й час бьюсь, но никак не могу понять, что не так делаю. почему оранжевый блок опускается? ...

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

Отследить переполнение при делении float/float
Кто-нибудь, подскажите пжл, алгоритм деления float/float на ЯВУ.

При сложении двух чисел получается сумма которая почемуто изменяется при присвоении переменной
В режиме дебага в VS смотрю на код, который складывает два числа, получается корректный результат,...


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

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru