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

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

Войти
Регистрация
Восстановить пароль
 
zeubr
2 / 2 / 1
Регистрация: 17.05.2009
Сообщений: 22
#1

Ошибка при заполнении массива малыми числами - C++

18.05.2009, 13:22. Просмотров 659. Ответов 5
Метки нет (Все метки)

Привет всем!

В программе необходимо использовать массив с малыми числами, порядка 1.47243e-331.
Элементы массива описаны как "long double". При компиляции выдается сообщение "8: warning: floating constant truncated to zero".

Обьясните пожалуйсто что не так.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
18.05.2009, 13:22
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Ошибка при заполнении массива малыми числами (C++):

Некорректное значение числа при заполнении массива рандомными действительными числами - C++
Заполняю массив рандомными действительными числами.Иногда выходит такое значение числа,как в вложенном изображении.Строка 4,столбец...

Ошибка при заполнении массива - C++
Помогите пожалуйста решить проблему: Это программа для игры в крестики нолики. В первой функции void instruction() необходимо вывести...

Ошибка при заполнении массива - C++
Объявляю и пытаюсь заполнить так: TArray__1<System::Byte> *buffer; buffer = new TArray__1 <System::Byte> (6); buffer='r'; ...

ошибка при заполнении массива - C++
хочу заполнить массивы класса (и сразу же записать в файл), если выбрать количество записей - 1, то все работает нормально, но больше...

Ошибка при заполнении динамического массива - C++
#include <iostream> #include <fstream> using namespace std; int N, i, a, l; int head = -1; char ch; int *s = new int ; ...

Ошибка исполнения при заполнении массива - C++
Программа работы с квадратными матрицами. Используются динамические массивы. Задание из вуза. Использование функций запрещено по...

5
Haster
инженер-системотехник
109 / 108 / 2
Регистрация: 10.03.2009
Сообщений: 533
18.05.2009, 14:03 #2
Скорей всего компилятор не умеет работать с такой точностью и предупреждает, что вещественная константа усекается до нуля
0
zeubr
2 / 2 / 1
Регистрация: 17.05.2009
Сообщений: 22
18.05.2009, 15:18  [ТС] #3
Но для заполнения массива я получаю эти значения с помощью функции арктангенса и всё нормально.
Кстати перевод этого сообщения "8: предупреждение: деление на ноль плавающей константы".
0
Haster
инженер-системотехник
109 / 108 / 2
Регистрация: 10.03.2009
Сообщений: 533
18.05.2009, 15:38 #4
Тогда код в студию )
0
zeubr
2 / 2 / 1
Регистрация: 17.05.2009
Сообщений: 22
18.05.2009, 16:00  [ТС] #5
значит так, с помощью вот этой штуки я вывожу интересующие меня значения на экран:
//arctangens
#include <iostream>
#include <math.h>
using namespace std;

int main()
{
long double a;
int n;
a=1;
for (n=0; n<2048; n++)
{
cout<<atanl(a) <<", ";
a=a/2;
}
cout<<"\n";
return 0;
}
затем копирую и вставляю в массив:

//cordic algorithm

#include <iostream>
using namespace std;
int main()
{
int n, d;
long double a, x, y, z, u;
long double arctangens[]={ЗДЕСЬ!!!};
cout<<"sinuswert: ";
cin>>y;
cout<<"cosinuswert: ";
cin>>x;
a=1, z=0;
for (n=0; n<2048; n++)
{
if (y<0)
d=1;
else
d=-1;
z=z-d*arctangens[n];
u=x;
x=(x-d*y*a);
y=(y+d*u*a);
a=a/2;

}
cout<<"phi bogenmaß: " <<z <<"\n";
cout<<"phi grad: " <<z*(180/3.14159265) <<"\n";
return 0;
}
это программа расчитывает значение угла по sin(phi) и cos(phi)
0
zeubr
2 / 2 / 1
Регистрация: 17.05.2009
Сообщений: 22
20.05.2009, 13:40  [ТС] #6
подробнее об этой теме:

Ошибка при объявлении массива
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
20.05.2009, 13:40
Привет! Вот еще темы с ответами:

Где кроется ошибка при заполнении массива структур? - C++
У меня ввод данных в массив не происходит, только вот не пойму почему, может быть кто-нибудь подскажет, в чем кроется ошибка? Я не успеваю...

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

Ошибка при заполнение матрицы числами из массива - C++
Такая задача: открыть файл с числами, и заполнить ими матрицу таким размером, как значение первого елемента файла, если чисел не хватит, то...

Ошибка при заполнении - C++
Помогите определить где ошибка, так как какое число я не ввожу выводится в конце именно оно. Как мне кажется я ошибаюсь при заполнении...


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

Или воспользуйтесь поиском по форуму:
6
Yandex
Объявления
20.05.2009, 13:40
Ответ Создать тему
Опции темы

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