Javascript: Вертикальная гистограмма

JS: Функции 28 сообщений
Обновлено: 04 мая, 12:38
318
Студентов
72%
Завершения

Игральная кость — шестигранный кубик, который бросается несколько раз. Гистограмма — это графическое представление данных в виде столбцов или колонок.

histogram.js

Реализуйте и экспортируйте по умолчанию функцию, которая выводит на экран вертикальную гистограмму. Функция принимает на вход количество бросков кубика и функцию, которая имитирует бросок игральной кости (её реализовывать не нужно). Вызов этой функции генерирует значение от 1 до 6, что соответствует одной из граней игральной кости.

Гистограмма содержит столбцы, каждому из которых соответствует грань игральной кости и количество выпадений этой грани. Результаты отображаются графически (с помощью символов #) и в виде процентного значения от общего количества бросков, за исключением случаев, когда количество равно 0 (нулю).

Дополнительные условия:

  • Процентные значения должны быть прижаты влево относительно столбца.
  • Значения сторон игральной кости должны быть посредине столбца.
  • Столбцы между собой разделены пробелом
  • Количество секций в столбце (высота столбца) должно соответствовать количеству выпадений каждой из сторон игральной кости.

Примеры

import displayHistogram from '../histogram.js';

displayHistogram(32, rollDie);
// =>                 28%
//                    ###
//                    ###
//            19%     ###
//            ### 16% ### 16%
//    13%     ### ### ### ###
//    ### 9%  ### ### ### ###
//    ### ### ### ### ### ###
//    ### ### ### ### ### ###
//    ### ### ### ### ### ###
//    -----------------------
//     1   2   3   4   5   6

displayHistogram(13, rollDie);
// =>                 31% 31%
//                    ### ###
//        15%     15% ### ###
//        ### 8%  ### ### ###
//        ### ### ### ### ###
//    -----------------------
//     1   2   3   4   5   6

Подсказки:

  • Гистограмма.
  • Для решения задачи активно используйте функции из библиотеки lodash.
  • При получении процентного значения используйте стандартные правила округления числа.

Для полного доступа к испытанию нужен базовый план

Базовый план откроет полный доступ ко всем курсам, упражнениям и урокам Хекслета, проектам и пожизненный доступ к теории пройденных уроков. Подписку можно отменить в любой момент.

Получить доступ
900
упражнений
2000+
часов теории
3200
тестов