BME Villamosmérnöki és Informatikai Kar
Műszaki informatika szak |
Nappali tagozat
2005/2006. tanév, tavaszi félév
|
div
2 (ahol div
az egészosztást jelenti),
ai <
an+1-i.
Írjon olyan SML-függvényt kisfeju
néven, amely kielégíti az alábbi specifikációt:
(* kisfeju : int -> int kisfeju a = b, ahol 'b' >= 2 a legkisebb olyan természetes szám, amelyre a 'b' alapú számrendszerben felírt 'a' szám kisfejű számsorozatot ad eredményül *)Segédfüggvényeket definiálhat. A jobbrekurzív függvényekből generált számítási folyamatok kevesebb tárterületet használnak, mint a nemjobbrekurzív függvényekből generáltak, ezért ajánljuk, hogy jobbrekurzív függvényeket írjon, ám ez nem kötelező, a pontozásba nem számít bele.
kisfeju 4 = 5 (* mert 45 = 4 kisfejű, de 44 = 1 0, 43 = 1 1, 42 = 1 0 0 nem az *) kisfeju 11 = 3 (* mert 113 = 1 0 2 kisfejű, de 112 = 1 0 1 1 nem az *) kisfeju 145 = 7 (* mert 1457 = 2 6 5 kisfejű, de ... *) kisfeju 293 = 3 (* mert 2933 = 1 0 1 2 1 2 kisfejű, de ... *)Megjegyzés: a példákban dr a d decimális szám r számrendszerbeli megfelelőjét jelenti.
A programot az Elektronikus
Tanársegéd segítségével Weben keresztül lehet beadni, a HF
beadás menüpont alatt. Ez az első SML kis házi feladat, a
megoldást khf-ml1.sml
néven kell beküldeni. A
névben meg kell különböztetni a kis- és nagybetűket.
A beadási határidő 2006. március 31., péntek, 24:00.
A vizsgaosztályzat megállapításakor a határidőre beadott, helyesen megoldott kis házi feladatért plusz 1 pont jár.