С Новым годом! Форум программистов, компьютерный форум, киберфорум
C++
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
0 / 0 / 0
Регистрация: 04.09.2014
Сообщений: 6
1

Не могу найти ошибку в программе

05.10.2014, 21:30. Показов 522. Ответов 0
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Есть задание:
Даны строки A и B. Если в A есть символы из B и в B нет повторяющихся символов, то упорядочить символы B в алфавитном порядке, и удалить все символы, кроме латинских букв из A; в остальных случаях упорядочить символы A в порядке, обратном к алфавитному, удалив повторяющиеся символы, и продублировать рус-ские буквы в B.

Помогите найти ошибку, ибо вторая часть задания не выполняется

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
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
#include <iostream>
#include <string>
#include <algorithm>
using namespace std;
 
const string end_chars = "qwertyuiopasdfghjklzxcvbnmQWERTYUIOPASDFGHJKLZXCVBNM";
const string rus_chars = "ёйцукенгшщзхъфывапролджэячсмитьбюЁЙЦУКЕНГШЩЗХЪФЫВАПРОЛДЖЭЯЧСМИТЬБЮ";
 
string erase_dublicate(string text)
{
    unique(text.begin(), text.end());
    return text;
}
 
bool have_dublicate(const string& text)
{
    string copy_text = erase_dublicate(text);;
    return copy_text.length() != text.length();
}
 
bool is_Achars_in_Bchars(const string& textA, const string& textB)
{
    for (int i = 0; i < textB.length(); i++)
    {
        if (textA.find(textB[i]) != string::npos)
            return true;
    }
    return false;
}
 
string erase_all_exclude_latin(const string& text)
{
    string erased_text = "";
    for (int i = 0; i < text.length(); i++)
    {
        if (end_chars.find(text[i]) != string::npos)
            erased_text.append(1, text[i]);
    }
    return erased_text;
}
 
string dublicate_rus(const string& text)
{
    string new_text = "";
    for (int i = 0; i < text.length(); i++)
    {
        new_text .append(1, text[i]);
        if (rus_chars.find(text[i]) != string::npos)
            new_text .append(1, text[i]);
    }
    return new_text;
}
 
string SortAlpha(string text)
{
    sort(text.begin(), text.end());
    return text;
}
 
string SortReverseAlpha(const string& text)
{
    string sorted_text = SortAlpha(text);
    reverse(sorted_text.begin(), sorted_text.end());
    return sorted_text;
}
 
int main()
{
    string A, B;
    cout << "Input A and B: " << endl;
    cin >> A >> B;
 
    if (is_Achars_in_Bchars(A, B) && !have_dublicate(B))
    {
        B = SortAlpha(B);
        A = erase_all_exclude_latin(A);
    } else
    {
        A = SortReverseAlpha(A);
        B = erase_dublicate(B);
        B = dublicate_rus(B);
    }
 
    cout << endl << "A: " << A;
    cout << endl << "B: " << B << endl;
 
      system("pause");
    return 0;
}
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
05.10.2014, 21:30
Ответы с готовыми решениями:

Не могу найти ошибку в программе
# include &lt;iostream&gt; #include &lt;string&gt; #include &lt;math.h&gt; void main() { string str; ...

не могу найти ошибку в программе
задача Дана символьная строка. Подсчитать количество букв k в последнем ее слове считает только...

Не могу найти ошибку в программе
Разложение числа на сумму двух квадратов &quot;for(a=o;a&lt;=floor(sqrt(W));x++); ...

Не могу найти ошибку в программе
#include &lt;iostream&gt; #include &lt;fstream&gt; #include &lt;cctype&gt; #define is_delim(c) (std::isspace((c))...

0
05.10.2014, 21:30
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
05.10.2014, 21:30
Помогаю со студенческими работами здесь

не могу ошибку найти в программе
#include &lt;iostream&gt; #include &lt;ctime&gt; #include &lt;cstdlib&gt; #include &lt;iomanip&gt; #include &lt;cmath&gt; ...

Не могу найти ошибку в программе
Не могу найти ошибку в программе #include &quot;stdafx.h&quot; #include &lt;iostream.h&gt; #include &lt;math.h&gt;...

Не могу найти ошибку в программе
Здравствуйте! Не могу понять, как полностью отладить программу. Определенное понимание о характере...

Не могу найти ошибку в программе
Даны действительные числа х1, у1, х2, у2, …,х10, у10. Найти периметр десятиугольника, вершины...


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

Или воспользуйтесь поиском по форуму:
1
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru