Difference between revisions of "FP Laboratory 6"
Jump to navigation
Jump to search
Line 4: | Line 4: | ||
*Create a function that print | *Create a function that print | ||
<syntaxhighlight lang="Haskell">zoom :: Int -> Pic -> Pic</syntaxhighlight> | <syntaxhighlight lang="Haskell">zoom :: Int -> Pic -> Pic</syntaxhighlight> | ||
+ | |||
+ | == Complex function - Huffman Codes == | ||
+ | |||
+ | *Create a function that will compute Huffman codes for a given list of characters and their frequencies. | ||
+ | <syntaxhighlight lang="Haskell">huffman :: [(Char, Int)] -> [(Char, String)]</syntaxhighlight> | ||
+ | <syntaxhighlight lang="Haskell" class="myDark"> | ||
+ | *Main> huffman [('a',45),('b',13),('c',12),('d',16),('e',9),('f',5)] | ||
+ | [('a',"0"),('b',"101"),('c',"100"),('d',"111"),('e',"1101"),('f',"1100")] | ||
+ | </syntaxhighlight> |
Revision as of 15:28, 17 September 2019
Operators
- Define following functions that performs corresponding logic operations:
not', and', or', nand', xor', impl', equ'
- Define the 'standard' priority for all these functions, if they are used as operators.
- Create a function that print
zoom :: Int -> Pic -> Pic
Complex function - Huffman Codes
- Create a function that will compute Huffman codes for a given list of characters and their frequencies.
huffman :: [(Char, Int)] -> [(Char, String)]
*Main> huffman [('a',45),('b',13),('c',12),('d',16),('e',9),('f',5)]
[('a',"0"),('b',"101"),('c',"100"),('d',"111"),('e',"1101"),('f',"1100")]