-
Notifications
You must be signed in to change notification settings - Fork 0
/
Mapper.cpp
59 lines (45 loc) · 1.36 KB
/
Mapper.cpp
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
// file Mapper.cpp
#include <cppunit/config/SourcePrefix.h>
#include "Mapper.h"
//---------------------------------------------------------------
Mapper::Mapper()
{
humanGrid[0] = 1;
humanGrid[1] = 2;
humanGrid[2] = 3;
humanGrid[3] = 6;
humanGrid[4] = 9;
humanGrid[5] = 8;
humanGrid[6] = 7;
humanGrid[7] = 4;
humanGrid[8] = 5;
computerGrid[0] = 666;
computerGrid[1] = 0;
computerGrid[2] = 1;
computerGrid[3] = 2;
computerGrid[4] = 7;
computerGrid[5] = 8;
computerGrid[6] = 3;
computerGrid[7] = 6;
computerGrid[8] = 5;
computerGrid[9] = 4;
}
//---------------------------------------------------------------
Mapper::~Mapper()
{
}
//---------------------------------------------------------------
int Mapper::computerToHuman(int computerPosition) throw (invalid_argument)
{
if ( ( 0 > computerPosition ) || ( 9 <= computerPosition ) )
throw invalid_argument("computerToHuman value passed in is out of range");
return humanGrid[computerPosition];
}
//---------------------------------------------------------------
int Mapper::humanToComputer(int humanPosition) throw (invalid_argument)
{
if ( ( 0 >= humanPosition ) || ( 10 <= humanPosition ) )
throw invalid_argument("humanToComputer value passed in is out of range");
return computerGrid[humanPosition];
}
//---------------------------------------------------------------