0 / 0 / 0
Регистрация: 13.09.2015
Сообщений: 42
1

Заданы две строки. Построить новую строку, состоящую из символов, которые входят в первую строку, но не входят во вторую

27.03.2018, 10:07. Показов 9894. Ответов 3
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Помогите решить пожалуйста задачу условия звучат так.
Заданы две строки. Построить новую строку, состоящую из символов, которые входят в первую строку,
но не входят во вторую.
То есть:
C++
1
2
3
4
5
char string1[] = "qwerty";
char string2[] = "qasdrty";
char string3[20];
//здесь должно быть решение
printf("%s", string3);// должен вывести we
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
27.03.2018, 10:07
Ответы с готовыми решениями:

Заданы 2 строки. Построить новую строку, состоящую из символов которые входят в 1 строку но не входят во 2
Заданы 2 строки. Построить новую строку, состоящую из символов которые входят в 1 строку но не...

Заданы две строки. Построить новую строку, состоящую из символов, которые входят как в одну, так и в другую строку
Прошу помощи!

Создать новую строку из символов 1-ой заданной строки, которые не входят во вторую заданную строку
Pascal:Создать новую строку из символов 1-ой заданной строки, которые не входят во вторую заданную...

Отобразить гласные, которые входят в первую строку, и не входят во вторую.
Даны 2 строки от клавиатуры отображать гласные которые входят в первой строке и не входят во второй.

3
16 / 16 / 13
Регистрация: 30.01.2018
Сообщений: 50
27.03.2018, 12:25 2
Лучший ответ Сообщение было отмечено AlexsSStep как решение

Решение

Вот сделал все через циклы.

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
#include <iostream>
#include <Windows.h>
#include <conio.h>
 
using namespace std;
 
int main()
{
    SetConsoleCP(1251);
    SetConsoleOutputCP(1251);
    char string1[] = {"qwerty"};
    char string2[] = {"qasdrty"};
    char string3[20] = {};
    for (int j = 0; j < 20; j++)
    {
        
        for (int i = 0; i < sizeof(string1); i++)
        {
            char temp;
            for (int k = 0; k < sizeof(string2); k++)
            {
                if (string1[i] != string2[k])
                {
                    temp = string1[i];
                }
                else 
                {
                    temp = NULL;
                    break;
                }
            }
            string3[j] = temp;
            if (string3[j] != NULL)
            {
                j++;
            }           
        }
    }
    cout << string3;
    cout << endl;
    _getch();
    return 0;
}
0
Диссидент
Эксперт C
27692 / 17312 / 3808
Регистрация: 24.12.2010
Сообщений: 38,976
27.03.2018, 12:45 3
Если не использовать функцию strchr
C++
1
2
3
4
5
6
char *p1, *p2; int j=0;
for(p1=string1;  *p1; p1++) {
  for(p2=string2; *p2; p2++)
    if (*p1==*p2) break;
  if (!(*p2)) string3[j++] = *p1;
}
Добавлено через 2 минуты
С ее использованием
C++
1
2
3
for(p1=string1; *p1; p1++) {
  if (strchr(string2, *p1)==NULL) string3[j++] = *p1;
}
0
0 / 0 / 0
Регистрация: 13.09.2015
Сообщений: 42
28.03.2018, 05:06  [ТС] 4
Всем большое спасибо за быстрый ответ. Оба варианта работают но первый мне больше подошел.
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
28.03.2018, 05:06
Помогаю со студенческими работами здесь

Заданы две строки одинаковой длины. Построить новую строку, состоящую из символов как одной, так и другой
помогите пожайлуста. Заданы две строки одинаковой длины. Построить новую строку, состоящую из...

Создать строку, состоящую из символов, которые входят как в одну, так и в другую строку (не string-ом)
Условие: Заданы две строки. Построить новую строку, состоящую из символов, которые входят как в...

Множества.Даны две строки. Напечатать те символы, которые входят в первую но не во вторую строки
Помогите решить:) Можно только циклы,остальное сделаю сам. Даны две строки. Напечатать те...

Дана строка. Создать новую строку, все буквы которой входят в первую строку только один раз
Дана строка. Создать новую строку, все буквы которого входят в первую строку только один раз....


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

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2023, CyberForum.ru