Se dau două propoziții formate din litere mari și mici ale alfabetului englez și spații. Să se afișeze în ordine alfabetică cuvintele care apar în ambele șiruri.
Răspunsuri la întrebare
Răspuns de
5
Ti-am facut o sursa in C++ unde cele doua propozitii le citesti dintr-un fisier text sortcuv.in, fiecare propozitie pe cate o linie. Citim cele doua siruri si cuvintele le introducem intr-un vector de string-uri si apoi sortam cu Bubble Sort acest vector de cuvine. Solutia o afisam in fisierul text sortcuv.out. Succes!
#include <bits/stdc++.h>
using namespace std;
int n,i,k;
char s1[256],s2[256],c[25],*p;
bool ok;
string v[256],aux;
int main()
{
ifstream f("sortcuv.in");
ofstream g("sortcuv.out");
f.getline(s1,256);
f.getline(s2,256);
n=strlen(s1);
p=strtok(s1," .");
while(p)
{
strcpy(c,p);
v[++k]=c;
p=strtok(NULL," .");
}
n=strlen(s1);
p=strtok(s2," .");
while(p)
{
strcpy(c,p);
v[++k]=c;
p=strtok(NULL," .");
}
do
{
ok=true;
for(i=1;i<k;i++)
if(v[i]>v[i+1])
{
aux=v[i];
v[i]=v[i+1];
v[i+1]=aux;
ok=false;
}
}while(!ok);
for(i=1;i<=k;i++)
g<<v[i]<<"\n";
return 0;
}
#include <bits/stdc++.h>
using namespace std;
int n,i,k;
char s1[256],s2[256],c[25],*p;
bool ok;
string v[256],aux;
int main()
{
ifstream f("sortcuv.in");
ofstream g("sortcuv.out");
f.getline(s1,256);
f.getline(s2,256);
n=strlen(s1);
p=strtok(s1," .");
while(p)
{
strcpy(c,p);
v[++k]=c;
p=strtok(NULL," .");
}
n=strlen(s1);
p=strtok(s2," .");
while(p)
{
strcpy(c,p);
v[++k]=c;
p=strtok(NULL," .");
}
do
{
ok=true;
for(i=1;i<k;i++)
if(v[i]>v[i+1])
{
aux=v[i];
v[i]=v[i+1];
v[i+1]=aux;
ok=false;
}
}while(!ok);
for(i=1;i<=k;i++)
g<<v[i]<<"\n";
return 0;
}
Alte întrebări interesante
Limba română,
8 ani în urmă
Matematică,
8 ani în urmă
Matematică,
8 ani în urmă
Religie,
9 ani în urmă
Limba română,
9 ani în urmă
Limba română,
9 ani în urmă