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

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

Войти
Регистрация
Восстановить пароль
 
Arhistrateg
Сообщений: n/a
#1

Задача с периметром многоугольника - C++

29.12.2008, 16:20. Просмотров 854. Ответов 0
Метки нет (Все метки)

Задача состояла в том ,чтобы составить программу считающую периметр фигуры образованной вершинами находящимеся в интервале 1<N<10, при этом координаты вершин заложены в массивы Х и У .
Идея решения мне видется в том ,что отрезки сравниваются каждый с каждым на пересечение, находя точку пересечения, и проверяя её на принадлежность многоугольнику пут1м построения из неё лучей и нахожения углов между лучами, сумма которых должна дать либо 0 либо 360
Но у меня проблема возникла на боее раннем этапе,я н знаю как точно прописать подсчёт отрезков, у меня если точек больше двух то, считает отрезок только между первыми двумя
Прошу помочь в этом моменте
Код
#include <stdio.h>
#include <math.h>
int main(void)
{ 
int x[9],y[9];
int k,N,R,t,detx,dety,*ptr,*ptt;
ptr=x;
ptt=y; 
float l[8];
printf("Vvedite kolichestvo vershin ot 1 do 10:\n",N);
scanf("%d",&N);
R=N-1; 
for(k=0;k<N;k++)
{ 
printf("x[%d]=",k);
scanf("%d",&x[k]);
printf("y[%d]=",k);
scanf("%d",&y[k]);
} 
printf("Vvedeniii vershiny takie -:\n");
for(k=0;k<N;k++)
{
printf("x[%d]=%d\n",k,x[k]);
printf("y[%d]=%d\n",k,y[k]);
}
for(k=0;k<N;k++)
{
detx=(*ptr+1)-(*ptr);
dety=(*ptt+1)-(*ptt);
}
printf("detx=%d\n",detx);
printf("dety=%d\n",dety);
for(t=0;t<R;t++)
{ 
l[t]=sqrt((detx*detx)+(dety*dety));
}
for(t=0;t<R;t++)
{
printf("l[%d]=%f\n",t,l[t]);
}
getchar();
getchar();
return 0;
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
29.12.2008, 16:20
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Задача с периметром многоугольника (C++):

Написать функцию, что вычисляет за 2 катетами, гипотенузой, периметром и площадью - C++
Написать функцию, что вычисляет за 2 катетами, гипотенузой, периметром и площадью. Написать функцию main, которая обеспечивает ввод данных...

Разрезание многоугольника - C++
Здравствуйте программисты! Мне необходимо написать программу, которая бы разрезала выпуклый многоугольник на 4 равновеликие части. ...

Периметр многоугольника - C++
Данные координаты вершин многоугольника (x1, y1, x2, y2, .x10, y10). Напишите программу для вычисления его периметра (вычисления расстояния...

Площадь многоугольника - C++
Всем добрый вечер! Есть задача: Заданы координаты n последовательных вершин многоугольника. Определить его площадь. Входные данные...

Построение многоугольника - C++
Здравствуйте, как построить выпуклый многоугольник по беспорядочно заданным вершинам?

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

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
29.12.2008, 16:20
Привет! Вот еще темы с ответами:

Триангуляция многоугольника - C++
Добрый вечер. Ни у кого случайно нет алгоритма для триангуляции ПРОИЗВОЛЬНОГО многоугольника? Многоугольник задан количеством вершин и...

Площадь многоугольника - C++
Найти площадь невыпуклого многоугольника(n-угольник). Входные данные: координаты точек. На output вывести площадь.

Вращение многоугольника - C++
Добрый вечер! Есть прога, которая рисует многоугольник с заданным числом вершин. Подскажите, пожалуйста, как сделать так, чтобы...

замкнутость многоугольника - C++
добрый вечер.пишу игру точки.подскажите,плз,как можно реализовать вычисление замкнутости многоугольника?вот как в рисунке:надо...


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

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

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