Здесь также же петрушка,что и подобное задание, разница лишь в условии. Здесь перемещение должно происходить тогда, когда последняя цифра а[i] равняется всему числу а[0].массив такой:
8, 3, 16, 24, 35, 18, 4, 72, 8, 99, 44
И смена мест происходит не а0 с аi, а аi c a(i+1), т.е а0 никак не меняется.
Кароче, дашло до 18 при а5 и поменялся массив так:
8, 3, 16, 24, 35, 4, 18, 72, 8, 99, 44
Теперь смотрим: а6 тоже заканчивается на 8, значит трансформируем массив опять:
8, 3, 16, 24, 35, 4, 72, 18, 8, 99, 44
И опять он встал на нашем пути. И так будет до конца массива. И это случится действительно 5 раз.
Большие буквы стоят в таблице кодов подряд, то есть, образуют диапазон, нам требуется проверить лежит ли буква в заданном диапазоне. Для русских букв проверять будем так:
if ('А' <= str[0] && str[0] <= 'Я'), для английских нужно просто поменять буквы на английские.
Пример для русских букв:
Программа выводит заглавные буквы
#include <iostream>
#include <string>
#include <windows.h>
signed main() {
SetConsoleCP(1251);
SetConsoleOutputCP(1251);
std::string str;
getline(std::cin, str);
if ('А' <= str[0] && str[0] <= 'Я')
std::cout << "Первая буква является заглавной!";
else
std::cout << "Этот символ не является заглавной буквой!";
5
Объяснение:
Здесь также же петрушка,что и подобное задание, разница лишь в условии. Здесь перемещение должно происходить тогда, когда последняя цифра а[i] равняется всему числу а[0].массив такой:
8, 3, 16, 24, 35, 18, 4, 72, 8, 99, 44
И смена мест происходит не а0 с аi, а аi c a(i+1), т.е а0 никак не меняется.
Кароче, дашло до 18 при а5 и поменялся массив так:
8, 3, 16, 24, 35, 4, 18, 72, 8, 99, 44
Теперь смотрим: а6 тоже заканчивается на 8, значит трансформируем массив опять:
8, 3, 16, 24, 35, 4, 72, 18, 8, 99, 44
И опять он встал на нашем пути. И так будет до конца массива. И это случится действительно 5 раз.
Решение, которое перебирает
Большие буквы стоят в таблице кодов подряд, то есть, образуют диапазон, нам требуется проверить лежит ли буква в заданном диапазоне. Для русских букв проверять будем так:
if ('А' <= str[0] && str[0] <= 'Я'), для английских нужно просто поменять буквы на английские.
Пример для русских букв:
Программа выводит заглавные буквы
#include <iostream>
#include <string>
#include <windows.h>
signed main() {
SetConsoleCP(1251);
SetConsoleOutputCP(1251);
std::string str;
getline(std::cin, str);
if ('А' <= str[0] && str[0] <= 'Я')
std::cout << "Первая буква является заглавной!";
else
std::cout << "Этот символ не является заглавной буквой!";
return 0;
}