2015-06-10 6 views

ответ

1

Хорошо, я нашел работу вокруг, но я не уверен, что она эффективна или даже надежна в использовании более экзотических чисел.

25 %% sqrt(25) == 0 

Оценка: TRUE.

Возможно, лучший способ сделать это будет:

sqrt(25) %% 1 == 0 

Который также вычисляет TRUE. Адаптировано от this answer.

+2

Вы должны проверить '? Is.integer', в частности функцию' is.wholenumber', определенную в разделе «Примеры». –

+1

, если ваш квадратный корень не является целым числом, тогда вы будете делать целочисленное dvision с не целочисленным, что не является хорошей идеей, и если это целое число, то определение квадратного корня состоит в том, что sqrt (k) * sqrt (k) == k, поэтому он всегда будет ИСТИННЫМ. Извините, но я должен уменьшить этот очень неправильный ответ. @Pascal, почему вы удалили свой ответ? – Cath

+0

спасибо @Pascal Я посмотрел пример 'is.wholenumber', но я не думал, что это было очень ясно или точно, что я искал. –