Введение
В этом практическом занятии вы последовательно научитесь писать программу на C++, которая может перевернуть любую введенную фразу с использованием рекурсии. Программа будет запрашивать у пользователя исходную фразу и выводить перевернутую ее версию.
Подключите необходимые библиотеки
В C++ для использования стандартных объектов ввода/вывода потоков, таких как cin, cout, нам нужно подключить библиотеку iostream. Поэтому добавьте следующий код в начале файла main.cpp:
#include <iostream>
using namespace std
Объявите функцию для переворота
В этой программе нам нужна функция для рекурсивного переворота строки. Добавьте следующий код после инструкции using namespace std;:
void reverse(const string& a);
Определите главную функцию
Как мы знаем, функция main является точкой входа в нашу программу. В функции main мы попросим пользователя ввести предложение и передадим это предложение нашей функции reverse.
int main() {
string str;
cout << "Please enter a sentence: ";
getline(cin, str);
reverse(str);
return 0;
}
Здесь мы просим пользователя ввести предложение, а затем вызываем нашу функцию reverse и передаем введенное предложение в качестве аргумента.
Определите функцию для переворота
Теперь нам нужно определить функцию reverse, которую мы объявляли ранее. Мы будем использовать рекурсию для переворота введенного предложения. Вот реализация функции:
void reverse(const string& str) {
size_t numOfChars = str.size();
if(numOfChars == 1) {
cout << str << endl;
}
else {
cout << str[numOfChars - 1];
reverse(str.substr(0, numOfChars - 1));
}
}
В этой функции мы сначала вычисляем длину входной строки с помощью str.size(). Если длина строки равна 1, то это базовый случай, и мы просто выводим последнюю букву входного предложения. В противном случае мы выводим последний символ, а затем рекурсивно вызываем функцию reverse с строкой, исключая последнюю букву.
Компилируйте и запустите
Мы закончили писать нашу программу. Теперь нам нужно скомпилировать и запустить ее. Откройте терминал в директории ~/project и используйте следующую команду для компиляции кода:
g++ main.cpp -o main
Эта команда создаст исполняемый файл с именем main. Теперь используйте следующую команду для запуска программы:
./main
После успешного запуска программы вы увидите вывод в виде:
Please enter a sentence: Study tonight
thgnot ydutS
Резюме
В этом практическом занятии вы узнали, как написать программу на C++, которая может перевернуть предложение с использованием рекурсии. Вы реализовали функцию reverse, которая использует рекурсию для переворота введенного предложения, а затем вызвали эту функцию в функции main с входным предложением в качестве аргумента. Наконец, вы скомпилировали и запустили программу в терминале, чтобы увидеть вывод.



