• B правой части каждого сообщения есть стрелки и . Не стесняйтесь оценивать ответы. Чтобы автору вопроса закрыть свой тикет, надо выбрать лучший ответ. Просто нажмите значок в правой части сообщения.

Вывести Различные Буквы Трех Предложений (тоесть Такие Какие Есть Толь

  • Автор темы Prog
  • Дата начала
P

Prog

Вывести различные буквы трех предложений (тоесть такие какие есть только в одном из них)
 
R

rrrFer

4. Старайтесь ВСЕГДА сначала решить задачу САМОСТОЯТЕЛЬНО, ну, а когда не выходит, ОБЯЗАТЕЛЬНО публикуйте здесь свой код, даже если он не работает. Поверьте, это значительно повышает к вам уважение. Халявщиков, которым нужно, чтобы им просто кто-нить нахаляву сделал, здесь не любят. Да и исправить мелкую ошибку в готовом коде легче, чем писать все заново. При публикации кода используйте теги кода (см. Теги форматирования кода. Справка по Bb-кодам).
5. Ну а те, кто не хочет что-то делать самостоятельно, должны понимать, что работа людей стоит денег. Даже самая мелкая. А потому, если вы готовы платить за решение своей проблемы, то так же указывайте это в своей теме. Что-то в духе: Нужно решить такую-то задачу. Оплата.
 
P

Prog

#include<iostream>
#include<string>
using namespace std;
string find(string a, string B){
string x;
for (int i=0; i<a.size(); i++){
bool flag=false;
for (int j=0; j<b.size(); j++)
if (a==b[j]) flag=true;
if (!flag) x=x+a;
}
for (int i=0; i<b.size(); i++){
bool flag=false;
for (int j=0; j<a.size(); j++)
if (b==a[j]) flag=true;
if (!flag) x=x+b;
}
return x;
}
int main(){
string a, b, c;
cout<<"First string(1):\t"; cin>>a;
cout<<"Second string(2):\t"; cin>>b;
cout<<"Third string(3):\t"; cin>>c;
string x=find(a,B)+find(a,c);
for (int i=0; i<x.size(); i++){
bool flag=false;
for (int j=i+1; j<x.size(); j++)
if (x==x[j]) flag=true;
if (!flag) cout<<x<<"\n";
}
system("pause");
return 0;
}
вот пожалста код программы. У меня он почему то не работает, и + нужно дописать что-то чтобы считывались пробелы.
 
R

rrrFer

чтобы считывались пробелы используй std ::cin .getline() вместо оператора >>

Копипастить код с другого форума мы тоже умеем:
Код:
#include <iostream>
#include <string>
#include <vector>
#include <sstream>
#include <iterator>
#include <algorithm>
#include <functional>

std::wstring unique(const std::wstring& s1, const std::wstring& s2)
{
std::wstring s1_ = s1;
std::wstring s2_ = s2;

std::sort(s1_.begin(), s1_.end());
std::sort(s2_.begin(), s2_.end());

std::wstring out;

std::set_symmetric_difference(s1_.begin(), s1_.end(), s2_.begin(), s2_.end(), std::back_inserter(out));

return out;
}

int main()
{
std::vector<std::wstring> seqs = {L"абвг", L"гдежз", L"жзик"};

std::wcout << std::accumulate(seqs.begin(), seqs.end(), std::wstring(), [](std::wstring s1, std::wstring s2) {return unique(s1, s2);}) << std::endl; 
}
Не проверял его, но скопипастил оттуда же. Тут Вам помогать никто не будет, т.к. сами решить не пытались, даже не тратьте время )
 
R

rrrFer

хотя вру, помогут, вот мой вариант:
Код:
#include <string>
#include <iostream>
#include <algorithm> 
int main(){
std ::string s1 = "123", s2 = "345", s3 = "243", t, result;
t = s1 + s2 + s3;
std ::for_each( t.begin(), t .end(), [ &result, t](char c){
if( 1 == std ::count( t.begin(), t.end(), c ) ) result += c;
});
std ::cout << result;
return 0;
}
далеко не оптимальный, более оптимальный смотри постом выше.
 
Мы в соцсетях:

Обучение наступательной кибербезопасности в игровой форме. Начать игру!