Initial data commit
This commit is contained in:
parent
72d218235f
commit
f23f22d71c
199087 changed files with 3378941 additions and 0 deletions
19
Task/Forward-difference/D/forward-difference-1.d
Normal file
19
Task/Forward-difference/D/forward-difference-1.d
Normal file
|
|
@ -0,0 +1,19 @@
|
|||
T[] forwardDifference(T)(in T[] data, in int level) pure nothrow
|
||||
in {
|
||||
assert(level >= 0 && level < data.length);
|
||||
} body {
|
||||
auto result = data.dup;
|
||||
foreach (immutable i; 0 .. level)
|
||||
foreach (immutable j, ref el; result[0 .. $ - i - 1])
|
||||
el = result[j + 1] - el;
|
||||
result.length -= level;
|
||||
return result;
|
||||
}
|
||||
|
||||
void main() {
|
||||
import std.stdio;
|
||||
|
||||
const data = [90.5, 47, 58, 29, 22, 32, 55, 5, 55, 73.5];
|
||||
foreach (immutable level; 0 .. data.length)
|
||||
forwardDifference(data, level).writeln;
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue