Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people, just like you, are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
Solved

MasterMind variation

Posted on 1997-12-11
1
453 Views
Last Modified: 2010-04-16
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


Thanks for your help
0
Comment
Question by:kkarnez
1 Comment
 
LVL 1

Accepted Solution

by:
potsy earned 300 total points
ID: 1216973
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) -->');
  readln(p);
  write('How many colors (1-9) -->');
  readln(c);
   { 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,' -->');
readln(user[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');
  readln;
End.

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

Featured Post

Announcing the Most Valuable Experts of 2016

MVEs are more concerned with the satisfaction of those they help than with the considerable points they can earn. They are the types of people you feel privileged to call colleagues. Join us in honoring this amazing group of Experts.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Suggested Solutions

Title # Comments Views Activity
Extract text from webbrowser 5 1,401
access tor through embbed delphi browser 4 394
What are the VB.NET data type equivalents for a Delphi function? 10 625
Conversion ? 15 92
If you are looking at this article, you have most likely been hit by some version of ransomware and are trying to find out if there is anything you can do, or what way you should react - READ ON!
Most MSPs worth their salt are already offering cybersecurity to their customers. But cybersecurity as a service is wide encompassing and can mean many things.  So where are MSPs falling in this spectrum?
Email security requires an ever evolving service that stays up to date with counter-evolving threats. The Email Laundry perform Research and Development to ensure their email security service evolves faster than cyber criminals. We apply our Threat…
In a recent question (https://www.experts-exchange.com/questions/29004105/Run-AutoHotkey-script-directly-from-Notepad.html) here at Experts Exchange, a member asked how to run an AutoHotkey script (.AHK) directly from Notepad++ (aka NPP). This video…

790 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question