Школа программиста

Забыли пароль?
[задачи] [курсы] [олимпиады] [регистрация]
Логин:   Пароль:    
Скрыть меню
О школе
Правила
Олимпиады
Фотоальбом
Гостевая
Форум
Архив олимпиад
Архив задач
Состояние системы
Рейтинг
Курсы
Новичкам
Работа в системе
Курсы ККДП
Дистрибутивы
Статьи
Ссылки


 
Вернуться
Тема: возникает ли ошибка при проверке если в тексте программы используется <cmath> ?? (с++)
1
  1  Беляев Сергей Николаевич, 04 ноября 2011 г. 17:49:35
      Полагаю, что ошибка также при использовании переменной y1 должна возникнуть. Это функция присутствует в библиотеке cmath и необходимо избегать использования такого имени для переменной.
  2  Чекмачев, 04 ноября 2011 г. 12:42:50
      спасибо !
  3  Кудаков Вадим, 04 ноября 2011 г. 12:42:10
      Это особенность местного компилятора.
sqrt здесь не может принимать int в качестве аргумента.
Можно sqrt на sqrtl заменить, или явно привести к double, примерно так:
l=(float) sqrt( (double) ( (x1-x2)*(x1-x2)+(y1-y2)*(y1-y2) ) );
  4  Чекмачев, 04 ноября 2011 г. 12:39:20
      ошибка компиляции , хотя у меня все ок
  5  Чекмачев, 04 ноября 2011 г. 12:38:55
      #include <iostream>
#include <cstdio>
#include <cstdlib>
#include <cmath>
using namespace std;

int main()
{
int x1,x2,y1,y2,r1,r2;
float l;
freopen("input.txt", "r", stdin);
freopen("output.txt", "w", stdout);
cin>>x1>>y1>>r1;
cin>>x2>>y2>>r2;
l=(float) sqrt((x1-x2)*(x1-x2)+(y1-y2)*(y1-y2));
if ((l==r1+r2)||(l<r1+r2)) cout<<"YES";
else cout<<"NO";
return 0;
}
  6  Кудаков Вадим, 04 ноября 2011 г. 12:37:38
      Код программы приведи, там понятнее станет.
<cmath> здесь вполне работает.
  7  Чекмачев, 04 ноября 2011 г. 11:56:16
      сам проверяю тесты все работает без проблем но стоит отправить задачу с <cmath> так compilation error
1

Чтобы оставить сообщение необходимо зарегистрироваться и авторизоваться!

Красноярский краевой Дворец пионеров, (c)2006 - 2026, ИНН 246305493507, E-mail: admin@acmp.ru