Форум программистов, компьютерный форум, киберфорум
Наши страницы

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 24, средняя оценка - 5.00
W0ks
0 / 0 / 0
Регистрация: 11.12.2011
Сообщений: 75
#1

Определить будут ли заданные три точки расположены на одной прямой - C++

21.02.2012, 20:30. Просмотров 3485. Ответов 8
Метки нет (Все метки)

1) f(x){0; если x<=1
x+6 В противном случае
2)Даны действительные числа x и y, не равные друг другу. Меньшее из этих чисел заменить их полусуммой, а большее – их удвоенным произведением.
3)Даны три точки А(x1, y1), В(x2, y2), С(x3, y3). Определить будут ли они расположены на одной прямой. Если нет, то вычислить угол АВС.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
21.02.2012, 20:30
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Определить будут ли заданные три точки расположены на одной прямой (C++):

Определить, будут ли точки расположены на одной прямой - C++
Помогите пожалуйста надо срочно решить эти задачки: 1. Дано натуральное число n. Среди чисел 1, ..., n найти такие, запись которых...

Определить расположены ли точки на одной прямой - C++
Даны три точки А(x1, y1), В(x2, y2), С(x3, y3). Определить будут ли они расположены на одной прямой. Если нет, то вычислить угол АВС.

Определить лежат ли три точки на одной прямой - C++
Добро времени суток уважаемые программисты.Суть такова.Нужно,чтобы я вводил координаты,а программа выдавала мне лежат ли они на одной...

Три точки заданы координатами. Определить, лежат ли они на одной прямой - C++
Задачи довольно простые. Я проста не разбираюсь в этом языке программирование. Проста срочно нужны решение. Думаю дальнейшем его...

Определить, лежат ли три точки A, B, C на одной прямой. Если нет, найти угол ABC - C++
Даны три точки A(x_1, y_1), \, B(x_2, y_2), \, C(x_3, y_3) Определить будут ли они расположены на одной прямой. Если нет, то...

На оси ОХ расположены три точки a, b, c. Определить какая из точек b, c расположена ближе к а. - C++
На оси ОХ расположены три точки a, b, c. Определить какая из точек b, c расположена ближе к а.

8
W0ks
0 / 0 / 0
Регистрация: 11.12.2011
Сообщений: 75
28.02.2012, 20:19  [ТС] #2
Поможет кто? опять же я тут первое сделал второе недоделал с по примеру друга но все равно ошибки третье вобще идей нет:\
0
Байт
Диссидент
Эксперт C
16847 / 11112 / 1745
Регистрация: 24.12.2010
Сообщений: 21,835
28.02.2012, 20:40 #3
Цитата Сообщение от W0ks Посмотреть сообщение
Поможет кто? опять же я тут первое сделал второе
недоделал
с по примеру друга но все равно ошибки третье вобще идей нет:\
По правилам полагается показать свою работу, даже если она неудачна.
Идея третьей - вспомни про скалярные произведения и косинусы
0
W0ks
0 / 0 / 0
Регистрация: 11.12.2011
Сообщений: 75
28.02.2012, 20:42  [ТС] #4
Завтра тогда на компе найду другом покажу чо сделал

Добавлено через 26 секунд
Тут задания просто по 8строк думал не составит труда.
0
Xind
275 / 148 / 7
Регистрация: 05.11.2011
Сообщений: 425
Записей в блоге: 1
28.02.2012, 21:57 #5
Цитата Сообщение от W0ks Посмотреть сообщение
3)Даны три точки А(x1, y1), В(x2, y2), С(x3, y3). Определить будут ли они расположены на одной прямой. Если нет, то вычислить угол АВС.
Ищи по форуму была уже такая задача.

edit:
Вот Точки на плоскости.
осталось подогнать под свою
0
Roof
154 / 154 / 10
Регистрация: 03.11.2010
Сообщений: 393
28.02.2012, 23:13 #6
Третья задача мне стала интересна, вот мое решение:
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
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
#include <iostream>
#include <cmath>
using namespace std;
 
// количество точек
#define CNT 3
 
// структура для удобства хранения координат точки
struct point_t {
    int x;
    int y;
};
 
// проверка на принадлежность трех точек одной прямой
bool is_straight_line( point_t[ CNT ] );
// вычисление длин линий треугольника
double* calc_length_lines( point_t[ CNT ] );
// вычисление угла ABC
double calc_angle_abc( double* );
 
int main() {
    struct point_t array_points[ CNT ];
    unsigned i = 0;
 
    while ( i < CNT ) {
        cout << "Введите x и y для точки # " << i + 1 << endl;
        cin >> array_points[ i ].x >> array_points[ i ].y;
        ++i;
    }
 
    if ( is_straight_line( array_points ) )
        cout << "Данные три точки лежат на одной прямой" << endl;
    else {
        cout << "Данные три точки НЕ лежат на одной прямой" << endl;
        double *array_length = calc_length_lines( array_points );
        cout << "Угол ABC в градусах = " << calc_angle_abc( array_length ) << endl;
 
        delete[] array_length;
    }
 
    return 0;
}
 
// проверяем равенство ( x1 - x3 ) * ( y2 - y3 ) - ( x2 - x3 ) * ( y1 - y3 ) == 0
bool is_straight_line( point_t array[ CNT ] ) {
    return ( ( array[ 0 ].x - array[ 2 ].x ) * ( array[ 1 ].y - array[ 2 ].y )
            - ( array[ 1 ].x - array[ 2 ].x ) * ( array[ 0 ].y - array[ 2 ].y ) )
            == 0;
 
}
// определяем длины сторон треугольника по формуле
// length = sqrt( ( x1 - x2 )^2 + ( y1 - y2 )^2 )
double* calc_length_lines( point_t array[ CNT ] ) {
    double* array_result = new double[ CNT ];
 
    for ( unsigned i = 0; i < CNT; ++i ) {
 
        unsigned j;
        if ( i == CNT - 1 )
            j = 0;
        else
            j = i + 1;
 
        array_result[ i ] = sqrt( pow( array[ i ].x - array[ j ].x, 2.0 )
                + pow( array[ i ].y - array[ j ].y, 2.0 ) );
    }
    return array_result;
}
 
// тут мы используем теорему косинусов
// b^2 = a^2 + c^2 - 2  * a * c * cos( betta )
// cos( betta ) = ( a^2 + c^2 - b^2 ) / 2 * a * c
double calc_angle_abc( double* array ) {
    double temp = ( array[ 1 ] * array[ 1 ] ) + ( array[ 0 ] * array[ 0 ] )
            - ( array[ 2 ] * array[ 2 ] );
    return acos( temp / ( 2 * array[ 1 ] * array[ 0 ] ) ) * 180.0 / M_PI;
}
Консоль
Введите x и y для точки # 1
-2 -2
Введите x и y для точки # 2
3 3
Введите x и y для точки # 3
-5 -5
Данные три точки лежат на одной прямой


Еще консоль
Введите x и y для точки # 1
0 0
Введите x и y для точки # 2
-5 -5
Введите x и y для точки # 3
3 4
Данные три точки НЕ лежат на одной прямой
Угол ABC в градусах = 3.36646
2
Kateryna1111
1 / 1 / 0
Регистрация: 10.07.2015
Сообщений: 128
19.07.2015, 13:14 #7
Даны три точки A(x1,y1), B(x2,y2) и C(x3,y3). Определить, будут ли они расположены на одной прямой. Если нет, то вычислить угол  ABC.
Пожалуйста в Делфи, кто может?Срочно-срочно
0
Croessmah
Пришел
Эксперт CЭксперт С++
13565 / 7716 / 873
Регистрация: 27.09.2012
Сообщений: 18,998
Записей в блоге: 3
Завершенные тесты: 1
19.07.2015, 13:16 #8
Пожалуйста в Делфи
Это очень весомая причина, чтобы поднять тему трехлетней давности в разделе C++
0
Kateryna1111
1 / 1 / 0
Регистрация: 10.07.2015
Сообщений: 128
19.07.2015, 13:38 #9
пожаалуйтса,кто-нибудь


Добавлено через 5 минут
Croessmah, ооочень нужно
0
19.07.2015, 13:38
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
19.07.2015, 13:38
Привет! Вот еще темы с ответами:

Выбрать такие три точки из множества, не лежащие на одной прямой, которые составляют треугольник min площади - C++
Помогите сделать прогу:С помощью графики отобразить на экране дисплея ход решения следующей задачи: из заданного на плоскости множества...

Определить, лежат ли точки на одной прямой - C++
ВСЕМ ПРИВЕТ!!!!!!!!ПОМОГИТЕ КТО-НИБУДЬ СПРАВИТЬСЯ С ЗАДАЧЕЙ НА С++.рЕШИТЕ ПОЖАЛУЙСТА ВОТ УСЛОВИЕ- &quot;Заданы три точки на плоскости: M с...

Определить минимальное подмножество точек, после удаления которых останутся точки лежащие на одной прямой - C++
Просьба по сути повторяет аналогичную из раздела о Паскале. задано множество точек на плоскости,не лежащих на одной прямой.Определить...

Написать программу, определяющую наклон прямой, проходящей через две заданные точки - C++
пожалуйста помогите с составлением кода 5.Напишите программу, которая после получения значений координат двух точек на плоскости ...


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

Или воспользуйтесь поиском по форуму:
9
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.