Mail.ruПочтаМой МирОдноклассникиВКонтактеИгрыЗнакомстваНовостиКалендарьОблакоЗаметкиВсе проекты

Дописать код Помогите пожалуйста

Анастасия Черёмушкина Ученик (112), на голосовании 3 месяца назад
private void button1_Click(object sender, EventArgs e)
{
double A = 10;
double B = 20;
double C = 30;
if (!double.TryParse(textBox1.Text, out A) || A <= 0 ||
!double.TryParse(textBox2.Text, out B) || B <= 0 ||
!double.TryParse(textBox3.Text, out C) || C <= 0)
{
label1.Text = "Ошибка: все стороны должны быть положительными числами.";
}
else if (A + B <= C || A + C <= B || B + C <= A)
{
label1.Text = "Ошибка: сумма двух сторон должна быть больше третьей.";
}
else
{
double p = (A + B + C) / 2;
double s = Math.Sqrt(p * (p - A) * (p - B) * (p - C));
label1.Text = string.Format("Площадь треугольника: {0:F2}\n", s);
if (A == B && B == C)
{
label1.Text += "Треугольник равносторонний.";
}
else if (A == B || B == C || C == A)
{
label1.Text += "Треугольник равнобедренный.";
}
else
{
}
}
}

private void label4_Click(object sender, EventArgs e)
{
textBox4.Text = "";
}
}
}
Голосование за лучший ответ
Арсений Енин Профи (835) 4 месяца назад
А в чем проблема, что дописать?
Татьяна Просветленный (36408) 4 месяца назад
 public partial class Form1 : Form 
{
public Form1()
{
InitializeComponent();
}

private void button1_Click(object sender, EventArgs e)
{
if (!TryParsePositiveDouble(textBox1.Text, out double a) ||
!TryParsePositiveDouble(textBox2.Text, out double b) ||
!TryParsePositiveDouble(textBox3.Text, out double c))
{
SetErrorMessage("Ошибка: все стороны должны быть положительными числами.");
return;
}

if (!IsValidTriangle(a, b, c))
{
SetErrorMessage("Ошибка: сумма двух сторон должна быть больше третьей.");
return;
}

double area = CalculateTriangleArea(a, b, c);
string triangleType = DetermineTriangleType(a, b, c);

SetResultMessage($"Площадь треугольника: {area:F2}\n{triangleType}");
}

private static bool TryParsePositiveDouble(string input, out double result)
{
return double.TryParse(input, out result) && result > 0;
}

private static bool IsValidTriangle(double a, double b, double c)
{
return a + b > c && a + c > b && b + c > a;
}

private static double CalculateTriangleArea(double a, double b, double c)
{
double p = (a + b + c) / 2;
return Math.Sqrt(p * (p - a) * (p - b) * (p - c));
}

private static string DetermineTriangleType(double a, double b, double c)
{
if (a == b && b == c)
return "Треугольник равносторонний.";
if (a == b || b == c || c == a)
return "Треугольник равнобедренный.";
return "Треугольник разносторонний.";
}

private void SetErrorMessage(string message)
{
label1.Text = message;
}

private void SetResultMessage(string message)
{
label1.Text = message;
}

private void label4_Click(object sender, EventArgs e)
{
textBox4.Text = string.Empty;
}
}
Похожие вопросы