24 lines
680 B
Text
24 lines
680 B
Text
$include "seed7_05.s7i";
|
|
|
|
const func string: middle3 (in integer: number) is func
|
|
result
|
|
var string: middle3 is "";
|
|
begin
|
|
middle3 := str(abs(number));
|
|
if not odd(length(middle3)) or length(middle3) < 3 then
|
|
middle3 := "error";
|
|
else
|
|
middle3 := middle3[succ((length(middle3) - 3) div 2) len 3];
|
|
end if;
|
|
end func;
|
|
|
|
const proc: main is func
|
|
local
|
|
var integer: number is 0;
|
|
var string: mid3 is "";
|
|
begin
|
|
for number range [] (123, 12345, 1234567, 987654321, 10001, -10001, -123,
|
|
-100, 100, -12345, 1, 2, -1, -10, 2002, -2002, 0) do
|
|
writeln(number <& ": " <& middle3(number));
|
|
end for;
|
|
end func;
|