Форум программистов, компьютерный форум, киберфорум
C++ Builder
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.70/37: Рейтинг темы: голосов - 37, средняя оценка - 4.70
 Аватар для Arigami
1 / 1 / 0
Регистрация: 23.04.2010
Сообщений: 35

Выдает ошибку sqrt: DOMAIN error

17.05.2010, 17:19. Показов 7012. Ответов 4
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Выдает ошибку sqrt: DOMAIN error уже при запуске програме когда произвожу рассчет я так понял что в какойто части расчера слишком большое число 0.00023425 типо такого в периоде так ли это и еще я пытался округлить через floor но он почемуто мне округляет до 0. Вот код
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
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
//---------------------------------------------------------------------------
 
#include <vcl.h>
#include<math.h>
#include<iostream>
#include <stdio.h>
#pragma hdrstop
 
#include "Unit1.h"
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma link "CSPIN"
#pragma resource "*.dfm"
TForm1 *Form1;
//---------------------------------------------------------------------------
__fastcall TForm1::TForm1(TComponent* Owner)
        : TForm(Owner)
{
}
//---------------------------------------------------------------------------
 
//---------------------------------------------------------------------------
void __fastcall TForm1::FormCreate(TObject *Sender)
{
 
StringGrid1->Cells[0][0] = "N";
StringGrid1->Cells[1][0] = "Xi";
StringGrid1->Cells[2][0] = "Yi";
 
 
 
StringGrid2->Cells[0][0] = "Ñóììà Xi";
StringGrid2->Cells[1][0] = "Ñóììà Yi";
StringGrid2->Cells[2][0] = "Ñóììà Xi^2";
StringGrid2->Cells[3][0] = "Ñóììà Yi^2";
StringGrid2->Cells[4][0] = "Ñóììà Yi*Xi";
StringGrid2->Cells[5][0] = "Êîðåëÿöèÿ r";
 
}
//---------------------------------------------------------------------------//---------------------------------------------------------------------------}
//---------------------------------------------------------------------------
 
void __fastcall TForm1::Button3Click(TObject *Sender)
{
int I,J;
float b,x,c,v,z,d;
double r;
DecimalSeparator = '.';//ãëîáàëüíàÿ âíóòðåííÿÿ ïåðåìåííàÿ
J=StringGrid1->RowCount-2;
for(I=1; I<=J ; I++)
{
b=b+StrToFloat(StringGrid1->Cells[1][I]);
x=x+StrToFloat(StringGrid1->Cells[2][I]);
c=c+(pow(StrToFloat(StringGrid1->Cells[1][I]),2));
v=v+(pow(StrToFloat(StringGrid1->Cells[2][I]),2));
z=z+(StrToFloat(StringGrid1->Cells[1][I]))*(StrToFloat(StringGrid1->Cells[2][I]));
d=StrToFloat(StringGrid1->Cells[0][I]);
r=d*z-b*x/sqrt((d*c-b*b)-(d*v-x*x));
}
StringGrid2->Cells[0][StringGrid2->RowCount-1] = FloatToStr(b);
StringGrid2->Cells[1][StringGrid2->RowCount-1] = FloatToStr(x);
StringGrid2->Cells[2][StringGrid2->RowCount-1] = FloatToStr(c);
StringGrid2->Cells[3][StringGrid2->RowCount-1] = FloatToStr(v);
StringGrid2->Cells[4][StringGrid2->RowCount-1] = FloatToStr(z);
StringGrid2->Cells[5][StringGrid2->RowCount-1] = FloatToStr(r);
}
//---------------------------------------------------------------------------
 
 
 
void __fastcall TForm1::CSpinEdit1Change(TObject *Sender)
{
     StringGrid1->RowCount=CSpinEdit1->Value+2;
     float m;
     m=CSpinEdit1->Value;
     for (int i=1; i<=m; i++)
       StringGrid1->Cells[0][i]=IntToStr(i);
     StringGrid1->Cells[0][m+1]="";
}
//---------------------------------------------------------------------------
 
 
 
void __fastcall TForm1::N5Click(TObject *Sender)
{
Form1->Close();
}
//---------------------------------------------------------------------------
 
 
 
 
void __fastcall TForm1::Button4Click(TObject *Sender)
{
    for(int i = 0; i < StringGrid1->ColCount; i++)
    for(int j = 0; j < StringGrid1->RowCount; j++)
    StringGrid1->Cells[i+1][j+1] = "";
}
//---------------------------------------------------------------------------
C++
1
r=d*z-b*x/sqrt((d*c-b*b)-(d*v-x*x));
вот в этой формуле числитель у меня получается приблизительно 0,00069854.......
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
17.05.2010, 17:19
Ответы с готовыми решениями:

Выдаёт ошибку: acos DOMAIN error,полсе нажатия окей,ещё одну ошибку pow OWERFLAW ERROR
Здравствуйте! подскажите пожалуйста где ошибка в коде. Выдаёт ошибку: acos DOMAIN error,полсе нажатия окей,ещё одну ошибку pow...

Выдает ошибку pow DOMAIN error
Доброго времени суток, выдает ошибку pow DOMAIN error при расчете примера. Всю голову сломал уже, помогите. Вот собственно сам пример:...

На другом компьютере exe файл C++ Builder 6 открывается,но выдает ошибку "pow : DOMAIN error"
На другом компьютере файл exe открывается но выдает ошибку: pow : DOMAIN error. На моем компе есть Builder, на другом - нет. что делать...

4
 Аватар для Airhand
537 / 459 / 3
Регистрация: 08.07.2009
Сообщений: 2,625
17.05.2010, 21:52
Полный текст ошибки в студию. Попробуй сократить формулу и вычислять её через временные переменные, например: r1 = d*z; r2 = d*c - b*b; r3 = d*v - x*x; r = r1 - b*x/(sqrt((r2 - r3)));
0
 Аватар для Arigami
1 / 1 / 0
Регистрация: 23.04.2010
Сообщений: 35
17.05.2010, 22:28  [ТС]
А это как бы и есть полный текст ошибки)

Добавлено через 32 минуты
Цитата Сообщение от Airhand Посмотреть сообщение
например: r1 = d*z; r2 = d*c - b*b; r3 = d*v - x*x; r = r1 - b*x/(sqrt((r2 - r3)));
Пробывал не помогло(((
0
332 / 247 / 32
Регистрация: 13.12.2009
Сообщений: 589
17.05.2010, 22:39
Цитата Сообщение от Arigami Посмотреть сообщение
sqrt: DOMAIN error
корень отрицательного числа
1
 Аватар для Arigami
1 / 1 / 0
Регистрация: 23.04.2010
Сообщений: 35
17.05.2010, 22:54  [ТС]
Цитата Сообщение от Roma_F Посмотреть сообщение
корень отрицательного числа
О а я об этом не подумал а как это можно исправить?

Добавлено через 13 минут
Цитата Сообщение от Arigami Посмотреть сообщение
как это можно исправить?
а да чет я затупил
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
17.05.2010, 22:54
Помогаю со студенческими работами здесь

Ошибка при выполнении кода "sqrt: DOMAIN error"
Привет, форумчане. Задали курсовик. одно из заданий - рисование графика - лемнискаты (такая восьмерка лежачая). Написал код: ...

Вычисление выражения и ошибка "sqrt DOMAIN error"
Вот фото прошу помочь!

Ошибка: "sqrt: DOMAIN error"
Здраствуйте, у меня проблема, при работе программы, когда уже выдает результат то после результата вылетает ошибка &quot;sqrt: DOMAIN...

Ошибка "sqrt: DOMAIN ERROR"
Привет всем. Помогите плиз разобраться. Выбивает ошибку &quot;sqrt: DOMAIN ERROR&quot; не пойму почему, должно считать :(. Библиотека математики...

Ошибка: "sqrt domain error"
После запуска программы выводится ошибка - sqrt domain error. Я так понимаю, потому что корень берется из отрицательного числа. Но у меня в...


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

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Новые блоги и статьи
SDL3 для Desktop (MinGW): Рисуем цветные прямоугольники с помощью рисовальщика SDL3 на Си и C++
8Observer8 17.03.2026
Содержание блога Финальные проекты на Си и на C++: finish-rectangles-sdl3-c. zip finish-rectangles-sdl3-cpp. zip
Символические и жёсткие ссылки в Linux.
algri14 15.03.2026
Существует два типа ссылок — символические и жёсткие. Ссылка в Linux — это запись в каталоге, которая может указывать либо на inode «файла-ИСТОЧНИКА», тогда это будет «жёсткая ссылка» (hard link),. . .
[Owen Logic] Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора
ФедосеевПавел 14.03.2026
Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора ВВЕДЕНИЕ Выполняя задание на управление насосной группой заполнения резервуара,. . .
делаю науч статью по влиянию грибов на сукцессию
anaschu 13.03.2026
прикрепляю статью
SDL3 для Desktop (MinGW): Создаём пустое окно с нуля для 2D-графики на SDL3, Си и C++
8Observer8 10.03.2026
Содержание блога Финальные проекты на Си и на C++: hello-sdl3-c. zip hello-sdl3-cpp. zip Результат:
Установка CMake и MinGW 13.1 для сборки С и C++ приложений из консоли и из Qt Creator в EXE
8Observer8 10.03.2026
Содержание блога MinGW - это коллекция инструментов для сборки приложений в EXE. CMake - это система сборки приложений. Здесь описаны базовые шаги для старта программирования с помощью CMake и. . .
Как дизайн сайта влияет на конверсию: 7 решений, которые реально повышают заявки
Neotwalker 08.03.2026
Многие до сих пор воспринимают дизайн сайта как “красивую оболочку”. На практике всё иначе: дизайн напрямую влияет на то, оставит человек заявку или уйдёт через несколько секунд. Даже если у вас. . .
Модульная разработка через nuget packages
DevAlt 07.03.2026
Сложившийся в . Net-среде способ разработки чаще всего предполагает монорепозиторий в котором находятся все исходники. При создании нового решения, мы просто добавляем нужные проекты и имеем. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru