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

Написать программу: могут ли три числа быть длинами сторон треугольника? - C++

Восстановить пароль Регистрация
 
arsalandugarov
0 / 0 / 0
Регистрация: 16.09.2013
Сообщений: 18
26.11.2014, 05:42     Написать программу: могут ли три числа быть длинами сторон треугольника? #1
Решите эту задачу:
даны три числа если они могут быть длинами сторон равнобедренного тупоугольного треугольника, то вычислите его площадь. Выведите длины сторон и площадь в порядке возрастания значений.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
26.11.2014, 05:42     Написать программу: могут ли три числа быть длинами сторон треугольника?
Посмотрите здесь:

C++ Напишите программу, которая определит, могут ли эти числа быть длинами сторон равнобедренного треугольника
C++ Могут ли числа быть сторонами треугольника
C++ Определить, могут ли числа быть сторонами треугольника
C++ Проверить, могут ли три положительных числа a, b, c быть длинами сторон треугольника.
C++ Даны три числа, если они могут быть длинами сторон равнобедренного треугольника, вычислите длины его высот
Напишите программу, определяющую, могут ли числа являться длинами сто-рон треугольника C++
Если три точки могут быть вершинами разностороннего тупоугольного треугольника, вычислите его площадь C++
C++ Введите три числа. Если они могут быть длинами сторон прямоугольного треугольника

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
D_in_practice
 Аватар для D_in_practice
330 / 330 / 159
Регистрация: 02.10.2014
Сообщений: 666
26.11.2014, 07:14     Написать программу: могут ли три числа быть длинами сторон треугольника? #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
#include <iostream>
#include <cmath>
 
int main(){
    
    const double EPS = 1e-10;
    double a[4];
    do{
        std::cout << "Ââåäèòå äëèГ*Г*Г» ñòîðîГ* ÷åðåç ïðîáåë: ";
        std::cin >> a[0] >> a[1] >> a[2];
    }while(a[0] <= 0 || a[1] <= 0 || a[2] <= 0);
    
    for (int i = 0; i < 3; ++i)
        for (int j = 1; j < 3 - i; ++j)
            if (a[j - 1] > a[j]){
                double buf = a[j - 1];
                a[j - 1] = a[j];
                a[j] = buf;
            }
        
    if (a[0] + a[1] > a[2] && a[0] + a[2] > a[1] && a[1] + a[2] > a[0])
        if (fabs(a[0] - a[1]) < EPS && a[0]*a[0] + a[1]*a[1] > a[2]*a[2]){
        
            double p = (a[0] + a[1] + a[2])/2;
            a[3] = sqrt(p*(p - a[0])*(p - a[1])*(p - a[2]));            
        
            for (int i = 0; i < 4; ++i)
                for (int j = 1; j < 4 - i; ++j)
                    if (a[j - 1] > a[j]){
                        double buf = a[j - 1];
                        a[j - 1] = a[j];
                        a[j] = buf;
                    }
    
            for (int i = 0; i < 4; ++i)
                std::cout << ' ' << a[i] << std::endl;
        }   
}
Yandex
Объявления
26.11.2014, 07:14     Написать программу: могут ли три числа быть длинами сторон треугольника?
Ответ Создать тему
Опции темы

Текущее время: 23:48. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru