1. előadás - Követelmények
Metadata
- 4 db zárthelyi (4., 6., 9., 11. hetek)
- Házi feladatok
- Év végi NAGY beadandó
Hiányzásból 3 lehet
Zárthelyik
6 pontos:
4 gyakorlati pont + 2 elméleti pont (4., 6. hét)
5 gyakorlati pont + 1 elméleti pont (9.,11. hét)
Teljesítés: min 12 pont (ebből min 3 elméleti)
Házi feladatok
MINDEGYIK szükséges
Feltöltés: TMS Oldal
Másolás: Egyszer lehet, DE +1 beadandó feladat
Nagy beadandó
kötelező alapfeladat + 3 pontos extra
Megajánlott jegy
| Jegy | Pontszám |
|---|---|
| 2 | 12-14 |
| 3 | 15-17 |
| 4 | 18-20 |
| 5 | 21-24 |
Jegyet lehet javítani vizsgával.
A Haskell
Statikusan típusos: Minden értéknek van típusa
TISZTÁN funkcionális: nincsenek mellékhatások (memóriába felülírás, változó értékének változtatása, fájlba írás)
Alaptípusok
- Int
- Integer
- Bool (
True,False) - Char (pl:
'a') - String (pl:
"Hello World!") - Float
- Double
Osztályok
- Num (Bármilyen szám)
- Integral (Egész szám)
Int vs Integer
-
Int: Mérete architektúra függő (32 bites rendszeren 32 bit, same in 64 bit)
-
Integer: "Végtelen" méretű
Parancsok
Fájl betöltését többféleképpen lehet:
-
Ha van már nyitva GHCi
-
.hs fájltípust társítani GHCi-hez
-
Terminálban megadni paraméterként a GHCi-nek
Megnyitott modulok újratöltése:
Órai kód
module Gy01 where
a :: Int
a = 1 -- 'a' linear function that returns 1 of type Int
integer :: Integer
integer = 42
f :: Int -> Int
f x = x + 1 -- 'f' function that takes x of type Int and returns x+1
g :: Integer -> Integer -> Integer
g x y = 2 * x - y