Форум программистов, компьютерный форум CyberForum.ru

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
4aineg
0 / 0 / 0
Регистрация: 07.08.2008
Сообщений: 23
#1

расстановка королев - C++

16.11.2008, 20:42. Просмотров 550. Ответов 0
Метки нет (Все метки)

Здавствуйте, уважаемые эксперты. Пытаюсь решить задачу с расстановкой королев на доске 8*8. Необходимо расставить так, чтобы ни одна фигура не била другую.
Алгоритм вроде правильный, но Вылазит следующая ошибка:
C:\Documents and Settings\Диманчег\Мои документы\Visual Studio 2005\Projects\Chess_Queen(modificated)\Debug\Chess_Queen(modificated).exe : fatal error LNK1120: 1 unresolved externals
и еще
MSVCRTD.lib(crtexe.obj) : error LNK2019: unresolved external symbol _main referenced in function ___tmainCRTStartup


Код
#pragma once
#include <iostream>
using namespace std;

class Queen
{

private:

    int *Place;
    int length;

public:

    Queen(int l)
    {
        l = length;
        Place = new int [length];
        for (int i=0; i<length; i++)
            Place[i] = 0;
    }

    bool GoodPosition(int len);
    void Insert();

    ~Queen()
    {
        delete [] Place;
    }

};

// Functions.h

#pragma once
#include "Queen.h"

bool Queen::GoodPosition(int len)
{
    bool t = true;
    int i = 0;
    while (t&&(i < len))
    {
        t = t && (Place[len] != Place[i]) &&
            (abs(Place[len] - Place[i]) != (len - 1));
        i++;
    }

    return t;
}

void Queen::Insert()
{
    if (length > 1)
    {
        Place[0] = 0;
        int k = 1;
        int S = 0;
        while(k >= 0)
        {
            Place[k]++;
            if (Place[k] == length)
            {
                Place[k] = -1;
                k--;
            }
            else
                if(GoodPosition(k))
                    k++;
            if (k == length)
            {
                S++;
                cout << "Decision: ";
                for (int i = 0; i < length; i++)
                    cout << Place[i];
                k--;
            }
        }
        cout << endl;
        cout << "Amount of decisions: " << S << endl;
    }

    else
        if (length == 1)
            cout << "1 decision" << endl;
        else 
            cout << "no decisions, please enter length >1" <<endl;
}

#pragma once
#include "Queen.h"
#include "Functions.h"

int Main()
{
    Queen q(8);
    q.Insert();

    return 0;
}
заранее благодарю
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
16.11.2008, 20:42     расстановка королев
Посмотрите здесь:

Расстановка кирпичей - C++
Сколькими способами можно замостить 3xn прямоугольник при помощи 2x1 доминошек? Ниже наведен пример замощения такими плитками...

Расстановка 8 ферзей - C++
Привет всем, слушайте, вот исходник на С++ задача &lt;&lt;о восьми ферзях&gt;&gt;: #include&lt;iostream&gt; #include&lt;cmath&gt; #include&quot;pent&quot; void...

«Расстановка кубиков» - C++
Программа играющая в игру «Расстановка кубиков». Игральный кубик можно перекатывать по клеткам поля n*m. Причём, если клетка имеет вес i,...

Расстановка игральных костей - C++
Программа играющая в игру «Расстановка игральных костей». Задана частичная двумерная сетка. В некоторых позициях сетки расставлены...

Расстановка знаков препинания - C++
По правилу расстановки знаков препинания перед каждым знаком препинания пробел отсутствует, а после него обязательно стоит пробел. Учитывая...

Расстановка знаков операций - C++
Не получается решить задачу,не могу понять в чем проблема.Вроде все правильно все выводит,но проваливает почти все тесты.Помогите найти в...

Расстановка скобок в условном операторе - C++
Никак не могу понять где поставить скобки(begin end), чтобы если квадраты чисел равны не выводилось второе сообщение. #include...

Расстановка html тегов в тексте - C++
Хочу спросить, реально ли сделать автоматический перевод и правильную расстановку html тегов в русском тексте. Я мучился мучился, но так и...

Расстановка кораблей (морской бой) - C++
Доброго времени суток, при расстановке 2х палубных кораблей возникает проблема... При выборе точки уже занятой, система ломается и...

Расстановка ссылок в списке через цикл - C++
Помогите в реализации расстановки ссылок в списке через цикл. Не могу понять как сделать так, чтобы они друг на друга ссылались. ...

Консольный морской бой. Расстановка кораблей - C++
Добрый вечер, уважаемые форумчане. Хочу написать консольный морской бой. Начал с функции автоматической расстановки кораблей. Весь...

Расстановка восьми ферзей на шахматной доске так, чтобы ни один не угрожал другому - C++
5. Расстановка восьми ферзей на шахматной доске так, чтобы ни один не угрожал другому.


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru