Pagini recente » Cod sursa (job #146267) | Cod sursa (job #347123) | Cod sursa (job #1512528) | Cod sursa (job #1423603) | Cod sursa (job #372126)
Cod sursa(job #372126)
#include <fstream>
#include <iostream.h>
using namespace std;
typedef struct un_punct
{
int x,y;
} PUNCT;
PUNCT v[1001];
int n,i;
void citire()
{
ifstream fin("trapez.in");
fin>>n;
for(i=1;i<=n;i++)
fin>>v[i].x>>v[i].y;
fin.close();
}
int verifica(int a,int b,int c,int d)
{ int nr=0;
float m1,m2,m3,m4;
cout<<endl<<"punctele "<<a<<" "<<b<<" "<<c<<" "<<d;
m1=(float)(v[b].y-v[a].y)/(float)(v[b].x-v[a].x);
m2=(float)(v[c].y-v[b].y)/(float)(v[c].x-v[b].x);
m3=(float)(v[d].y-v[c].y)/(float)(v[d].x-v[c].x);
m4=(float)(v[a].y-v[d].y)/(float)(v[a].x-v[d].x);
cout<<endl<<"m1="<<m1<<"m2="<<m2<<"m3="<<m3<<"m4="<<m4;
system("pause");
if (m1==m3) nr++;
if(m2==m4) nr++;
return nr;
}
int cate_trapeze()
{
int contor=0,a,b,c,d;
for(a=1;a<=n-3;a++)
for(b=a+1;b<=n-2;b++)
for(c=b+1;c<=n-1;c++)
for(d=c+1;d<=n;d++)
contor=contor+verifica(a,b,c,d);
return contor;
}
void afisare()
{
for(i=1;i<=n;i++)
cout<<endl<<v[i].x<<" "<<v[i].y;
system("pause");
}
int main()
{
citire();
afisare();
ofstream fout("trapez.out");
fout<<cate_trapeze();
fout.close();
}