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

Знайти кількість входжень кожного з різних символів одного текстового рядка до іншого.
C++
STRING


cashpass01: Что? Я не понимаю задачу. Пожалуйста, уточните ее или приведите какой-нибудь пример!

Ответы

Автор ответа: flash77779
1

#include   <iostream>

#include   <string>

#include   <vector>

#include   <map>

using namespace std;

int main() {

 string first_string;

 string second_string;

 map < char, int > letters;

 vector < char > unic_letters;

 cout << "Enter the first string: ";

 getline(cin, first_string);

   for (int i = 0; i < first_string.length(); i++) {

       first_string[i] = tolower(first_string[i]);

   }

 cout << "Enter the second string: ";

 getline(cin, second_string);

   for (int i = 0; i < second_string.length(); i++) {

       second_string[i] = tolower(second_string[i]);

   }

 for (int i = 0; i < first_string.length(); i++) {

   if (letters.find(first_string[i]) == letters.end()) {

     letters.insert(pair < char, int > (first_string[i], 0));

     unic_letters.push_back(first_string[i]);

   }

 }

 for (int i = 0; i < unic_letters.size(); i++) {

   for (int j = 0; j < second_string.length(); j++) {

     if (unic_letters[i] == second_string[j]) {

       letters[unic_letters[i]]++;

     }

   }

 }

 for (int i = 0; i < unic_letters.size(); i++) {

   cout << unic_letters[i] << ": " << letters[unic_letters[i]] << endl;

 }

 return 0;

}

Приложения:
Похожие вопросы
Предмет: Математика, автор: vitaleto24