Категория B1 • задача №2
Условие задачи
Дано:
у исполнителя Инвентор есть два пронумерованных окна, в каждом из которых написано по одному натуральному числу, а также три команды, которым присвоены номера:
прибавить к числу, хранящемуся в окне с номером 1 число из второго окна;
прибавить к числу, хранящемуся в окне с номером 2 число из первого окна;
присвоить числу, хранящемуся в первом окне, противоположный знак.
Найти:
запишите порядок команд в программе, состоящей не более чем из 6 команд, которая меняет числа, хранящиеся в окнах, местами. В ответе укажите только номера команд.
Решение
Рассмотрим алгоритм обмена значений двух переменных без использования вспомогательной переменной:
a - первая переменная (ее значением выступает натуральное число);
b - вторая переменная (ее значением выступает натуральное число).
b = b + a
a = b - a
b = b - a
Рассмотрим конкретный пример, когда a = 4, b = 8:
В итоге, переменная a приняла значение равное 8, а переменная b приняла значение равное 4, то есть обмен значений переменных a и b успешно состоялся.
Обычно, в превалирующем большинстве программ, обмен значений двух переменных производят с использованием третьей переменной, но в данной задаче, имеется намек на то, что третья переменная будет недоступна - наличие только двух окон. То есть можно провести некую ассоциацию между переменными, используемыми при обмене значений и описанными командными окнами исполнителя в условии задачи.
Пусть в первом окне Инвентора располагается число 6, а во втором окне располагается число 2:
Ориентируясь на алгоритм обмена (представлен справа от окон) значения двух переменных будем менять местами числа 6 и 2 в командных окнах Инвентора.
В итоге, в первом окне находится число 2, а во втором окне находится число 6, то есть обмен значений успешно проведен. Количество команд составляет ровно шесть штук, что удовлетворяет граничным критериям.
Вывод: |
2 3 1 3 2 3 - порядок команд в программе, состоящей не более чем из 6 команд, которая меняет числа, хранящиеся в окнах, местами |
Резюме
рассмотрели алгоритм обмена значений двух переменных;
провели графическую визуализацию командных окон Инвентора;
ориентируясь на алгоритм обмена значения двух переменных, произвели обмен местами чисел в командных окнах Инвентора.
Ответ: |
2 3 1 3 2 3 |
Категория B1 • задача №2
Остальные решения из билета №2 для подготовки к ЕГЭ по информатике 2013
Условие задачи (наведите курсор мыши на ссылку) |
Аудиовизуальное решение |
Мультимедийная видеопрезентация |
Решение в формате слайд-шоу |
Текстовое решение |
---|
Комментарии