CyberneticGOD Posted September 29, 2015 Report Share Posted September 29, 2015 Salut, am pentru joi o "Tema" de casa, ma ajuta si pe mine cu o idee careva? sunt anul 1:))Logic? ?i structuri discrete - Tema 1Tema se pred? la începutul orei de laboratorExerci?iul 1: Rotunjirea numerelor Ocaml dispune de func?ia standard truncate : float -> int (nume echivalent: int_of_float) care trunchiaz? partea zecimal? a unui num?r real. a) Scrie?i o func?ie round : float -> int care rotunje?te un real la cel mai apropiat întreg. Dac? partea zecimal? e 0.5, rotunji?i num?rul în direc?ia opus? lui zero: round (-. 0.5) = -1, round 1.5 = 2 Scrie?i o func?ie care rotunje?te un num?r real la a doua zecimal?, folosind defini?ia de mai sus.Exerci?iul 2 Câte func?ii de pe o mul?ime cu 3 elemente pe o mul?ime cu 3 elemente nu sunt injective ? Argumenta?i cât mai simplu r?spunsul.Exerci?iul 3: Compunerea func?iilor La curs, am definit let comp f g x = f (g x) (* compunerea functiilor *) let appl2 f = comp f f (* f compus? cu ea îns??i *)?i am ar?tat, expandând defini?ia, c? appl2 appl2 reprezint? compunerea de 4 ori: appl2 appl2 f x = f (f (f (f x)))Considera?i urm?toarele defini?ii:let appl3 f = comp f (appl2 f)let appl23c = comp appl2 appl3let appl32c = comp appl3 appl2Explica?i, expandând defini?iile (pe hârtie) ce reprezint? fiecare din func?iile definite. Verifica?i pe calculator rezultatul, aplicând fiecare din ele func?iei f(x)=2*x+1 în punctul x=0. Quote Link to comment Share on other sites More sharing options...
Active Members MrGrj Posted September 30, 2015 Active Members Report Share Posted September 30, 2015 Normal ca te ajuta cineva. Da' mai intai pune si tu ce ai facut so far + ce nu ti-a iesit ( erorile pe care le primesti ).Daca esti anul 1 nu inseamna ca ai vreun handicap si nu poti incerca sa faci cate ceva. Quote Link to comment Share on other sites More sharing options...
Dalila96 Posted September 30, 2015 Report Share Posted September 30, 2015 let round x = (if(x>=0) then (if((x-truncate(x)) >= 0.5) then (truncate(x)+1 )else (truncate(x) ) )else (if(x<0) then (if((truncate(x)-x) >=0.5) then (truncate(x)-1 )else (truncate(x) ) ) )) Quote Link to comment Share on other sites More sharing options...