Play audio slide show -- Keyboard shortcut: 'x'  Lecture overview -- Keyboard shortcut: 'u'  Previous page: Kontrakter: ydelse og nydelse -- Keyboard shortcut: 'p'  Next page: Generelle kontraktaspekter: klasseinvarianter [Section] -- Keyboard shortcut: 'n'  Lecture notes - all slides and notes together  Annotated slide -- Keyboard shortcut: 't'  Alphabetic index  Help page about these notes  Course home  Play sound for this slide -- Keyboard shortcut: 'y'    Designkontrakter og ansvarsfordeling - slide 16 : 31

Ydelse og nydelse i kvadratrods funktionen 

Kvadratrod(x: Real) ->  Real
    require x >= 0;
    ensure result * result = x;
 

- Ydelse Nydelse
Klient Skal overføre et ikke negativt tal x Får returneret kvadratroden af input'et
Forsyner Returnerer y, hvorom der gælder at y * y = x Skal ikke bekymre sig om negative input