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

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

Войти
Регистрация
Восстановить пароль
 
Rusarch333
7 / 7 / 1
Регистрация: 12.08.2012
Сообщений: 96
#1

Разделитель в числах с плавающей точкой - C++

22.08.2012, 16:29. Просмотров 837. Ответов 4
Метки нет (Все метки)

Здравствуйте, у меня есть интересный вопрос

Всем известно, что в переменной типа double могут храниться такие числа, как 0.30, но если
изменить "." на ",", т.е, например, вместо 0.30 введем 0,30, то получим ошибку, можно ли это исправить и как ?
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
22.08.2012, 16:29     Разделитель в числах с плавающей точкой
Посмотрите здесь:

Ошибка в числах с плавающей запятой (калькулятор) - C++
Пробую написать калькулятор. Все идет гладко, все, кроме запятой. К примеру, при попытке сложить 0,2 и 0,4 получаю в ответ...

Непонятки с плавающей точкой - C++
Обучаюсь С++ по книге Дейтелов. Работаю в IDE Dev-c++ v4.9.9.2 в четвертой главе есть вот такое вот упражнение:4.16. Разработайте...

Точность числа с плавающей точкой - C++
У типа float числа одинарной точности с плавающей запятой обеспечивают относительную точность 7-8 десятичных цифр. Внимание, вопрос!...

Массив чисел с плавающей точкой - C++
#include <iostream> #include <ctime> #include <fstream> using namespace std; int main() { float randomDigits_5 {}; ...

Вывод числа с плавающей точкой - C++
Доброго всем времени суток. Пытаюсь вывести число с плавающей запятой на LCD. long int Eb = 0x5959; char st_Ebf = ""; ...

Длинная арифметика с плавающей точкой - C++
Есть задача перемножить много (десятки тысяч) чисел от 0 до 1. числа задаются дробями целых чисел. например 28/5489. Надо получить...

После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
OhMyGodSoLong
~ Эврика! ~
1243 / 992 / 42
Регистрация: 24.07.2012
Сообщений: 2,002
22.08.2012, 16:37     Разделитель в числах с плавающей точкой #2
Нет. На синтаксис записи чисел через точку и использование запятых в других контекстах завязано слишком много. Лучшее решение на данный момент: смириться и получать по пальцам от компилятора до тех пор, пока не наступит понимание, что числа пишутся через точку.

А, в смысле при вводе-выводе. Гуглите в сторону std::locale.
Rusarch333
7 / 7 / 1
Регистрация: 12.08.2012
Сообщений: 96
22.08.2012, 16:48  [ТС]     Разделитель в числах с плавающей точкой #3
Спасибо
Пaтрик
415 / 390 / 38
Регистрация: 21.01.2012
Сообщений: 972
Завершенные тесты: 1
22.08.2012, 17:02     Разделитель в числах с плавающей точкой #4
C++
1
2
3
4
5
6
7
8
9
#include <iostream>
#include <locale>
 
int main()
{
    std::locale ru_locale("Russian");
    std::cout.imbue(ru_locale);
    std::cout << 2.3 << std::endl;
}
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
22.08.2012, 18:36     Разделитель в числах с плавающей точкой
Еще ссылки по теме:

Округлить числа с плавающей точкой - C++
Подскажите почему работает неправильно! Не округляет, а выдает только числа до запятой! Исправьте пожалуйста!! Вот задание: Строка...

Сравнение чисел с плавающей точкой - C++
Известно, что числа с плавающей точкой нельзя сравнивать с помощью ==. Однако, нет ли исключения из этого правила? Дело вот в чём. Если мы...

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

Рандом с плавающей точкой, как? - C++
Здравствуйте, как реализовать rand() или другой рандом с плавающей точкой, т.е. например чтобы он мне выводил число от 1.0 до 2.5?

Калькулятор чисел с плавающей точкой - C++
double calculate(float x, char s, float y); int main() { float x,y; char s; x=y=0; cin&gt;&gt;x&gt;&gt;s&gt;&gt;y;

Форматирование чисел с плавающей точкой - C++
Все знают про проблемы с представлением дробных чисел. Например: double test = .58; printf(&quot;%f\n&quot;, test); //...


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

Или воспользуйтесь поиском по форуму:
Catstail
Модератор
22515 / 10920 / 1774
Регистрация: 12.02.2012
Сообщений: 18,067
22.08.2012, 18:36     Разделитель в числах с плавающей точкой #5
Не думаю, что C++ будет "прогибаться" под национальные особенности. Программисты от веку использовали для этой цели точку (и будут, полагаю, использовать).

Если же нужно вводить числа с запятой вместо точки, то легко написать простейшую функцию, которая примет число с запятой (в форме строки), заменит запятую на точку. Далее - как обычно.
Yandex
Объявления
22.08.2012, 18:36     Разделитель в числах с плавающей точкой
Ответ Создать тему
Опции темы

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