Компьютерный форум
Правила
Вернуться   Компьютерный форум > Форум программистов > Офтопик > Работа > Задания за деньги
Перезагрузить страницу Разработайте программу для анализа и обобщения результатов опроса
Ответ
 
Опции темы Опции просмотра
  (#1 (permalink)) Старый
JoveMacClain JoveMacClain вне форума
Новичок
 
Сообщений: 2
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Регистрация: 04.11.2016
По умолчанию Разработайте программу для анализа и обобщения результатов опроса - 04.11.2016, 15:07

Помогите пожалуйста. Большие проблемы с хаскелем.
Разработайте программу для анализа и обобщения результатов опроса. Пример опроса:

Каково Ваше общее мнение об этом курсе?
Ваше мнение о лекциях?
Что Вы думаете о том, что занятия назначены на субботу?
Что Вы думаете о заданиях для лабораторных работ?
Насколько трудным был для Вас этот курс?

Каждый вопрос имеет фиксированное количество ответов (например: очень хорошо, хорошо, нормально, плохо, очень плохо). Ответ одного человека представлен списком пар (номер вопроса, ответ), например: [(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% трудно
Напишите программу, которая получала бы данные из файла, где в строке записаны ответы на анкету одного человека, и выводила бы обобщенные результаты в текстовом виде (см. выше) и в виде столбчатой диаграммы.
Ответить с цитированием
Ads
Ответ

Опции темы
Опции просмотра

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Trackbacks are Вкл.
Pingbacks are Вкл.
Refbacks are Выкл.


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Увеличение скорости опроса мыши (эксперимент) LegalUA Техническая поддержка 0 24.04.2015 05:37
Разработайте тип данных, характеризующий операции над строками Autumn Haskell 10 16.12.2011 12:17
Вывод результатов теста на JS Capelan DHTML, JavaScript, VBScript 1 31.08.2011 19:50
Разработайте класс, реализующий линейный двусвязный список Black Mamba Pascal 2 25.08.2011 00:05
VBA заполнить таблицу результатов Дашкаа Вопросы начинающих программистов 0 19.06.2011 20:26
Разработайте схему алгоритма и напишите программу на алгоритмическом языке VB студент01 Visual Basic 0 17.12.2010 19:12
Спроектируйте и разработайте метод, определяющий, сколько времени прошло Nastya* Java 2 31.10.2010 17:14
Обрезка результатов поиска alex.prik PHP 0 03.12.2009 13:01
Нужно составить программу анализа и преобразования арифметического выражения Banny Lisp 10 12.01.2009 01:25
Как сделать отображение результатов tin C++ на Unix 4 09.06.2007 18:52
Создание опроса с тремя вариантами ответов pEANUT wOLF DHTML, JavaScript, VBScript 0 05.07.2005 16:33
Вывод результатов NetWkstaUserEnum KONDAR Visual C++ 7 29.05.2005 21:49



Powered by vBulletin® Version 3.8.7
Copyright ©2000 - 2018, Jelsoft Enterprises Ltd.
Нardforum.ru - компьютерный форум и программирование, форум программистов