Помогите, пожалуйста, решить задачу по информатике (с объяснениями): Задача 3. Экранная клавиатура КПК позволяет вводить символы русского
10-11 класс
|
и английского алфавита прикосновением пера к экрану. Для переключения между заглавными и строчными буквами используется клавиша Shift, нажатие на которую приводит к смене режима на время ввода одной следующей буквы, и клавиша Caps Lock для постоянной смены режима. Для смены алфавита с русского языка на английский используется клавиша au (клавиша находится между Ctrl и Alt). В начальном состоянии клавиатура находится в режиме строчных русских букв.
Требуется написать программу, выводящую минимальную длину
последовательности прикосновений пера для набора заданной строки.
Технические требования.
Имя входного файла: INPUT.TXT
Имя выходного файла: OUTPUT.TXT
Формат входных данных:
В единственной строке входного файла содержится строка длиной не более 50 скатолов, содержащая заглавные и строчные русские и английские буквы. Формат выходных данных:
В единственной строке выходного файла содержится единственное число - минимальная длина последовательности прикосновений пера для набора заданной строки.
Примеры файлов входных данных: Примеры файлов выходных данных:
Строка 7
ПРИВЕТhеllо 14
Вводим переменную summ типа int в которой будет записан конечный результат(то есть сколько потребуется нажатий пера).
Считаем строку из исходного файла в переменную stroka типа string.Посимвольно считываем со строки string символы и прибавляем к переменной summ.Переключение регистра или языка тоже суммируется в той же переменной.Если необходимо переключить регистр ,то нужно выбрать переключать его на всё время, или только на следующие касание.Чтобы выбрать проверим сколько букв далее стоят с одним регистром.Если 2 и более последущих букв стоят в одном регистре, то будем использовать Caps Lock т.к в результате потребуется меньше нажатий пера ,чем при использование Shift.
По коду символа будем определять его регистр и принадлежность к какому либо языку.
Другие вопросы из категории
объявляет игроку А. Игрок А проделывает с этим числом ту же процедуру, и так они продолжают поступать поочередно, объявляя числа. От суммы чисел берется остаток от деления на 100, поэтому объявляются лишь двузначные числа. Какие числа может объявить игрок А на начальном шаге, чтобы игрок В в некоторый момент объявил число 00.
Читайте также
задание: написать программу, определяющую расположение точки на плоскости. если введенные координаты точки оказываются внутри фигуры или области, то выведете на экран "да", в противном случае "нет". выполнение программы проведите в таблице отчета (x²+y²/4≤2) и (|y|≤1)
(х > 4) v ((х > 1) => ( х > 4))
Зарание огромное спасибо))