# MasterMind variation

I wonder if anyone can help me with this...
I want to make a mastermind variation for my homepage. This variation does not have to do
with colors, instead it has to do with numbers. The program must take as
input the max number that can be used as well  the number of the
positions (pinholes). The program must use minmax of alpha-beta...

(example)

Enter the max number: 4
Enter the number of positions: 5
Now give the code: 2 3 2 4 1

Thinking...
Your code must be: 2 3 2 4 1

###### Who is Participating?

x
I wear a lot of hats...

"The solutions and answers provided on Experts Exchange have been extremely helpful to me over the last few years. I wear a lot of hats - Developer, Database Administrator, Help Desk, etc., so I know a lot of things but not a lot about one thing. Experts Exchange gives me answers from people who do know a lot about one thing, in a easy to use platform." -Todd S.

Commented:
here is some code I found
uses crt;

type
pegstype = array[1..10] of integer;

var
user,pegs,pegs2 : pegstype;
guess,x,p,c,p2,c5  : integer;

{ ----------------------------------------------------------------------------}

procedure Correct(p,c : integer; user,pegs : pegstype; var c5,p2 :
integer); { cheks if done or not }

var p3,b,c2,c3,c4 : integer;
colsc,      { code colors }
colsg    { colors from user }
: array[1..9] of integer;
begin
b := 0;
{ counts correct pegs }
for c2 := 1 to p do if (user[c2]=pegs[c2]) then b := b+1;
p2 := b;
{ counts correct colors }
pegs2 := pegs;
p3 := p;
{ fills COLSc with the colors in PEGS }
c4 := 0;
for c2 := 1 to c do
begin
if (pegs[c2])=c2 then
begin
c4 := c4+1;
colsc[c4] := c2;
end;
end;
{ fills COLSg with the colors in USER }
b := 0;
for c2 := 1 to c do
begin
if (user[c2]=c2) then
begin
b := b+1;
colsg[b] :=c2;
end;
end;
{ finally counts the correct colors }
c5 := 0; { says how many colors correct }
for c2 := 1 to c4 do
for c3 := 1 to b do
if colsg[c3]=colsc[c2] then c5 := c5+1;
end;
{===
=======================================================================}

Begin
clrscr;
randomize;
{ ask user how many pegs and colors to use }
write('How many pegs (1-10) -->');
write('How many colors (1-9) -->');
{ initializes the pegs }
for x := 1 to p do pegs[x] := random(c)+1;
{ starts playing the game }
guess := 1;
repeat
writeln('Guess ',guess);
for x := 1 to p do
begin
write('Peg ',x,' -->');
end;
guess := guess+1;
correct(p,c,user,pegs,c5,p2);  { calls procedure to check pegs }
writeln('You have ',p2,' correct peg(s)');
writeln('and ',c5,' correct color(s)');
writeln;
until p2=p;  { loop until number of good guess = number of pegs }
writeln('You have broken the code in ',guess-1,' guesses');
End.

It should work fine if you need more help let me know.
0

Experts Exchange Solution brought to you by