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

Получить все расстановки 8 ладей - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Напишите функцию, которая вычисляет среднее арифметическое элементов массива http://www.cyberforum.ru/cpp-beginners/thread411524.html
Напишите функцию, которая вычисляет среднее арифметическое элементов массива. Массив содержит элементы типа unsigned long long. Массив передается в функцию через два параметра - указатель на первый эл...
C++ ... В четных байтах числа в двоичной системе переместить нулевые биты в старшие биты, а в нечетных байтах – в младшие ... Доброго времени суток всем, столкнулся с проблемой по С++,требуется написать программу: которая получает 1)случайное целое типа int, выводит его двоичное представление на экран Это вроде как, делает... http://www.cyberforum.ru/cpp-beginners/thread411515.html
C++ вывод и запись файлов
Пусть в текстовом файле содержит двумерный массив значений. Считать его и определить сумму додатніх значений и сумму отрицательных значений. Результат занести в отдельный файл
C++ файлы. Дано два файла
дан файла. Записать их в другие два файла, при это м в первый записать четные, а во второй – нечетные числа. Необходимо перевести с tp на С++ var s1,s2,s3:string; f1,f2,f3:text; a,b:integer;...
C++ разработать алгоритм обработки строки символов http://www.cyberforum.ru/cpp-beginners/thread411505.html
разработать алгоритм обработки строки символов которая может содержать буквы английского алфавита, цифры, знаки припинания, пробелы, знаки арифметических операций и скобки. Строку ввести с...
C++ Непонятное явление при перегрузке умножения в классе матриц ну собсна есть класс class matrix { private: int n, m; double *p; public: matrix(); matrix(int, double = NULL); подробнее

Показать сообщение отдельно
valeriikozlov
Эксперт С++
4670 / 2496 / 321
Регистрация: 18.08.2009
Сообщений: 4,550
22.12.2011, 08:32
Вариант с рекурсией.
C++
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
#include "stdafx.h"
#include <stdio.h>
#include <stdlib.h>
#include <conio.h>
#include <iostream>
 
const int BS = 8;
bool board[BS][BS], a[8];  
 
void pr()
{
    std::cout<<std::endl;
    for(int i=0; i<BS; i++)
    {
        for(int j=0; j<BS; j++)
            if(board[i][j])
                std::cout<<"*";
            else
                std::cout<<".";
            std::cout<<std::endl;
    }
 
}
 
void rec(int ii)
{
    if(ii==8)
    {
        pr();
        return;
    }
    for(int i=0; i<BS; i++)
        if(!a[i])
        {
            a[i]=true;
            board[ii][i]=true;
            rec(ii+1);
            board[ii][i]=false;
            a[i]=false;
        }
}
 
int main(int, char *[])
{   
    for(int i=0; i<BS; i++)
    {
        a[i]=true;
        board[0][i]=true;
        rec(1);
        board[0][i]=false;
        a[i]=false;
    }
    
        getch();
    return 0;
}
Лучше если выводить результаты в файл. Время работы примерно 7 сек.
1
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru