Ma poteti ajuta cu un program C.
De la tastatura se citeste un text format din cuvinte separate prin unul sau mai multe spatii. Textl se termina cu caracterul '.' . Sa se determine :
a)Numarul cuvintelor care ancep cu litera 'a'
b)Numarul cuvintelor care se termina cu litera 'b'
lozanalex:
Important ce sau e admisibil si C++?
Răspunsuri la întrebare
Răspuns de
1
#include <vector>
#include <iostream>
using namespace std;
vector <string> words(string s)
{
vector <string> a;
string x; s+=' ';
for (int i=0; i<s.size(); i++)
{
if (s[i]!=' ') x+=s[i];
if (s[i]==' ' && x!="")
{
a.push_back(x);
x="";
}
}
return a;
}
int main()
{
string s; int a=0,b=0;
getline(cin,s);
if (s[s.size()-2]=='b' || s[s.size()-2]=='B') b++;
vector <string> w;
w=words(s);
for (int i=0; i<w.size(); i++)
{
if (w[i][0]=='a' || w[i][0]=='A') a++;
if (*(w[i].end()-1)=='b' || *(w[i].end()-1)=='B') b++;
}
cout << a << ' ' << b;
return 0;
}
#include <iostream>
using namespace std;
vector <string> words(string s)
{
vector <string> a;
string x; s+=' ';
for (int i=0; i<s.size(); i++)
{
if (s[i]!=' ') x+=s[i];
if (s[i]==' ' && x!="")
{
a.push_back(x);
x="";
}
}
return a;
}
int main()
{
string s; int a=0,b=0;
getline(cin,s);
if (s[s.size()-2]=='b' || s[s.size()-2]=='B') b++;
vector <string> w;
w=words(s);
for (int i=0; i<w.size(); i++)
{
if (w[i][0]=='a' || w[i][0]=='A') a++;
if (*(w[i].end()-1)=='b' || *(w[i].end()-1)=='B') b++;
}
cout << a << ' ' << b;
return 0;
}
Alte întrebări interesante
Ed. tehnologică,
8 ani în urmă
Chimie,
8 ani în urmă
Matematică,
8 ani în urmă
Limba română,
9 ani în urmă
Matematică,
9 ani în urmă
Limba română,
9 ani în urmă
Matematică,
9 ani în urmă
Matematică,
9 ani în urmă