Bir dize kaydedilmiş medyan değerleri bulmam gerekiyor. Bu ek bir geçici dosya olmadan bash bunu uygulamak zorundayım ve ben awk kullanamazsınız.Değer dizesinden medyan alın
85 13 4 45 1111 89 87 66 1 5 2 51 13 66 98 50 20 14 18 16 31 21 5175 12
Birincisi, böyle bu değerleri sıralamak gerekir:
ben bu dize $string
kaydedilmiş olması
1 2 4 5 12 13 13 14 16 18 20 21 31 45 50 51 66 66 85 87 89 98 1111 5175
Sonra bu değerlerin ortancasını bulmalıyız
(21+31)/2 = 26
Bunu nasıl başarabiliriz? Bash'da herhangi bir etkili yol veya komut var mı?
Benim fikrim:
Ben sort
kullanabilirsiniz, değerlerini sıralamak için, ancak DOSYASINI kullanarak çünkü ben, dize değerleri sıralamak için zorlamak nasıl emin değilim.
olsa medyan nasıl ulaşılacağını hiçbir fikrim yok, bu yüzden en azından küçük ipucu takdir ediyorum.