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

Пересечение двух кругов - C++

Восстановить пароль Регистрация
 
florgas
 Аватар для florgas
5 / 4 / 0
Регистрация: 28.09.2010
Сообщений: 339
14.01.2013, 17:40     Пересечение двух кругов #1
Привет.
Есть входной файл такого формата:
1 1 1
4 4 1
Первый ряд цифр относится к первому кругу, 1 - координата по х, 1 - координата по y, 1 - радиус окружности.
Второй ряд цифр относится ко второму кругу, 4 - координа по х, 4 - координата по y, 1 - радиус окружности.

Необходимой выяснить, пересекаются ли окружности и вывести ответ в тестовый файл "YES" или "NO". Написал программу. На моих тестах она работает, а при проверке на сайте "Wrong Answer".

Прошу помочь найти ошибку.

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
#include <iostream>
#include <fstream>
 
using namespace std;
 
int a1,b1,r1,a2,b2,r2;
 
int main(){
    ifstream in("INPUT.TXT");
    in >> a1;
    in >> b1;
    in >> r1;
    in >> a2;
    in >> b2;
    in >> r2;
    in.close();
    
    if (abs(a1-a2) <= r1+r2 && abs(b1-b2) <= r1+r2){
        ofstream out("OUTPUT.TXT");
        out << "YES";
        out.close();
    }
    else {
        ofstream out("OUTPUT.TXT");
        out << "NO";
        out.close();
    }
    return 0;
}
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Nixy
ComfyMobile
 Аватар для Nixy
399 / 280 / 8
Регистрация: 24.07.2012
Сообщений: 916
14.01.2013, 18:15     Пересечение двух кругов #2
такая тема уже была почему не воспользоватся поиском Найти координаты точек пересечения двух кругов
Somebody
2770 / 1583 / 141
Регистрация: 03.12.2007
Сообщений: 4,139
Завершенные тесты: 1
14.01.2013, 18:25     Пересечение двух кругов #3
Сначала определись, пересечение чего искать - окружностей или кругов. Например, окружности с центром в одной точке и разными радиусами не пересекаются, а круги пересекаются.

Добавлено через 4 минуты
Цитата Сообщение от Nixy Посмотреть сообщение
такая тема уже была почему не воспользоватся поиском Найти координаты точек пересечения двух кругов
Если я правильно понял, там ищутся только точки с целочисленными координатами. Круги могут пересекаться в других точках.
Nixy
ComfyMobile
 Аватар для Nixy
399 / 280 / 8
Регистрация: 24.07.2012
Сообщений: 916
14.01.2013, 18:33     Пересечение двух кругов #4
в каких других если координаты и радиусы у ТСа тоже целочисленные

Добавлено через 43 секунды
просто нужно не искать все а при первом совпадении написать YES
florgas
 Аватар для florgas
5 / 4 / 0
Регистрация: 28.09.2010
Сообщений: 339
14.01.2013, 18:43  [ТС]     Пересечение двух кругов #5
Проблема уже решена.
Спасибо.
Somebody
2770 / 1583 / 141
Регистрация: 03.12.2007
Сообщений: 4,139
Завершенные тесты: 1
14.01.2013, 20:15     Пересечение двух кругов #6
Цитата Сообщение от Nixy Посмотреть сообщение
в каких других если координаты и радиусы у ТСа тоже целочисленные
Ну, если под словом "цифра" на самом деле имелась в виду цифра, то да, а иначе это просто ещё одна ошибка в коде...
Yandex
Объявления
14.01.2013, 20:15     Пересечение двух кругов
Ответ Создать тему
Опции темы

Текущее время: 03:19. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru