| | {excerpt} |
| | h2. Очередь |
| |
| Конь |
| {code} |
| |
| struct move // Объявление структуры Move - элемента очереди |
| { |
| int x; |
| int y; |
| int StepNumber; |
| }; |
| |
| queue <move> MQue; // Объявление очереди из структур Move |
| |
| move Cur; // Объявление переменной Cur типа Move |
| |
| Cur.StepNumber=CurrMove.StepNumber; // Занесение значений в элементы структуры |
| Cur.x=CurrMove.x+steps[i][1]; |
| Cur.y=CurrMove.y+steps[i][2]; |
| |
| |
| MQue.push(Cur); // Занесение переменной Cur в очередь |
| |
| CurrMove=MQue.front(); // Скопировать элемент из начала очереди |
| MQue.pop(); // Удалить элемент из начала очереди |
| cout << MQue.back().StepNumber; // Вывести переменную StepNumber последнего элемента в очереди |
| |
| int steps[8][2] = {{1,-2},{1,2},{-1,-2},{-1,2}, // инициализация массива констант |
| {2,-1},{2,1},{-2,-1},{-2,1}}; |
| {code} |
| |
| Куски |
| |
| {code} |
| MQue.empty() // Очередь пуста? (возвращает true/false) |
| {code} |
| | {excerpt} |