View Code of Problem 67

#include<iostream>
using namespace std;
// typedef struct
// {
//     /* data */
    
// } P;

int main()
{
    int x1,x2,x3,x4;
    int y1,y2,y3,y4;
    while( cin>>x1>>y1 )
    {
        cin>>x2>>y2>>x3>>y3>>x4>>y4;
        
        int flag = 0;//不相交

        //首先判断两条线是否垂直的
        if( x1==x2 && x3==x4 )
        {
            //有两种情况
            //1.相交
            if( x1==x3 )flag = 1;
        }
        //斜率是否为0
        else if( y1 == y2 && y3 == y4 )
        {
            if( y1 == y3 )flag =1 ;
        }
        else
        {
            double d1,d2;
            d1=(y1-y2)/(x1-x2);
            d2=(y3-y4)/(x3-x4);
            // cout<<"d1="<<d1<<" "<<"d2="<<d2<<endl;
            if( d1 != d2 )flag = 1;
        }
        if( flag )cout<<"Yes"<<endl;
        else cout<<"No"<<endl;

    }    
}

Double click to view unformatted code.


Back to problem 67