Higher-order functions: Difference between revisions
Content added Content deleted
Line 2,472: | Line 2,472: | ||
USES |
USES |
||
Math, |
|||
SysUtils, |
|||
variants; |
|||
{$WARN 6058 off : Call to subroutine "$1" marked as inline is not inlined} // Use for variants |
|||
TYPE |
TYPE |
||
Line 2,554: | Line 2,554: | ||
Setlength ( __, length ( x ) ); |
Setlength ( __, length ( x ) ); |
||
FOR k := Low ( x ) |
FOR k := Low ( x ) to High ( x ) DO |
||
__ [ k ] := x [ High ( x ) - k ] ; |
__ [ k ] := x [ High ( x ) - k ] ; |
||
Line 2,585: | Line 2,585: | ||
Setlength ( __, High ( x ) ); |
Setlength ( __, High ( x ) ); |
||
FOR k := Low ( x ) + 1 |
FOR k := Low ( x ) + 1 to High ( x ) DO |
||
__ [ k - 1 ] := x [ k ] ; |
__ [ k - 1 ] := x [ k ] ; |
||
Line 2,607: | Line 2,607: | ||
Setlength ( __, y ); |
Setlength ( __, y ); |
||
FOR k := Low ( x ) |
FOR k := Low ( x ) to y - 1 DO |
||
__ [ k ] := x [ k ] ; |
__ [ k ] := x [ k ] ; |
||
Line 2,634: | Line 2,634: | ||
result := Ar ; |
result := Ar ; |
||
Setlength ( Ar, 0 ); |
|||
END; |
END; |
||
Line 2,666: | Line 2,668: | ||
result := Ar ; |
result := Ar ; |
||
Setlength ( Ar, 0 ); |
|||
END; |
END; |
||
Line 2,686: | Line 2,690: | ||
result := Ar ; |
result := Ar ; |
||
Setlength ( Ar, 0 ); |
|||
END; |
END; |
||
Line 2,706: | Line 2,712: | ||
result := Ar ; |
result := Ar ; |
||
Setlength ( Ar, 0 ); |
|||
END; |
END; |
||
Line 2,744: | Line 2,752: | ||
result := Ar ; |
result := Ar ; |
||
Setlength ( Ar, 0 ); |
|||
END; |
END; |
||
Line 2,781: | Line 2,790: | ||
result := Ar ; |
result := Ar ; |
||
Setlength ( Ar, 0 ); |
|||
END; |
END; |
||
Line 2,933: | Line 2,943: | ||
FUNCTION Cotangens ( x: variant ) : variant ; |
FUNCTION Cotangens ( x: variant ) : variant ; |
||
BEGIN |
BEGIN |
||
IF ( x = 0 ) Then Exit ( 'Inf'); |
IF ( x = 0 ) Then Exit ( 'Inf'); |
||
result := cot ( x ); |
result := cot ( x ); |
||
END ; |
END ; |
||
Line 2,964: | Line 2,978: | ||
FUNCTION Delete ( x, y: variant ) : variant ; |
FUNCTION Delete ( x, y: variant ) : variant ; |
||
BEGIN |
BEGIN |
||
IF ( x = y ) THEN Exit ( False ) ; |
IF ( x = y ) THEN Exit ( False ) ; |
||
result := y; |
result := y; |
||
END ; |
END ; |
||
Line 3,039: | Line 3,057: | ||
END ; |
END ; |
||
END. |
END. |
||