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

Практика по ТРПО - C++

Восстановить пароль Регистрация
 
Полька 321
0 / 0 / 0
Регистрация: 19.05.2013
Сообщений: 19
27.02.2014, 11:12     Практика по ТРПО #1
Вопщем такая запара. не могу допереть как решить задачу с графикой.
/*Даны действительные числа x0,y0,x1,y1....,xk-1,yk-1.Известно, что точки p0,p1,.....,pk-1 с заданными координатами попарно различны.
Рассмотрим замкнутую ломаную линию p0,p1,...,pk-1:
а)верно ли,что ломаная не имеет самопересечений;
б)в предположении, что ломанная не имеет самопересечений, выяснить, является ли k-угольник выпуклым.*/
Препод говорит,что в обоих случаях используется эта формула (x-x1)/(x2-x1)=(y-y1)/(y2-y1).
но чет нифига не поняла как делать это все...

Добавлено через 55 секунд
Вопщем,запилили за сегодня такую плюшку. на проверку наличия пересечений. но чего то неправильно работает. вот код. поглядите. может свежим взглядом виднее..
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
#include <iostream>
 
using namespace std;
int main(int argc, char** argv)
{
setlocale (LC_ALL, "rus");
int i,j,n;
float k,k1,a,a1,b,b1,c,xx,yy,fl,r,x[20],y[20];
cout<<"Введите количество точек"<<endl;
cin>>n;
cout<<"Введи координаты x,y "<<n<<" точек"<<endl;
for(i=0;i<n;i++)
cin>>x[i]>>y[i];
x[n]=x[0];
y[n]=y[0];
for(i=0;i<n-1;i++)
{
fl=0;
for(j=i+2;j<n-1;j++)
{
a=x[i+1]-x[i]; b=y[i+1]-y[i]; k=x[i]/a-y[i]/b; 
a1=x[j+1]-x[j]; b1=y[j+1]-y[j]; k1=x[j]/a1-y[j]/b1;
yy=(k1*a1-k*a)/(a/b-a1/b1);
xx=(k*a*b+a*yy)/b; 
cout<<"Точка "<<xx<<" "<<yy<<endl; cin>>r;
if((xx-x[i])*b==(yy-y[i])*a && (xx-x[j])*b1==(yy-y[j])*a1) {fl==1; cout<<"Пересекаются"<<endl; break;}
 
}
if (fl==1) break;
}
 
if(fl==0) cout<<"Не пересекаются"<<endl;
return 0;
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
27.02.2014, 11:12     Практика по ТРПО
Посмотрите здесь:

Практика C++
Практика C++
C++ Практика!
практика C++
Практика по с++ C++
практика на экзамене C++
Нужна практика C++
C++ Практика С++

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Ответ Создать тему
Опции темы

Текущее время: 18:14. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru