Начнём с того, в какой именно момент пишет "неверное выражение". Если при компиляции - исправляй в своём коде то, что напахал. А если во время выполнения, то это говорит только о том, что ты математику в школе прогуливаешь. Потому как не понимаешь, что треугольника 15.2, 8.346, 1.824 в природе НЕ СУЩЕСТВУЕТ. И при заданный условиях программа ОБЯЗАНА сообщить об ошибке - и именно это должно быть в твоём отчёте.