В равностороннем треугольнике все три угла равны между собой и равны 60 градусов. В равнобедренном треугольнике два угла равны между собой и оба острые. В прочих треугольников значения всех трех углов различаются между собой.
Эффективность алгоритма решения напрямую зависит от того, насколько успешно производится сравнение углов.
Первый вариант программы (логика ЕСЛИ-ТО-ИНАЧЕ) program v1;
var a, b, c: real;
begin Write('Введите значения углов треугольника в градусах: '); Readln(a, b, c); if a = b then if a = c then Writeln('Треугольник равносторонний') else Writeln('Треугольник равнобедренный') else if a = c then Writeln('Треугольник равнобедренный') else if b = c then Writeln('Треугольник равнобедренный') else Writeln('Все стороны треугольника имеют различную длину') end.
Второй вариант программы (логические выражения) program v2;
var a, b, c: real;
begin Write('Введите значения углов треугольника в градусах: '); Readln(a, b, c); if (a = b) and (a = c) then Writeln('Треугольник равносторонний') else if (a = b) or (a = c) or (b = c) then Writeln('Треугольник равнобедренный') else Writeln('Все стороны треугольника имеют различную длину') end.
Тестовое решение: Введите значения углов треугольника в градусах: 75 30 75 Треугольник равнобедренный
2,0,334
Объяснение:
Описываем две пользовательские функции в Excel VBA:
Function newstr(str As String, n As Integer) As String
Dim i As Integer
For i = 1 To n
str = Replace(str, "a", "ab")
str = Replace(str, "bb", "c")
Next
newstr = str
End Function
Function chrcount(str1 As String, str2 As String) As Integer
Dim str() As String
str = Split(str1, str2)
chrcount = UBound(str, 1)
End Function
С рабочего листа вызываем функцию:
= chrcount(newstr("abab"; 333); "a")&","&chrcount(newstr("abab"; 333); "b")&","&chrcount(newstr("abab"; 333); "c")
Получаем результат:
2,0,334