You are on page 1of 1

C++: CS:

//Geometria.cpp //Geometria.cs
#include <iostream.h> using System;

class Punkt2D { class Punkt2D {


public: public double x, y;
double x, y; }
};
class Linia2D {
class Linia2D { public Punkt2D p1=new Punkt2D(),
public: p2=new Punkt2D();
Punkt2D p1, p2;
void skaluj(double d){ public void Skaluj(double d) {
Punkt2D c; Punkt2D c = new Punkt2D();
c.x = (p1.x+p2.x)/2; c.x = (p1.x+p2.x)/2;
c.y = (p1.y+p2.y)/2; c.y = (p1.y+p2.y)/2;
p1.x = c.x+(p1.x-c.x)* d; p1.x = c.x+(p1.x-c.x)* d;
p1.y = c.y+(p1.y-c.y)* d; p1.y = c.y+(p1.y-c.y)* d;
p2.x = c.x+(p2.x-c.x)* d; p2.x = c.x+(p2.x-c.x)* d;
p2.y = c.y+(p2.y-c.y)* d; p2.y = c.y+(p2.y-c.y)* d;
} }

void przesun(Punkt2D &p) { public void Przesun(Punkt2D p) {


p1.x += p.x; p1.y += p.y; p1.x += p.x; p1.y += p.y;
p2.x += p.x; p2.y += p.y; p2.x += p.x; p2.y += p.y;
} }

int rownolegla(Linia2D &l){ public bool Rownolegla(Linia2D l) {


double dx1 = l.p2.x- l.p1.x, double dx1 = l.p2.x- l.p1.x,
dy1 = l.p2.y- l.p1.y, dy1 = l.p2.y- l.p1.y,
dx2 = p2.x-p1.x, dx2 = p2.x-p1.x,
dy2 = p2.y-p1.y; dy2 = p2.y-p1.y;
return abs(dx1*dyY2-dy1*dx2)<0.0001; return Math.Abs(dx1*dy2-dy1*dx2)<0.0001?
} true:false;
}

Linia2D lustroOX() { Linia2D LustroOX() {


Linia2D l; Linia2D l = new Linia2D();
l.p1.x = p1.x; l.p1.y = -p1.y; l.p1.x = p1.x; l.p1.y = -p1.y;
l.p2.x = p2.x; l.p2.y = -p2.y; l.p2.x = p2.x; l.p2.y = -p2.y;
return l; return l;
} }
};

int main() { public static void Main(string[] args) {


Linia2D l1, l2; Linia2D l1 = new Linia2D(),
Punkt2D p1; l2 = new Linia2D();
Punkt2D p1 = new Punkt2D();
l1.p1.x = l2.p1.x = 0; l1.p1.x = l2.p1.x = 0;
l1.p1.y = l2.p1.y = 0; l1.p1.y = l2.p1.y = 0;
l1.p2.x = l2.p2.x = 1; l1.p2.x = l2.p2.x = 1;
l1.p2.y = l2.p2.y = 1; l1.p2.y = l2.p2.y = 1;
p1.x = 1; p1.y = 2; p1.x = 1; p1.y = 2;
l2.skaluj(2); l2.Skaluj(2);
l2.przesun(p1); l2.Przesun(p1);
cout << l1.rownolegla(l2); Console.WriteLine(l1.Rownolegla(l2));
l2 = l2.lustroOX(); l2 = l2.LustroOX();
return 0; }
} }

You might also like