Алгоритм:



Берем два различных текста, выписываем в одну строчку первое встретившееся существительное из первого текста и первое встретившееся существительное соответственно из второго текста. Далее с новой строчки точно так же выписываем вторые существительные, третьи и т.д. до тех пор, пока не переберем все существительные из первого текста. Как вести себя в случае, если какое-то существительное повторяется - не принципиально.

Аналогичные действия производим для прилагательных и глаголов.

Таким образом, получаем таблицу, по которой каждому существительному/прилагательному/глаголу из первого текста ставится в соответствие существительное/прилагательное/глагол из второго текста.

Далее переписываем исходный текст с заменой слов согласно таблице.

Как пример: допустим, у нас выписано "табуретка телефон" - меняем в первом тексте слово "табуретка" на слово "телефон".



Протестировал алгоритм на отрывках из книг "Язык программирования С++" (Б.Страуструп) и "Выбор" (В.Суворов). Полученное привожу далее:

людям со слабой психикой/низкой прочностью мозгов читать не рекомендуется



Страуструп -> Суворов



Суворов -> Страуструп



P.S. А еще всех с первым днем официальной весны. Весна - это такое время года, когда активизируются суицидники и сумасшедшие.