Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- class Program
- {
- abstract class R2Factory
- {
- public abstract AbstractProductPloshina CreateProductPloshina();
- public abstract AbstractProductProstir CreateProductProstir();
- }
- class ConcreteFactoryR2 : R2Factory
- {
- private int a11, a12,a13,a14,a21,a22,a23,a24,a31,a32,a33,a34,x,y,z;
- public ConcreteFactoryR2(int a11,int a12,int a13,int a14,int a21, int a22, int a23, int a24, int a31, int a32, int a33, int a34, int x, int y, int z)
- {
- this.a11 = a11;
- this.a12 = a12;
- this.a13 = a13;
- this.a14 = a14;this.a21 = a21;this.a22 = a22;this.a23 = a23;this.a24 = a24;this.a31 = a31;
- this.a32 = a32;this.a33 = a33;this.a34 = a34;this.x = x;this.y = y; this.z = z;
- }
- public override AbstractProductPloshina CreateProductPloshina()
- {
- return new ProductPloshina(a11,a12,a13,a21,a22,a23,x,y);
- }
- public override AbstractProductProstir CreateProductProstir()
- {
- return new ProductProstir(a11,a12,a13,a14,a21,a22,a23,a24,a31,a32,a33,a34,x,y,z);
- }
- }
- abstract class AbstractProductPloshina
- {
- public abstract void Show();
- public abstract void Output();
- }
- abstract class AbstractProductProstir
- {
- public abstract void Show();
- public abstract void Output();
- }
- class ProductPloshina : AbstractProductPloshina
- {
- private int a11,a12,a13,a21,a22,a23,x,y;
- public ProductPloshina(int a11, int a12,int a13,int a21, int a22, int a23, int x, int y)
- {
- this.a11 = a11;
- this.a12 = a12;
- this.a13 = a13;
- this.a21 = a21;
- this.a22 = a22;
- this.a23 = a23;
- this.x = x;
- this.y = y;
- }
- public override void Show()
- {
- Console.WriteLine("Коефiцiєнти перетворення: a11,a12,a13,a21,a22,a23");
- Console.WriteLine("{0},{1},{2},{3},{4},{5}", a11, a12, a13, a21, a22, a23);
- Console.WriteLine("Точка: ({0},{1})", x, y);
- }
- public override void Output()
- {
- int X = a11 * x + a12 * y + a13;
- int Y = a21 * x + a22 * y + a23;
- Console.WriteLine("Образ точки ({0},{1}): ({2},{3})", x, y, X, Y);
- }
- }
- class ProductProstir : AbstractProductProstir
- {
- private int a11, a12, a13, a14, a21, a22, a23, a24, a31, a32, a33, a34, x, y, z;
- public ProductProstir(int a11, int a12,int a13, int a14, int a21, int a22, int a23, int a24, int a31, int a32, int a33, int a34, int x, int y, int z)
- {
- this.a11 = a11;
- this.a12 = a12;this.a13 = a13;this.a14 = a14;this.a21 = a21;this.a22 = a22;this.a23 = a23;this.a24 = a24;this.a31 = a31;
- this.a32 = a32; this.a33 = a33; this.a34 = a34;
- this.x = x;
- this.y = y;
- this.z = z;
- }
- public override void Show()
- {
- Console.WriteLine("Коефiцiєнти перетворення: a11,a12,a13,a14,a21,a22,a23,a24,a31,32,a33,a34");
- Console.WriteLine("{0},{1},{2},{3},{4},{5},{6},{7},{8},{9},{10},{11}", a11, a12, a13, a14, a21, a22, a23, a24, a31, a32, a33, a34);
- Console.WriteLine("Точка: ({0},{1},{2})", x, y, z);
- }
- public override void Output()
- {
- int X = a11 * x + a12 * y + a13 * z + a14;
- int Y = a21 * x + a22 * y + a23 * z + a24;
- int Z = a31 * x + a32 * y + a33 * z + a34;
- Console.WriteLine("Образ точки ({0},{1},{2}): ({3},{4},{5})", x, y, z, X, Y, Z);
- }
- }
- class Client
- {
- private AbstractProductPloshina abstractProductA;
- private AbstractProductProstir abstractProductB;
- public Client(R2Factory factory1)
- {
- abstractProductB = factory1.CreateProductProstir();
- abstractProductA = factory1.CreateProductPloshina();
- }
- public void Run()
- {
- abstractProductA.Show();
- }
- }
- static void Main(string[] args)
- {
- }
- }
- }`введите сюда код`
- class ConcreteFactoryR2 : R2Factory
- {
- private int a11;
- private int a12;
- public ConcreteFactoryR2(int a11, int a12)
- {
- this.a11 = a11;
- this.a12 = a12;
- }
- public override AbstractProductPloshina CreateProductPloshina()
- {
- return new ProductPloshina(a11, a12);
- }
- public override AbstractProductProstir CreateProductProstir()
- {
- return new ProductProstir(a11, a12);
- }
- }
- static void Main(string[] args)
- {
- Client client = new Client(new ConcreteFactoryR2(123, 456));
- client.Run();
- }
Add Comment
Please, Sign In to add comment