какие исключения если все операции тут софтовые? просмотрите подпрограмму деления, выясните что будет при делении на ноль. выясните почему делитель может обращаться в ноль. я стараюсь писать программы которые не подвисают и не впадают в ступор при любых исходных данных. пусть лучше на некорректные данные прога выдаст некорректный результат, чем подвиснет. конечно, лучше когда такая ошибка будет обработана, но не стоит и быть параноиком