Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
 
Рейтинг 4.93/30: Рейтинг темы: голосов - 30, средняя оценка - 4.93
0 / 0 / 0
Регистрация: 06.10.2010
Сообщений: 35
1

Составить программу определения возможности построения из заданных отрезков параллелограмма

06.10.2010, 16:06. Показов 6052. Ответов 28
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Помогите составить программу
Даны произвольные отрезки N,M,L,K.
Составить программу определения возможности построения из заданных отрезков параллелограмма и печати соответствующего сообщения
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
06.10.2010, 16:06
Ответы с готовыми решениями:

Даны произвольные отрезки a, b, c и d. Составить программу определения возможности построения из них параллелограмма
Даны произвольные отрезки a, b, c и d. Составить программу определения возможности построения из...

Разработка приложения для проверки построения треугольника из заданных отрезков
Помогите пожайлуста! у меня проблемы с проектом.моя программа "разработка приложения для проверки...

Составить программу определения значений заданных параметров одномерного массива
Составить программу определения значений указанных нижу параметров одномерного массива:...

Определить какой вид четырехугольника можно составить из заданных отрезков
Даны длины четырех отрезков. Определить какой вид четырехугольника можно составить из этих...

28
Эксперт С++
5055 / 3115 / 271
Регистрация: 11.11.2009
Сообщений: 7,044
06.10.2010, 16:15 2
В чём сложность?
0
0 / 0 / 0
Регистрация: 06.10.2010
Сообщений: 35
06.10.2010, 16:24  [ТС] 3
Сложность в том,что у меня куча подобных задач, и нужен правильный код хотя бы одной,чтобы по примеру этой написать остальные
0
Эксперт С++
5055 / 3115 / 271
Регистрация: 11.11.2009
Сообщений: 7,044
06.10.2010, 16:26 4
Как заданы отрезки? Координатами точек?
0
0 / 0 / 0
Регистрация: 06.10.2010
Сообщений: 35
06.10.2010, 16:27  [ТС] 5
Никак,вероятно произвольно...главное надо использовать оператор if
0
72 / 71 / 8
Регистрация: 04.08.2010
Сообщений: 434
06.10.2010, 16:29 6
сложно посчитать длину отрезков и если они попарно равны, то можно построить......
0
Эксперт С++
5055 / 3115 / 271
Регистрация: 11.11.2009
Сообщений: 7,044
06.10.2010, 16:30 7
С таким условием кода не будет. Чтобы определить, является ли четырёхугольник параллелограммом, нужно проверить определённые свойства. Чтобы проверить свойства, надо знать чуть больше, чем "никак, вероятно произвольно". Ладно, примем, что они заданы координатами вершин.
0
72 / 71 / 8
Регистрация: 04.08.2010
Сообщений: 434
06.10.2010, 16:31 8
Цитата Сообщение от pushka Посмотреть сообщение
Никак,вероятно произвольно...главное надо использовать оператор if
Задача:Произвольно заданы 4 отрезка.Можно ли построить параллелограмм
Решение:или можно,или нет.

Какое условие такой и ответ
Формат исходных данных нужен...

Может отрезки в попугаях заданы
0
0 / 0 / 0
Регистрация: 06.10.2010
Сообщений: 35
06.10.2010, 16:35  [ТС] 9
Ничего не могу сказать! это все условия
0
72 / 71 / 8
Регистрация: 04.08.2010
Сообщений: 434
06.10.2010, 16:43 10
Без опеределения данных об отрезках результата не будет
(координатами они заданы или длинами сразу.....)
0
Эксперт С++
5055 / 3115 / 271
Регистрация: 11.11.2009
Сообщений: 7,044
06.10.2010, 16:44 11
Из длин мы ничего не вынесем. Кроме того, равны они попарно или нет. Но этого недостаточно для определения, является фигура параллелограммом или нет.
0
72 / 71 / 8
Регистрация: 04.08.2010
Сообщений: 434
06.10.2010, 16:47 12
Цитата Сообщение от silent_1991 Посмотреть сообщение
Из длин мы ничего не вынесем. Кроме того, равны они попарно или нет. Но этого недостаточно для определения, является фигура параллелограммом или нет.
А в условии нет описания того, что это фигура.
Есть 4 отрезка, и вопрос можно ли сделать параллелограмм, не имея координат - решает все длины отрезков

Добавлено через 1 минуту
А по сути, условие слишком неопределенное....
Вот уже 2 человека и 2 видения решения...
0
Эксперт С++
5055 / 3115 / 271
Регистрация: 11.11.2009
Сообщений: 7,044
06.10.2010, 16:50 13
LineStown,
Я думаю всё-таки, даны координаты точек пересечения, от этого и пляшу... А дальше пусть ТС уже разбирается.
0
0 / 0 / 0
Регистрация: 06.10.2010
Сообщений: 35
06.10.2010, 16:57  [ТС] 14
Ёлки-иголки,ну не я же составляла условия.
Представьте,вам дали задание,без лишних о'бяснений...вот я и мучаюсь,ищу пример,к вам обратилась!
0
Эксперт С++
5055 / 3115 / 271
Регистрация: 11.11.2009
Сообщений: 7,044
06.10.2010, 16:58 15
Ну так мы изо всех сил пытаемся помочь! Так что голос повышать не надо
0
0 / 0 / 0
Регистрация: 06.10.2010
Сообщений: 35
06.10.2010, 17:35  [ТС] 16
Ну,вот недопонимание...это крик измученной души,спасибо ОГРОМНОЕ за желание помочь!

Добавлено через 32 минуты
по признакам параллелограмма(6)!?
0
Эксперт С++
5055 / 3115 / 271
Регистрация: 11.11.2009
Сообщений: 7,044
06.10.2010, 17:51 17
Чувствую, набыдлокодил ппц... Что-то не идёт...

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
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
#include <stdio.h>
#include <math.h>
 
int main()
{
    double x1, y1;
    double x2, y2;
    double x3, y3;
    double x4, y4;
    double lengthL, lengthR;
    double lengthU, lengthD;
    double k1, k2;
    int key1, key2;
 
    printf("\nLower left corner:\n");
    printf("Input x1: ");
    scanf("%lf", &x4);
    printf("Input y1: ");
    scanf("%lf", &y4);
 
    printf("Upper left corner:\n");
    printf("Input x2: ");
    scanf("%lf", &x1);
    printf("Input y2: ");
    scanf("%lf", &y1);
 
    printf("\nUpper right corner:\n");
    printf("Input x3: ");
    scanf("%lf", &x2);
    printf("Input y3: ");
    scanf("%lf", &y2);
 
    printf("\nLower right corner:\n");
    printf("Input x4: ");
    scanf("%lf", &x3);
    printf("Input y4: ");
    scanf("%lf", &y3);
 
    lengthL = sqrt(pow(x1 - x4, 2.0) + pow(y1 - y4, 2.0));
    lengthR = sqrt(pow(x2 - x3, 2.0) + pow(y2 - y3, 2.0));
    lengthU = sqrt(pow(x1 - x2, 2.0) + pow(y1 - y2, 2.0));
    lengthD = sqrt(pow(x3 - x4, 2.0) + pow(y3 - y4, 2.0));
 
    if (lengthL != lengthR || lengthU != lengthD)
    {
        printf("Figure is not a parallelogram!");
        getch();
        return 0;
    }
 
    key1 = 0;
    key2 = 0;
    k1 = 0;
    k2 = 0;
 
    if (x1 == x4)
        key1 = 1;
    else
        k1 = (y4 - y1) / (x4 - x1);
 
    if (x2 == x3)
        key2 = 1;
    else
        k2 = (y3 - y2) / (x3 - x2);
 
    if (key1 != key2 || k1 != k2)
    {
        printf("Figure is not a parallelogram!");
        getch();
        return 0;
    }
 
    key1 = 0;
    key2 = 0;
    k1 = 0;
    k2 = 0;
 
    if (x1 == x2)
        key1 = 1;
    else
        k1 = (y2 - y1) / (x2 - x1);
 
    if (x3 == x4)
        key2 = 1;
    else
        k2 = (y4 - y3) / (x4 - x3);
 
    if (key1 != key2 || k1 != k2)
    {
        printf("Figure is not a parallelogram!");
        getch();
        return 0;
    }
 
    printf("Figure is a parallelogram!");
    getch();
    return 0;
}
0
0 / 0 / 0
Регистрация: 06.10.2010
Сообщений: 35
06.10.2010, 18:02  [ТС] 18
O-O, ну ничего себе!!! я,конечно, всё понимаю но, по-моему для второго урока по С это перебор!
НЕужели никак нельзя решить эту программу попроще!?

Добавлено через 3 минуты
извиняюсь,сейчас на мат.анализ схожу,потом попробую понять ваш шифр! Огромное спасибо!
0
Эксперт С++
5055 / 3115 / 271
Регистрация: 11.11.2009
Сообщений: 7,044
06.10.2010, 18:08 19
Уж проще вряд ли можно... Это тупой набор переменных и вычислений. Основной размер кода из-за математического, а не программного решения.
0
Эксперт С++
3225 / 1752 / 436
Регистрация: 03.05.2010
Сообщений: 3,867
06.10.2010, 19:02 20
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
//////////////////////////////////////////////////////////////////////////////////////
//  Даны произвольные отрезки N,M,L,K.
//  Составить программу определения возможности построения 
//  из заданных отрезков параллелограмма и печати соответствующего сообщения 
//////////////////////////////////////////////////////////////////////////////////////
#include <iostream>
//////////////////////////////////////////////////////////////////////////////////////
bool  are_parallelogram_sides(double* V)
{
    if(V[0] == V[1])
    {
        return V[2] == V[3];
    }
    if(V[0] == V[2])
    {
        return V[1] == V[3];
    }
    if(V[0] == V[3])
    {
        return V[1] == V[2];
    }  
    return false;    
}
//////////////////////////////////////////////////////////////////////////////////////
int main()
{
    std::locale::global(std::locale(""));
    std::cout << "Введите длины отрезков > 0:"
              << std::endl;
    
    double  segments_val[4] = {0};
    char segment_name = 'K';
    for(int i = 0; i < 4; ++i, ++segment_name)
    {
        do
        {
            std::cout << segment_name
                      << " = ";
            std::cin >> segments_val[i];        
        }while(segments_val[i] <= 0);        
    }
    std::cout << "Из заданных отрезков "
              << (are_parallelogram_sides(segments_val) ? "можно" : "нельзя")
              << " построить параллелограмм."
              << std::endl;
}
1
06.10.2010, 19:02
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
06.10.2010, 19:02
Помогаю со студенческими работами здесь

Составить алгоритм определения площади участка, ограниченного замкнутой ломаной, составленной из отрезков ед. длины
Всем привет, необходимо составить алгоритм определения площади участка, ограниченного замкнутой...

Даны длины трех отрезков. Проверить, можно ли из заданных отрезков построить прямоугольный треугольник.
Даны длины трех отрезков. Проверить, можно ли из заданных отрезков построить прямоугольный...

Даны длины трех отрезков. Проверить, можно ли из заданных отрезков построить прямоугольный треугольник
Даны длины трех отрезков. Проверить, можно ли из заданных отрезков построить прямоугольный...

Составить программу,используя оператор Repeat.Составить программу для определения N!-M!,где N!=1*2*3...n.
Составить программу,используя оператор Repeat.Составить программу для определения N!-M!,где...


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

Или воспользуйтесь поиском по форуму:
20
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru