#include <iostream>
#include <string>
int main() {
std::string text = "HaLoo<hSssj>ss<asd>dS"; //Tekst do zamiany
std::size_t last = 0;
while (true) {
std::size_t startPos = text.find('<', last); //Znajdź znak '<' zaczynając od pozycji w zmiennej "last"
if (startPos == std::string::npos) //Jeżeli nic nie znalazło, zakończ pętle
break;
std::size_t endPos = text.find('>', last); //Znajdź znak '>'. Zakładamy że zapis zawsze będzie poprawny i dla każdego < będzie istniał >
for (int i = startPos; i < endPos; i++) //Zamień literki na ich wielkie odpowiedniki.
text[i] = toupper(text[i]);
last = endPos+1; //Zmien wartość zmiennej last, żeby nie znalazło znowu tej samej pary znaków < i >
}
std::cout << text; //Wypisz na ekran zmieniony tekst.
return 0;
}
I2luY2x1ZGUgPGlvc3RyZWFtPgojaW5jbHVkZSA8c3RyaW5nPgoKaW50IG1haW4oKSB7IAoJc3RkOjpzdHJpbmcgdGV4dCA9ICJIYUxvbzxoU3Nzaj5zczxhc2Q+ZFMiOyAvL1Rla3N0IGRvIHphbWlhbnkKCXN0ZDo6c2l6ZV90IGxhc3QgPSAwOwoJd2hpbGUgKHRydWUpIHsKCQlzdGQ6OnNpemVfdCBzdGFydFBvcyA9IHRleHQuZmluZCgnPCcsIGxhc3QpOyAvL1puYWpkxbogem5hayAnPCcgemFjenluYWrEhWMgb2QgcG96eWNqaSB3IHptaWVubmVqICJsYXN0IgoJCWlmIChzdGFydFBvcyA9PSBzdGQ6OnN0cmluZzo6bnBvcykgLy9KZcW8ZWxpIG5pYyBuaWUgem5hbGF6xYJvLCB6YWtvxYRjeiBwxJl0bGUKCQkJYnJlYWs7CgkJc3RkOjpzaXplX3QgZW5kUG9zID0gdGV4dC5maW5kKCc+JywgbGFzdCk7IC8vWm5hamTFuiB6bmFrICc+Jy4gWmFrxYJhZGFteSDFvGUgemFwaXMgemF3c3plIGLEmWR6aWUgcG9wcmF3bnkgaSBkbGEga2HFvGRlZ28gPCBixJlkemllIGlzdG5pYcWCID4KCQlmb3IgKGludCBpID0gc3RhcnRQb3M7IGkgPCBlbmRQb3M7IGkrKykgLy9aYW1pZcWEIGxpdGVya2kgbmEgaWNoIHdpZWxraWUgb2Rwb3dpZWRuaWtpLgoJCQl0ZXh0W2ldID0gdG91cHBlcih0ZXh0W2ldKTsKCQlsYXN0ID0gZW5kUG9zKzE7IC8vWm1pZW4gd2FydG/Fm8SHIHptaWVubmVqIGxhc3QsIMW8ZWJ5IG5pZSB6bmFsYXrFgm8gem5vd3UgdGVqIHNhbWVqIHBhcnkgem5ha8OzdyA8IGkgPgoJfQoJc3RkOjpjb3V0IDw8IHRleHQ7IC8vV3lwaXN6IG5hIGVrcmFuIHptaWVuaW9ueSB0ZWtzdC4KCXJldHVybiAwOwp9