2014-10-12 3 views
0

Я пытаюсь создать программу, которая находит стандартное отклонение массива, который вводится пользователем. У меня есть код here, и он отлично работает без каких-либо проблем, но для меня он кажется очень неэффективным и нечитаемым (я добавил комментарии, чтобы было легче следовать). Есть ли лучший способ реализовать эту идею?Поиск стандартного отклонения от пользовательского ввода

+0

Это выглядит нечитабельно для меня. Но вы должны пересмотреть суть для подсветки синтаксиса для java. – Justin

+0

Все в порядке, но, безусловно, можно улучшить. Отправьте его в [CR] (http://codereview.stackexchange.com/questions/tagged/java), чтобы получить обратную связь. Включите весь код, а не только ссылку. Здесь это явно неуместно. – maaartinus

ответ

0

Идея вычисления суммы отклонений с использованием арифметики с фиксированной точкой (на самом деле это фиксированная точка с пятью десятичными знаками) не очень хорошая.

Для небольших целых чисел я рекомендую использовать формулу S² = Sum Xi²/N - (Sum Xi/N)², где оба аккумулятора являются целыми.

Основываясь на диапазоне Xi и максимальном значении N, вы можете определить, будет ли батарея квадратов переполняться.

В некоторых случаях вы можете использовать только S² = (N Sum Xi² - (Sum Xi)²)/N².

Смежные вопросы