Помогите пожалуйста,нужно очень срочно
Необходимо выполнить два задания, написать код:
1)Вывести на экран простые числа от 132 до 723. 2) Заполнить массив случайными числами и найти среднее значение, медианное значение и моду |
Цитата:
|
laimas,
а мод? |
рони,
это значение, которое встречается в наборе чаще всех, например для 1, 2, 2, 3 = 2. PS. Только не мод, а мода. |
laimas,
спасибо |
Rise,
вспоминайте школу :) медианой треугольника называется отрезок соединяющий вершину с серединой противоположной ей стороны. Для чисел, это упорядочить набор по возрастанию и взять среднее значение в наборе, а если длина набора четная, то сумму двух средних значений деленной по полам. Для 1,2,2,3,3 = 2 а для 1,2,3,3 = (2 + 3) / 2 = 2,5 У 1,2,2,3,3 две моды - 2 и 3, также у набора может не быть моды. |
Rise,
Мо́да — значение во множестве наблюдений, которое встречается наиболее часто. (Мода = типичность.) Иногда в совокупности встречается более чем одна мода (например: 6, 2, 6, 6, 8, 9, 9, 9, 10; мода = 6 и 9). В этом случае можно сказать, что совокупность мультимодальна. Из структурных средних величин только мода обладает таким уникальным свойством. Как правило мультимодальность указывает на то, что набор данных не подчиняется нормальному распределению.(Википедия) |
Цитата:
|
#1
let getSimpleNumbers = ( ( ) => { function isSimple(num) { let delimiter = Math.floor(num / 2); while (delimiter > 1) { if (num % delimiter-- === 0) return false; } return true; } return (from, to) => { let x, result = [ ]; for (x = from; x <= to; x++) { if ( isSimple(x) ) result.push(x); } return result } } ) ( ) alert( getSimpleNumbers(132, 723) ) |
#2
function getRandomNumbers(amt = 100, min = 0, max = 100) { let result = [ ]; if (max < min) [max, min] = [min, max]; while (result.length < amt) { result.push( ( min + max * Math.random( ) ).toFixed(0) ) } return result } function getAverage(arr) { let result = arr.reduce( (res, i) => { return +res + +i; } ) return result / arr.length } function getMedian(arr) { let copy = [ ], sum = 0, halfLen = arr.length / 2 ; Object.assign(copy, arr); copy.sort( (a, b) => a - b ) sum += +copy[ Math.ceil(halfLen) - 1 ]; sum += +copy[ Math.floor(halfLen) ]; return sum / 2 } function getMode(arr) { let key, result = [ ], count = { }, max = -Infinity, nomodeMsg = "The array hasn't mode.", nomodeFlag = true ; arr.forEach( (item) => { if ( !(item in count) ) count[item] = 0; count[item]++ max = max < count[item] ? count[item] : max; } ); if (max <= 1) return nomodeMsg; for (key in count) { if ( count[key] === max ) { result.push(key) } else { nomodeFlag = false } } return nomodeFlag ? nomodeMsg : result; } let // Получим последовательность из 10 целых случайных чисел от 0 до 100 r = getRandomNumbers(10, 0, 100) // Получим массив мод для последовательности m = getMode(r), // Получим медиану для последовательности med = getMedian(r), // Получим среднее значение для последовательности a = getAverage(r) ; alert( `Для последовательности ${r} Среднее: ${a} Медиана: ${med} Мода(ы): ${m}` ); |
Часовой пояс GMT +3, время: 21:59. |