/
lyapdy
/
Object_oriented_programming_cpp_318
Обзор
Документация
Войти
/
lyapdy
/
Object_oriented_programming_cpp_318
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
Аналитика
Безопасность
master
lab5/task_4.cpp
48 строк
2 KB
danillyapunov
fierce commit
28 июл 2025, 13:06
28 июл 2025, 13:06
ae10789
Код
Авторство
О чём код?
#include <iostream> #include <string> #include <cctype> #include <cstring> #include "task_4.h" bool protect(std::string str) { // ���頥� ���� - ������ ⮫쪮 ����� �㪢� bool p = false; for (size_t i = 0; i < str.length(); ++i) { p = (str[i] == tolower(str[i])); // std::cout << str[i] << '\t' << static_cast<char>(tolower(str[i])) << p << '\n'; // ��⠢�� ������������ ��� ��� �⫠��� // std::cout << str << '\n'; if (str[i] != tolower(str[i])) return false; } return true; } void task_4() { std::cout << "������� 4" << '\n'; std::string inputStr, outputStr; std::cout << "������ 㯠�������� ��ப� � �㪢��� � ������ ॣ����: "; std::cin>>inputStr; if (protect(inputStr)) { size_t num = 1; for (size_t i = 0; i <= inputStr.length(); ++i) { if (isdigit(inputStr[i])) { if(num == 1) num = inputStr[i] - '0'; if ((i + 1) != inputStr.length() && isdigit(inputStr[i + 1])) { num = inputStr[i+1] - '0' + num * 10; } continue; } for(size_t j = 0; j != num; ++j) { outputStr += std::toupper(inputStr[i]); // �뢮��� �ய��� �㪢� } num = 1; } std::cout << "��ᯠ�������� ������⥫쭮��� ᨬ�����: " << outputStr <<'\n'; } else { std::cout << "�� ����� ���ࠢ����� ������⥫쭮��� ᨬ�����!" << '\n'; } }