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

Ответы на вопрос

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



Давайте проанализируем код по шагам:
- Инициализация переменной
s
со значением'123456'
. - Входим в цикл
while
, который будет выполняться, пока длина строкиs
больше нуля. - Внутри цикла выполняется команда
Delete(s, 1, 2)
, которая удаляет 2 символа, начиная с первого символа строкиs
. - После удаления первых двух символов, строка
s
становится'3456'
. - Затем команда
writeln('1')
выводит на экран символ'1'
.
Цикл повторяется, так как строка '3456'
имеет длину больше нуля, и снова выполняется Delete(s, 1, 2)
, удаляя первые два символа '34'
, и выводится символ '1'
.
Цикл продолжит свою работу, пока длина строки s
будет больше нуля.
Таким образом, на экран будет выведено следующее:
1 1 1
Всего будет выведено 3 единицы.


Похожие вопросы
Топ вопросов за вчера в категории Информатика
Последние заданные вопросы в категории Информатика
-
Математика
-
Литература
-
Алгебра
-
Русский язык
-
Геометрия
-
Английский язык
-
Химия
-
Физика
-
Биология
-
Другие предметы
-
История
-
Обществознание
-
Окружающий мир
-
География
-
Українська мова
-
Информатика
-
Українська література
-
Қазақ тiлi
-
Экономика
-
Музыка
-
Право
-
Беларуская мова
-
Французский язык
-
Немецкий язык
-
МХК
-
ОБЖ
-
Психология
-
Физкультура и спорт
-
Астрономия
-
Кыргыз тили
-
Оʻzbek tili