B2 Ответы и решения

B2.1        B2.2         B2.3         B2.4         B2.5         B2.6

 

B2.1  ( ege.yandex.ru - 1) Определите значение переменной c после выполнения следующего фрагмента программы (записанного ниже на разных языках программирования):

Бейсик Паскаль
a = 30
b = 6
a = a / 5 * b
IF a > b THEN
    c = a - 4 * b
ELSE
     c = a + 4 * b
ENDIF
a := 30;
b := 6;
a := a / 5 * b;
if a > b then
   c := a - 4 * b
else
   c := a + 4 * b;
Си Алгоритмический
a = 30;
b = 6;
a = a / 5 * b;
if (a > b)
   c = a - 4 * b;
else
   c = a + 4 * b;
a := 30
b := 6
a := a / 5 * b
если a > b
   то
      c := a - 4 * b
   иначе
      c := a + 4 * b
все

Решение: После присваивания   a = a / 5 * b, значение a станет равным

30 / 5 * 6 = (30 / 5) * 6 = 36.

Значение выражения  a > b – истина, поэтому в условном операторе будет выполнен вариант THEN (то)  т.е. присваивание c = a - 4 * b. При этом значение  c станет равным 36 - 4*6 = 36 - (4*6) = 36 – 24 = 12.

Ответ: 12

 

B2.2 ( ege.yandex.ru-2) Определите значение переменной c после выполнения следующего фрагмента программы (записанного ниже на разных языках программирования):

Бейсик Паскаль
a = 30
b = 6
a = a / 3 * b
IF a > b THEN
   c = a - 5 * b
ELSE
   c = a + 5 * b
ENDIF
a := 30;
b := 6;
a := a / 3 * b;
if a > b then
   c := a - 5 * b
else
   c := a + 5 * b;
Си Алгоритмический
a = 30;
b = 6;
a = a / 3 * b;
if (a > b)
   c = a - 5 * b;
else
   c = a + 5 * b;
a := 30
b := 6
a := a / 3 * b
если a > b
   то
      c := a - 5 * b
   иначе
      c := a + 5 * b
все

Решение: После присваивания   a = a / 3 * b, значение a станет равным

30 / 3 * 6 = (30 / 3) * 6 = 60.

Значение выражения  a > b – истина, поэтому в условном операторе будет выполнен вариант THEN (то)  т.е. присваивание c = a - 5 * b. При этом значение  c станет равным 60 - 5*6 = 60 - (5*6) = 60-30 = 30.

Ответ: 30

 

B2.3 ( ege.yandex.ru-3) Определите значение переменной c после выполнения следующего фрагмента программы (записанного ниже на разных языках программирования):

Бейсик Паскаль
a = 60b = 20
a = a / b * 2
IF a > b THEN
   c = a - 4 * b
ELSE
   c = a + 4 * b
ENDIF
a := 60;b := 20;
a := a / b * 2;
if a > b then
   c := a - 4 * b
else
   c := a + 4 * b;
Си Алгоритмический
a = 60;
b = 20;
a = a / b * 2;
if (a > b)
   c = a - 4 * b;
else
   c = a + 4 * b;
a := 60
b := 20
a := a / b * 2
если a > b
   то
      c := a - 4 * b
   иначе
      c := a + 4 * b
все

Решение: После присваивания   a = a / b * 2, значение a станет равным

60 / 20 * 2 = (60 / 20) * 2 = 3*2=6.

Значение выражения  a > b – ложь, поэтому в условном операторе будет выполнен вариант ELSE (иначе)  т.е. присваивание c = a + 4 * b. При этом значение  c станет равным 6 + 4*20 = 6 + (4*20) = 6 + 80 = 86.

Ответ: 86

 

B2.4 ( ege.yandex.ru-4) Определите значение переменной c после выполнения следующего фрагмента программы (записанного ниже на разных языках программирования):

Бейсик Паскаль
a = 30
b = 10
a = a - b * 2
IF a > b THEN
    c = a * 4 * b
ELSE
    c = a * 4 / b
ENDIF
a := 30;
b := 10;
a := a - b * 2;
if a > b then
   c := a * 4 * b
else
    c := a * 4 / b;
Си Алгоритмический
a = 30;
b = 10;
a = a - b * 2;
if (a > b)
    c = a * 4 * b;
else
    c = a * 4 / b;
a := 30
b := 10
a := a - b * 2
если a > b
   то
      c := a * 4 * b
   иначе
       c := a * 4 / b
все

Решение: После присваивания   a = ab*2, значение a станет равным

30 – 10*2 = 30 – (10*2) = 30-20 = 10.

Значение выражения  a > b – ложь, поэтому в условном операторе будет выполнен вариант ELSE (иначе)  т.е. присваивание c = a * 4 / b. При этом значение  c станет равным 10 *4/10 = (10 *4) / 10 = 40 / 10 = 4.

Ответ: 4

 

 

B2.5 ( ege.yandex.ru-5) Определите значение переменной c после выполнения следующего фрагмента программы (записанного ниже на разных языках программирования):

Бейсик Паскаль
a = 50
b = 10
a = a / b * 2
IF a > b THEN
    c = a - 4 * b
ELSE
   c = a + 4 * b
ENDIF   
a := 50;
b := 10;
a := a / b * 2;
if a > b then
   c := a - 4 * b
else
   c := a + 4 * b;
Си Алгоритмический
a = 50;
b = 10;
a = a / b * 2;
if (a > b)
   c = a - 4 * b;
else
   c = a + 4 * b;
a := 50
b := 10
a := a / b * 2
если a > b
   то
       c := a - 4 * b
   иначе
       c := a + 4 * b
все

Решение: После присваивания   a = a / b*2, значение a станет равным

50 / 10*2 = (50/10) * 2 =  5*2 = 10.

Значение выражения  a > b – ложь, поэтому в условном операторе будет выполнен вариант ELSE (иначе)  т.е. присваивание c = a + 4 * b. При этом значение  c станет равным 10 + 4* 10 = 10 + (4*10)  = 10 + 40 = 50.

Ответ: 50

 

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

Бейсик Паскаль
a = 50
b = 10
a = a / b * 2
IF a >= b THEN
   c = (a – b)*(a + b)
ELSE
   c = a + 4 * b
ENDIF
a := 50;
b := 10;
a := a / b * 2;
if a >= b then
   c := (a – b)*(a + b);
else
   c := a + 4 * b;
Си Алгоритмический
a = 50;
b = 10;
a = a / b * 2;
if (a >= b)
   c = (a – b)*(a + b);
else   
   c = a + 4 * b;
a := 50
b := 10
a := a / b * 2
если a >= b
   то
      c := (a – b)*(a + b)
   иначе
      c := a + 4 * b
все

Решение: После присваивания   a = a / b*2, значение aстанет равным

50 / 10*2 = (50/10) * 2 =  5*2 = 10.

Значение выражения  a >= b – истина, поэтому в условном операторе будет выполнен вариант THEN (то)  т.е. присваивание c = (a – b)*(a + b). При этом значение  c станет равным (10 -10)*(10+10) = 0*20=0. 

Ответ: 0

 

 
 

6 комментариев

  1. Glennunefs:

    nfl highlights week 11 https://www.withjersey.com cheap jerseys

  2. Алексей:

    b2.1
    c := a — 4 * b
    Компьютер не знает последовательность вычисления.... вначале он вычтет 4 потом умножит на b..... если (4*б) не выделено скобками.....

    КТО ПИШЕТ ЭТИ ТЕСТЫ???

    • editor:

      1. Тест написал я.
      2. Смысл твоего замечания - не понял. Компилятор (программа, которая анализирует текст на языке программирования, компьютер здесь ни при чем), конечно, знает порядок выполнения действий.
      3. Если чего непонятно - задавай четкие вопросы.
      Успехов!

  3. Спасибо за четкий разбор)))

  4. Дмитрий:

    Спасибо вам большое. Все очень доступно и понятно. Продолжайте в том же духе...

 
 

Что думаете?

 




 
 

 
 
Яндекс.Метрика