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

 
 
 

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

Дано:

BasicPascalCАлгоритмический
язык

а = 40
b = 80
b = - a + 2 · b
IF а < b THEN
    с = b - a
ELSE
    с = a – 2 ∙ b
END IF

a := 40;
b := 80;
b := - a – 2 · b;
if a < b then
    с := b - a
else
    с := a + 2 ∙ b;

a = 40;
b = 80;
b = - a – 2 · b;
if (a < b)
    с = b - a;
else
    с = a – 2 ∙ b;

a := 40
b := 80
b := - a – 2 · b
если а < b то
    с := b - a
иначе
    с := а – 2 ∙ b
все

 

Вопрос:
определите значение переменной с после выполнения следующего фрагмента программы (записанного выше на разных языках программирования).

 

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

Для успешной реализации данного задания необходимо знать такие базовые понятия, как:

  • условное выражение;

  • переменная, типы данных;

  • всевозможные операции над переменными;

  • тело выражения;

  • математические операции;

  • приоритет операций.

 

Решение

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

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

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

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

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

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

 



Выделим основные элементы программирования, встречающиеся в приведенном фрагменте кода:

  • описание переменных;

  • построение арифметических выражений;

  • условные конструкции (if-then-else).

 

 


 

 

 

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











 

 

 

Как видно из приведенного фрагмента программного кода, сначала производится предварительная инициализация переменных a и b:












 

 

Затем происходит вычисление арифметического выражения и присваивание полученного значения в переменную b
b = -a - 2 * b = -40 - 2 * 80 = -40 - 160 = -200:












 

 

Производим выполнение условного выражения (a < b), так как a = 40, b = -200, то:
40 < -200 возвращает ЛОЖЬ, так как 40 не меньше, чем -200.












 

то есть, управление передается в ветвь else.

 

Производим вычисления арифметического выражения и полученный результат присваиваем в переменную c.
c = a - 2 * b = 40 - 2 * (-200) = 40 + 400 = 440.

 

Вывод:

значение переменной c после выполнения приведенного программного фрагмента будет равно 440.

Ответ:

440

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

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

 

Комментарии

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