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

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

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 12, средняя оценка - 4.75
Ольга150883
0 / 0 / 0
Регистрация: 10.01.2010
Сообщений: 38
#1

Площадь выпуклого многогранника методом триангуации по формуле Герона - C++

20.01.2010, 05:16. Просмотров 1624. Ответов 5
Метки нет (Все метки)

Разработать программу для расчета выпуклого многогранника методом триангуации (разбиения на треугольники) по формуле Герона (определение площади треугольника по его сторонам и полупериметру). Координаты вершин многогранника должны быть считаны из указанного пользователем файла. В этом файле первым может быть число, равное количеству вершин многогранника. Построить изображение многогранника с линиями разбиения на треугольники.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
20.01.2010, 05:16
Я подобрал для вас темы с готовыми решениями и ответами на вопрос Площадь выпуклого многогранника методом триангуации по формуле Герона (C++):

Посчитать площадь по формуле Герона - C++
Посчитать площадь по формуле Герона #include <iostream> #include <math.h> using namespace std; int main() { int a, b, c,...

Найти площадь треугольника по формуле Герона - C++
помогите решить программу в С++ : даны стороны треугольника a, b, c.Найти площадь треугольника по формуле Герона.

Найти площадь треугольника по формуле Герона - C++
Помогите, пожалуйста! Что только не делала, но вычисляет все равно не верно:resent: Вычислить площадь треугольника по формуле Герона....

Вычислить площадь треугольника по формуле Герона - C++
ВЫЧЕСЛИТЬ ПЛОЩАДЬ ТРЕУГОЛЬНИКА ПО ФОРМУЛЕ ГЕРОНА S=√p(p-a)(p-b)(p-c) где p-полупериметр a,b,c-стороны

вычислить площадь треугольника по формуле герона - C++
Написать процедуру,которая вычислит площадь треугольника по формуле герона s=(p*(p-a)*(p-b)*(p-c)) плз, о4 срочно

Найти площадь треугольника по формуле Герона - C++
Помогите пожалуйста с задачкой на класс. Нужно найти площадь треугольника по формуле Герона. Ошибку выдает, подчеркивает p в самой формуле....

5
Reskov
12 / 12 / 1
Регистрация: 14.12.2009
Сообщений: 33
20.01.2010, 15:34 #2
написал... смотри вложения и спрашивай если что-то не понятно
0
Вложения
Тип файла: rar square.rar (262.0 Кб, 113 просмотров)
Ольга150883
0 / 0 / 0
Регистрация: 10.01.2010
Сообщений: 38
21.01.2010, 07:32  [ТС] #3
Спасибо большое, все работает...
0
Reskov
12 / 12 / 1
Регистрация: 14.12.2009
Сообщений: 33
21.01.2010, 17:29 #4
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
//---------------------------------------------------------------------------
 
#include <vcl.h>
#pragma hdrstop
#include <math.h>
#include <fstream.h>
#include "Unit1.h"
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma resource "*.dfm"
TForm1 *Form1;
//---------------------------------------------------------------------------
__fastcall TForm1::TForm1(TComponent* Owner)
    : TForm(Owner)
{
}
TPoint *a;//список точек
int n=0;
 
//---------------------------------------------------------------------------
double dist(TPoint a,TPoint b)//растояние  между двумя точками
{
 
return sqrt((a.x-b.x)*(a.x-b.x)+(a.y-b.y)*(a.y-b.y));
}
//---------------------------------------------------------------------------
double plGeron(TPoint a,TPoint b,TPoint c)//формула герона
{
double p=(dist(a,b)+dist(b,c)+dist(c,a))/2;
return  sqrt(p*(p-dist(a,b))*(p-dist(b,c))*(p-dist(c,a)));
}
//---------------------------------------------------------------------------
void __fastcall TForm1::Button1Click(TObject *Sender)
{
  if (OpenDialog1->Execute())  //запускаем диалог для выбора файла
     if (FileExists(OpenDialog1->FileName)) { //если норм запустился то проверяем сущ файла
         Memo1->Lines->LoadFromFile(OpenDialog1->FileName); //загружаем в мемо для красоты
     }
 
 
 fstream stream(OpenDialog1->FileName.c_str());//открываем поток для работы с файлом
 stream>>n;//считываем n
 a=new TPoint[n+1];              //создаем массив на n+1 элемент чтобы замкнуть ломаную
  for (int i=0;i<n;i++)
        {
        stream>>a[i].x>>a[i].y; //читаем данные из файла
        }
  a[n]=a[0];  //замыкаем ломаную
 
  TCanvas *canv=Image1->Canvas; //канва где рисуем
  canv->Pen->Color=clBlack;
  Image1->Picture->Bitmap->FreeImage();    //стираем все что было
  canv->MoveTo(a[0].x,a[0].y);       //переходм в первую точку
  canv->Polygon(a,n+1);             //рисуем фигуру
  canv->Pen->Color=clRed;       //красный цвет
    for (int i=2;i<n-1;i++)     //рисуем триангуляцию
        {
         canv->MoveTo(a[0].x,a[0].y);
         canv->LineTo(a[i].x,a[i].y);
         }
  double pl=0;  //наша площадь
        for (int i=1;i<n-1;i++)
        {
         pl+=plGeron(a[0],a[i],a[i+1]);//фиксируем точку a[0] и по ней разбиваем
        }
        ShowMessage("pl="+(String)pl);
}
//---------------------------------------------------------------------------
0
Ольга150883
0 / 0 / 0
Регистрация: 10.01.2010
Сообщений: 38
21.01.2010, 17:33  [ТС] #5
дает ошибку(
0
Reskov
12 / 12 / 1
Регистрация: 14.12.2009
Сообщений: 33
21.01.2010, 17:37 #6
подробеней плз, что за ошибка??? это просто файл с коментариями.... его надо заменить в проекте Unit1.cpp
0
21.01.2010, 17:37
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
21.01.2010, 17:37
Привет! Вот еще темы с ответами:

вычислить площадь треугольника со сторонами a,b,c по формуле Герона - C++
1)вычислить площадь треугольника со сторонами a,b,c по формуле Герона,проверив условие корректности введенных данных(длины всех сторон...

Площадь выпуклого многоугольника методом триангуляции - C++
ребят помогите разработать программу для расчёта площади выпуклого многоугольника методом триангуляции (разбиения на треугольники) по...

Рассчитать выпуклый многогранник методом триангуации - C++
Разработать программу для расчета выпуклого многогранника методом триангуации (разбиения на треугольники) по формуле Герона (определение...

Площадь выпуклого многоугольника - C++
Доброго времени суток! Собственно, задача звучит как: &quot;Расчет площади выпуклого многоугольника при вводимых координатах вершин&quot;. ...


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

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

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