Задачи на практику (основной курс)

Содержание

Занятие 1

Задача 1

Пользователь вводит строку, выводим ее без повторений подряд идущих символов:

aabbbccccaa -> abca

Задача 2

Пользователь вводит строку, выводим ее без повторений символов (встречавшихся ранее). Сделать два варианта: с массивом и без. Сравнить производительность.

aabbbccccaa -> abc

Задача 3

Пользователь вводит строку, выводим символы и их количества.

aabbbcccc -> a-2 b-3 c-4

Задача 4

Написать функцию проверки, является ли строка панграммой

Задача 5

Написать функцию, которая во введенной строке определяет самую длинную последовательность одинаковых букв и ее длину

aabbbccccaa -> cccc-4

Занятие 2

Задача 1

Пользователь вводит строку, в которой может быть 0 и более слов (Словом считается непрерывная последовательность непробельных символов). Слова могут разделяться любым количеством пробелов. Вывести слова по одному на строке с указанием длины.

" abc  cde a b vv " 
abc-3
cde-3
a-1
b-1
vv-2  

Задача 2

В предыдущую задачу добавляется определения слова с максимальной длиной и его вывод в конце списка

" abc  cde a b vv " 
abc-3
cde-3
a-1
b-1
vv-2
max: abc-3  

Задача 3

Реализовать алгоритм перевода строки в целое число со знаком, например:

"1234" -> 1234
"+1234" -> 1234
"-1234" ->-1234  

Обработку строки проводить посимвольно, двигаясь слева направо (не оценивая заранее длину).

Задача 4

Реализовать алгоритм подсчета количества "счастливых" номеров билетов (диапазон от 000000 до 999999). Определить процент этих номеров от общего количества.

«Счастливость» билета можно определить несколькими методами. "Московский" — если на автобусном билете напечатано шестизначное число, и сумма первых трёх цифр равна сумме последних трёх, то этот билет считается счастливым. "Ленинградский", или Питерский (менее распространённый) — если сумма цифр, стоящих на чётных местах билета, равна сумме цифр, стоящих на нечётных местах билета, то билет считается счастливым

Автор: Anton Shtanyuk

Created: 2019-12-09 Mon 16:52

Emacs 26.1 (Org mode 9.1.9)

Validate