Изучаю шарп, хотелось бы получить критику и советы как лучше сделать!
Три класса
Program: Мейн класс вызывает классы Rectangle and Triangle.Rectangle: Содержит метод получение площади по двум сторонам.Triangle: Содержит методы вывода в консоль треугольников с помощью*
Код рабочий!
using System.Drawing;
namespace TaskOne
{
class Program
{
static void Main(string[] args)
{
Program app = new Program();
app.StartApplication();
}
public void StartApplication()
{
//getTriangle();
GetRectangle();
}
public void getTriangle()
{
Triangle triangle = new Triangle();
//triangle.ShowTriangle();
//triangle.ShowAnotherTriangle();
triangle.ShowMasTreeTriangle();
}
public void GetRectangle()
{
Rectangle rectangle = new Rectangle();
//rectangle.GetMessage();
rectangle.GetArea();
}
}
}
internal class Rectangle
{
public Rectangle()
{
}
public void GetArea()
{
int firstSide = GetSideLenght();
int secondSide = GetSideLenght();
Console.WriteLine("Площадь прямоугольника: " + (firstSide * secondSide));
}
public int GetSideLenght()
{
Console.Write("Введите длину стороны: ");
int lenght = int.Parse(Console.ReadLine());
if(lenght <= 0)
{
Console.WriteLine("Только положительные числа отличные от нуля,попробуйте снова!");
Environment.Exit(0);
}
return lenght;
}
}
internal class Triangle
{
public Triangle()
{
}
public void ShowTriangle()
{
Console.Write("Введите количество строк: ");
int height = int.Parse(Console.ReadLine());
for (int i = 0; i < height; i++)
{
for (int j = 0; j <= i; j++)
{
Console.Write("*");
}
Console.WriteLine();
}
}
public void ShowAnotherTriangle()
{
Console.Write("Введите количество строк: ");
int height = int.Parse(Console.ReadLine());
for (int i = 0; i < height; i++)
{
Console.SetCursorPosition(height - i, i + 1);
for (int j = 0; j <= i * 2; j++)
{
Console.Write("*");
}
Console.WriteLine();
}
}
public void ShowMasTreeTriangle()
{
Console.Write("Введите количество строк: ");
int height = int.Parse(Console.ReadLine());
for (int i = 0; i < height; i++)
{
Console.SetCursorPosition(height - i, i + 1);
for (int j = 0; j <= i * 2; j++)
{
Console.Write("*");
}
Console.WriteLine();
}
}
}

Наличие реального работающего кода- есть,Содержательный заголовокиОтсутствие избыточных слов в заголовке- есть небольшой косяк, который каждый без труда может исправить.Указание назначения кода- есть,Описание, откуда этот код взялся- думаю это вовсе лишнее. Так как ваш первый комментарий указывает на ошибки в вопросе? Вот сейчас закроют вопрос и? Поймет автор что от него хотят? – EvgeniyZ Aug 27 '20 at 14:11я и написал ему первым комментарием, это вопрос, а не проблема- с огромным намеком на то, что у него есть "косяк", а какой - пусть сам гадает.в этом и смысл, чтобы он исправил- на SO не просто так у всех есть механизм редактирования. Автор вон исправил по вашим наводкам вопрос, нравиться?предложите правку метки- в описание метке не правила, а рекомендации, зачем вам знать очевидные вещи? Написал автор сам код, и? Вам даст это что либо?пока не переоткроют- тут очень редко переоткрывают.зависит от ТС- и от нас тоже. Короче спорить с вами не буду, парня лишь жалко. – EvgeniyZ Aug 27 '20 at 14:31если ей систематически пользоваться- Посмотрите мой вопрос на мете, увидите, что большинство людей советуют просто пройти мимо и закрывать на многое глаза, ведь это "хорошо раскрученный форум", где каждый заходит почитать темку после тяжелой работы, без напряга и другой ерунды.Кучу вопросов можете дать- не поверите, на все ставил голос, писал в комментарии, где это уместно, в итоге либо 1 голос висит, либо виси 4 и вопрос не закрывают.Конкретно про этот вопрос- на месте автора, увидев, что вопрос заминусовали, я бы свалил с SO, забыв про него как про ужасную помойку. – EvgeniyZ Apr 11 '21 at 09:04