View Code of Problem 67

#include<iostream>
#include<limits>

using namespace std;

int main() {
	double x1, x2, x3, x4, y1, y2, y3, y4;
	while (cin >> x1 >> y1 >> x2 >> y2 >> x3 >> y3 >> x4 >> y4) {
		double k1, k2;
		double b1, b2;
		if (x1 == x2) {
			k1 = numeric_limits<double>::infinity();
			b1 = x1;
		}
		else if (x1 != x2) {
			k1 = (y2 - y1) / (x2 - x1);
			b1 = y1 - k1 * x1;
		}
		if (x3 == x4) {
			k2 = numeric_limits<double>::infinity();
			b2 = x3;
		}
		else if (x3 != x4) {
			k2 = 1.0 *  (y4 - y3) / (x4 - x3);
			b2 = y3 - k2 * x3;
		}

		if ((k1 == k2 && b1 == b2) || k1 != k2) {
			cout << "Yes" << endl;
		}
		else if (k1 == k2 && b1 != b2) {
			cout << "No" << endl;
		}
	}
}

Double click to view unformatted code.


Back to problem 67