Параметры круга. get{} и set{} - C#
Формулировка задачи:
Дан радиус круга. Надо вывести диаметр, площадь и длину круга. Написал вот так:
Препод пишет, что нельзя напрямую задать диаметр. Как это исправить?
Листинг программы
- struct CircleParameters
- {
- private double radius;
- private double diameter;
- private double square;
- private double circleLength;
- public double Radius
- {
- get
- {
- return radius;
- }
- set
- {
- radius = value;
- }
- }
- public double Diameter
- {
- get
- {
- return diameter = Radius * 2;
- }
- }
- public double Square
- {
- get
- {
- return square = Math.PI * Math.Pow(Radius, 2);
- }
- }
- public double CircleLength
- {
- get
- {
- return circleLength = Math.PI * Diameter; ;
- }
- }
- }
- static void Main(string[] args)
- {
- double radius = double.Parse(Console.ReadLine());
- var parameters = new CircleParameters();
- parameters.Radius = radius;
- Console.WriteLine(parameters.Diameter);
- Console.WriteLine(parameters.Square);
- Console.WriteLine(parameters.CircleLength);
- }
И площадь с длиной тоже чтобы можно было вводить напрямую.
Решение задачи: «Параметры круга. get{} и set{}»
textual
Листинг программы
- using System;
- class Strings
- {
- struct CircleParameters
- {
- private double radius;
- public double Radius
- {
- get
- {
- return radius;
- }
- set
- {
- if (value > 0)
- radius = value;
- }
- }
- public double Diameter
- {
- get
- {
- return Radius * 2;
- }
- set
- {
- if (value > 0)
- radius = value / 2;
- }
- }
- public double Square
- {
- get
- {
- return Math.PI * Math.Pow(Radius, 2);
- }
- set
- {
- if (value > 0)
- radius = Math.Sqrt(value / Math.PI);
- }
- }
- public double CircleLength
- {
- get
- {
- return Math.PI * Diameter;
- }
- set
- {
- if (value > 0)
- radius = value / (2 * Math.PI);
- }
- }
- public override string ToString()
- {
- return string.Format("Радиус {0}\nДиаметр {1}\nПлощадь {2}\nДлина окружности {3}\n", Radius, Diameter, Square, CircleLength);
- }
- }
- static void Main(string[] args)
- {
- var circle = new CircleParameters();
- circle.Radius = 20;
- Console.WriteLine(circle);
- circle.Diameter = 100;
- Console.WriteLine(circle);
- circle.Square = 200;
- Console.WriteLine(circle);
- circle.CircleLength = 300;
- Console.WriteLine(circle);
- }
- }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д