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

поиск в ширину(Рекурсивный) - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ рекурсивные классы http://www.cyberforum.ru/cpp-beginners/thread362432.html
Доброго времени суток. Скажите пожалуйста, можно ли при написании класса объявить в нём поле того же типа что и сам класс? Компилятор ругается на такое, но может это возможно по другому? class car { ... car lada; ... };
C++ Помогите с задачками 16. В заданный текст входят только цифры и буквы. Определить, яв-ляется ли текст десятичной, шестнадцатеричной или двоичной записью целого либо вещественного числа (указать при выводе какого). 16. В файле Y1 задана матрица вещественных чисел. Сформировать файл Y2, в котором строки матрицы упорядочены по убыванию элементов первого столбца. 16. Дан список студентов группы. Заполнить его... http://www.cyberforum.ru/cpp-beginners/thread362411.html
Сформировать массив из элементов матрицы C++
Из заданного массива А получить массив В попарно переставив первый и последний столбец, второй и предпоследней и т.д.
Ошибка в куске кода C++
Почему в массив не добавляется вводимое число??? include "stdafx.h" #include <time.h> #include <conio.h> #include "iostream" #include<stdlib.h>
C++ Написать программу шифрования текста на C++ и параллельно на Паскале http://www.cyberforum.ru/cpp-beginners/thread362384.html
1)зашифровывать текст следующим образом:записать его в матрицу по строкам, а затем переписать по спирали от центра по часовой стрелки,Прочесть зашифрованный текст. 2)написать и протестировать функцию , которая "переворачивает" все пары символов строки, передаваемой ей в качестве параметра.(привет друг->рпвитед ург) 3)дан текст, содержащий слова на латинице, разделенные...
C++ Добавить "xxx" перед последним словом строки #include <iostream> #include <stdio.h> #include <string.h> int main(void) { char s; char sr; printf("BBeduTe CTpoky"); gets(s); подробнее

Показать сообщение отдельно
proger2030
 Аватар для proger2030
11 / 11 / 2
Регистрация: 15.11.2010
Сообщений: 256
06.10.2011, 23:09     поиск в ширину(Рекурсивный)
Программа запускается но выдает ошибку(Задача такая: Создать программу для решения задачи построения слова из некоторого множества букв (игра Scrabble) используя алгоритмы поиска в глубину и в ширину. Длина слова не менее 5 букв. )
Код программы
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
57
#include "stdafx.h"
#include <iostream>
#include <string>
#include <Windows.h>
using namespace std;
string str1 =  "forum"; //
string str2 ="murof"; //
int ArrMax[1000];
string Arr[2000][2000];
int N = 0;
string pastSymbol(string str, string symbol, int position);
void recShir(int k, string str );
 
 
int _tmain(int argc, _TCHAR* argv[])
{
    SetConsoleCP(1251);
    SetConsoleOutputCP(1251);
 
    Arr[0][0] = str2.substr(0, 1);
   ArrMax[0] = 1;
    recShir(1, str2.substr(0, 1));
 
    return 0;
}
 
 
string pastSymbol(string str, string symbol, int position){
    string tmp;
    tmp = str.substr(0, position);
    tmp = tmp + symbol;
    tmp = tmp + str.substr(position, str.length() - position + 1);
 
    return tmp;    
 }
 
void recShir(int k, string str ) {
    int i, j;
    string tmp;
    string sym;
    for (i = 0; ArrMax[k-1]; i++) {
              sym = str2.substr(k, 1);
        for (j = 0; str.length(); j++) {
            tmp = pastSymbol(Arr[k-1][i], sym, j);
            N = N + 1;
            cout << tmp << endl;
            Arr[(k-1)+1][(i)*(k+1) +j] = tmp;
            if(tmp == str1)  cout << "Слово найдено на " <<  N  << " шаге\n";   // тут можно добавить break; 
            
                }
    break; //тут тоже но тогда будет искать в глубину(Если добавить два break)
    }
    
    ArrMax[(k-1)+1] =(k+1)*ArrMax[k-1];
    if (tmp.length() < str1.length()) 
        recShir(k + 1, tmp);    
}
Миниатюры
поиск в ширину(Рекурсивный)  
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 14:18. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru