Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.71/7: Рейтинг темы: голосов - 7, средняя оценка - 4.71
1 / 1 / 0
Регистрация: 16.08.2012
Сообщений: 80

sqrt: DOMAIN error

01.05.2013, 20:09. Показов 1548. Ответов 12
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Здравствуйте! Нам задали написать программу для вычесления периметра триугольника, я написал но при её работе пишет sqrt: DOMAIN error
Кликните здесь для просмотра всего текста

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
#include <iostream.h>
#include <math.h>
#include <windows.h>
 
char rusbuffer[256];
 
char* Rus(const char* text)
{
    CharToOem(text,rusbuffer);
    return rusbuffer;
}
 
class Segment
{
    public:
        void SetSegment();
        void CalcSegment();
        void GetTrigran();
        int A[2], B[2], S[2];
        int ClacTrigran();
};
 
void Segment::SetSegment()
{
    for (int i=0; i<3; i++)
    {
    int k = i;
        cout<<Rus("Введите х y координаты для ")<<++k;
      cout<<Rus(" -й точки")<<endl;
        cin>>A[i];
        cin>>B[i];
    }
}
 
void Segment::CalcSegment()
{
    S[0] = sqrt(((A[1]-A[0])*2) + ((B[1]-B[0])*2));
    S[1] = sqrt(((A[2]-A[1])*2) + ((B[2]-B[1])*2));
    S[2] = sqrt(((A[0]-A[2])*2) + ((B[0]-B[2])*2));
}
 
int Segment::ClacTrigran()
{
    int p;
    p = S[0]+S[1]+S[2];
    return p;
}
 
void Segment::GetTrigran()
{
    cout<<Rus("Периметр триугольника ")<<ClacTrigran()<<endl;
}
 
void main()
{
    Segment seg;
    seg.SetSegment();
    seg.CalcSegment();
    seg.GetTrigran();
    system("PAUSE");
}
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
01.05.2013, 20:09
Ответы с готовыми решениями:

Выдает ошибку sqrt: domain error
Помогите решить проблему! Незнаю почему она выходит, исправте пожалуйста цель задачи: Дано множество точек, построить треугольник таким...

[C++ Error] Sqrt x.cpp(16): E2268 Call to undefined function 'sqrt'. Что это за ошибка???
Когда я испльзую функцию sqrt() компилятор выводит: Sqrt x.cpp(16): E2268 Call to undefined function 'sqrt' Что это значит???

Цикл: Для числа N вычислить значение следующего выражения: sqrt((1) + sqrt((2) + ... + sqrt(2 * N)))
Как это решить? sqrt((1)+sqrt((2)+..+sqrt(2n)))

12
 Аватар для BumerangSP
4311 / 1423 / 463
Регистрация: 16.12.2010
Сообщений: 2,939
Записей в блоге: 3
01.05.2013, 20:26
demover123, sqrt принимает в качестве параметра значения вещественного типа:
C++
1
2
3
    S[0] = sqrt(double(((A[1]-A[0])*2) + ((B[1]-B[0])*2)));
    S[1] = sqrt(double(((A[2]-A[1])*2) + ((B[2]-B[1])*2)));
    S[2] = sqrt(double(((A[0]-A[2])*2) + ((B[0]-B[2])*2)));
0
1 / 1 / 0
Регистрация: 16.08.2012
Сообщений: 80
01.05.2013, 20:38  [ТС]
ааа, спасибо

Добавлено через 11 минут
BumerangSP, не помогло
0
 Аватар для BumerangSP
4311 / 1423 / 463
Регистрация: 16.12.2010
Сообщений: 2,939
Записей в блоге: 3
01.05.2013, 20:45
ах, это при работе...
Ну, вообще, пишут, что это может быть ошибка несоответствия с условиями использования функции. В данном случае корня. Например, число под корнем отрицательное.

Ошибка "sqrt: DOMAIN ERROR"
0
1 / 1 / 0
Регистрация: 16.08.2012
Сообщений: 80
01.05.2013, 20:47  [ТС]
BumerangSP, тоже это читал, но в том дело что число не есть меньше 0
0
 Аватар для BumerangSP
4311 / 1423 / 463
Регистрация: 16.12.2010
Сообщений: 2,939
Записей в блоге: 3
01.05.2013, 20:47
demover123, это Вы при отладке проверили?
0
1 / 1 / 0
Регистрация: 16.08.2012
Сообщений: 80
01.05.2013, 20:52  [ТС]
BumerangSP, извеняюсь но а как проверить? Я использую Borland C++ 5.02
0
387 / 151 / 16
Регистрация: 12.05.2011
Сообщений: 450
01.05.2013, 20:57
Цитата Сообщение от demover123 Посмотреть сообщение
(A[0]-A[2])*2
это ты в квадрат так возводишь?
0
1 / 1 / 0
Регистрация: 16.08.2012
Сообщений: 80
01.05.2013, 20:58  [ТС]
yekka, да
0
387 / 151 / 16
Регистрация: 12.05.2011
Сообщений: 450
01.05.2013, 21:02
истина где-то рядом
0
:)
Эксперт С++
4773 / 3267 / 497
Регистрация: 19.02.2013
Сообщений: 9,046
01.05.2013, 21:02
demover123, а как тогда на 2 умножать будете?
C++
1
(A[0]-A[2])*(A[0]-A[2])
или
C++
1
pow( A[0]-A[2], 2)
0
 Аватар для BumerangSP
4311 / 1423 / 463
Регистрация: 16.12.2010
Сообщений: 2,939
Записей в блоге: 3
01.05.2013, 21:03
demover123, debug. Что борланд, я заметил по iostream.h и отсутствию пространств имен.
0
1 / 1 / 0
Регистрация: 16.08.2012
Сообщений: 80
01.05.2013, 21:04  [ТС]
yekka, спасибо за подсказку, вышло
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
01.05.2013, 21:04
Помогаю со студенческими работами здесь

Log Domain error
Поясните начинающему программисту эту ошибку??? вот код программы, и почему эта ошибка при отрицательном значении??? ...

Ошибка pow: DOMAIN error
При запуске в C++ Builder функция спамит вышеуказанной ошибкой, в выводе все значения при (i-j)&lt;0 забиты значением INF, при (i-j)&gt;0...

Вычислить значение выражения sqrt (2 + sqrt (2 + sqrt (2 ... sqrt2))), (n-слагаемых)
Вычислить значение выражения sqrt (2 + sqrt (2 + sqrt (2 ... sqrt2))), (n-слагаемых),с помощью iostream, stdio.С помощью цикла for або while

Дано натуральное число n. Вычислить sqrt(2+ sqrt(5 + sqrt(7...))
Дано натуральное число n.Вычислить sqrt(2+ sqrt(5 + sqrt(7...)). Под корнями располагается n первых простых чисел. Написал как находить...

Рекурсия: вычислить значение выражения sqrt(1+sqrt(2+...sqrt(n)))
Вычислить с помощью рекурсии и без нее - y(n) = sqrt(1+sqrt(2+...sqrt(n).. Как выполнить задание с помощью рекурсии? #include...


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

Или воспользуйтесь поиском по форуму:
13
Ответ Создать тему
Новые блоги и статьи
Управление камерой с помощью скрипта OrbitControls.js на Three.js: Вращение, зум и панорамирование
8Observer8 05.03.2026
Содержание блога Финальная демка в браузере работает на Desktop и мобильных браузерах. Итоговый код: orbit-controls-threejs-js. zip. На мобильном - сканируйте QR-код. Вращайте камеру одним пальцем,. . .
SDL3 для Web (WebAssembly): Синхронизация спрайтов SDL3 и тел Box2D
8Observer8 04.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-sync-physics-sprites-sdl3-c. zip На первой гифке отладочные линии отключены, а на второй включены:. . .
SDL3 для Web (WebAssembly): Идентификация объектов на Box2D v3 - использование userData и событий коллизий
8Observer8 02.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-collision-events-sdl3-c. zip Сканируйте QR-код на мобильном и вы увидите, что появится джойстик для управления главным героем. . . .
Реалии
Hrethgir 01.03.2026
Нет, я не закончил до сих пор симулятор. Эта задача сложнее. Не получилось уйти в плавсостав, но оно и к лучшему, возможно. Точнее получалось - но сварщиком в палубную команду, а это значит, в моём. . .
Ритм жизни
kumehtar 27.02.2026
Иногда приходится жить в ритме, где дел становится всё больше, а вовлечения в происходящее — всё меньше. Плотный график не даёт вниманию закрепиться ни на одном событии. Утро начинается с быстрых,. . .
SDL3 для Web (WebAssembly): Сборка библиотек: SDL3, Box2D, FreeType, SDL3_ttf, SDL3_mixer и SDL3_image из исходников с помощью CMake и Emscripten
8Observer8 27.02.2026
Недавно вышла версия 3. 4. 2 библиотеки SDL3. На странице официальной релиза доступны исходники, готовые DLL (для x86, x64, arm64), а также библиотеки для разработки под Android, MinGW и Visual Studio. . . .
SDL3 для Web (WebAssembly): Реализация движения на Box2D v3 - трение и коллизии с повёрнутыми стенами
8Observer8 20.02.2026
Содержание блога Box2D позволяет легко создать главного героя, который не проходит сквозь стены и перемещается с заданным трением о препятствия, которые можно располагать под углом, как верхнее. . .
Конвертировать закладки radiotray-ng в m3u-плейлист
damix 19.02.2026
Это можно сделать скриптом для PowerShell. Использование . \СonvertRadiotrayToM3U. ps1 <path_to_bookmarks. json> Рядом с файлом bookmarks. json появится файл bookmarks. m3u с результатом. # Check if. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru