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

Определить координаты вершины треугольника - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Как скомпилировать программу на Mac OS http://www.cyberforum.ru/cpp-beginners/thread209094.html
Например, написал я программу на Си в TextEdit, теперь мне нужно её скомпилировать. Я установил gcc 4.2 который идёт в комплекте с xcode. Как мне теперь скомпилировать написанную программу?
C++ Найти число в двоичной записи которого максимальное число единиц Среди простых чисел ,не превосходящих N ,найти такое ,в двоичной записи которого максимальное число единиц. Уважаемые форумчане помогите с кодом, буду очень благодарен. http://www.cyberforum.ru/cpp-beginners/thread209088.html
C++ Найти непрерывные участки, на которых сумма элементов равна 100
Найти непрерывные участки, на которых сумма элементов равна 100 Что-то я тут намудрил... Помогите поправить.. #include "stdafx.h" #include <iostream> #include <ctime> using namespace std;...
как в файле вывести все в стречку и не в столбик ?!!?! C++
здравствуйте помогите с выводом в файл обычный "txt."... вот мой код и что делает программа "Умножить каждое четное число на первое отрицательное число. Добавить к каждому числу половину...
C++ Нахождение определителя матрицы n-го порядка без рекурсии http://www.cyberforum.ru/cpp-beginners/thread209084.html
Здравствуйте, мне на дом дали задачу на С++ написать программу которая находит определитель матрицы n го порядка, я довольно быстро её реализовал рекурсивным методом, а потом задумался "а можно ли...
C++ Вывод символа слева и его соответствующего кода ASCII справа Собственно вопрос как это сделать? подробнее

Показать сообщение отдельно
accept
4828 / 3249 / 165
Регистрация: 10.12.2008
Сообщений: 10,569
27.12.2010, 04:38
Цитата Сообщение от accept
при любой точке B координаты точки C будут одними из:
С(0; 1) || С(1; 0)
а площадь берётся наименьшая из двух
и вот пример

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
#include <stdio.h>
 
struct point {
    int x, y;
};
 
double func(struct point *c, const struct point *b);
 
int main(void)
{
    struct point b, c;
    double minarea;
    
    printf("input B(x, y): ");
    fflush(stdout);
    
    if (scanf("%d ,%d%*c", &b.x, &b.y) != 2) {
        fprintf(stderr, "error: input" "\n");
        return 1;
    }
    
    minarea = func(&c, &b);
    printf("minimal area = %.1f, C(%d; %d)" "\n", minarea, c.x, c.y);
    
    return 0;
}
 
double area_triangle(const struct point *a,
                     const struct point *b,
                     const struct point *c);
 
double func(struct point *c, const struct point *b)
{
    double s1, s2, area;
    struct point c1 = { 1, 0 }, c2 = { 0, 1 };
    struct point a = { 0, 0 };
    
    s1 = area_triangle(&a, b, &c1);
    s2 = area_triangle(&a, b, &c2);
    if (s1 >= s2 || s1 == 0.0)
        area = s2 , *c = c2;
    else
        area = s1 , *c = c1;
    return area; 
}
 
double area_triangle(const struct point *a,
                     const struct point *b,
                     const struct point *c)
{
    double ar = 0.5 * (
        a->x * b->y - a->y * b->x +
        b->x * c->y - b->y * c->x +
        c->x * a->y - c->y * a->x
    );
    return ar < 0 ? ar * -1.0 : ar;
}
Код
[guest@localhost tests]$ ./t
input B(x, y): -5,-6
minimal area = 2.5, C(0; 1)
[guest@localhost tests]$ ./t
input B(x, y): -6, -5
minimal area = 2.5, C(1; 0)
[guest@localhost tests]$

естественно там больше точек C и они не только еденицу могут содержать
например B(-5; -5), C(-3; -2)
0
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.