Информатика, вопрос задал torontogei4 , 11 месяцев назад

Пользователь вводит с клавиатуры строку – предложение с пробелами и знаками пунктуации длиной до 100
символов. Вывести на экран адрес начала каждого слова.
c++

Ответы на вопрос

Ответил looki22
0

Ответ:

#include <iostream>

#include <string>

int main() {

   std::string input;

   std::cout << "Введите предложение: ";

   std::getline(std::cin, input);

   std::string word;

   int wordStart = 0;

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

       if (input[i] == ' ' || input[i] == '.' || input[i] == ',' || input[i] == '!' || input[i] == '?') {

           if (!word.empty()) {

               std::cout << "Слово '" << word << "' начинается с позиции " << wordStart << std::endl;

               word.clear();

           }

       } else {

           if (word.empty()) {

               wordStart = i;

           }

           word += input[i];

       }

   }

   if (!word.empty()) {

       std::cout << "Слово '" << word << "' начинается с позиции " << wordStart << std::endl;

   }

   return 0;

}

Объяснение:

Новые вопросы