Форум программистов, компьютерный форум, киберфорум
Haskell
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.80/5: Рейтинг темы: голосов - 5, средняя оценка - 4.80
0 / 0 / 0
Регистрация: 22.06.2021
Сообщений: 1

Списочные структуры

22.06.2021, 17:50. Показов 1037. Ответов 3
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Всем привет! В универе дали доп задание на Haskell, а я с ним никогда не работал. Не в службу, а в дружбу, помогите, если можете, пожалуйста))

Задача звучит так:
На языке Haskell разработать программу записи следующих списочных структур в точечной нотации, т.е. используя конструктор списочных структур ( : )
1. [a, b, c]
2. [[a, b], c]
3. [a, b, [c, d]]
4. [a]
5. [a, [b, c]]
6. [[]]
В качестве отчетности представить исходный код программы.

Я находил разные куски для кода, но собрать целую программу так и не получилось (мозгов мало видать).
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
22.06.2021, 17:50
Ответы с готовыми решениями:

Списочные функции высших порядков
Здравствуйте) Еще раз нужна ваша помощь: Напишите функцию composeAllMy :: -> (a -> a), берущую список функций и возвращающую...

Списочные функции высших порядков
a) используя функцию map: все четные элементы списка удвоить, а нечетные уменьшить на 3 б) используя функцию filter: удалить из строки...

списочные ячейки
помогите пожалуйста создать списочные ячейки для данного списка ( ( ( a ( b ( c ) d ) ( ( e ) ) ) ) f )

3
Супер-модератор
Эксперт функциональных языков программированияЭксперт Python
 Аватар для Catstail
38195 / 21128 / 4309
Регистрация: 12.02.2012
Сообщений: 34,733
Записей в блоге: 14
23.06.2021, 05:42
Что-то непонятное... Запись [a,b,c] - это что? Если a,b,c - типовые переменные, то эта запись недопустима (в Хаскелле списки гомогенны). И большая часть остальных записей - тоже недопустима. Корректна запись [a]. Это обычный список элементов типа a. В вашей "точеной нотации" этот список запишется так a1:a2:a3...[]. И последний список будет иметь вид: []:[]

Цитата Сообщение от xgrey_owl Посмотреть сообщение
Не в службу, а в дружбу,
- в каком универе дают такие задания?
1
Модератор
 Аватар для Curry
5158 / 3488 / 536
Регистрация: 01.06.2013
Сообщений: 7,568
Записей в блоге: 9
23.06.2021, 14:07
Цитата Сообщение от xgrey_owl Посмотреть сообщение
разработать программу записи следующих списочных структур в точечной нотации, т.е. используя конструктор списочных структур ( : )
В огороде бузина ...
Точечная нотация это не ( : ), а.
Haskell
1
(.) :: (b -> c) -> (a -> b) -> a -> c
Такие записи на языке Haskell возможны если, допустим, для второго примера предполагать что тип c это список элементов типов а и b.
Ну, хоть что то подобное
Haskell
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
main::IO()
main = do
    let example1 = 
            let a = "a"
                b = "b"
                c = "c"
            in a : b : [c]
        example2 = 
            let a = "a"
                b = "b"
                c = ["c"]
            in (a : [b]) : [c]
        example3 = 
            let a = ["a"]
                b = ["b"]
                c = "c"
                d = "d"
            in a : b : [c:[d]]
        example4 = 
            let a = "a"
            in a : []
        example5 = 
            let a = ["a"]
                b = "b"
                c = "c"
            in a : [b:[c]]
        example6 = [[]] :: [[String]]    
    print example1
    print example2
    print example3
    print example4
    print example5
    print example6
Задание некорректно сформулировано.
1
82 / 75 / 10
Регистрация: 12.08.2019
Сообщений: 81
24.06.2021, 10:37
Единственное что на ум пришло, как с многовложенными списками бороться я не знаю.

Haskell
1
2
3
myShowList :: Show a => [a] -> String
myShowList [] = "[]"
myShowList (x : xs) = show x ++ " : " ++ myShowList xs
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
24.06.2021, 10:37
Помогаю со студенческими работами здесь

списочные ячейки
Всем доброго времени суток!) Посмотрите, пожалуйста, кому не сложно, правильно ли составлены списочные ячейки для списка...

Переведите следующие списочные записи в точечные:
Переведите следующие списочные записи в точечные: • ((w) x);

Переведите следующие списочные записи в точечные
(nil nil nil)

Переведите следующие списочные записи в точечные
Переведите следующие списочные записи в точечные: (((v) w x) y z) Добавлено через 1 час 1 минуту (dotprint '(((v) w x) y z))

Списочные структуры
В данной программе идет перечисление заданий с элементами. При работе выходит ошибка. uses crt; type uk=^zveno; zveno=record ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Новые блоги и статьи
Программный контроль заполнения реквизита табличной части документа
Maks 02.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: реализовать контроль заполнения реквизита табличной части. . .
wmic не является внутренней или внешней командой
Maks 02.04.2026
Решение: DISM / Online / Add-Capability / CapabilityName:WMIC~~~~ Отсюда: https:/ / winitpro. ru/ index. php/ 2025/ 02/ 14/ komanda-wmic-ne-naydena/
Программная установка даты и запрет ее изменения
Maks 02.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: при создании документов установить период списания автоматически. . .
Вывод данных в справочнике через динамический список
Maks 01.04.2026
Реализация из решения ниже выполнена на примере нетипового справочника "Спецтехника" разработанного в конфигурации КА2. Задача: вывести данные из ТЧ нетипового документа. . .
Функция заполнения текстового поля в реквизите формы документа
Maks 01.04.2026
Алгоритм из решения ниже реализован на нетиповом документе "ВыдачаОборудованияНаСпецтехнику" разработанного в конфигурации КА2, в дополнении к предыдущему решению. На форме документа создается. . .
К слову об оптимизации
kumehtar 01.04.2026
Вспоминаю начало 2000-х, университет, когда я писал на Delphi. Тогда среди программистов на форумах активно обсуждали аккуратную работу с памятью: нужно было следить за переменными, вовремя. . .
Идея фильтра интернета (сервер = слой+фильтр).
Hrethgir 31.03.2026
Суть идеи заключается в том, чтобы запустить свой сервер, о чём я если честно мечтал давно и давно приобрёл книгу как это сделать. Но не было причин его запускать. Очумелые учёные напечатали на. . .
Модель здравосоХранения 6. ESG-повестка и устойчивое развитие; углублённый анализ кадрового бренда
anaschu 31.03.2026
В прикрепленном документе раздумья о том, как можно поменять модель в будущем
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru