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

Составить слово из букв, заданных в двухмерном массиве - C++

Восстановить пароль Регистрация
 
andy1993
0 / 0 / 0
Регистрация: 03.10.2013
Сообщений: 10
04.10.2013, 00:05     Составить слово из букв, заданных в двухмерном массиве #1
Двухмерный масив n*m содержит некоторые буквы русского алфавита , расположенные в произвольном порядке. Написать программу,проверяющую,можно ли мз этих букв составить данное слово S.Каждая буква массива используется не более одного раза
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
HedgehogLu
 Аватар для HedgehogLu
146 / 67 / 1
Регистрация: 04.09.2013
Сообщений: 250
04.10.2013, 00:16     Составить слово из букв, заданных в двухмерном массиве #2
и в чем проблема?
Мимино
 Аватар для Мимино
180 / 151 / 5
Регистрация: 22.05.2013
Сообщений: 435
Записей в блоге: 1
04.10.2013, 01:05     Составить слово из букв, заданных в двухмерном массиве #3
Вот как то так(отсутствие ошибок не гарантирую, но вроде определяет правильно, если "вечность" заменить на нужное слово)

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
#include <iostream>
#include <string.h>
using namespace std;
 
int main()
{
    setlocale(LC_ALL, "Russian");
    char mass[2][2] = {'о', 'п', 'ж', 'а'};
    char S[] = {"Вечность"};
    int countChar = 0;
 
 
    for (int i = 0; i < 2; i++)
        for (int j = 0; j < 2; j++)
            for (int k = 0; S[k] != '\0'; k++)
                if (mass[i][j] == S[k])
                    countChar++;
 
    if (countChar == strlen(S))
    {
        cout << "Из букв ";
        for (int i = 0; i < 2; i++)
            for (int j = 0; j < 2; j++)
                cout << "\"" << mass[i][j] << "\" ";
        cout << " можно составить слово \"" << S << "\"" << endl; 
    }
 
    else
    {
        cout << "Из букв ";
        for (int i = 0; i < 2; i++)
            for (int j = 0; j < 2; j++)
                cout << "\"" << mass[i][j] << "\" ";
        cout << " нельзя составить слово \"" << S << "\"" << endl; 
    }
 
    cout << endl;
 
    system("pause");
    return 0;
}
Миниатюры
Составить слово из букв, заданных в двухмерном массиве  
HedgehogLu
 Аватар для HedgehogLu
146 / 67 / 1
Регистрация: 04.09.2013
Сообщений: 250
04.10.2013, 01:09     Составить слово из букв, заданных в двухмерном массиве #4
намек куда копать есть , но программа не верна
Мимино
 Аватар для Мимино
180 / 151 / 5
Регистрация: 22.05.2013
Сообщений: 435
Записей в блоге: 1
04.10.2013, 01:14     Составить слово из букв, заданных в двухмерном массиве #5
Цитата Сообщение от HedgehogLu Посмотреть сообщение
намек куда копать есть , но программа не верна
Особо не заморачивался. Где ошибся?
Если в массиве будут содержаться одинаковые буквы, и они же будут повторяться в слове, то конечно же эта программа не проканает , Но это уже не будет "задачка на минутку", тут думать надо
HedgehogLu
 Аватар для HedgehogLu
146 / 67 / 1
Регистрация: 04.09.2013
Сообщений: 250
04.10.2013, 01:21     Составить слово из букв, заданных в двухмерном массиве #6
ну да. по условию же не говориться какие именно буквы идут в массиве и повторяются они или нет.
С последним уточнением программа верна
Yandex
Объявления
04.10.2013, 01:21     Составить слово из букв, заданных в двухмерном массиве
Ответ Создать тему
Опции темы

Текущее время: 01:06. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru