Я новичок в C и пытаюсь написать код c для игры peg solitaire (что очень похоже на шашки). 5 на 5 плата будет запуск в таком состоянии, какШашки, как игра/Peg Solitaire
. . O . .
. . O . .
O O . O O
. . O . .
. . O . .
конечной целью является, чтобы довести его до следующего состояния после того, как найти все правильные ходы
. . . . .
. . . . .
. . O . .
. . . . .
. . . . .
сделать это Я было сказано, что мне нужно использовать список (возможно, просто массив) плат.
Начальная доска помещается в список. Каждая доска в списке, в свою очередь, считывается из списка и все возможные шаги с этой доски, добавленные в список. Рассматривается следующая плата, и все ее результирующие доски добавляются и так далее. Тем не менее, одна из проблем заключается в том, что повторяющиеся доски могут быть помещены в список и «циклы». Вскоре это создает огромное количество досок (несколько миллионов). Вы можете решить эту проблему, добавив только доску в список, если ранее она никогда не была помещена в список. Каждая структура в списке будет содержать (помимо прочего) плату и информацию, позволяющую идентифицировать ее родительскую плату, т.е. совет, из которого он был создан.
Я хочу написать решение,
Считывает в 5x5board из файла (ARGV [1]), и проверяет, что он действителен. Платы указаны в файле с 5 строками по 5 символов. Каждый символ является либо полным, либо верхним регистром «O» (oh).
Распечатывает правильное решение (обратный порядок в порядке).
До сих пор у меня есть следующие, но может реально использовать помощь
#include <stdio.h>
#include <stdlib.h>
//reads the table from file
void OpenFile()
{
FILE *file = fopen("C:\\Users\\Sam\\Desktop\\pull_one.txt", "r"); //path
char c;
do
{
c = fgetc(file);
printf("%c", c);
}
while(c != EOF);
fclose(file);
}
struct node
{
int data;
int node* next;
}
int main(int argc, char *argv[])
{
OpenFile();
return 0;
}
тогда, я хотел бы попробовать использовать 2d массивов в некоторым образом, но это повсюду и может реально использовать некоторые советы
Интересной преамбулу, но в основном вы хотите, чтобы прочитать текстовый файл в 2D массив? Если да, здесь есть сотни вопросов. – Duck
Прочитать символ файла по символу и выбросить этот символ - есть первая проблема –
Вы читаете файл? и делать с ним –