move dmath, dsafe and nixctor to snippets/ directory

This commit is contained in:
Jeremy Baxter 2024-04-10 13:06:39 +12:00
parent 43b30424b1
commit 625968bef3
13 changed files with 0 additions and 0 deletions

36
snippets/dmath/hcf.d Normal file
View file

@ -0,0 +1,36 @@
import std.conv : to;
import std.stdio : write, writeln;
void
main(string[] args)
{
int i, x, y;
int[] xf, yf;
x = args[1].to!int();
y = args[2].to!int();
xf = factorsOf(x);
yf = factorsOf(y);
for (i = 0; xf.length > i || yf.length > i; i++) {
if (i < xf.length)
write(xf[i]);
write(" ");
if (i < yf.length)
write(yf[i]);
writeln();
}
}
int[]
factorsOf(int x)
{
int[] a;
foreach (int i; 1 .. x + 1) {
if (x % i == 0)
a ~= i;
}
return a;
}