Раздел B • Категория B7 (демонстрационный вариант-2012)

 
 
 

Условие задачи

Дано:
ниже на 2-х языках программирования записан алгоритм. Получив на вход число x, этот алгоритм печатает два числа L и M.

 

Вопрос:
укажите наибольшее из таких чисел x, при вводе которых алгоритм печатает сначала 3, а потом 7?

 

Теоретические сведения

Алгоритм – последовательность понятных для исполнителя действий, приводящих к решению поставленной задачи за разумное время.

Фундаментальные свойства алгоритма:

  • дискретность;

  • детерминированность;

  • массовость;

  • понятность;

  • результативность.

 

Решение



Сначала нужно выбрать язык программирования, на основе которого будет строиться весь последующий анализ. Вариативность не очень высокая, так как предлагается на выбор один из двух языков (Turbo Pascal, Basic).

Среди приведенных для выбора языков, я свое предпочтение, безусловно, отдаю языку Pascal, так как:

  • данный язык имеет прекрасную внутреннюю группировку по разделам (раздел описания констант, раздел описания переменных, раздел описания собственных типов данных и т. д.);

  • хорошо понятная лексика;

  • перед использованием переменной она обязана быть описана выше (в отличие от языка программирования Basic);

  • большое количество встроенных структур, позволяющих наиболее эффективно решать поставленные задачи (например, имеется встроенный тип данных "Множество", в отличие от любого другого представленного здесь языка).

 

 

 

 

Решим задачу в три этапа:

  1. проведем детальный анализ каждой строки представленного фрагмента кода;

  2. на основе полученной аналитической информации подберем входные данные;

  3. реализуем тестирование программы заданным входным значением.

 

I этап: анализ заданного программного кода.

 

II этап: подбор входных данных.

Умозаключения:

  • так как значение переменной счетчика L должно быть равно три, то цикл с предусловием (while x > 0 do) должен выполняться ровно три раза, следовательно, входное число состоит из трех разрядов;

  • так как M должно быть равно семи, следовательно, максимальное значение любого из разрядов числа x не превосходит семь
    (x = abc – трехзначное число, a <=  7, b  <= 7, c <= 7);

  • максимальным значением трехзначного числа, у которого значение разряда не может превосходить семь, является число 777;

  • поскольку в условии (if M < (x mod 10) then) стоит строгое сравнение, то значение x = 777 является подходящим значением.







 

 

 

 

III этап: точечное тестирование программы.

 

Вывод:

наибольшим числом x, при вводе которого алгоритм печатает сначала 3, а потом 7 является число 777.

Ответ:

777

 
Рейтинг:
 
Проголосовало: 0
Количество просмотров: 959
 
 
 

Раздел B • Категория B7 (демонстрационный вариант-2012)

 

Комментарии

Для комментирования или зарегистрируйтесь
 
 
© 2011-2019 ООО "СтадиМен". Все права сохранены.
Перепечатка и использование материалов с данного сайта, разрешена только по согласию с владельцем.
Владелец оставляет за собой право воспользоваться 146 статьей УК РФ при нарушении авторских и смежных прав.
 
 
 
 
Авторизация на сайте
 
 
 
Обнаружили
ошибку на сайте?