Предмет: Информатика, автор: Аноним

С/С++
1. Заданная строка символов. Выяснить, есть ли в этой последовательности символы "запятая" и "тире", которые встречаются последовательно;
2. Заданная строка символов, среди которых есть точки. Получить строку символов, расположенных после первой точки;
3. Заданная строка символов, который состоит из трех слов, разделенных пробелом. Получить новую строку, в котором порядок слов будет обратным по отношению к исходной строки;
4. Заданная строка символов, который состоит из трех слов, разделенных пробелом. Получить новую строку, в котором слова будут разделены тремя пробелами

Ответы

Автор ответа: Аноним
1

Ответ:

1.

#include <iostream>  

#include <algorithm>  

#include <iomanip>

#include <cmath>

using namespace std;

int main()

{

   long long i, j, k = 0, k1, i1;

   string s, s1, s2 = " ";

   char a = ' ', b;

   /*for(i = 1; i < s.size(); i++)

       if((s[i] == ',' && s[i-1] == '-') || (s[i] == '-' && s[i-1] == ','))

       {

       cout << "Yes" << endl;

       return 0;

       }

   cout << "No" << endl;

}

2.

#include <iostream>  

#include <algorithm>  

#include <iomanip>

#include <cmath>

using namespace std;

int main()

{

for(i = 0; i < s.size(); i++)

   {

       if(s[i] == '.')

       {

           cout << 1 << endl;

           break;

       }

   }

   k = i + 1;

   i++;

   for(j = 0; j <= s.size()-k; j++, i++)

       s1[j] = s[i];

}

3.

#include <iostream>  

#include <algorithm>  

#include <iomanip>

#include <cmath>

using namespace std;

int main()

{

getline(cin, s);

   for(i = 0; i < s.size(); i++)

   {

       if(s[i] == ' ')

           k++;

       if(k == 1)

       {

           i1 = i;

           k++;

       }

       if(k == 3)

           break;

   }

   k = i1 + 1;

   i1 = i;

   k1 = k;

   i++;

   for(j = 0; i < s.size(); j++, i++)

       s1[j] = s[i];

   s1[j] = a;

   j++;

   for(;k < i1; j++, k++)

       s1[j] = s[k];

   s1[j] = a;

   j++;

   i1 = 0;

   for(;i1 < k1; j++, i1++)

       s1[j] = s[i1];

   for(i = 0; i < s.size(); i++)

   {

       a = s1[i]; // СТРОКА s1 СОДЕРЖИТ ИТОГОВУЮ СТРОКУ (по каким-то причинам я не могу вывести строку и размер строки равен 0)

       cout << a;

   }

}

4.

#include <iostream>  

#include <algorithm>  

#include <iomanip>

#include <cmath>

using namespace std;

int main()

{

cin >> s >> s1 >> s2;

   cout << s << "   " << s1 << "   " << s2 << endl; // строка будет, когда мы всё соеденим (для какого-нибудь проекта это недопустимо, но для задачи вполне)

}

Объяснение:

Похожие вопросы
Предмет: Русский язык, автор: Елена6478