Skip to content

ssyp-ru/ssyp23-ws05

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Мастерская № 5 "Жмём данные"

Лисп — очень интересный, нестандартный язык программирования. Познакомиться с этим языком полезно любому программисту. На мастерской мы изучим Лисп, решим много задач и сделаем несколько проектных работ по сжатию данных. Вы увидите, что на Лиспе это программируется довольно легко.

Сборка и запуск

Для работы с проектами необходимо либо инсталлировать систему HomeLisp, скачав с сайта [http://homelisp.ru] инсталлятор.

Рекомендуем использовать портабельную версию (ее установка не требует административных прав). Для установки портабельной версии нужно просто распаковать инсталляционный архив в какую-либо доступную директорию. Должно получится следующее дерево поддиректорий:

*
|
+--Com
|
+--Lib
|
+--Patt
|
+--Samples
| 	

...

Далее следует скопировать в эту директорию файлы Arithm.lsp, Lzw.lsp, Huffman.lsp.

Как запускать проекты мастерской:

  • запустить среду разработки HomeLispIDE.exe;
  • выбрав на панели инструментов иконку "открыть" загрузить один из файлов проекта;
  • ввести команду (main)

Для Arithm.lsp следует ввести в поле ввода появившегося диалогового окна сжимаемую строку.

Для Lzw.lsp сначала следует выбрать режим вывода протокола: если ввести "yes" в любом регистре, то протокол будет сформирован; при вводе "no" протокол не формиру- естся; при ответе "quit" программа завершится. Далее, необходимо ввести в поле ввода сжимаемую строку (следует иметь в виду, что lzw-алгоритм работает эффективно при наличии в сжимаемых данных повторяющихся цепочек). Затем следует нажать кнопку "Сжать". Будут показаны результаты сжатия. Далее следует нажать кнопку "разжать" и убедиться, что воспроизведется исходная строка. После нажати кнопки "закрыть" про- грамма завершается. Если был выбран режим формирования протокола, то будет запущен браузер по умолчанию и показан протокол сжатия.

Для Huffman.lsp следует ввести в поле ввода появившейся формы сжимаемую строку и на- жать кнопку "сжать". Будет показано дерево кодирования Хаффмана. После нажатия кнопки "закрыть", в консоль будет выведена итоговая статистика.

Состав мастерской

Ученики

Суслякова Майя, Зикирин Дархан, Игонин Андрей, Шепель Марк, Яковлев Максим, Первушин Григорий

Руководитель

Файфель Борис Леонидович

About

Мастерская № 5 "Жмём данные"

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published