Haskell cw1

background image

HASKELL, ćwiczenie 1

W poniższych zadaniach (oprócz 7) zakładamy, że występujące liczby są typu

Int

.

Przed każdą definicją umieszczamy krótki opis funkcji jako komentarz.
Przy każdej definicji należy podać typ definiowanej funkcji.
Po każdej definicji należy sprawdzić działanie w interpreterze i umieścić wyniki w pliku jako
komentarz.

1) Zdefiniuj funkcję

min2

wyznaczającą minimum z dwóch liczb całkowitych. Użyj

konstrukcji

if ... then ...else

. Sprawdź

min2

4 2 oraz

min2

4.0 2. Wyjaśnij dlaczego w

drugim przypadku pojawia się błąd. Przy sprawdzaniu poprawności definicji użyj też tej
funkcji jako operatora infiksowego.

2) Zdefiniuj funkcję wyznaczającą minimum z trzech liczb całkowitych.
a)

min3a

- wprost używając definicji warunkowej ze

strażnikami

; starać się zastosować

możliwie minimalną liczbę warunków
b)

min3b

- jedynie z wykorzystaniem funkcji min2

c)

min3c

- jedynie z wykorzystaniem funkcji min2 w postaci operatora; nie używać

nawiasów tam gdzie jest to możliwe.

3) Zdefiniuj funkcję jednoargumentową

sprawdz

(x) o wartości typu

String

, która dla x

ujemnych podaje w wyniku napis „liczba mniejsza od 0”, dla

10

,

0

x

– „liczba z

przedziału od 0 do 10”, dla

10

>

x

– „liczba większa od 10”. Użyj definicji warunkowej ze

strażnikami

; staraj się zastosować możliwie minimalną liczbę warunków.


4) Zdefiniuj funkcję trzyargumentową

miedzy

o wartościach logicznych, która daje wartość

true

dla argumentów x,y,z jeżeli

z

y

x

≤≤≤≤

≤≤≤≤

lub

x

y

z

≤≤≤≤

≤≤≤≤

.


5) Zdefiniuj funkcję

liczba_srodkowa

wyznaczającą liczbę środkową spośród trzech liczb

całkowitych. Użyj definicji ze

strażnikami

wykorzystując funkcję logiczną

miedzy


6) Zdefiniuj funkcję trzyargumentową

sum_min_kw

dającą w wyniku sumę kwadratów

dwóch mniejszych argumentów. Wykorzystaj funkcje:

min2

(x,y) oraz

suma_kwadratów

(x,y).


7) Zdefiniuj funkcję trzyargumentową

pierwiastki

wyznaczającą pierwiastki równania

kwadratowego o współczynnikach rzeczywistych a, b, c. Wynikiem jest lista pierwiastków,
która jest typu

[Float].

Użyj definicji warunkowej ze

strażnikami

oraz definicji lokalnych z

where

. Wypróbować też inne sposoby definicji.


Wyszukiwarka

Podobne podstrony:
Matlab cw1 2 zaoczni
ćw1 Maszyna turinga
MZ TZrokII cw1(1)
ćw1
cw1 modelowanie id 122786 Nieznany
cw1
Ćw1 Punkty pomiarowe
Ćw1 Budowa i geometria ostrzy skrawających jakieś opracowanko
Tabelka do lab-cw1, Studia Budownictwo PB, 5 semestr, laborki metal
cw1
ĆW1 doc biochemia
cw1 (2)
GRI cw1 id 195763 Nieznany
Biochemia(ŻCz)Ćw1 Właściwości fizyko chemiczne aminokwasów
cw1
ćw1&2 3M3
cw1 2
cw1 rysunek

więcej podobnych podstron