Перейти к решению заданий с 11 по 18.

007

 

Решение:

Шифровка №1 — 3135420 может быть расшифрована следующим образом:

3, 1, 3, 5, 4, 20

31, 3, 5, 4, 20

3, 13, 5, 4, 20

Шифровка №2 — 2102030 будет расшифрована так:

2, 10, 20, 30 — БИТЬ

21, 02, 030 или 21, 0, 20, 30 либо какой-нибудь другой способ невозможны, так как буквы под номером 0 нет, как нет и 020 или 030.

Шифровка №3 — 1331320:

1, 3, 3, 1, 3, 20

13, 31, 3, 20

1, 33, 13, 3, 20 и т.д.

Шифровка №4 — 2033510:

20, 3, 3, 5, 10

20, 33, 5, 10

Ответ: БИТЬ.



008

Решение:

a:=4
b:=10
a:=10-4*2    // a := 2
b:=24/2*4  // b := 48

Ответ: 48.



009

Решение:

Var s,k: integer; 
Begin 
s := 8;
for k := 3 to 8 do 
s := s + 8; 
writeln(s); 
End.

Лучше составить табличку для быстрого решения задачи.

k

s

0

8

3

16

4

24

5

32

6

40

7

48

8

56

На первом шаге переменная k=0, а s:=8.

Шаг 2: начался цикл в котором переменной k присвоено значение 3 и оно каждый цикл будет увеличиваться на 1, пока не достигнет 8. Переменной s присвоено значение 8+8=16

Шаг 3:  k:=4, s:=16+8 (24)

Шаг 4:  k:=5, s:=24+8 (32)

Шаг 5:  k:=6, s:=32+8 (40)

Шаг 6:  k:=7, s:=40+8 (48)

Шаг 7:  k:=8, s:=48+8 (56)

После выполнения шага 7 произойдёт выход из цикла и на экран будет выведено значение переменной s командой

writeln(s); // s = 56

  Ответ: 56.


(с) http://informatika.nkschool3.ru/2012/02/12/reshenie-kim-gia-2012-demonstracionnyj-variant/


Решение (вариант 1):


Лучше составить табличку для быстрого решения задачи. Заполним элементы массива.


Перед нами обыкновенный цикл с предусловием, который перебирает с 1 по 11 элемент.

FOR k = 1 TO 11
   IF Dat(k) > 22 THEN
        m = m + 1
   END IF
NEXT k

Обратим внимание на условие внутри цикла

IF Dat(k) > 22 THEN
     m = m + 1
END IF

т.е. если элемент массива >22, то переменная m увеличивается на 1. Найдём все элементы, значение которых >22, это и будет ответ.

Под условие попадает 

m=7

print m ' выведи m

  Ответ: 7.


Решение (вариант 2):


Составим табличку для быстрого решения задачи. Заполним элементы массива.


Перед нами обыкновенный цикл, который перебирает с 1 по 11 элемент.

FOR k = 1 TO 11
   IF Dat(k) > 22 THEN
        m = m + 1
   END IF
NEXT k

Проверяем каждый элемент:

m=0

k=1,   dat(1)  = 20, 20>22 (ложь),    m=0
k=2,   dat(2)  = 25, 25>22 (истина),  m=m+1, m=1
k=3,   dat(3)  = 19, 19>22 (ложь),    m=1
k=4,   dat(4)  = 25, 25>22 (истина),  m=m+1, m=2
k=5,   dat(5)  = 26, 26>22 (истина),  m=m+1, m=3
k=6,   dat(6)  = 22, 22>22 (ложь),    m=3
k=7,   dat(7)  = 24, 24>22 (истина),  m=m+1, m=4
k=8,   dat(8)  = 28, 28>22 (истина),  m=m+1, m=5
k=9,   dat(9)  = 26, 26>22 (истина),  m=m+1, m=6
k=10, dat(10) = 21, 21>22 (ложь),    m=6
k=11, dat(11) = 27, 27>22 (истина),  m=m+1, m=7

Последняя строка

print m
' выводит на экран значение переменной m


  Ответ: 7.