КУМИР. Символьные строки 3 V8

Содержание

Слайд 2

Исполнитель «Строки»

Использовать Строки

удалить(лит где, цел позиция, цел количество)
вставить(лит что, лит куда, цел

Исполнитель «Строки» Использовать Строки удалить(лит где, цел позиция, цел количество) вставить(лит что,
позиция)
заменить(лит где, лит что, лит на что, лог все)
верхний регистр(лит s)
нижний регистр(лит s)
цел место := позиция(лит что, лит где)
цел место := позиция после(цел начало, лит что, лит где)

Слайд 3

Удаление

Удаление части строки:

s:= "123456789"
удалить(s, 3, 6)

с 3-его символа

6 штук

строка
меняется!

'123456789'

'129'

удалить(лит где,

Удаление Удаление части строки: s:= "123456789" удалить(s, 3, 6) с 3-его символа
цел позиция, цел количество)

Слайд 4

Вставка

Вставка в строку:

s:= "123456789"
вставить("ABC", s, 3)
вставить("Q", s, 5)

куда вставляем

что вставляем

начиная с

Вставка Вставка в строку: s:= "123456789" вставить("ABC", s, 3) вставить("Q", s, 5)
3-его символа

'12

ABC

3456789'

'12AB

Q

C3456789'

вставить(лит что, лит куда, цел позиция)

Слайд 5

Поиск в строке (позиция)

Поиск в строке:

s:= "1234А67А9"
n:= позиция("А", s)
вывод n
n:= позиция после(6,

Поиск в строке (позиция) Поиск в строке: s:= "1234А67А9" n:= позиция("А", s)
"А", s)
вывод n

где ищем

что ищем

5

лит s
цел n

цел место := позиция(лит что, лит где)
цел место := позиция после(цел начало, лит что, лит где)

8

Особенности:
функция позиция возвращает номер символа, с которого начинается образец в строке
если образец не найден, возвращается 0
поиск с начала (позиция) или с заданного места (позиция после). Находится первое вхождение.

Слайд 6

Пример 1 (позиция)

Поиск в строке:

s:= "Здесь был Вася."
n:= позиция("е", s)
если n >

Пример 1 (позиция) Поиск в строке: s:= "Здесь был Вася." n:= позиция("е",
0 то
вывод "Буква е – это s[", n, "]"
иначе вывод "Не нашли"
все

s[3]

3

лит s
цел n

Задача: Вывести номер буквы «е» или «Не нашли», если такой буквы нет в строке.

Слайд 7

Пример 2 (позиция)

s:= "Здесь был Вася."
n:= позиция("Вася", s)
s1:= s[n:n+3]
вывод s1

n = 11

лит

Пример 2 (позиция) s:= "Здесь был Вася." n:= позиция("Вася", s) s1:= s[n:n+3]
s
цел n

Вася

Задача: Вывести слово «Вася» из введенной строки.

Слайд 8

Замена

Замена в строке:

s:= "12345678912345"
заменить(s, "345", "ABC", нет)
s:= "12345678912345"
заменить(s, "345", "ABC", да)

что

Замена Замена в строке: s:= "12345678912345" заменить(s, "345", "ABC", нет) s:= "12345678912345"
заменяем

где заменяем

все вхождения или нет

заменить(лит где, лит что, лит на что, лог все)

на что заменяем

'12

ABC

345

6789123454'

'12

ABC

345

678912

345

4'

ABC

Слайд 9

Примеры

s:= "Вася Петя Митя"
n:= позиция("Петя", s )
удалить(s, n, 4)
вставить("Куку", s, n )

'Вася

Примеры s:= "Вася Петя Митя" n:= позиция("Петя", s ) удалить(s, n, 4)
Куку Митя'

s:= "Вася Петя Митя"
n:= длин(s)
s1:= s[1:4]
s2:= s[11:14]
s3:= s[6:9]
s:= s3 + s1 + s2
n:= длин(s)

'Вася Митя'

14

'Вася'

'Митя'

'Петя'

'ПетяВасяМитя'

12

6

Слайд 10

Пример решения задачи

Задача: Ввести имя, отчество и фамилию. Преобразовать их к формату

Пример решения задачи Задача: Ввести имя, отчество и фамилию. Преобразовать их к
«фамилия-инициалы».
Пример:
Введите имя, отчество и фамилию:
Василий Алибабаевич Хрюндиков
Результат:
Хрюндиков В.А.

Алгоритм:
найти первый пробел и выделить имя
удалить имя с пробелом из основной строки
найти первый пробел и выделить отчество
удалить отчество с пробелом из основной строки
«сцепить» фамилию, первые буквы имени и фамилии, точки, пробелы…

Слайд 11

Программа

использовать Строки
алг ФИО
нач
лит s, имя, отчество
цел n
вывод "Введите имя,

Программа использовать Строки алг ФИО нач лит s, имя, отчество цел n
отчество и фамилию"
ввод s
n:= позиция(" ", s);
имя:= s[1:n-1] | вырезать имя
s:= удалить(s, 1, n)
n:= позиция(" ", s)
отчество:= s[1:n-1] | вырезать отчество
s:= удалить(s, 1, n) | осталась фамилия
s:= s + " " + имя[1] + "." + отчество[1] + "."
вывод s
кон
Имя файла: КУМИР.-Символьные-строки-3-V8.pptx
Количество просмотров: 31
Количество скачиваний: 0