Сколько единиц будет выведено ** экран? s := '123456'; while Length(s) > 0 do begin...

0 голосов
244 просмотров

Сколько единиц будет выведено на экран? s := '123456'; while Length(s) > 0 do begin Delete ( s, 1, 2 ); writeln ( '1' ) end;


Информатика (38 баллов) | 244 просмотров
Дан 1 ответ
0 голосов

Ответ:

3

Объяснение:

Процедура delete имеет следующий вид: delete([строка], [идекс], [количество]) - т.е. из строки [строка] с позиции [индекс] будет удалено [количество] символов. На твоём примере: пока длина строки s больше 0 с позиции 1 удаляем два символа и выводим на экран единицу. На первой итерации цикла строка "123456" превратится в строку "3456", на второй итерации в "56" и на последней, третей итерации в "". Итого, чтобы длина строки стала 0 потребовалось 3 итерации, т.е. на экран выведется три единицы

(190 баллов)