Форум программистов, компьютерный форум, киберфорум
Наши страницы

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

Войти
Регистрация
Восстановить пароль
 
Twitosha
1 / 1 / 0
Регистрация: 02.03.2013
Сообщений: 29
#1

Определить теугольник с наибольшим радиусом, вписанной окружности - C++

17.04.2013, 02:42. Просмотров 426. Ответов 5
Метки нет (Все метки)

Определить теугольник с наибольшим радиусом, вписанной окружности. Треугольники заданы длинами сторон в массиве: (a[0],a[1],a[2])- длины сторон первого треугольника, (a[3],a[4],a[5])- длины сторон второго треугольника и т.д. Использовать функцию определения радиуса вписанной окружности треугольника.
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
17.04.2013, 02:42
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Определить теугольник с наибольшим радиусом, вписанной окружности (C++):

Треугольник задан величинами своих углов и радиусом вписанной окружности. Найти стороны треугольника. - C++
Треугольник задан величинами своих углов и радиусом вписанной окружности. Найти стороны треугольника. help!!)

Радиус вписанной окружности - C++
Пользователь вводит 3 стороны треугольника. Найти радиус вписанной окружности. Можно простенькую функцию для вычисления? С граф....

Вычислить площадь вписанной окружности - C++
Написать программу, но вместо самой переменной использовать ссылку на нее. Ввести сторону квадрата a. Вычислить площадь вписанной...

Рассчитать радиус окружности, вписанной в треугольник и описанной - C++
Рассчитать радиус окружности, вписанной в треугольник и описанной вокруг треугольника, зная его стороны.

Пересечение сторонами треугольника вписанной окружности. Подскажите алгоритм - C++
На плоскости заданы множество точек и окружность радиусом R с центром в начале координат. Построить множество всех треугольников с...

Ввести сторону квадрата a. Вычислить площадь вписанной окружности - C++
Используя вместо самой переменной указатель на нее написать программу Ввести сторону квадрата a. Вычислить площадь вписанной...

5
anmartex
...
1708 / 1201 / 496
Регистрация: 12.02.2013
Сообщений: 1,978
17.04.2013, 08:46 #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
44
45
46
47
#include <iostream>
#include <cmath>
 
float Radius(float a, float b, float c)
{
   float p = a + b + c;
 
   return std::sqrt((p - a) * (p - b) * (p - c) / p);
}
 
int main()
{
   float edges[] = { 3.0, 4.0, 5.0,
                     8.0, 3.0, 8.0,
                     4.0, 4.0, 5.0,
                     3.0, 3.0, 3.0,
                     9.0, 9.0, 1.0 };
 
   size_t nEdges = sizeof(edges) / sizeof(*edges);
 
   size_t maxIndex = 0;
   float maxRadius = Radius(edges[maxIndex], edges[maxIndex + 1], edges[maxIndex + 2]);
 
   for (size_t i = 0; i <= nEdges - 3; i += 3)
   {
      float radius = Radius(edges[i], edges[i + 1], edges[i + 2]);
      std::cout << "a = " << edges[i]     << ", "
                << "b = " << edges[i + 1] << ", "
                << "c = " << edges[i + 2] << ", "
                << "radius = " << radius << std::endl;
 
      if (maxRadius < radius)
      {
         maxIndex = i;
         maxRadius = radius;
      }
   }
 
   std::cout << std::endl
             << "maximal: "
             << "a = " << edges[maxIndex]     << ", "
             << "b = " << edges[maxIndex + 1] << ", "
             << "c = " << edges[maxIndex + 2] << ", "
             << "radius = " << maxRadius << std::endl;
 
   return 0;
}
Определить теугольник с наибольшим радиусом, вписанной окружности

Результат выполнения на codepad.org
0
Tulosba
:)
Эксперт С++
4397 / 3233 / 297
Регистрация: 19.02.2013
Сообщений: 9,045
17.04.2013, 09:59 #3
anmartex, почему float, а не double? Зачем вычисление в 22 строке, если оно делается в цикле?
0
anmartex
...
1708 / 1201 / 496
Регистрация: 12.02.2013
Сообщений: 1,978
17.04.2013, 10:25 #4
Цитата Сообщение от Tulosba Посмотреть сообщение
anmartex, почему float, а не double?
А почему double, а не float? Для демонстрации я думаю достаточно.

Цитата Сообщение от Tulosba Посмотреть сообщение
Зачем вычисление в 22 строке, если оно делается в цикле?
Резонный вопрос, просто цикл ещё обслуживает вывод на экран Не хотелось ещё один цикл организовывать.
0
Tulosba
:)
Эксперт С++
4397 / 3233 / 297
Регистрация: 19.02.2013
Сообщений: 9,045
17.04.2013, 10:39 #5
Цитата Сообщение от anmartex Посмотреть сообщение
Для демонстрации я думаю достаточно.
Типа на 2 символа меньше набирать?
Цитата Сообщение от anmartex Посмотреть сообщение
Не хотелось ещё один цикл организовывать.
Я о том, что если хотелось установить "начальное" максимальное значение, то цикл надо бы от 1 делать. Но так как радиус не может быть меньше 0, то maxRadius можно было инициализировать нулем.
1
anmartex
...
1708 / 1201 / 496
Регистрация: 12.02.2013
Сообщений: 1,978
17.04.2013, 10:43 #6
Цитата Сообщение от Tulosba Посмотреть сообщение
Типа на 2 символа меньше набирать?
На самом деле поставил автоматом.
Цитата Сообщение от Tulosba Посмотреть сообщение
Но так как радиус не может быть меньше 0, то maxRadius можно было инициализировать нулем.
Согласен, чего-то заклинило. Это было бы актуально с минимумом
0
17.04.2013, 10:43
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
17.04.2013, 10:43
Привет! Вот еще темы с ответами:

Найти площадь равнобедренного треугольника и радиусы вписанной и описанной окружности - C++
1. Дана сторона равнобедренного треугольника. Найти площадь треугольника и радиусы вписанного и описанного круга.

Вычислить длину окружности, задаваемой радиусом - C++
Вычислить длину окружности, задаваемой радиусом: С = 2πr.

Найти площадь, высоту и радиусы вписанной и описанной окружности по сторонам треугольника - C++
даны стороны равностороннего треугольника.найти площадь,высоту,радиусы вписанной и описанной окружности. помогите решить, надо лабы сдать(

Количество целых точек в окружности с центром в (x, y) и радиусом R - C++
Задана окружность радиуса R с центром в точке (X,Y). Необходимо определить количество точек с целочисленными координатами, которые попадают...


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

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

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