УМК ШКОЛА



** Линейные программы
 

Страницы:

Задания - решение
№ 17 В приведенном ниже фрагменте алгоритма, записанном на алгоритмическом языке, переменные a, b, c имеют тип «строка», а переменные i, k – тип «целое». Используются следующие функции:

Длина (a) – возвращает количество символов в строке a. (Тип «целое»)

Извлечь (a, i) – возвращает i-тый (слева) символ в строке a. (Тип «строка»)

Склеить (a, b) – возвращает строку, в которой записаны сначала все символы строки a, а затем все символы строки b. (Тип «строка»)

Значения строк записываются в одинарных кавычках (Например, a := ‘дом’).

Фрагмент алгоритма:

i := Длина (a)
k:= 1
b:= ‘П’
пока i> 0
нц
c:= Извлечь (a, i)
b := Склеить (b, c)
i:= i – k
кц

Какое значение будет у переменной b после выполнения вышеприведенного фрагмента алгоритма, если значение переменной a было ‘РОЗА’

1) ‘ПАЗ’
2) ‘ПАЗОР’
3) ‘ПОЗА’
4) ‘ПРОЗА’
РЕШЕНИЕ:

i := Длина (a)
k:= 1
b:= ‘П’
пока i> 0
нц
c:= Извлечь (a, i)
b := Склеить (b, c)
i:= i – k
кц

a = ‘РОЗА’
i := Длина ( ‘РОЗА’)=4
k:= 1
b:= ‘П’

4> 0
c:= Извлечь ( ‘РОЗА’,4)= ‘А’
b := Склеить ( ‘П’, ‘A’)= ‘ПA’
i:= 4-1=3

3> 0
c:= Извлечь ( ‘РОЗА’,3)= ‘З’
b := Склеить ( ‘ПA’, ‘З’)= ‘ПAЗ’
i:= 3-1=2

2> 0
c:= Извлечь ( ‘РОЗА’,2)= ‘О’
b := Склеить ( ‘ПAЗ’, ‘О’)= ‘ПAЗО’
i:= 2-1=1

1> 0
c:= Извлечь ( ‘РОЗА’,1)= ‘Р’
b := Склеить ( ‘ПAЗО’, ‘Р’)= ‘ПAЗОР’
i:= 1-1=0

Ответ: 2


Страницы:
 
Перейти на другой форум:



Логин: Пароль: Забыли пароль?Регистрация
Сайт сделан на SiNG cms © 2010-2020