Anonymous user
Middle three digits: Difference between revisions
→{{header|D}}: don't need an exception actually
(→{{header|Perl 6}}: restore test accidentally deleted) |
(→{{header|D}}: don't need an exception actually) |
||
Line 8:
=={{header|D}}==
<lang d>import std.stdio, std.traits, std.math, std.conv;
string middleThreeDigits(T)(in T n) if (isIntegral!T) {
auto s = n.abs().text();
auto len = s.length;
if (len < 3 || len % 2 == 0)
auto mid = len / 2;
return s[mid - 1 .. mid + 2];
Line 21:
void main() {
-123, -100, 100, -12345];
foreach (n; passing ~ failing)
▲ writefln("middleThreeDigits(%s) returned: %s", n, answer);
}</lang>
<pre>middleThreeDigits(123)
middleThreeDigits(12345)
middleThreeDigits(1234567)
middleThreeDigits(987654321)
middleThreeDigits(10001)
middleThreeDigits(-10001)
middleThreeDigits(-123)
middleThreeDigits(-100)
middleThreeDigits(100)
middleThreeDigits(-12345)
middleThreeDigits(1)
middleThreeDigits(2)
middleThreeDigits(-1)
middleThreeDigits(-10)
middleThreeDigits(2002)
middleThreeDigits(-2002)
middleThreeDigits(0)
=={{header|OCaml}}==
|