Cod sursa(job #372243)

Utilizator jasminaMendoiu Cosmina jasmina Data 9 decembrie 2009 08:54:51
Problema Trapez Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 1.63 kb
#include<iostream>
#include <fstream>
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)
{
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==m2||m1==m3||m1==m4||m2==m3||m2==m4||m3==m4)
        return 1;
        else return 0;
        
        int cate_trapeze()
        {
            int contor=1,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<<v[i].x<<" "<<v[i].y;
                       system("pause");
                       }
                       
                       
                       int main()
                       {citire();
                       afisare();
                       ofstream fout("trapez.out");
                       fout<<cate_trapeze();
                       fout.close();}