Партнерка на США и Канаду по недвижимости, выплаты в крипто
- 30% recurring commission
- Выплаты в USDT
- Вывод каждую неделю
- Комиссия до 5 лет за каждого referral
Найти количество слов в строке
Напишите функцию countWords, вычисляющую количество слов в строке. Слова отделяются друг от друга пробелами. Строка может начинаться и заканчиваться пробелами, а также любые два соседних слова могут быть отделены более чем одним пробелом.
Пример:
countWords(“ a ”) 1
countWords(“ a bb “) 2
Напишите функцию, которая будет заменять все латинские буквы в строке на соответствующие заглавные буквы. Функция должна изменять строку, переданную ей в качестве параметра, и не использовать дополнительных буферов.
Пример:
upperCase(“hello world”) HELLO WORLD
Преобразовать все буквы строки в строчныеНапишите функцию, которая будет заменять все заглавные латинские буквы в строке на соответствующие строчные буквы. Функция должна изменять строку, переданную ей в качестве параметра, и не использовать дополнительных буферов.
Пример:
lowerCase(“heLLo WoRLd”) hello world
Инвертировать регистр букв в строкеНапишите функцию, которая будет инвертировать регистр всех латинских буквы в строке, то есть заменять строчные буквы на заглавные, а заглавные – на строчные. Функция должна изменять строку, переданную ей в качестве параметра, и не использовать дополнительных буферов.
Пример:
invertCase(“heLLo WoRLd”) HEllO wOrlD
Напишите функцию, которая будет делать первую букву каждого слова заглавной, а остальные преобразовывать в строчные. Функция должна изменять строку, переданную ей в качестве параметра, и не использовать дополнительных буферов.
Пример:
capitalCase(“heLLo WoRLd”) Hello World
Сравнить две строки без учета регистраНапишите функцию, сравнивающую две строки без учета регистра. Функция должна принимать два аргумента (сравниваемые строки) и возвращать -1, если первая строка лексикографически больше второй, 0 если строки равны и 1, если вторая строка лексикографически больше первой.
Примечание: одна строка считается лексикографически больше другой, если первые ![]()
символов у обеих строк совпадают (безотносительно регистра), а ![]()
символ одной строки больше аналогичного символа второй строки, либо же ![]()
-й символ второй строки отсутствует. Такой порядок сортировки обычно используется в различных словарях.
Пример:
cmpNoCase(“a”, “A”) 0
cmpNoCase(“a”, “Ab”) 1
cmpNoCase(“bB”, “Ba”) -1
Реализуйте часть работы функции sprintf. Напишите функцию, осуществляющую подстановку целого числа в форматную строку. Форматная строка представляет собой обычную строку, в которой содержится подстановочный шаблон. Подстановочный шаблон позволяет указать, в каком месте строки следует подставить переданное в функцию число.
Подстановочный шаблон выглядит следующим образом: %[[+][0]n]d, где:
% Символ начала шаблона обязательный
+ Выравнивание по левому краю поля необязательный
0 Заполнение нулями необязательный
n Размер поля (число) необязательный
d Символ конца шаблона
Если в шаблоне указан размер поля, вывод числа осуществляется в группу из указанного количества символов. Если в поле больше символов, чем требуется для записи числа, остальные символы заполняются пробелами слева от числа до нужной длины поля. Символы 0 и + позволяют изменить символ заполнения и расположение числа в поле соответственно.
Пример:
printf( “!%d!” , 13 ); !13!
printf( “!%4d!” , 13 ); ! 13!
printf( “!%04d!” , 13 ); !0013!
printf( “!%+4d!” , 13 ); !13 !
printf( “!%+04d!”, 13 ); !1300!
Форматный вывод вещественного числа
Реализуйте часть работы функции sprintf. Напишите функцию, осуществляющую подстановку вещественного числа в форматную строку. Форматная строка представляет собой обычную строку, в которой содержится подстановочный шаблон. Подстановочный шаблон позволяет указать, в каком месте строки следует подставить переданное в функцию число.
Подстановочный шаблон выглядит следующим образом: %[n[.x]]d, где:
% Символ начала шаблона обязательный
n Размер поля (число) необязательный
x Количество символов после точки необязательный
f Символ конца шаблона обязательный
Если в шаблоне указан размер поля, вывод числа осуществляется в группу из указанного количества символов. Если в поле больше символов, чем требуется для записи числа, остальные символы заполняются пробелами слева от числа до нужной длины поля. Если указано количество символов после запятой, производится округление выводимого числа до соответствующей точности, в противном случае выводимое число занимает все отведенное поле
Пример:
printf( “!%4df!” , 3.1415926 ); !3.14!
printf( “!%4.0f!”, 3.1415926 ); ! 3!
printf( “!%4.1f!”, 3.1415926 ); ! 3.1!
printf( “!%f!” , 3.1415926 ); !3.1415926!
Разбор вещественного числа
Напишите функцию, которая преобразовывает строку с вещественным представлением числа в переменную вещественного типа. Если в процессе разбора строки произошла ошибка. Функция должна сообщить об этом.
Примечание: В строке может быть неполная форма вещественного числа — например.5 или 12.
Разбор инженерной записи вещественного числаНапишите функцию, которая преобразовывает строку с инженерной записью вещественного числа в переменную вещественного типа. Если в процессе разбора строки произошла ошибка. Функция должна сообщить об этом.
Примечание: инженерная запись вещественного числа позволяет задавать вещественные числа через степени десятки, например запись 1.3e5 соответствует числу ![]()
![]()
Вывести в табличной форме данные из файла в формате CSV
Формат CSV (comma-separated values) представляет собой текстовый способ хранения таблиц, в котором каждая строка файла соответствует строке таблицы, а данные ячеек в строке отделяются друг от друга запятыми.
Разработайте программу, которая по заданному файлу в формате СSV будет выводить на экран его табличное представление, разделяя столбцы символом |.
Пример:
Входной файл (input. csv): | Вывод программы |
Scarlett, Johansson | |Scarlett|Johansson| |Milla |Jovovich | |
Напишите функцию, которая будет заменять все вхождения символа % в строку на ваше имя. Если символ % идет дважды, он должен быть заменен на один символ % без подстановки имени.
Пример:
Входная строка | Результат работы функции |
Hello, %, milk is 4%% fat! | Hello, Alexey, milk is 4% fat! |
Напишите функцию, которая будет возвращать положение самого последнего вхождения символа из указанного набора в заданной строке. Если ни один символ не был найден, функция должна вернуть -1, в противном случае — смещение от начала строки до найденного символа. Набор искомых символов также удобно задавать в виде строки.
Пример:
findr ( “good!”, “ao” ) 2
findr ( “good!”, “!@#” ) 3
findr ( “good!”, “qr” ) -1
Напишите функцию, удаляющую из строки все вхождения символов из заданного списка в текущей строке. Функция должна модифицировать переданную ей в качестве аргумента строку. Набор искомых символов также удобно задавать в виде строки.
Пример:
remove ( “good day!”, “ao” ) “gd dy!”
remove ( “good day!”, “!@#” ) “good day”
remove ( “good day!”, “qr” ) “good day!”
Удалить из строки все лишние пробелы
Напишите функцию, удаляющую из строки все сдвоенные пробелы, а также лишние пробелы в начале и конце строки, если таковые присутствуют. Функция должна модифицировать переданную ей в качестве аргумента строку.
Зашифровать строку RLEНапишите функцию, кодирующую строку при помощи алгоритма RLE (run length encoding). В алгоритме RLE повторяющиеся символы заменяются на один символ и указание количества повторов.
Пример:
Входная строка | Результат работы функции |
Hello | Hel2o |
aaaaabbb | a5b3 |
house | House |
Расшифровать строку RLE
Напишите функцию, декодирующую строку, сжатую при помощи алгоритма RLE (run length encoding). В алгоритме RLE повторяющиеся символы заменяются на один символ и указание количества повторов.
Пример:
Входная строка | Результат работы функции |
Hel2o | Hello |
a5b3 | aaaaabbb |
House | House |
Слить две строки в одну
Напишите функцию, которая дозаписывает одну строку в конец другой (такая операция относительно строк называется конкатенацией). При реализации этой функции следует считать, что первая строка является также и выходным буфером, и его размер достаточен, чтобы разместить в нем и вторую строку.
Перевернуть строчкуНапишите функцию, которая бы инвертировала порядок букв в переданной ей строке на обратный. Функция должна изменять переданную ей строку.


