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

Исполнитель редактор получает на вход строку цифр и преобразовывает её. редактор может выполнять две команды, в обеих командах v и w обозначают цепочки цифр. заменить (v, w) нашлось (v) дана программа для исполнителя редактор: пока нашлось (555) или нашлось (333) если нашлось (333) то заменить (333, 5) иначе заменить (555, 3) конец если конец пока дана строка, состоящая из 500 цифр 5. сколько пятёрок было удалено за время обработки строки по этой программе?

Ответ:
mitioglodima81
mitioglodima81
09.10.2020 21:35

После первого шага алгоритма из 500 "5" получается 1 "3" и 497 "5"; после второго - 2 "3" и 494 "5", после третьего - 3 "3" и 491 "5"; после четвертого - 492 "5". Таким образом, после каждых 4 шагов количество "5" уменьшается на 8.

К последнему шагу алгоритма в строке останется 500-62*8 = 4 "5".

После последнего шага - 1 "3" и 1 "5", т.е. "35".

Таким образом, за время обработки из строки удалится 500-1 = 499 пятёрок.

0,0(0 оценок)
Ответ:
dbblyadbblya
dbblyadbblya
25.01.2024 22:33
Для решения данной задачи мы можем использовать подход "шаг за шагом", чтобы понять, как программа изменяет исходную строку.

1. Изначально у нас есть строка из 500 цифр 5.
2. Мы начинаем выполнение программы и проходимся по строке с помощью цикла while.
3. Первая команда в программе - "пока нашлось (555) или нашлось (333)". Мы должны искать подстроки "555" или "333".
4. На первом шаге мы находим первое вхождение "555" в строку. Так как нашлось (555), мы выполняем следующую команду.
5. Вторая команда - "заменить (555, 3)". Мы должны заменить все вхождения "555" на "3".
6. Заменяем первое вхождение "555" на "3" и получаем новую строку с 498 цифрами "5" и одной цифрой "3".
7. Возвращаемся в начало цикла и проверяем условие снова.
8. На этот раз не находим "555", но находим "333". Теперь выполняем команду "заменить (333, 5)".
9. Заменяем все вхождения "333" на "5" и получаем новую строку с 498 цифрами "5" и одной цифрой "5".
10. Возвращаемся в начало цикла и проверяем условие снова.
11. На этот раз не находим ни "555", ни "333". Условие в цикле не выполняется и мы выходим из цикла, завершая выполнение программы.

Таким образом, в результате выполнения программы было удалено две цифры 5. Одна цифра 5 была заменена на цифру 3, а другая цифра 5 была заменена на цифру 5.
0,0(0 оценок)
Популярные вопросы: Информатика
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota Оформи подписку
logo
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?