7Dancho
14.01.2020 05:30

Программа на языке c++даны две строки типа string: substr; str.символы в строках - маленькие латинские буквы.требуется определить количество вхождений строки substr в строку str.количество вхождений вывести в переменной cnt.примеры: qwe wqeeqeweqweewq//1eqe wqeeqeweqweewq//1w wqqewewqeewq//4d wqeeqe//0qweweqw qweweqwq//1

Нажмите на рекламу ниже и сразу увидите ответ
Популярные вопросы:
Ответ:
ВадимСап
09.10.2020 21:34

#include <iostream>

#include <string>

using namespace std;

int main()

{

int cnt = 0;

string substr, str;

cin >> substr >> str;

for (size_t i = 0; i < str.length()-substr.length()+1; i++)

{

 for (size_t j = 0; j < substr.length(); j++)

 {

  if (str[i+j] != substr[j])

  {

   break;

  }

  else

  {

   if (j == substr.length() - 1) ++cnt;

  }

 }

}

cout << cnt;

return 0;

}

Все тесты которые ты написал, отработали.

0,0(0 оценок)
Ответ:
Elmir03042003
09.10.2020 21:34

#include <iostream>

#include <string>

using namespace std;

int main()

{

   string str,sub;

   int cnt=0;

   cout<<"substr: "; cin>>sub;  

   cout<<"str: "; cin>>str;

   int i=0,j=0;  

   while (i<str.length()) {

     while ((str[i]!=sub[j]) && (i<str.length())) i++;

     if (i<str.length()) {

         while ((str[i]==sub[j]) && (i<str.length()) && (j<sub.length())) {

              i++; j++;

         }

         if (j==sub.length()) cnt++;

         j=0;

     }

   }

   cout<<cnt<<endl;

   system("pause");      

   return 0;

}

0,0(0 оценок)
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota Оформи подписку
logo
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?
Спроси ai-бота