Olvass be egy karakterláncot, majd töröld ki belőle minden szóköz utáni 'k' betűt.
#include <iostream>
#include <string>
using namespace std;
int main()
{
string s="Mikor kerik a kortet";
string e;
for(int i=0; i<s.length(); i++)
{
if(s[i]=='k' && s[i-1]==' ')
{
e=s.erase(i,1);
}
} cout<<e;}
Generálj egy tetszőleges hosszúságú karakterláncot.
#include <iostream>
#include <string>
#include <ctime>
#include <cstdlib>
using namespace std;
int main()
{ int vel =rand()%21+5;
string s;
srand(time(NULL));
int vel2;
for(int i=1; i<5; i++)
{
vel2=rand()%255+1;
s=s+(char)vel2;
}
cout<<s;
}
Írjál ki, kivel, hol, játékot, amely véletlenszerűen fogja kiválasztani a szöveg kulcsszavait!
#include <iostream>
#include <string>
#include <cstdlib>
#include <ctime>
using namespace std;
int main()
{
string ki[5] = {"Janos", "Pista", "Geza", "Andras", "Istvan"};
string kivel[5] ={"Andrassal", "Juliaval", "Timeaval", "Kingaval", "Erikaval"};
string mikor[5]= {"tegnap", "ma", "delutan", "este", "ebed utan"};
string micsi[5] ={"sakkoztak","malmoztak","kosaraztak","ebedeltek","varasaroltak"};
srand(time(NULL));
cout<<ki[rand()%5]<<""<<kivel[rand()%5]<<" "<<mikor[rand()%5]<<" "<<micsi[rand()%5]<<" ";
}
Írjunk programot, mely megszámolja, hogy egy beolvasott karakterlánc hány darab „a” betűt tartalmaz tartalmaz.
#include <iostream>
#include <string>
using namespace std;
int main()
{
string s;
getline(cin,s);
int szamol=0;
for(int i=0; i<s.length(); i++)
{
if(s[i]=='s')
szamol++;
}
cout<<szamol<<" darab 'a' betut talaltam."; }
Írjunk programot, mely megszámolja, hogy egy beolvasott karakterlánc hány darab szóközt tartalmaz.
#include <iostream>
#include <string>
using namespace std;
int main()
{
string s;
getline(cin,s);
int szamol=0;
for(int i=0; i<s.length(); i++) {
if(s[i]==' ')
szamol++;
}
cout<<"szokozok szama: "<<szamol;
}
Alakítsuk át az előző programot úgy, hogy a megszámlálandó karaktert is olvassuk be.
#include <iostream>
#include <string>
using namespace std;
int main()
{
string s;
getline(cin,s);
char x;
cout<<"Melyik karaktert szeretned megszamolni? ";
cin>>x;
int szamol=0;
int szamol2=0;
for(int i=0; i<s.length(); i++)
{
if(s[i]==' ')
szamol++;
if(s[i]==x)
szamol2++;
}
cout<<"szokozok szama: "<<szamol;
cout<<x<<" karakterbol "<<szamol2<<" van.";}
Töröljük a beolvasott szövegből az összes szóközt.
#include <iostream>
using namespace std;
int main()
{
string s,e="";
cout<<"Szoveg= "<<endl;
getline(cin,s);
int meret=s.size();
for (int i = 0; i < meret; i++)
if (s[i] != ' ')
e=e+s[i];
cout<<"Szoveg szokoz nelkul: "<<e<<endl;
}
Olvassunk be egy mondatot és egy szót. Vizsgáljuk meg, hogy a szó benne van-e a mondatban.
#include <string>
#include <iostream>
using namespace std;
int main()
{
string m; getline(cin,m);
string sz; getline(cin,sz);
string keres;
if (m.find(sz) != sz.npos) {
cout << "Benne van!" << '\n';
}
else
cout<<"Nincs benne";}
Nehezítés: számoljuk meg, hogy a beolvasott szó hányszor szerepel a mondatban.
#include <iostream>
#include <cstring>
using namespace std;
int main() {
char m[200]="Ez egy peldamondat egy.";
char s[200]="egy";
int sz;
char *tok=strtok(m, " ");
while(tok)
{
if(strcmp(tok,s)==0)
sz++;
tok=strtok(NULL, " ");
}
cout<<sz;
}
Olvassunk be két szöveget és dönsük el, hogy azonosak-e (ne tegyünk különbséget kis és nagybetűk között).
#include<iostream>
#include<string>
using namespace std;
int main()
{
string a,b;
getline(cin,a);
getline(cin,b);
if(a==b)
cout<<"Egyforma a szoveg";
else
cout<<"A ket szovegresz kulonbozo";
}
Olvassunk be egy stringet, írassuk ki, hogy tartalmaz-e számjegyet.
#include <iostream>
using namespace std;
int main()
{
string s;
getline(cin,s);
bool v;
int szamol;
for(int i=0; i<s.length();i++)
{ if(s[i]>='0' && s[i]<='9')
v=true;
else
v=false;
}
if(v==1)
cout<<"Tartalmaz szamokat";
else
cout<<"Nem tartalmaz szamokat";
}
Olvass be egy szót és kérdezd meg a felhasználót, hogy egy adott betű benne van-e a szóban, és hányszor szerepel
#include <iostream>
using namespace std;
int main()
{
string sz, b;
char ch;
int szamol=0;
cout<<"Mondat= "<<endl;
getline(cin,sz);
cout<<"Betu= ";
cin>>ch;
for(int i=0; i<sz.length(); i++)
if(sz[i] == ch)
szamol++;
cout<<"Osszesen "<<szamol<<" elofordulas."<<endl;
}