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

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

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

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

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

Помогите составить программу
Даны произвольные отрезки N,M,L,K.
Составить программу определения возможности построения из заданных отрезков параллелограмма и печати соответствующего сообщения
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
06.10.2010, 16:06     Составить программу определения возможности построения из заданных отрезков параллелограмма
Посмотрите здесь:
C++ Составить программу построения 5 прямоугольников
Составить программу построения песочных часов C++
C++ Составить программу построения графика линейной функции
Составить программу для построения графика функции Эйлера C++
Определить возможность построения из отрезков треугольника C++
C++ Составить программу для подсчета непарных элементов двумерной матрицы В, (по возможности) используя функцию обработки массива.
Составить программу для определения типа треугольника C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
pushka
0 / 0 / 0
Регистрация: 06.10.2010
Сообщений: 35
06.10.2010, 17:35  [ТС]     Составить программу определения возможности построения из заданных отрезков параллелограмма #16
Ну,вот недопонимание...это крик измученной души,спасибо ОГРОМНОЕ за желание помочь!

Добавлено через 32 минуты
по признакам параллелограмма(6)!?
silent_1991
Эксперт С++
4961 / 3037 / 149
Регистрация: 11.11.2009
Сообщений: 7,027
Завершенные тесты: 1
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;
}
pushka
0 / 0 / 0
Регистрация: 06.10.2010
Сообщений: 35
06.10.2010, 18:02  [ТС]     Составить программу определения возможности построения из заданных отрезков параллелограмма #18
O-O, ну ничего себе!!! я,конечно, всё понимаю но, по-моему для второго урока по С это перебор!
НЕужели никак нельзя решить эту программу попроще!?

Добавлено через 3 минуты
извиняюсь,сейчас на мат.анализ схожу,потом попробую понять ваш шифр! Огромное спасибо!
silent_1991
Эксперт С++
4961 / 3037 / 149
Регистрация: 11.11.2009
Сообщений: 7,027
Завершенные тесты: 1
06.10.2010, 18:08     Составить программу определения возможности построения из заданных отрезков параллелограмма #19
Уж проще вряд ли можно... Это тупой набор переменных и вычислений. Основной размер кода из-за математического, а не программного решения.
Mr.X
Эксперт С++
3048 / 1693 / 265
Регистрация: 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;
}
silent_1991
Эксперт С++
4961 / 3037 / 149
Регистрация: 11.11.2009
Сообщений: 7,027
Завершенные тесты: 1
06.10.2010, 19:40     Составить программу определения возможности построения из заданных отрезков параллелограмма #21
Я тупанул, конечно, для определения, можно ли построить параллелограмм из отрезков, достаточно знать только их длину... Тогда можно мой код сжечь)))
pushka
0 / 0 / 0
Регистрация: 06.10.2010
Сообщений: 35
07.10.2010, 10:23  [ТС]     Составить программу определения возможности построения из заданных отрезков параллелограмма #22
Люди,ЧЕЛОВЕКИ! СПАСИБО ВАМ ОГРОМНОЕ!
НА учёбе аврал! ничего не успеваю!
Если бы не ВЫ......

Добавлено через 13 часов 8 минут
Мильон извинений, суть кода понятна,но как его правильно написать в С
(свою чепуху не выкладываю...стыдно..)
silent_1991
Эксперт С++
4961 / 3037 / 149
Регистрация: 11.11.2009
Сообщений: 7,027
Завершенные тесты: 1
07.10.2010, 13:51     Составить программу определения возможности построения из заданных отрезков параллелограмма #23
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
#include <stdio.h>
 
int check(double *segment);
 
int main()
{
    double  segments[4];
    char ch[4] = {'N', 'M', 'L', 'K'};
    int i;
 
    printf("Enter the lengths:\n");
 
    for (i = 0; i < 4; i++)
    {
        printf("%c: ", ch[i]);
        scanf("%lf", &segments[i]);
    }
 
    printf("From these segments can ");
 
    if (check(segments) == 0)
        printf("not ");
 
    printf("build a parallelogram");
 
    getch();
    return 0;
}
 
int check(double *segment)
{
    if(segment[0] == segment[1])
        return (segment[2] == segment[3]) ? 1 : 0;
 
    if(segment[0] == segment[2])
        return (segment[1] == segment[3]) ? 1 : 0;
 
    if(segment[0] == segment[3])
        return (segment[1] == segment[2]) ? 1 : 0;
 
    return 0;
}
pushka
0 / 0 / 0
Регистрация: 06.10.2010
Сообщений: 35
07.10.2010, 14:33  [ТС]     Составить программу определения возможности построения из заданных отрезков параллелограмма #24
Скажите,а у вас программа работает?
silent_1991
Эксперт С++
4961 / 3037 / 149
Регистрация: 11.11.2009
Сообщений: 7,027
Завершенные тесты: 1
07.10.2010, 14:36     Составить программу определения возможности построения из заданных отрезков параллелограмма #25
pushka,
А вы сами как думаете?)))
Что у вас не работает?
pushka
0 / 0 / 0
Регистрация: 06.10.2010
Сообщений: 35
07.10.2010, 14:50  [ТС]     Составить программу определения возможности построения из заданных отрезков параллелограмма #26
getch()
не нравится

Добавлено через 7 минут
нда, удалила...заработало!

Добавлено через 4 минуты
ещё один дэбильный вопрос
программа работает,но ответ не пишет
чего ему надо??
silent_1991
Эксперт С++
4961 / 3037 / 149
Регистрация: 11.11.2009
Сообщений: 7,027
Завершенные тесты: 1
07.10.2010, 14:58     Составить программу определения возможности построения из заданных отрезков параллелограмма #27
Что значит ответ не пишет? Закрывается? Если да, то верните getch(); на место и в самом начале напишите #include <conio.h>
pushka
0 / 0 / 0
Регистрация: 06.10.2010
Сообщений: 35
07.10.2010, 16:04  [ТС]     Составить программу определения возможности построения из заданных отрезков параллелограмма #28
Спасибо,я туплю конкретно...
вы меня спасли
времени не хватало разбираться,здесь всё для меня в новинку
книги грызу,но на практике пока что-то не очень выходит!
спасибо хоть вы показываете как это должно быть!!!
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
08.10.2010, 03:31     Составить программу определения возможности построения из заданных отрезков параллелограмма
Еще ссылки по теме:
Составить программу для построения таблицы стоимости заданного количества указанного товара C++
Составить блок-схему и программу определения площади прямоугольников C++
C++ Составить программу для определения площади заштрихованой фигуры
C++ Составить программу определения минимального среди 5 введенных целых чисел.
C++ Составить программу определения площади круга по известной длине окружности

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

Или воспользуйтесь поиском по форуму:
accept
4821 / 3241 / 165
Регистрация: 10.12.2008
Сообщений: 10,682
08.10.2010, 03:31     Составить программу определения возможности построения из заданных отрезков параллелограмма #29
getchar()
Yandex
Объявления
08.10.2010, 03:31     Составить программу определения возможности построения из заданных отрезков параллелограмма
Ответ Создать тему
Опции темы

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