Форум программистов, компьютерный форум, киберфорум
C++/CLI Windows Forms
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.60/5: Рейтинг темы: голосов - 5, средняя оценка - 4.60
3 / 3 / 0
Регистрация: 21.01.2013
Сообщений: 70

Вычисление площади многоугольника (перевести с C++ и Delphi)

29.04.2014, 20:00. Показов 1077. Ответов 5
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
помогите пожалуйста перевести с с++ на Visual C++ . если можете помочь то отпишитесь что поможете .
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
#include "stdafx.h"
#include <stdio.h>
#include <conio.h>
#include <math.h>
double a[10][2];
double taras(int n)
{
    int i;
    double s=0;
    a[0][0]=a[n-1][0];
    a[0][1]=a[n-1][1]; 
    for(i=0;i<n-1;i++) 
            s+=(a[i][0]+a[i+1][0])*(a[i][1]-a[i+1][1]);
    return fabs(s)/2.0;
}
int main()
{
   int j,n,i;
   double s;
   printf("vvedit n");
   scanf("%d",&n);
   if(n>10)n=10;
   for(i=0;i<n; i++)
            for(j=0;j<2;j++)
            {
                printf("a[%d][%d] = ",i,j);
                scanf("%lf",&a[i][j]);
            }
   s=taras(n);
   printf("%f\n",s);
   getch();
}
также я имею ее сделано на делфи
Delphi
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
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
unit Unit1;
 
interface
 
uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, Grids, StdCtrls, Buttons;
 
type
  TForm1 = class(TForm)
    Edit1: TEdit;
    Label1: TLabel;
    Button1: TButton;
    Button2: TButton;
    Edit2: TEdit;
    StringGrid1: TStringGrid;
    Label2: TLabel;
    Label3: TLabel;
    Button3: TButton;
    BitBtn1: TBitBtn;
    procedure Button1Click(Sender: TObject);
    procedure Button2Click(Sender: TObject);
    procedure Button3Click(Sender: TObject);
    procedure FormCreate(Sender: TObject);
 
  private
    { Private declarations }
  public
    { Public declarations }
  end;
type ar=array[0..10,1..2] of real;
var
  Form1: TForm1;
  n:integer;
implementation
 
{$R *.dfm}
function taras(n:integer; a:ar):real;
var i:integer;
    s:real;
begin
a[0,1]:=a[n,1];
a[0,2]:=a[n,2];
s:=0;
for i:=0 to n-1 do
s:=s+(a[i,1]+a[i+1,1])*(a[i,2]-a[i+1,2]);
result:=abs(s)/2;
end;
procedure TForm1.Button1Click(Sender: TObject);
var i:integer;
begin
//
val(Edit1.Text,n,i);
if(i<>0)or not (n in [1..n]) then
 begin
  ShowMessage('Невірно введено N, повторіть');
  Edit1.Clear;
  Edit1.SetFocus;
  exit
 end;
//
with StringGrid1 do
 begin
  fixedcols:=1;
  fixedrows:=0;
  colCount:=n+1;
  rowcount:=2;
  cells[0,0]:='X';
  cells[0,1]:='Y';
  defaultcolwidth:=40;
 end;
ShowMessage('Введіть координати вершин');
end;
 
procedure TForm1.Button2Click(Sender: TObject);
var a:ar;
    i,j,c,k:integer;
begin
//
k:=0;
i:=1;
while(i<=n)and(k=0) do
 begin
  j:=1;
  while(j<=2)and(k=0) do
   begin
    val(StringGrid1.Cells[i,j-1],a[i,j],c);
    if c<>0 then k:=1
    else inc(j);
   end;
  if k=0 then inc(i)
 end;
 
Edit2.Text:='s='+floattostrF(taras(n,a),ffFixed,5,2)
end;
 
procedure TForm1.Button3Click(Sender: TObject);
begin
edit1.Clear;
 
Edit2.Clear;
end;      procedure TForm1.FormCreate(Sender: TObject);
begin
 
end;
 
end.
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
29.04.2014, 20:00
Ответы с готовыми решениями:

Вычисление площади многоугольника
На плоскости дан простой многоугольник (т. е. без самокасаний и самопересечений, но не обязательно выпуклый). Написать программу...

Вычисление площади многоугольника
В общем, есть некий выпуклый многоугольник с вершинами в точках x и y (значения могут заданы рандомно либо введены с клавиатуры, не суть)....

Вычисление площади многоугольника
Пусть получены координаты точек многоугольника в виде (список кортежей): Как найти его площадь? Предполагаю, что можно с помощью...

5
5500 / 4895 / 831
Регистрация: 04.06.2011
Сообщений: 13,587
29.04.2014, 20:01
Цитата Сообщение от 1Тарас1 Посмотреть сообщение
перевести с с++ на Visual C++
Может Си на С++?
0
3 / 3 / 0
Регистрация: 21.01.2013
Сообщений: 70
29.04.2014, 20:06  [ТС]
да ..мне нужно чтобы было на форме с компонентами
0
5500 / 4895 / 831
Регистрация: 04.06.2011
Сообщений: 13,587
29.04.2014, 20:14
Цитата Сообщение от 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
#include <iostream>
#include <cmath>
using namespace std;
 
double a[10][2];
 
double taras(int n)
{
    int i;
    double s=0;
    a[0][0]=a[n-1][0];
    a[0][1]=a[n-1][1]; 
    for(i=0;i<n-1;i++) 
            s+=(a[i][0]+a[i+1][0])*(a[i][1]-a[i+1][1]);
    return fabs(s)/2.0;
}
 
int main()
{
    int j,n,i;
    double s;
    cout << "vvedit n ";
    cin >> n;
    if(n>10)n=10;
    for(i=0;i<n; i++)
        for(j=0;j<2;j++)
        {
            cout << "a[" << i << "][" << j << "] = ";
            cin >> a[i][j];
        }
    s=taras(n);
    cout << s << endl;
    
    cin.get();
    cin.get();
}
Добавлено через 1 минуту
Цитата Сообщение от 1Тарас1 Посмотреть сообщение
мне нужно чтобы было на форме с компонентами
По поводу формы, сюда:
https://www.cyberforum.ru/cpp-cli-winforms/
0
Администратор
Эксперт .NET
 Аватар для tezaurismosis
9673 / 4825 / 763
Регистрация: 17.04.2012
Сообщений: 9,664
Записей в блоге: 14
29.04.2014, 21:37
1Тарас1, как звучит основное ваше задание?
Также, неплохо было бы видеть, как выглядит окно из кода на Delphi (каким вы его хотите видеть).
1
3 / 3 / 0
Регистрация: 21.01.2013
Сообщений: 70
29.04.2014, 21:44  [ТС]
Вычислить площадь многоугольника вершины которого заданы координатами
Скрин

ето exe файл
Вложения
Тип файла: rar Project1.rar (191.6 Кб, 10 просмотров)
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
29.04.2014, 21:44
Помогаю со студенческими работами здесь

Вычисление площади многоугольника
во вложении

Вычисление площади произвольного многоугольника по координатам его вершин
Вычисление площади произвольного многоугольника по координатам его вершин.Кто смотжет сделать буду премного благодарен

Поиск площади многоугольника
я не знаю как написать программу: Многоугольник на плоскости задан целочисленными координатами N вершин в декартовой системе координат....

Функция нахождения площади многоугольника
В задаче ввести натуральное число n (где n&lt;=10) и координаты n точек , образующих многоугольник. Найти площадь многоугольника, разбив его...

Задача вычисления площади многоугольника
в общем у меня курсовой.... програма сделана.... но не мной... что мне нужно... Пожауйста напишите что и где делаеться в програме......


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

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
Новые блоги и статьи
Символьное дифференцирование
igorrr37 13.02.2026
/ * Логарифм записывается как: (x-2)log(x^2+2) - означает логарифм (x^2+2) по основанию (x-2). Унарный минус обозначается как ! */ #include <iostream> #include <stack> #include <cctype>. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL3_image
8Observer8 10.02.2026
Содержание блога Библиотека SDL3_image содержит инструменты для расширенной работы с изображениями. Пошагово создадим проект для загрузки изображения формата PNG с альфа-каналом (с прозрачным. . .
Установка Qt-версии Lazarus IDE в Debian Trixie Xfce
volvo 10.02.2026
В общем, достали меня глюки IDE Лазаруса, собранной с использованием набора виджетов Gtk2 (конкретно: если набирать текст в редакторе и вызвать подсказку через Ctrl+Space, то после закрытия окошка. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru