Форум программистов, компьютерный форум, киберфорум
Наши страницы

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

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

Ввод/вывод очень маленьких чисел - C++

27.02.2013, 01:33. Просмотров 1308. Ответов 6
Метки нет (Все метки)

Народ, срочно нужно!
Подскажите, как сделать чтобы при арифметических операциях в С++ можно было посчитать числа порядка 10^(-200)? А еще лучше порядка 10^(-500)!
У меня неизвестно по каким причинам меньше 10^(-18) не считает.

Есть ли способ чтобы в проге все вычисления делались с помощью long double или хотя бы double
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
27.02.2013, 01:33
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Ввод/вывод очень маленьких чисел (C++):

Есть очень много маленьких текстовых файлов необходимо слить в один файл - C++
Очень много маленьких файлов размером от 500 КБ до 90 МБ. Максимальная длина строки в файлах 80 символов. Всего таких файлов может быть...

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

Ввод и вывод матрицы чисел - C++
я написал программу Ввод и вывод чисел в матрицу. но компилятор ругается "constant expression required" в чем дело? #pragma hdrstop...

Ввод/вывод чисел из файлов - C++
1) Дан файл input.in с 2 числами, разделенными пробелом. Какой самый легкий и быстрый способ записать эти числа в переменные a и b соотв. ...

Ввод и вывод чисел типа float - C++
Прошу объяснить, в чём ошибка в коде Хотел написать простенький код, но что-то не то с выводом результата :/ Прошу помочь :c

Ввод чисел в консоль и их вывод в порядке возрастания - C++
Имеется ряд любых чисел, причем чисел может быть любое количество. Эти числа вводят в консоль, разделяя пробелом, например:11 23 34 12 45...

6
NEbO
589 / 456 / 49
Регистрация: 22.01.2009
Сообщений: 1,180
Записей в блоге: 1
Завершенные тесты: 2
27.02.2013, 05:33 #2
раз причины известны, то почему такие вопросы? double не может содержать числа порядка 10^-200, точности не хватит. конечно, если все числа имеют примерно одинаковое и небольшое количество знаковых разрядов, можно попробовать (как бы) умножить на те самые 10^200, и тогда перейти к long long, например. если же все из этих разрядов знаковые, то нужны библиотеки для работы с длинными дробными числами. gmp/mpfr/mpc. точно сейчас не скажу какая из них нужна, gmp вроде бы для целых, а mpfr и mpc для дробных. хотя я могу и ошибаться. вообщем, попробуйте
0
aLarman
644 / 565 / 89
Регистрация: 13.12.2012
Сообщений: 2,109
Завершенные тесты: 1
27.02.2013, 12:48 #3
попробуй создать класс, в котором разбей на 2 части число - число и показатель степени и перепиши операторы +, -, *, /
0
Nikitoslav
0 / 0 / 1
Регистрация: 09.04.2015
Сообщений: 19
05.11.2015, 02:21 #4
да элементарно же, double k = 1.38 * pow(10, -23); константа Больцмана, например
0
IrineK
Заблокирован
05.11.2015, 02:41 #5
Ввод/вывод очень маленьких чисел: std::scientific

Добавлено через 7 минут
Цитата Сообщение от give_up Посмотреть сообщение
А еще лучше порядка 10^(-500)
А вот это уже дудки.
cfloat
Можете вывести, чему равны у вас FLT_MIN, DBL_MIN, LDBL_MIN - и исходить из этого.
0
give_up
1 / 1 / 0
Регистрация: 17.03.2011
Сообщений: 51
05.11.2015, 11:31  [ТС] #6
Спасибо, но этой теме уже больше двух лет))
В свое время решил проблему с помощью библиотеки C++ MPFR, там хоть 10^(-1000000) и еще меньше можно посчитать
0
gru74ik
Эксперт CЭксперт С++
4278 / 1866 / 198
Регистрация: 20.02.2013
Сообщений: 4,997
Записей в блоге: 22
05.11.2015, 14:34 #7
give_up, было уже сто раз. Boost подключайте.

Добавлено через 39 секунд
Цитата Сообщение от give_up Посмотреть сообщение
этой теме уже больше двух лет))
тьфу, ёпрст
0
05.11.2015, 14:34
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
05.11.2015, 14:34
Привет! Вот еще темы с ответами:

Ввод/вывод чисел посредством unsigned char - C++
Здравствуйте.Столкнулся с проблемой. Как правильно вводить/выводить unsigned char? #include<iostream> using namespace std; ...

Ввод чисел с клавиатуры и вывод на экран в шестнадцатеричном и десятичном виде - C++
Напечатать в шестнадцатеричном и десятичном виде a, b, a<<5, b>>6, результат побитового умножения a и b<<4, результат побитового сложения a...

Страуструп. Упражнение. Ввод 3 чисел и последующий их вывод в порядке возрастания. - C++
Добрый вечер. Я только-только начал изучать программирование и начал с книги Страуструпа - Принципы и практика использования С++. Решил...

Поменять консольный ввод-вывод на файловый ввод-вывод - C++
вот у меня калькулятор как мне сделать что б числа вводились из файла и результат записывался в новый файл ? // ОБРАТНАЯ...


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

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
Опции темы

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