Не стал сильно напрягаться и накидал все в std::basic_string.
Компилировать с -std=c++14 (или выше).
#include
#include
#include
#include
int main()
{
std::string X;//предполагается, что X - положительное целое.
std::cin >> X;
std::cout << "A) ";</p>
for(auto& i : X)
std::cout << i << " ";</p>
std::cout << std::endl;</p>
std::cout << "Б) " << std::boolalpha << (*X.crbegin() == *X.crbegin()) << std::endl;</p>
std::cout << "В) " << std::boolalpha << std::is_sorted(X.cbegin(), X.cend()) << std::endl;</p>
std::cout << "Г) " << *std::max_element(X.begin(), X.end(), [](const auto& var1, const auto& var2)</p>
{
return ((static_cast(var1) - '0') < (static_cast(var2) - '0'));
}) << std::endl;</p>
{
int temp(std::accumulate(X.begin(), X.end(), 0, [](auto& var1, auto& var2)
{
return var1 + (static_cast(var2) - '0');
}));
std::cout << "Д) " << temp << std::endl;</p>
std::cout << "Е) " << std::boolalpha << ((temp % 2 == 0) && (temp % 3 == 0))</p>
<< std::endl;</p>
#define _BEGIN 10 // начало диапазона
#define _END 100 // конец диапазона (_BEGIN; _END)
std::cout << "Ж) " <<std::boolalpha << (temp > _BEGIN && temp < _END)
<< std::endl;</p>
}
std::cout << "З) ";</p>
std::copy(X.crbegin(), X.crend(),
std::ostream_iterator(std::cout, ""));
std::cout << std::endl;</p>
return 0;
}