Вдохновлен этим вопросом .
Учитывая список, содержащий цифры, выведите:
- Сумма и произведение чисел в списке
- Средний и средний
- Различия между каждым термином в списке (бывший
[1,2,3] -> [1,1]: 1+1=2, 2+1=3
) - Список, отсортированный по возрастанию
- Минимум и максимум списка
- Стандартное отклонение списка
Для справки:
Стандартное отклонение
Где μ - среднее значение, x i - это i
член в списке и N
длина списка.
Самый короткий код выигрывает. Удачи!
code-golf
math
array-manipulation
beary605
источник
источник
Ответы:
Q, 41
источник
J,
7370 символовПрименение:
источник
TI-BASIC, 41 байт
1-Var Stats
это один байт , иΣx
,x̄
и т.д., два байта каждый.Если изменение порядка вывода разрешено, можно сохранить близкое соседство, доведя счет до 40 байт.
источник
Q (87 символов)
например.
источник
Рубин 187
Синтаксис использования:
O[<array>]
(например,O[[1,2,3]]
)Выводит все необходимые значения на консоль в порядке, указанном в вопросе.
IdeOne примеры:
источник
Scala
208202188:Тестовое задание:
источник
Юлия 0,6 , 66 байт
Попробуйте онлайн!
Julia 0,6 , 88 байт (без исправления стандартного отклонения, как в операции)
Попробуйте онлайн!
источник
n-1
), а не численность населения (деление наn
), как требуется в задаче. Умножив(n-1)/n
не исправить либо, потому что при делении наn-1
,NaN
получается. Я столкнулся с теми же проблемами, пытаясь сделать это в R, и с тех пор об этом не задумывался.C ++ 14,
340383 байтаКак родовая безымянная лямбда. Первый параметр
L
- это списокstd::list
с типом с плавающей запятой, а второй параметр - это желаемый выходной поток, напримерstd::cout
.Компилирует с предупреждением, C ++ не разрешает
"
сразу следовать литералам вродеF
. Программа все еще работает.Ungolfed:
источник
F
на;F(x)O<<x<<'\n';
и последнюю строку:[](A L,A&O){A S=L;A l=L.begin(),k=l;A n=L.size();A s=*l,p=s,d=s*s,h=n/2.;for(S.sort(),Y s+=*l,p*=*l,d+=*l**l);for(l=S.begin();--h>0;++l)F(s)F(p)F(s/n)F(*l)for(Y)O<<*l-*k++<<","F(' ')for(A x:S)O<<x<<","F(' ')F(S.front())F(S.back())F(sqrt((d-s*s/n)/(n-1)));}
;
совсем в конце. Это может быть удалено, но компилятору это не нравится" "F
:warning: invalid suffix on literal; C++11 requires a space between literal and string macro
хотя компилируется ...Perl 5 , 204 + 1 = 205 байт
Попробуйте онлайн!
источник
Пыть , 39 байт
Это выводит по порядку медиану, произведение, различия, перевернутый список, сумму, максимум и минимум, среднее значение и стандартное отклонение. Q
Попробуйте онлайн!
Объяснение:
источник
APL NARS, 119 символов, 182 байта
тестовое задание
источник
Окамль - 288 байт
Предполагая, что данный список является непустым списком с плавающей точкой (чтобы избежать преобразований), и что возвращаемая медиана является слабым определением медианы:
Читаемая версия
источник
PHP, 213 байт
Попробуйте онлайн .
источник