#1 добавлена обработка случая a=0, поправлена опция компилятора -lm (без этого не компилит из ide)