Помогите, пожалуйста
Ответы
Так как в задании целевой язык не указан, написал на C#.
Пример работы на рисунке 1.
Предусмотрена обработка ошибок ввода.
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace Задания43
{
class Program
{
static void Main(string[] args)
{
//Задание 1
double A, B, C;
Console.WriteLine("Введите 3 стороны:");
try
{
Console.Write("A = "); A = double.Parse(Console.ReadLine());
Console.Write("B = "); B = double.Parse(Console.ReadLine());
Console.Write("C = "); C = double.Parse(Console.ReadLine());
} catch
{
Console.WriteLine("Ошибка ввода");
return;
}
Console.WriteLine();
double S, h;
if(A == B && B == C) // Проверка на равносторонность
{
S = A * A * Math.Sqrt(3) / 4.0;
h = A * Math.Sqrt(3 / 4.0);
Console.WriteLine("Треугольник со стороной равной {0} имеет площадь S = {1} и высоту h = {2}", A, S, h);
} else
{
Console.WriteLine("Треугольник НЕ равносторонний!");
}
Console.WriteLine();
//Задание 2
Console.Write("Введите номер месяца: ");
if(!int.TryParse(Console.ReadLine(), out int N))
{
Console.WriteLine("Ошибка ввода");
}
string message;
switch (N)
{
case 12:
case 1:
case 2:
message = "ЗИМА";
break;
case 3:
case 4:
case 5:
message = "ВЕСНА";
break;
case 6:
case 7:
case 8:
message = "ЛЕТО";
break;
case 9:
case 10:
case 11:
message = "ОСЕНЬ";
break;
default:
message = "ОШИБКА";
break;
}
Console.WriteLine(message);
}
}
}
PascalABC.NET 3.4.2, сборка 1837 от 11.10.2018
Внимание! Если программа не работает, обновите версию!
Задание №1
begin
var (a, b, c) := ReadReal3('Длины сторон через пробел:');
if (a = b) and (a = c) then
$'S = {a*a*Sqrt(3)/4,0:f5}, h = {a*Sqrt(3/4),0:f5}'.Println
else Println('Треугольник неравносторонний')
end.
Задание №2
begin
case ReadInteger('Введите номер месяца') of
1, 2, 12: Println('Зима');
3..5: Println('Весна');
6..8: Println('Лето');
9..11: Println('Осень');
else Println('Ошибка')
end
end.