Форум программистов, компьютерный форум, киберфорум
Наши страницы
C для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 5.00/5: Рейтинг темы: голосов - 5, средняя оценка - 5.00
Piii
1 / 1 / 0
Регистрация: 16.01.2014
Сообщений: 20
1

Описать тип Point — запись с полями вещественного типа X и Y (координаты точки на плоскости) — и функцию Leng

19.09.2014, 07:24. Просмотров 870. Ответов 2
Метки нет (Все метки)

Описать тип Point — запись с полями вещественного типа X и Y (координаты точки на плоскости) — и функцию Leng(A, B) вещественного типа, находящую длину отрезка AB на плоскости по координатам его концов:
http://www.cyberforum.ru/cgi-bin/latex.cgi?|AB|=\sqrt{{(A.X-B.X)}^{2}+{(A.Y-B.Y)}^{2}}
(A и B — параметры типа Point).
Используя тип Point и функцию Leng, описать тип Triangle — запись с полями A, B, C типа Point (вершины треугольника) — и функцию Perim(T) вещественного типа, находящую периметр треугольника T (T — параметр типа Triangle). С помощью этой функции найти периметры треугольников ABC, ABD, ACD, если даны координаты точек A, B, C, D.

Всю голову сломал, помогите пожалуйста.
0
Лучшие ответы (1)
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
19.09.2014, 07:24
Ответы с готовыми решениями:

Описать функцию вещественного типа, находящую длину отрезка AB на плоскости по координатам его концов
Описать функцию Leng(xA, yA, xB, yB) вещественного типа, находящую длину отрезка AB на плоскости по...

Описать тип TPoint — запись с полями вещественного типа X и Y (координаты точки на плоскости) — и функцию Leng(A, B)
Описать тип TPoint — запись с полями вещественного типа X и Y (координаты точки на...

Описать функцию Leng(xA, yA, xB, yB) вещественного типа, находящую длину отрезка AB на плоскости по координатам его концов
народ помогите решить задачки 1Описать функцию Leng(xA, yA, xB, yB) вещественного типа, находящую...

Описать функцию Leng вещественного типа, находящую длину отрезка AB на плоскости по координатам его концов
3. Описать функцию Leng(xA, yA, xB, yB) вещественного типа, находящую длину отрезка AB на плоскости...

Описать функцию Leng(xA, yA, xB, yB) вещественного типа. С обьяснением
Описать функцию Leng(xA, yA, xB, yB) вещественного типа, находящую длину отрезка AB на плоскости по...

2
kasan
Чорумфанин
342 / 342 / 320
Регистрация: 06.03.2014
Сообщений: 898
19.09.2014, 10:47 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
#include <stdio.h>
#include <math.h>
 
struct Point  // тип с полями вещественного типа
{
    double X;  // поле типа
    double Y;  
};
 
struct Triangle // тип с поляти типа Point
{
    struct Point A;  //
    struct Point B;  
    struct Point C; 
};
 
double Leng(struct Point A,struct Point B)  // функция вещ. типа, длинна отрезка
{                                           // аргументы функции типа Point
    return sqrt((A.X-B.X)*(A.X-B.X)+(A.Y-B.Y)*(A.Y-B.Y));
}
 
double Perim(struct Triangle T)  // функция вещ. типа, периметр
{                                // аргумент функции типа Triangle
    return Leng(T.A ,T.B)+Leng(T.B,T.C)+Leng(T.A,T.C);
}
 
int main()
{
    struct Point A={1,4}; //объявление и инициализация переменных типа Point
    struct Point B={1,1};
    struct Point C={5,1};
    struct Point D={-2,1};
 
    struct Triangle ABC={A,B,C}; //объявление и инициализация переменных типа Triangle
    struct Triangle ABD={A,B,D};
    struct Triangle ACD={A,C,D};
 
    printf("ABC = %.2lf\n",Perim(ABC)); // вычисление переметров
    printf("ABD = %.2lf\n",Perim(ABD));
    printf("ACD = %.2lf\n",Perim(ACD));
 
    return 0;
}
1
Vtulhu
423 / 377 / 200
Регистрация: 12.08.2011
Сообщений: 1,610
20.09.2014, 13:48 3
Лучший ответ Сообщение было отмечено Piii как решение

Решение

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 <math.h>       // hypot
#include <stdio.h>      // printf
 
typedef struct point {
    double x;
    double y;
} Point;
 
void Point_Init(Point* const this, const double x, const double y)
{
    this->x = x;
    this->y = y;
}
 
double Point_Distance(const Point* const this, const Point* const p)
{
    return hypot(this->x - p->x, this->y - p->y);
}
 
typedef struct triangle {
    Point a;
    Point b;
    Point c;
} Triangle;
 
void Triangle_Init(Triangle* const this, const Point* const a,
                                         const Point* const b,
                                         const Point* const c)
{
    this->a = *a;
    this->b = *b;
    this->c = *c;
}
 
double Triangle_Perimeter(const Triangle* const this)
{
    return Point_Distance(&(this->a), &(this->b))
         + Point_Distance(&(this->b), &(this->c))
         + Point_Distance(&(this->c), &(this->a));
}
 
int main(void)
{
    Point a, b, c, d;
    Point_Init(&a, 1.0, 4.0);
    Point_Init(&b, 1.0, 1.0);
    Point_Init(&c, 5.0, 4.0);
    Point_Init(&d, -2.0, 1.0);
 
    Triangle abc, abd, acd;
    Triangle_Init(&abc, &a, &b, &c);
    Triangle_Init(&abd, &a, &b, &d);
    Triangle_Init(&acd, &a, &c, &d);
 
    printf("Perimeter ABC = %f\nPerimeter ABD = %f\nPerimeter ACD = %f\n",
           Triangle_Perimeter(&abc),
           Triangle_Perimeter(&abd),
           Triangle_Perimeter(&acd));
    return 0;
}
1
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
20.09.2014, 13:48

Описать тип TDate — запись с полями целого типа Day, Month и Year
Помогите пожалуйста решить задачу. Описать тип TDate - запись с полями целого типа Day ( день),...

Описать функцию вещественного типа, находящую длину отрезка AB на плоскости по координатам его концов
Добрый вечер, работу нужно выполнить в лазариусе, подразделения такого не нашла, поэтому пишу сюда...

Описать тип TDate - запись с полями целого типа Day (день), Month (месяц) и Year (год)
Пожалуйстаю, помогите с задачей! Описать тип TDate - запись с полями целого типа Day (день), Month...


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

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

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