Ciele
- Vyskúšať vyriešenie väčšej úlohy.
Postup
Krok 1: Komplexnejšia úloha
Úloha 1.1
Definujte funkciu, ktorá vykreslí histogram zo zadaného zoznamu prostredníctvom znakov |
. Pričom nech je vykreslená aj legenda — čísla položiek dole a hodnoty naľavo. Pritom nech je v legende vypísaná len každá piata hodnota. Napr. pre zoznam [1,5,3,2,4,1,5,8,7,9,10,6,6,7,5,4,2,2,1]
nech je výsledok:
*Main> putStr (histogram values)
10 |
| |
| | |
| | | | |
| | | | | | |
5 | | | | | | | | | |
| | | | | | | | | | | |
| | | | | | | | | | | | |
| | | | | | | | | | | | | | | |
| | | | | | | | | | | | | | | | | | |
0 5 10 15
values :: [Int]
values = [1,5,3,2,4,1,5,8,7,9,10,6,6,7,5,4,2,2,1]
histogram :: [Int] -> String
histogram = undefined
Poznámka
Implementáciu rozdeľte na niekoľko samostatných funkcií, napríklad:
histogramBody :: [Int] -> [String]
legendLine :: Int -> String
legendColumn :: Int -> [String]