Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- using System;
- namespace ConsoleApp2
- {
- public static class Program
- {
- public static void Main(string[] args)
- {
- Console.WriteLine("Hello World!");
- var rectangle = new CRect();
- rectangle.setRect(5, 8);
- var square = new CRect();
- square.setRect(6);
- Console.WriteLine($"Rectangle: {rectangle.ShowRect()}");
- Console.WriteLine($"Square: {square.ShowRect()}");
- var rectanglePerimeter = rectangle.Perimeter();
- var squarePerimeter = square.Perimeter();
- Console.Write($"Rectangle's perimeter: {rectanglePerimeter}, square's perimeter: {squarePerimeter}. ");
- var perimeterComparison = "Perimeters are the same.";
- if (rectanglePerimeter > squarePerimeter)
- perimeterComparison = "Rectangle's perimeter is bigger.";
- else if (squarePerimeter > rectanglePerimeter)
- perimeterComparison = "Square's perimeter is bigger.";
- Console.WriteLine(perimeterComparison);
- var rectangleArea = rectangle.Area();
- var squareArea = square.Area();
- Console.Write($"Rectangle's area: {rectangleArea}, square's area: {squareArea}. ");
- string areaComparison = "Areas are the same.";
- if (rectangleArea > squareArea)
- areaComparison = "Rectangle's area is bigger.";
- else if (squareArea > rectangleArea)
- areaComparison = "Square's area is bigger.";
- Console.WriteLine(areaComparison);
- Console.ReadKey();
- }
- public class CRect
- {
- private float a;
- private float b;
- private bool aIsZero => a == 0;
- private bool bIsZero => b == 0;
- public void setRect(float a)
- {
- if (a <= 0) throw new ArgumentOutOfRangeException(nameof(a));
- this.a = a;
- }
- public void setRect(float a, float b)
- {
- if (a <= 0) throw new ArgumentOutOfRangeException(nameof(a));
- if (b <= 0) throw new ArgumentOutOfRangeException(nameof(b));
- this.a = a;
- this.b = b;
- }
- public float Perimeter()
- {
- if (aIsZero) throw new InvalidOperationException($"Run {nameof(setRect)} method first");
- return bIsZero
- ? 4 * a
- : 2 * a + 2 * b;
- }
- public float Area()
- {
- if (aIsZero) throw new InvalidOperationException($"Run {nameof(setRect)} method first");
- return bIsZero
- ? a * a
- : a * b;
- }
- public string ShowRect() => $"a={a}, b={b}";
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement