Программа должна выполнять преобразования строки (длина строки 255 символов):
- СТРОКА ЗАГЛАВНЫМИ БУКВАМИ
- строка в нижнем регистре
- С Заглавной Буквы (Первый Символ Каждого Слова В Строке )
- пЕРВЫЙ сИМВОЛ в нИЖНЕМ рЕГИСТРЕ
- Как в предложении(с заглавной буквы).
- Символ
'f'
— выход из программы
Организовать в программе меню, через которое можно удобно выбирать любое действие. Программа должна выполняться пока пользователь не введет символ 'f'
.
Чтобы преобразовать строчные буквы в прописные в С++ есть функция toupper. Для преобразования строки в нижний регистр используем функцию tolower. Остальные преобразования можно выполнить также с помощью функций библиотеки cctype.
Результат работы вашей программы не обязательно должен совпадать с выводом, который предоставлен у нас на сайте. Основная задача — это реализовать набор задач, которые программа должна выполнять.
#include <iostream> #include <cstring> using namespace std; char menu(); void operation1(char*); void operation2(char*); void operation3(char*); void operation4(char*); void operation5(char*); int main(){ setlocale(0,""); cout << "Введите строку nn"; char string[255]; memset(string, 0, sizeof(string)); cin.getline(string, 255); char operation; operation = menu(); while (operation != 'f'){ if (operation != '1' & operation != '2' & operation != '3'& operation != '4'& operation != '5'){ cout << "Введеный символ не соответствует условию. nПовторите попытку nn"; } else{ if (operation == '1') operation1(string); if (operation == '2') operation2(string); if (operation == '3') operation3(string); if (operation == '4') operation4(string); if (operation == '5') operation5(string); } operation = menu(); } //system("pause"); } char menu(){ char operation; cout << "Для преобразования строки в заглавные буквы нажмите : 1" << endl; cout << "Для преобразования строки в нижний регистр нфжмите : 2" << endl; cout << "Для преобразования строки с Заглавной Буквы нажмите : 3" << endl; cout << "Для преобразования строки в первый символ в нижнем регистре нажмите : 4" << endl; cout << "Для преобразования строки как в обычном предложении нажмите : 5" << endl; cout << "Для выхода нажмите : f" << endl; cout << endl; cout << "Введите необходимое действие : "; cin >> operation; cout << "nn"; return operation; } void operation1(char *p){ while (*p != ''){ *p = (char)toupper(*p); cout << *p; p++; } cout << endl; } void operation2(char *p){ while (*p != ''){ *p = (char)tolower(*p); cout << *p; p++; } cout << endl; } void operation3(char *p){ *p = (char)toupper(*p); while (*p != ''){ if(!isspace(*p)){ cout << *p; p++; *p = (char)tolower(*p); } else{ cout << *p; p++; *p = (char)toupper(*p); } } cout << endl; } void operation4(char *p){ *p = (char)tolower(*p); while (*p != ''){ if(!isspace(*p)){ cout << *p; p++; *p = (char)toupper(*p); } else{ cout << *p; p++; *p = (char)tolower(*p); } } cout << endl; } void operation5(char *p){ *p = (char)toupper(*p); cout << *p; p++; while (*p != ''){ if(*p != '.'){ *p = (char)tolower(*p); cout << *p; p++; } else{ cout << *p; p++; cout << *p; p++; *p = (char)toupper(*p); cout << *p; p++; } } cout << endl; }
Результат работы программы вы можете увидеть ниже:
Введите строку This program is written Dmitry Kozharsky Для преобразования строки в заглавные буквы нажмите : 1 Для преобразования строки в нижний регистр нфжмите : 2 Для преобразования строки с Заглавной Буквы нажмите : 3 Для преобразования строки в первый символ в нижнем регистре нажмите : 4 Для преобразования строки как в обычном предложении нажмите : 5 Для выхода нажмите : f Введите необходимое действие : 1 THIS PROGRAM IS WRITTEN DMITRY KOZHARSKY Для преобразования строки в заглавные буквы нажмите : 1 Для преобразования строки в нижний регистр нфжмите : 2 Для преобразования строки с Заглавной Буквы нажмите : 3 Для преобразования строки в первый символ в нижнем регистре нажмите : 4 Для преобразования строки как в обычном предложении нажмите : 5 Для выхода нажмите : f Введите необходимое действие : 2 this program is written dmitry kozharsky Для преобразования строки в заглавные буквы нажмите : 1 Для преобразования строки в нижний регистр нфжмите : 2 Для преобразования строки с Заглавной Буквы нажмите : 3 Для преобразования строки в первый символ в нижнем регистре нажмите : 4 Для преобразования строки как в обычном предложении нажмите : 5 Для выхода нажмите : f Введите необходимое действие : 3 This Program Is Written Dmitry Kozharsky Для преобразования строки в заглавные буквы нажмите : 1 Для преобразования строки в нижний регистр нфжмите : 2 Для преобразования строки с Заглавной Буквы нажмите : 3 Для преобразования строки в первый символ в нижнем регистре нажмите : 4 Для преобразования строки как в обычном предложении нажмите : 5 Для выхода нажмите : f Введите необходимое действие : 4 tHIS pROGRAM iS wRITTEN dMITRY kOZHARSKY Для преобразования строки в заглавные буквы нажмите : 1 Для преобразования строки в нижний регистр нфжмите : 2 Для преобразования строки с Заглавной Буквы нажмите : 3 Для преобразования строки в первый символ в нижнем регистре нажмите : 4 Для преобразования строки как в обычном предложении нажмите : 5 Для выхода нажмите : f Введите необходимое действие : 5 This program is written dmitry kozharsky Для преобразования строки в заглавные буквы нажмите : 1 Для преобразования строки в нижний регистр нфжмите : 2 Для преобразования строки с Заглавной Буквы нажмите : 3 Для преобразования строки в первый символ в нижнем регистре нажмите : 4 Для преобразования строки как в обычном предложении нажмите : 5 Для выхода нажмите : f Введите необходимое действие : f
Комментарии
Amoromul
Работает с англ. текстом. но с русским не хочет. Посмотрите, вот исходник. А так, в принципе, задача решена:)