1 / 1 / 0
Регистрация: 27.10.2016
Сообщений: 18
|
|
1 | |
Разработайте программу для анализа и обобщения результатов опроса27.10.2016, 17:45. Показов 1725. Ответов 4
Метки нет Все метки)
(
Помогите пожалуйста. Большие проблемы с хаскелем.
Разработайте программу для анализа и обобщения результатов опроса. Пример опроса: Каково Ваше общее мнение об этом курсе? Ваше мнение о лекциях? Что Вы думаете о том, что занятия назначены на субботу? Что Вы думаете о заданиях для лабораторных работ? Насколько трудным был для Вас этот курс? Каждый вопрос имеет фиксированное количество ответов (например: очень хорошо, хорошо, нормально, плохо, очень плохо). Ответ одного человека представлен списком пар (номер вопроса, ответ), например: [(1, "очень хорошо"), (3, "плохо"), (4, "нормально")]. Допускается, что человек мог не ответить на некоторые вопросы (в нашем примере это 2 и 5), но не допускается несколько ответов на один и тот же вопрос. Определите функцию validReply :: Reply -> Bool, которая определяет, допустим ли ответ. Пример списка ответов: someReplies :: [Reply] someReplies =[[(1, "очень хорошо"), (3, "плохо"), (4, "нормально")], [(2,"хорошо"), (3,"плохо"), (4,"хорошо"), (5,"трудно")], [(4,"нормально"), (5,"очень трудно")]] Определите функцию questions :: [Reply] -> [Int], которая по списку результатов опроса возвращает упорядоченный список номеров вопросов, которые были отвечены хоть в каких-то результатах. Пример: questions someReplies возвращает [1,2,3,4,5]. Определите функцию answers :: Int -> [Reply] -> [String], которая по номеру вопроса и списку результатов опроса возвращает список всех ответов на него. Пример: answers 3 someReplies возвращает ["плохо","плохо"]. Определите функцию summary :: [Reply] -> [(Int,[(Int,String)])], которая по списку результатов опроса возвращает таблицу, содержащую для каждого вопроса все ответы, данные на него и количество каждого ответа. Ответы должны быть отсортированы так, чтобы самые частые были вначале. Пример: Main> summary someReplies [(1,[(1,"очень хорошо")]), (2,[(1,"хорошо")]), (3,[(2,"плохо")]), (4,[(2,"нормально"),(1,"хорошо")]), (5,[(1,"очень трудно"),(1,"трудно")])] Определите summarize :: [Reply] -> IO (), которая по списку результатов опроса печатает таблицу ответов с процентами. Пример: Main> summarize someReplies Вопрос 1: 100% очень хорошо Вопрос 2: 100% хорошо Вопрос 3: 100% плохо Вопрос 4: 67% нормально 33% хорошо Вопрос 5: 50% очень трудно 50% трудно Для более обобщенного анализа сгруппируем ответы со словом «очень» и без него. Определите функцию mild :: [Reply] -> [Reply], которая по списку результатов опроса выдает список результатов опроса без слова «очень». Пример: Main> summarize (mild someReplies) Вопрос 1: 100% хорошо Вопрос 2: 100% хорошо Вопрос 3: 100% плохо Вопрос 4: 67% нормально 33% хорошо Вопрос 5: 100% трудно Напишите программу, которая получала бы данные из файла, где в строке записаны ответы на анкету одного человека, и выводила бы обобщенные результаты в текстовом виде (см. выше) и в виде столбчатой диаграммы.
0
|
|
27.10.2016, 17:45 | |
Ответы с готовыми решениями:
4
Разработайте алгоритм для анализа успеваемости Плагин для отображения результатов опроса в виде диаграмм Вывод результатов опроса PHP+MySQL Разработайте программу для достижения следующих целей: |
Модератор
![]() ![]() |
||||||
28.10.2016, 17:40 | 2 | |||||
Вот начало:
3
|
1 / 1 / 0
Регистрация: 27.10.2016
Сообщений: 18
|
|
30.10.2016, 09:52 [ТС] | 3 |
Спасибо))) Не знаю правда, получится ли дальше самому развить программу((( Но все равно, спасибо)
0
|
1 / 1 / 0
Регистрация: 27.10.2016
Сообщений: 18
|
|
04.11.2016, 12:55 [ТС] | 4 |
Извините, уважаемый Catstail, я хотел спросить, Вы сможете дальше помочь мне с разработкой данного проекта?
0
|
Модератор
![]() ![]() |
||||||
06.11.2016, 21:30 | 5 | |||||
Вот, добавил еще одну функцию (чтобы не париться с русскими буквами - перевел на английский).
1
|
06.11.2016, 21:30 | |
Помогаю со студенческими работами здесь
5
Разработайте программу для вычисления значения функции
Разработайте программу для вывода кодовой таблицы ASCII Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |