![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
|
Опции темы | Поиск в этой теме |
![]() |
#1 |
Пользователь
Регистрация: 06.06.2011
Сообщений: 26
|
![]()
Написал простую программу по отображении числа с плавающей точкой в десятичном виде и в экспоненциальной. Но в результате в десятичном отображении неверный результат.
Код:
Введите пожалуйста число с плавающей точкой: 50.678 Ввод будет 50.678001 или 5.067800е+001 Почему отображается единица в конце? Последний раз редактировалось ACE Valery; 08.06.2011 в 10:49. |
![]() |
![]() |
![]() |
#2 |
Форумчанин
Регистрация: 02.02.2010
Сообщений: 599
|
![]()
Все правильно, это погрешность.
"Лишь то читается легко, что написано с трудом; что в час написано, то в час и позабыто."
|
![]() |
![]() |
![]() |
#3 |
C++
Форумчанин
Регистрация: 27.03.2011
Сообщений: 803
|
![]()
Десятичный результат немного округляется. Попробуйте использовать long double вместо float.
Ищете информацию по C++?
cplusplus.com |
![]() |
![]() |
![]() |
#4 | |
Форумчанин
Регистрация: 02.02.2010
Сообщений: 599
|
![]() Цитата:
"Лишь то читается легко, что написано с трудом; что в час написано, то в час и позабыто."
|
|
![]() |
![]() |
![]() |
#5 |
Пользователь
Регистрация: 06.06.2011
Сообщений: 26
|
![]() |
![]() |
![]() |
![]() |
#6 | |
Форумчанин
Регистрация: 02.02.2010
Сообщений: 599
|
![]() Цитата:
"Лишь то читается легко, что написано с трудом; что в час написано, то в час и позабыто."
|
|
![]() |
![]() |
![]() |
#7 |
Пользователь
Регистрация: 06.06.2011
Сообщений: 26
|
![]()
Работает!!! Спасибо за помощь.
long double fl; printf("Введите пожалуйста число с плавающей точкой: "); scanf("%Lf", &fl); printf("Ввод будет %Lf или %Le\n", fl, fl); Появилась еще проблема. Вот пример программы, которая считывает IP и выводит его на печать: Код:
Вот пример с неработающим циклом: Код:
Последний раз редактировалось Stilet; 08.06.2011 в 14:30. |
![]() |
![]() |
![]() |
#8 |
Software Engineer
Участник клуба
Регистрация: 07.04.2007
Сообщений: 1,618
|
![]()
Почему вы сравниваете возвращаемый функцией scanf() результат с единицей?
Вот для справки scanf()
Мужество есть лишь у тех, кто ощутил сердцем страх, кто смотрит в пропасть, но смотрит с гордостью в глазах. (с) Ария
|
![]() |
![]() |
![]() |
#9 |
Пользователь
Регистрация: 06.06.2011
Сообщений: 26
|
![]() |
![]() |
![]() |
![]() |
#10 |
Software Engineer
Участник клуба
Регистрация: 07.04.2007
Сообщений: 1,618
|
![]()
А теперь почитайте, что написано по ссылке, которую я привел выше, и узнаете, что возвращает scanf()
Мужество есть лишь у тех, кто ощутил сердцем страх, кто смотрит в пропасть, но смотрит с гордостью в глазах. (с) Ария
|
![]() |
![]() |
![]() |
|
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Поясните прогу | Sobaka_ru | Помощь студентам | 4 | 16.12.2010 23:36 |
Поясните по ассемблеру | Namolem | Помощь студентам | 1 | 10.10.2010 12:11 |
Поясните код... | Masip | Общие вопросы Delphi | 1 | 18.05.2010 07:22 |
Поясните по getdir | AK BULLETS | Общие вопросы Delphi | 2 | 19.03.2010 14:16 |
Поясните ООП | sodd | Общие вопросы Delphi | 1 | 23.02.2009 14:14 |