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

Геометрия - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Srand http://www.cyberforum.ru/cpp-beginners/thread203432.html
что делает srand? (наприме: srand(static_cast<unsigned int>(time(0))); )
C++ Работа с файлами Здраствуйте! Мне нада прочитать в структуру данные из файла.Вот сам файл: 17.99,32.00,50.00,100.91,19.99,15.00,2.00,4.99,5.78,36.99, 200,11,1000,11000,250,1000,8000,3350,400,50, Мне нужно прочитать в структуру числа вот структура http://www.cyberforum.ru/cpp-beginners/thread203430.html
Реализовать двусвязный список и обеспечить заполнение его данными и его сортировку по одному из полей входящих в него структур. C++
Кто может помогите пожалуйста. Буду очень очень благодарен. Нужно написать на Си следующую программу: "Реализовать двусвязный список и обеспечить заполнение его данными и его сортировку по одному из полей входящих в него структур." Заранее большое спасибо.
C++ Функция вставки строки в строку
#include "stdafx.h" #include "iostream" #include "stdio.h" #include "cstring" char* strins(char*sub,char*source,int p) {int i=0,s=strlen(source),k=strlen(sub),n=0; char source2; for (i;i<99;i++) source2='w';
C++ Сравнение алгоритмов сортировки ... алгоритм Шелла http://www.cyberforum.ru/cpp-beginners/thread203406.html
Вопрос такой, для лабораторной работы нужно сравнить три алгоритма сортировки чисел ... так вот измеряю время работы : double start = GetTickCount(); // код double finish = GetTickCount(); cout << "Время: " << finish - start << endl; так вот, для разных размеров массива, время выполнения программы для сортировки пузырьком и сортировки выбором меняется от 16 и выше, 247 ..... 450 .... а...
C++ Англо-русский словарь нужно написать программу "англо-русский и русско-английский словарь" база данных словаря должна содержать синонимичные варианты перевода слов программа должна обеспечит выбор посредством меню и выполнение одной из следующих функций: - загрузка базы данных из словоря (из файла) - выбор режима работы ( англо-русский или русско-английский) - вывод вариантов перевода заданного английского слова... подробнее

Показать сообщение отдельно
Mayonez
 Аватар для Mayonez
379 / 271 / 20
Регистрация: 26.12.2009
Сообщений: 875
04.12.2010, 21:32  [ТС]     Геометрия
требуется написать программу которая определяет можно ли в многоугольник с вершинами в заданных координатах вписать окружность, и если можно то указать координаты центра и радиусю
Программа не проверяет, можно ли вписать окружность, но если можно, то выводит её радиус
радиус равен площади, разделенной на полупериметр вики
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
#include <iostream>
#include <cmath>
#include <vector>
using namespace std;
 
//вычисляем площадь за формулой 1
float squr(vector <pair <float, float> > a)
{
   float sq = 0;
   for (int i = 0; i < a.size(); i++)
    {
       pair <float, float> one, two;  
        one = i ? a[i-1] : a.back();
        two = a[i];              
        sq += (one.first - two.first) * (one.second + two.second);
    }
    return fabs (sq) / 2;            
}
 
//вычисляем периметр за формулой 2
float perm(vector <pair <float, float> > a)
{
   float pr = 0;
   for (int i = 0; i < a.size(); i++)
    {
       pair <float, float> one, two;  
        one = i ? a[i-1] : a.back();
        two = a[i];              
        pr += sqrt( (one.first - two.first)*(one.first - two.first) + 
                  (one.second - two.second)*(one.second - two.second) );
    }
    return pr;
}
 
int main()
{
   vector <pair <float, float> > tochki;
   cout << "Введите количество вершин: ";
   int n;
   cin >> n;
   for (int i = 0; i < n; i++)
   {
      int x, y;
      cout << "Введите координаты " << i+1 << " точки (x, y): ";
      cin >> x >> y;
      tochki.push_back(make_pair(x, y));
   }
   
   float sq, pr; //площадь и полупериметр
   sq = squr(tochki);
   pr = perm(tochki) / 2;
   cout << "Радиус вписаной окружности = " << sq/pr << endl;
   system("pause");
   return 0;
}
 
Текущее время: 18:21. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru