НАЧАЛО ПОКА нашлось (>1) ИЛИ нашлось (>2) ИЛИ нашлось (>3)
ЕСЛИ нашлось (>1)
ТО заменить (>1, 22>)
КОНЕЦ ЕСЛИ
ЕСЛИ нашлось (>2)
ТО заменить (>2, 2>1)
КОНЕЦ ЕСЛИ
ЕСЛИ нашлось (>3)
ТО заменить (>3, 1>)
КОНЕЦ ЕСЛИ
КОНЕЦ ПОКА
КОНЕЦ
На вход приведённой ниже программе поступает строка, начинающаяся с символа «>», а затем содержащая 17 цифр 1, 30 цифр 2 и 28 цифр 3, расположенных в произвольном порядке.
Определите сумму числовых значений цифр строки, получившейся в результате выполнения программы. Так, например, если результат работы программы представлял бы собой строку, состоящую из 50 цифр 4, то верным ответом было бы число 200.
(см. объяснение)
Объяснение:
Подход 1:
Напишем программу на языке Java (см. прикрепленный файл1).
Результатом работы программы будет число 276.
Тогда оно является ответом.
Подход 2:
Напишем программу на языке PascalABC.NET (см. прикрепленный файл2).
Получаем аналогичный написанному выше результат.
Замечу, что в данном случае допустимо применение replace, так как у нас всего одно совпадение.
Бывают задачи, где такая же логика может привести к неверному ответу, поэтому более универсальный вариант приведен в прикрепленном файле3 (в паскале не replaceFirst, поэтому приходится писать именно так, как показано).
Задание выполнено!