Разбор задачи A20 (демо ЕГЭ 2007)
Длина (a) – возвращает количество символов в строке a. (Тип «целое»)
Извлечь (a, i) – возвращает i-тый (слева) символ в строке a. (Тип «строка»)
Склеить (a, b) – возвращает строку, в которой записаны сначала все символы строки a, а затем все символы строки b. (Тип «строка»)
Значения строк записываются в одинарных кавычках
(Например, a := 'дом').
Фрагмент алгоритма:
i := Длина (a) k := 2 b := 'А' пока i > 0 нц c := Извлечь (a, i) b := Склеить (b, c) i := i – k кц b := Склеить (b, 'Т') |
Какое значение будет у переменной b после выполнения вышеприведенного фрагмента алгоритма, если значение переменной a было 'ПОЕЗД'?
- 'АДЕПТ'
- 'АДЗЕОП'
- 'АДТЕТПТ'
- 'АДЗОТ'
a = 'ПОЕЗД' => i := Длина (a)=Длина ('ПОЕЗД')=5 (В слове 'Поезд' 5 букв)
k := 2
b :='А'
1-й проход цикла 'пока'
c := Извлечь (a, i)=Извлечь('ПОЕЗД',5)='Д' (В слове 'Поезд' 5-й буквой является буква 'Д')
b := Склеить (b, c)=Склеить('А','Д')='АД'
i:=i – k=5−2=3.
2-й проход цикла 'пока'
c := Извлечь (a, i)=Извлечь('ПОЕЗД',3)='Е' (В слове 'Поезд' 3-й буквой является буква 'Е')
b := Склеить (b, c)=Склеить('АД','Е')='АДЕ'
i:=i – k=3−2=1.
3-й проход цикла 'пока'
c := Извлечь (a, i)=Извлечь('ПОЕЗД',1)='Е' (В слове 'Поезд' 1-й буквой является буква 'П')
b := Склеить (b, c)=Склеить('АДЕ','П')='АДЕП'
i:=i – k=1−2=-1.
i<0, поэтому цикл прерывается.
b := Склеить (b, 'Т')=Склеить ('АДЕП','Т')='АДЕПТ'.
Получили, что b='АДЕПТ' (вариант 1).