Bulls and cows: Difference between revisions

Updated D entry
(Updated D entry)
Line 696:
dchar[] ddigits = "123456789"d.dup;
//immutable chosen = array(randomCover(ddigits))[0 .. size];
const chosen = array(randomCover(ddigits, rndGen))[0 .. take(size]).array();
writeln("Guess a number composed of ", size,
" unique digits from 1 to 9 in random order.");
Line 706:
while (true) {
writef("\nNext guess (%d): ", nGuesses);
guess = to!dstring(readln().strip().dtext();
if (guess.countchars(ddigits) == size &&
walkLength(uniq(guess.dup.sort().uniq().walkLength() == size)
break;
writefln("I need %d unique digits from 1 to 9, no spaces", size);
Line 724:
writefln(" %d Bulls\n %d Cows", bulls, cows);
}
}
}</lang>
Output:
{{out}}
<pre>Guess a number composed of 4 unique digits from 1 to 9 in random order.