Еще одна подсказка, вероятно вообще не должно быть трех методов, а должен быть один. Представьте, что у вас не треугольник, а полигон с произвольным числом вершин. Тогда текущий подход вообще не масштабируется!

Замечу самое главное: код лишь сократится и упростится после рефакторинга!