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

Выбрать треугольники, у которых хотя бы одна вершина совпадает с одной из вершин первого треугольника - C++

Восстановить пароль Регистрация
 
Ol'ka07
0 / 0 / 0
Регистрация: 07.06.2011
Сообщений: 6
10.12.2011, 11:57     Выбрать треугольники, у которых хотя бы одна вершина совпадает с одной из вершин первого треугольника #1
В файле записана информация об N треугольниках, о каждом: координаты его вершин. Выбрать треугольники, у которых хотя бы одна вершина совпадает с одной из вершин первого треугольника, отсортировать их по возрастанию параметров, разместить в новом файле. Считать, что первый треугольник подлежит выбору. в с++

Добавлено через 1 час 34 минуты
ээээх. видимо никто не может помочь(((
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
10.12.2011, 11:57     Выбрать треугольники, у которых хотя бы одна вершина совпадает с одной из вершин первого треугольника
Посмотрите здесь:

Удалить все строки, в которых есть хотя бы одна цифра C++
Два треугольника заданы координатами своих вершин A,B,C. Вычислить площадь треугольника и определить какой треугольник имеет большую площадь C++
Определить, лежит ли заданная точка на одной из сторон треугольника, заданного координатами своих вершин C++
C++ Матрица C(m;m) состоит из нулей и единиц. Найти в ней номера (индексы) хотя бы одной строки и хотя бы одного столбца
C++ Напишите программу для нахождения самой короткой стороны треугольника с вершина-ми A (X1, Y1), B (X2, Y2), C (X3, Y3)
C++ Определить, лежит ли заданная точка на одной из сторон треугольника, заданного координатами своих вершин
C++ Удалить из массива числа – палиндромы, в которых есть хотя бы одна нечетная цифра
Заданы координаты вершин треугольника. Вывести их в порядке обхода треугольника по часовой стрелке C++

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
talis
 Аватар для talis
789 / 541 / 37
Регистрация: 11.05.2010
Сообщений: 1,298
Записей в блоге: 1
10.12.2011, 13:36     Выбрать треугольники, у которых хотя бы одна вершина совпадает с одной из вершин первого треугольника #2
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
#include <iostream>
#include <fstream>
#include <iterator>
#include <list>
#include <algorithm>
 
struct triangle
{
    double a, b, c;
 
    bool no_same_verteces( const triangle &other ) const
    {
        return a != other.a && a != other.b && a != other.c &&
               b != other.a && b != other.b && b != other.c &&
               c != other.a && c != other.b && c != other.c;
    }
};
 
std::istream & operator>>( std::istream &is, triangle &tri )
{
    is >> tri.a >> tri.b >> tri.c;
    return is;
}
 
std::ostream & operator<<( std::ostream &os, const triangle &tri )
{
    os << tri.a << ' ' << tri.b << ' ' << tri.c << '\n';
    return os;
}
 
int main( )
{
    std::ifstream fin  ( "in.txt" );
    std::ofstream fout ( "out.txt" );
 
    if( !fin.is_open() || !fout.is_open() )
    {
        fin.close();
        fout.close();
        return -1;
    }
 
    std::list<triangle> tri_list;
 
    std::copy( std::istream_iterator<triangle>( fin ),
               std::istream_iterator<triangle>(),
               std::back_inserter( tri_list ) );
              
    tri_list.remove_if( 
         [&]( triangle & tri ) { 
                return tri.no_same_verteces( *( tri_list.begin() ) );
         } 
    );
    
    std::copy( tri_list.begin(),
               tri_list.end(),
               std::ostream_iterator<triangle>( fout ) );
 
    return 0;
}
in.txt:
Код
1     2   3
4     5   6
3     4   5
2     4   8
8     5   6
1     2   1
1     4   5
5     5   5 
8    94   2
5.5 4.2 7.8
1.8   3 4.6
Yandex
Объявления
10.12.2011, 13:36     Выбрать треугольники, у которых хотя бы одна вершина совпадает с одной из вершин первого треугольника
Ответ Создать тему
Опции темы

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