Вопрос задан 12.07.2023 в 10:53. Предмет Информатика. Спрашивает Иванов Рома.

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

s, 1, 2 ); writeln ( '1' ) end;
0 0
Перейти к ответам

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

Внимание! Ответы на вопросы дают живые люди. Они могут содержать ошибочную информацию, заблуждения, а также ответы могут быть сгенерированы нейросетями. Будьте внимательны. Если вы уверены, что ответ неверный, нажмите кнопку "Пожаловаться" под ответом.
Отвечает Теренюк Настя.

Ответ:

3

Объяснение:

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

0 0
Отвечает нейросеть ChatGpt. Будьте внимательны, ответы нейросети могут содержать ошибочные или выдуманные данные.

Давайте проанализируем код по шагам:

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

Цикл повторяется, так как строка '3456' имеет длину больше нуля, и снова выполняется Delete(s, 1, 2), удаляя первые два символа '34', и выводится символ '1'.

Цикл продолжит свою работу, пока длина строки s будет больше нуля.

Таким образом, на экран будет выведено следующее:

1 1 1

Всего будет выведено 3 единицы.

0 0

Похожие вопросы

Топ вопросов за вчера в категории Информатика

Последние заданные вопросы в категории Информатика

Задать вопрос