СДАМ ГИА: РЕШУ ЕГЭ
Образовательный портал для подготовки к экзаменам
Информатика
Информатика
Cайты, меню, вход, новости


Задания
Версия для печати и копирования в MS Word
Задания Д18 № 806

Определите значение переменной с после выполнения следующего фрагмента программы:

 

 

БэйсикПаскаль

a = 6*12 + 3

b = a \ 10 + 5

a = b MOD 10 + 1

c = a*a + b*b – a / 2 * b

a := 6*12 + 3;

b := a div 10 + 5;

a := b mod 10 + 1;

c := a*a + b*b – a / 2 * b;

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

a = 6*12 + 3;

b = a / 10 + 5;

a = b % 10 + 1;

c = a*a + b*b – a / 2.0 * b;

a := 6*12 + 3

b := div(a, 10) + 5

a := mod(b, 10) + 1

c := a*a + b*b – a / 2 * b

Python

a = 6*12 + 3

b = a // 10 + 5

a = b % 10 + 1

c = a*a + b*b – a / 2 * b

 

Решение.

При выполнении программы необходимо помнить, что приоритет действий таков: сначала выполняются действия в скобках, затем возведение в степень, после умножение и деление, а приоритет сложения и вычитания самый низкий. Таким образом следует отличать запись 2*a/3*b от 2*a/(3*b). В первом случае сначала двойка умножается на a, затем результат делится на 3, после чего происходит умножение на переменную b. Во втором случае сначала 3 умножается на b, затем 2 умножается на a и результат делится на произведение 3*b.

 

Операция div делит число с отбрасыванием остатка.

Операция mod оставляет только остаток от деления числа.

 

a := 6*12 + 3 = 72 + 3 = 75;

b := a div 10 + 5 = 7 + 5 = 12;

a := b mod 10 + 1 = 2 + 1 = 3;

c := a*a + b*b – a / 2 * b = 9 + 144 - 18 = 135;