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

Определить функцию вычисления площади треугольника по трем его сторонами, заданными действительными числами - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Заменить в заданной символьной строке все слова, содержащие указанную букву на соответствующее количество символов '*' http://www.cyberforum.ru/cpp-beginners/thread1062499.html
Написать функцию, которая заменяет в заданном символьном строке все слова, содержащие указанную букву на соответствующее количество символов '*'.
C++ Рекурсивная функция поиска минимального элемента матрицы Найти наименьший элемент каждой строки в заданном двумерном массиве, используя рекурсивную функцию. Заранее всем спасибо. http://www.cyberforum.ru/cpp-beginners/thread1062497.html
C++ Дано целое число i, 1 <= i <= 8. Вывести на экран i строку последовательности строк
Дано целое число i, 1 <= i <= 8. Вывести на экран i-ю строку последовательности строк 1 a 2 aab 3 aabaabc 4 aabaabcaabaabc
UNIX-time с нуля C++
Проблема следующая - реализовал я с нуля перевод из юникс -времени в человечную дату. А тут проблема появилась: ввожу 54588753952 в свою программу (этот 36 век), а также сюда http://www.cy-pr.com/tools/time/, всё совпадает, не считая разницы в почти 2 недели! В 20 веке, в 19 всё ок. Но уже при вводе 6338155552 (22 век) разница получается один день! Моя прога: Введите время в Unix формате...
C++ Анонимный объект по аналогии с анонимной функцией (lambda) http://www.cyberforum.ru/cpp-beginners/thread1062445.html
Приведу вот такой пример: #include <iostream> #include <vector> #include <algorithm> class Generator { public: Generator() : i(1) { }
C++ UnixPosix, не ври мне! (неправильный подсчет времени вручную) Проблема следующая - реализовал я нуля перевод из posix в человечную дату. А тут проблема появилась: ввожу 54588753952 в свою программу, а также сюда http://www.cy-pr.com/tools/time/, всё совпадает, не считая разницы в почти 2 недели! В 20 веке, в 19 всё ок. Но уже при вводе 6338155552 разница получается один день! Моя прога: Введите время в Unix формате 6338155552 Конвертируем: 5.11.2170... подробнее

Показать сообщение отдельно
Anwer
 Аватар для Anwer
0 / 0 / 0
Регистрация: 02.01.2014
Сообщений: 49
03.01.2014, 19:38     Определить функцию вычисления площади треугольника по трем его сторонами, заданными действительными числами
Условие:
Даны действительные числа a, b, c, d. Найти площадь шестиугольника, изображенного на
рис. 4.1. Определить функцию вычисления площади треугольника по трем его
сторонами, заданными действительными числами. Если эти числа не позволяют по-
строить треугольник, то результатом работы функции должно быть значение -1. Рисунок прикреплен.
Определить функцию вычисления площади треугольника по трем его сторонами, заданными действительными числами
Решение:
И так все сделал, нашел площади триугольников, а затем и площадь шестиугольника. Но есть одно но,
Если эти числа не позволяют по-
строить треугольник, то результатом работы функции должно быть значение -1
Как можно это но реализовать? Помогите новичку пожалуйста. Буду очень очень благодарен
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
#include <iostream>
#include <math.h>
#include <conio.h>
using namespace std;
 
float square(float a, float b, float c) // площадь треугольника
{
 
float s, p = (a + b + c) / 2;
return s = sqrt (p * (p - a) * (p - b) * (p - c)); // формула Герона
 
}
int main ()
{
       setlocale(0, "rus");
       float line1, line2, line3, line4; // переменные-стороны 
       line1 = 1.0;
       line2 = 1.8;
       line3 = 1.4;
       line4 = 1.2;
       float a, b, c, d;
       cout << "Введите сторону а: ";
       cin >> a;
       cout << "Введите сторону b: ";
       cin >> b;
       cout << "Введите сторону c: ";
       cin >> c;
       cout << "Введите сторону d: ";
       cin >> d;
cout << "Площадь треугольника № 1 (а, 1.0, 1.8): " << square(a, line1, line2) << endl;
cout << "Площадь треугольника № 2 (d, 1.8, 1.4): " << square(d, line2, line3) << endl;
cout << "Площадь треугольника № 3 (c, 1.4, 1.2): " << square(c, line3, line4) << endl;
cout << "Площадь треугольника № 4 (a, b, 1.2): " << square(a, b, line4) << endl;
int s;
s = square(a, line1, line2) + square(d, line2, line3) + square(c, line3, line4) + square(a, b, line4);
cout << "Площадь шестиугольника: " << s << endl;
system ("pause");
return 0;
}
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 14:13. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru