Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > C/C++ программирование > Общие вопросы C/C++
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Закрытая тема
Ваша тема закрыта, почему это могло произойти? Возможно,
Нет наработок или кода, если нужно готовое решение - создайте тему в разделе Фриланс и оплатите работу.
Название темы включает слова - "Помогите", "Нужна помощь", "Срочно", "Пожалуйста".
Название темы слишком короткое или не отражает сути вашего вопроса.
Тема исчерпала себя, помните, один вопрос - одна тема
Прочитайте правила и заново правильно создайте тему.
 
Опции темы Поиск в этой теме
Старый 07.05.2009, 16:24   #1
kostya2
Пользователь
 
Регистрация: 25.04.2009
Сообщений: 13
Восклицание -NaN при подсчетах что это??

Плиз помогите такой вопрос выдает при подсчетах "-NaN" вводите " 4 потом координаты точек
1 x
1 y
2 x
4 y
6 x
1 y
5 x
3 y
АБ=sqrt(x2-x1)^2- sqrt(y2-y1)^2
и при подсчетах выдает результат -NaN кто знает че это обьясните плизз

Код:
#include <iostream.h>


int main()
{int n;
float AB,BC,CD,DA;



cout<<"Vvedite k-vo tochek"<<"\n";
cin>>n;                                    //AB(x1,y1)
n=n*2;                                    //BC(x2,y2)
double arr[n];                           //CD(x2,y2)
                                        //DA(x2,y2)

        
                  
cout<<"Vvedite tochki X;Y"<<"\n";
for(int i=0;i<n;i++)
cin>>arr[i];  
                

AB=sqrt( ( (arr[2]-arr[0])*(arr[2]-arr[0]) )-( (arr[3]-arr[1])*(arr[3]-arr[1])));
BC=sqrt( ( (arr[4]-arr[2])*(arr[4]-arr[2]) )-( (arr[5]-arr[3])*(arr[5]-arr[3])));
CD=sqrt( ( (arr[6]-arr[4])*(arr[6]-arr[4]) )-( (arr[7]-arr[5])*(arr[7]-arr[5])));
DA=sqrt( ( (arr[0]-arr[6])*(arr[0]-arr[6]) )-( (arr[1]-arr[7])*(arr[1]-arr[7])));
cout<<"Dlinna AB"<<"\n";
cout<<AB<<"\n";
cout<<"Dlinna BC"<<"\n";
cout<<BC<<"\n";
cout<<"Dlinna CD"<<"\n";
cout<<CD<<"\n";
cout<<"Dlinna DA"<<"\n";
cout<<DA<<"\n";
}

Последний раз редактировалось MaTBeu; 07.05.2009 в 20:30.
kostya2 вне форума
Старый 07.05.2009, 16:37   #2
Sazary
В тени
Старожил
 
Аватар для Sazary
 
Регистрация: 19.12.2008
Сообщений: 5,788
По умолчанию

NaN - Not a Number
означает, что "это не число".

Может возникнуть, если вы берете корень из отрицательного числа. Возьмите аргумент sqrt по модулю (fabs)
Вполне очевидно, чтобы что-то понять, необходимо книги читать.
Не нужно плодить бессмысленных тем. Вас Поиск избавит от многих проблем.

___________________________________ ___________________________________ _______
[=Правила форума=]_____[Поиск]_____[Литература по С++]____[Литература. Паскаль]
Sazary вне форума
Старый 07.05.2009, 17:43   #3
kostya2
Пользователь
 
Регистрация: 25.04.2009
Сообщений: 13
По умолчанию

это правильно
AB=fabs( sqrt( ( (arr[2]-arr[0])*(arr[2]-arr[0]) )-( (arr[3]-arr[1])*(arr[3]-arr[1]))) );


если это правильно написано то чето всеравно выдет -NaN ((((

Последний раз редактировалось kostya2; 07.05.2009 в 17:46.
kostya2 вне форума
Старый 07.05.2009, 17:50   #4
Sazary
В тени
Старожил
 
Аватар для Sazary
 
Регистрация: 19.12.2008
Сообщений: 5,788
По умолчанию

Цитата:
AB=fabs( sqrt( ( (arr[2]-arr[0])*(arr[2]-arr[0]) )-( (arr[3]-arr[1])*(arr[3]-arr[1]))) );
И что вы сделали? Под корнем по-прежнему отрицательное число.
Вы логически подумайте, что нужно сделать.
Модуль надо брать не от результата sqrt, а от его аргумента.
Вполне очевидно, чтобы что-то понять, необходимо книги читать.
Не нужно плодить бессмысленных тем. Вас Поиск избавит от многих проблем.

___________________________________ ___________________________________ _______
[=Правила форума=]_____[Поиск]_____[Литература по С++]____[Литература. Паскаль]
Sazary вне форума
Старый 07.05.2009, 17:56   #5
kostya2
Пользователь
 
Регистрация: 25.04.2009
Сообщений: 13
По умолчанию

а сори протупил спс большое
kostya2 вне форума
Закрытая тема


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Что это? Flangini Microsoft Office Excel 2 12.04.2009 11:28
что это за ошибка? maladoy БД в Delphi 2 20.01.2009 18:57
Что это за компонент? ActiveX Помощь студентам 3 17.09.2008 17:09