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

Многоугольник на плоскости задан целочисленными координатами своих N вершин в декартовой системе координат (найти площадь многоугольника) - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Сортировка таблицы http://www.cyberforum.ru/cpp-beginners/thread886628.html
Задача отсортировать таблицу по ключу (в качестве ключа использовать имя), используя qSort. Таблицу я такой структурой задал struct line { char name; char type; int count; int memory; char ctype;
C++ Скопировать часть строки Как мне скопировать часть строки с элемента a по элемент b? http://www.cyberforum.ru/cpp-beginners/thread886626.html
C++ Переписать файл f в числовой массив a[20]
Дан файл f состоящий из чисел(отрицательных и положительных), записать все числа из файла в массив int a.
C++ Четная/не четная прибыль
Здравствуйте, недавно начал учить С++, но тут возник вопрос... Друг дал задание, сделал 9/10 пунктов. Вообщем, прошу помочь: Задание таково: следущий пункт, вывод всех филиалов в виде филлиал №х прибыль = x $ чётное значение прибыли или филлиал №х прибыль = x $ не чётное значение прибыли. Сам исходник - такой: вырезано #include <iostream>
C++ Ошибка в вводе/выводе массива http://www.cyberforum.ru/cpp-beginners/thread886593.html
При выводе элемента массива всегда значение ноль. Вероятно ввожу массив неправильно. Помогите пожалуйста найти ошибку. P.S. жел-но не заменять операторы на cin/cout #include <iostream> #include <windows.h> #include <math.h>f int main() { double y; int i,n; SetConsoleCP(1251);
C++ Создать класс одномерных массивов. Определить унарную операцию - (префиксную) как дружественную функцию Здравствуйте, помогите, напишите код к задаче: Создать класс одномерных массивов. Определить унарную операцию - (префиксную) как дружественную функцию. подробнее

Показать сообщение отдельно
BlackScorpioNnn
0 / 0 / 0
Регистрация: 14.04.2013
Сообщений: 12
31.05.2013, 18:48     Многоугольник на плоскости задан целочисленными координатами своих N вершин в декартовой системе координат (найти площадь многоугольника)
Здравствуйте форумчане! Необходим совет)
собственно задача:
Многоугольник на плоскости задан целочисленными координатами своих N вершин в декартовой системе координат. Требуется найти площадь многоугольника. Стороны многоугольника не соприкасаются (за исключением соседних - в вершинах) и не пересекаются. Ограничения: 3<=N<=50000, координаты вершин целые и по модулю не превосходят 20000. При вводе: В первой строке находится число N. В следующих N строках находятся пары чисел - координаты точек. Если соединить точки в данном порядке, а также первую и последнюю точки, получится заданный многоугольник. При выводе: Вывести одно число - площадь многоугольника. Его следует округлить до ближайшего числа с одной цифрой после запятой.
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
#include<iostream>
using namespace std;
int main()
{
double s;
int n,min;
long int x[50000];
long int y[50000];
cin>>n;
for(int i=0;i<n;i++)
{
cin>>x[i]>>y[i];
}
x[n]=x[0];
y[n]=y[0];
 
min=y[0];
for(int i=1;i<n;i++)
if(min>y[i])min=y[i];
 
for(int i=0;i<n+1;i++)
y[i]=y[i]-min;
s=0.0;
for(int i=0;i<n;i++){
s=s+(((float)y[i+1]+(float)y[i])*((float)x[i+1]-(float)x[i])/2);
}
if(s<0)
s=-s;
cout<<s;
return 0;}
но на сайте проверки http://olimpic.asu.tusur.ru выдает Wrong answer on test 6
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 17:05. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru