Jump to content

Bulls and cows: Difference between revisions

m
Added Sidef
(BASIC | Applesoft BASIC)
m (Added Sidef)
Line 3,523:
You win!
</pre>
 
=={{header|Sidef}}==
<lang ruby>var size = 4;
var num = (1..9->shuffle.ft(0,size-1));
 
for (var guesses = 0; true; guesses++) {
 
var bulls = 0;
var cows = 0;
 
var input = (
Sys.scanln("Input: ").split(1)
.unique()
.grep {|c| c.match(/^[1-9]$/)??}
.map {|d| d.toInt}
);
 
input.len == size || (
"Invalid input!\n".warn;
guesses--;
next;
);
 
if (input == num) {
"You did it in %d attempts!\n".printf(guesses);
break;
}
 
for (num.range => \var i) {
if (num[i] == input[i]) {
bulls++;
}
elsif (num.contains(input[i])) {
cows++;
}
}
 
"Bulls: %d; Cows: %d\n".printf(bulls, cows);
}</lang>
 
 
2,753

edits

Cookies help us deliver our services. By using our services, you agree to our use of cookies.