Изучение примера спецификаций
1. Изучите пример выполнения спецификаций.
РАЗРАБОТАТЬ ПРОГРАММНЫЙ КОМПЛЕКС ДЛЯ РЕШЕНИЯ СЛЕДУЮЩЕЙ ЗАДАЧИ: ИМЕЮТСЯ ТРИ ЧИСЛА, ПРЕДСТАВЛЯЮЩИЕ СОБОЙ ДЛИНЫ ТРЁХ ОТРЕЗКОВ. ОПРЕДЕЛИТЬ, МОЖНО ЛИ ПОСТРОИТЬ ИЗ ЭТИХ ОТРЕЗКОВ ТРЕУГОЛЬНИК, И БУДЕТ ЛИ ОН ПРЯМОУГОЛЬНЫМ
Название задачи - Треугольник.
Название программы - Triangl.
Система программирования - Турбо-Паскаль 7.0.
Компьютер –AMD A6-3500 APU.
Описание
Даны три вещественных положительных числа: a, b и c.
Определить:
1) можно ли построить треугольник из отрезков, длина которых соответственно равна a, b и c?
2) является ли этот треугольник прямоугольным?
Математическая формулировка задачи
Условием существования треугольника является одновременное выполнение трёх неравенств:
b + c > a
c + a > b (1)
a + b > c
a * a = b * b + c * c
b * b = c * c + a * a (2)
c * c = a * a + b * b
Если все неравенства (1), выполняются и справедливо какое-либо из выражений (2), то треугольник будет прямоугольным.
Однако необходимо иметь в виду, что для переменных вещественного типа (real) использование логической операции отношения = (равно) даёт непредсказуемый результат из-за особенностей работы компьютера с числами данного типа. В связи с этим заменим равенства (2) на:
| a * a - (b * b + c * c) | / (a * a) < e
| b * b - (c * c + a * a) | / (b * b) < e (3)
| c * c - (a * a + b * b) | / (с * с) < e
Здесь e - малая величина.
Гипотенузе прямоугольного треугольника будет, разумеется, соответствовать переменная, стоящая первой в левой части того из неравенств (3), которое выполняется (переменная a, b илиc).
Управление режимами работы программы
Для управления режимами работы программы использовать меню, в котором выбор режима осуществляется вводом номера (идентификатора).
Работа с программой должна завершаться также с помощью меню.
Входные данные
Необходимо, чтобы a, b, c и e имели вещественный тип (real).
Выходные данные
На дисплей должна выдаваться справочная информация о назначении программы.
После обработки входных данных, введённых пользователем, на дисплей должно выводиться одно из следующих сообщений:
1) “Это не треугольник”
2) “Это прямоугольный треугольник с гипотенузой, равной (указывается длина гипотенузы)”
3) “Это не прямоугольный треугольник”
Ошибки
Примечание. При вводе численных значений типа real пользователь может ошибиться и ввести вместо числа комбинацию из числовых и нечисловых символов. Результатом этого является обычно зависание компьютера.
При вводе чисел a, b, c и e надо предусмотреть контроль:
1) соответствия их типу real;
2) знака вводимых чисел a, b и c;
3) величины погрешности e (0 < e <1).
При обнаружении ошибок программа должна выдавать соответствующие сообщения, которые могут сопровождаться звуковым сигналом, и предлагать повторить ввод.