Во-первых, я новичок. Я также дворник, который никогда не писал ни копейки кода. Я просто люблю это делать. Это для развлечения: При этом я написал эту консольную игру в крестики-нолики, в которой достаточно искусственного интеллекта, чтобы не проиграть каждую игру. (Я полагаю, что он должен называться ai.) Он имеет что-то вроде 70 операторов if / else if для компьютеров. Я использовал 3 массива типа int:
int L[2], M[2], R[2];
0 = blank;
1 = Х;
2 = O;
Доска затем «выглядит» как
L [0] | M [0] | R [0]
L [1] | M [1] | R [1]
L [2] | М [2] | R [2]
Итак, я в основном записал все возможные сценарии, которые я мог думать примерно так:
if(M[0]==1 & M[1]==1 & M[2]==0){M[2] = 2;}//here the computer prevents a win
else if(L[0] ==2&M[1]==2&R[2]==0){R[2]=2;}//here the computer wins
//and so on....68 more times!
Думаю, мой вопрос (вопросы):
Есть ли лучший способ?
Есть ли способ достичь того же результата с меньшим количеством строк кода?
Считается ли это искусственным интеллектом?