Считайте со стандартного ввода символ и выведите его код.
Программа получает на вход один символ с кодом от 33 до 126.
Ввод | Вывод |
---|---|
A |
65 |
Считайте со стандартного ввода целое число и выведите ASCII-символ
с таким кодом. Решите эту задачу с использованием только одной переменной
типа int
.
Программа получает на вход число от 33 до 126.
Ввод | Вывод |
---|---|
65 |
A |
Выведите все символы ASCII с кодами от 33 до 126 и их коды в следующем виде:
Вывод |
---|
! 33 " 34 # 35 ... } 125 ~ 126 |
Выведите подряд, без пробелов, все символы, лежащие в таблице ASCII между двумя заданными символами.
Программа получает на вход два символа, каждый в отдельной строке и должна вывести строку, начинающуюся первым из заданных символов и заканчивающуюся вторым.
Ввод | Вывод |
---|---|
A |
ABCD |
0 |
0123456789 |
Для данного символа, считанного со стандартного ввода, проверьте, является ли он цифрой. Программа должна вывести слово
YES
, если символ является цифрой, или слово NO
.
Ввод | Вывод |
---|---|
0 |
YES |
A |
NO |
Напишите функцию char ToUpper(char c)
, которая переводит символ в верхний регистр, то есть для строчной
буквы латинского алфавита возвращает сооветствующую заглавную букву латинского алфавита, а для остальных символов возвращает тот же символ.
Считайте один символ со стандартного ввода и переведите его в верхний регистр.
Ввод | Вывод |
---|---|
f |
F |
F |
F |
4 |
4 |
Напишите функцию char CaseChange (char c)
, меняющую регистр символа,
то есть переводящую заглавные буквы в строчные, а строчные - в заглавные, остальные символы
не меняющие.
Считайте один символ со стандартного ввода, выведите результат работы данной функции.
Ввод | Вывод |
---|---|
f |
F |
F |
f |
4 |
4 |
Дана строка, возможно, содержащая пробелы. Считайте эту строку и переведите все символы этой строки в
нижний регистр. Решение оформите в виде функции string ToLower (string S)
,
получающей в качестве параметра строку и возвращающую новую строку.
Для перевода одного символа в нижний регист напишите отдельную функцию.
Ввод | Вывод |
---|---|
Hello, world! |
hello, world! |
Дано слово, состоящее только из заглавных и строчных латинских букв.
Проверьте, верно ли что это слово читается одинаково как справа налево, так и слева направо
(то есть является палиндромом),
если считать заглавные и строчные буквы не различающимися.
Выведите слово YES
,
если слово является палиндромом и словов NO
, если не является.
Ввод | Вывод |
---|---|
Radar |
YES |
YES |
NO |
Дана строка, возможно, содержащая пробелы. Извлеките из этой строки все символы, являющиеся цифрами и составьте из них новую строку.
Ввод | Вывод |
---|---|
2+2=4 |
224 |
Дана строка, состоящая из n цифр (т.е. однозначных чисел), между которыми стоит n-1 знак операции, каждый из которых может быть либо +, либо -. Вычислите значение данного выражения.
Ввод | Вывод |
---|---|
1+2-3 |
0 |
Дано выражение одно из следующих видов: “A+B”, “A-B” или “A*B”, где A и B - целые числа от 0 до 109. Определите значение этого выражения.
Решение оформите в виде функции Eval(S)
.
Ввод | Вывод |
---|---|
2*2 |
4 |
100-101 |
-1 |
В шифре Цезаря каждый символ заменяется на другой символ, третий по счету в алфавите после данного, с цикличностью. То есть символ A заменяется на D, символ B - на E, символ C - на F, ..., символ Z на C. Аналогично строчные буквы заменяются на строчные буквы. Все остальные символы не меняются.
Дана строка, зашифруйте ее при помощи шифра Цезаря. Решение
оформите в виде функции CaesarCipher (S, k)
, возвращающей
новую строку. <сode>S — исходная строка,
k
— величина сдвига. Функцию нужно вызывать
со значением k=3
.
Указание: сделайте функцию char CaesarCipherChar(char c, int k)
,
шифрующую один символ.
Ввод | Вывод |
---|---|
In a hole in the ground there lived a hobbit. |
Lq d kroh lq wkh jurxqg wkhuh olyhg d kreelw. |
Дана строка, возможно, содержащая пробелы. Определите количество слов в этой строке. Слово — это несколько подряд идущих букв латинского алфавита (как заглавных, так и строчных).
Ввод | Вывод |
---|---|
Yesterday, all my troubles seemed so far away |
8 |
Дана строка. Найдите в этой строке самое длинное слово и выведите его. Если в строке несколько слов одинаковой максимальной длины, выведите первое из них.
Ввод | Вывод |
---|---|
In a hole in the ground there lived a hobbit. |
ground |
Капитан Флинт зарыл клад на Острове сокровищ.
Он оставил описание, как найти клад. Описание состоит из строк вида: “North 5
”,
где первое слово – одно из “North
”, “South
”,
“East
”, “West
”, а второе число – количество шагов,
необходимое пройти в этом направлении.
Напишите программу, которая по описанию пути к кладу определяет точные координаты клада, считая, что начало координат находится в начале пути, ось OX направлена на восток, ось OY – на север.
Программа получает на вход последовательность строк указанного вида, завершающуюся строкой
со словом “Treasure!
”. Программа должна вывести два целых числа:
координаты клада.
Ввод | Вывод |
---|---|
North 5 |
3 4 |
Дана строка. Измените регистр символов в этой строке так, чтобы первая буква каждого слова была заглавной, а остальные буквы - строчными.
Ввод | Вывод |
---|---|
In a hole in the ground there lived a hobbit. |
In A Hole In The Ground There Lived A Hobbit. |
Дана строка, содержащая одно или более целых чисел от 0 до 109, разделенных знаками “+” или “-”. Вычислите значение этого выражения.
Ввод | Вывод |
---|---|
21+7-10 |
18 |
Даны две строки, возможно, содержащие пробелы.
Выведите слово YES
, если первая строка является подстрокой
второй строки или слово NO
в противном случае.
Ввод | Вывод |
---|---|
hole in the ground |
YES |
hole on the ground |
NO |
Дана строка, возможно, содержащая пробелы. Определите, какая буква латинского алфавита (или какие буквы) в этой строке встречается чаще всего. При решении этой задачи заглавные и строчные буквы считаются одинаковыми, а прочие символы, не являющиеся буквами, не учитываются.
Программа должна вывести в первой строке все буквы, которые встречаются чаще всего в исходной строке. Выводить буквы необходимо в заглавном написании, в алфавитном порядке, без пробелов. Во второй строке выведите единственное число - сколько раз в данной строке встречаются эти буквы.
При решении этой задачи не рекомендуется пользоваться вложенными циклами. Входная строка должна обрабатываться за один проход.
Ввод | Вывод |
---|---|
- We all live in the Yellow Submarine! |
EL |
Дана строка, возможно, содержащая пробелы. Определите, является ли эта строка палиндромом,
при условии, что заглавные и строчные буквы не различаются, а все символы, не являющиеся
буквами, должны быть пропущены. Выведите слово YES
,
если слово является палиндромом и словов NO
, если не является.
Длина входной строки может быть до 100000 символов. При решении этой задачи нежелательно пользоваться дополнительными строками и списками, модифицировать исходнную строку.
Ввод | Вывод |
---|---|
Was it a rat I saw? |
YES |
abca |
NO |
В сети интернет каждому компьютеру присваивается четырехбайтовый код, который принято записывать в виде четырех чисел, каждое из которых может принимать значения от 0 до 255, разделенных точками. Вот примеры правильных IP-адресов:
127.0.0.0 192.168.0.1 255.0.255.255
Программа получает на вход строку из произвольных символов. Если эта строка является корректной записью
IP-адреса, выведите YES
, иначе выведите NO
.
Ввод | Вывод |
---|---|
127.0.0.1 |
YES |
Хорошо известна задача-шутка, в которой требуется продолжить числовой ряд:
1 11 21 1211 111221 312211 13112221 1113213211 ...
Напишите программу, которая по данному числу k≤25 выводит k-е число в этом ряду.
Ввод | Вывод |
---|---|
4 |
1211 |
Дана текстовая строка, содержащая буквы латинского алфавита, пробелы, запятые и точки. Отформатируйте этот текст по следующим правилам:
Выведите полученную строку.
Ввод | Вывод |
---|---|
Hello , world . |
Hello, world. |
Дано слово, состоящее только из строчных латинских букв. Определите, какое наименьшее число букв нужно дописать к этому слову справа так, чтобы оно стало палиндромом.
Тесты к этой задаче закрытые.
Ввод | Вывод |
---|---|
abcd |
3 |
abb |
1 |
Строка состоит из целых чисел, принимающих значения от 0 до 109, разделенных знаками операций “+”, “-” и “*”. Вычислите значение этого выражения выполняя действия по правилам арифметики.
Тесты к этой задаче закрытые.
Ввод | Вывод |
---|---|
10-2*3 |
4 |