карпова581
?>

1)В про­грам­ме «:=» обо­зна­ча­ет опе­ра­тор при­сва­и­ва­ния, знаки «+», «-», «*» и «/» — со­от­вет­ствен­но опе­ра­ции сло­же­ния, вы­чи­та­ния, умно­же­ния и де­ле­ния. Пра­ви­ла вы­пол­не­ния опе­ра­ций и по­ря­док дей­ствий со­от­вет­ству­ют пра­ви­лам ариф­ме­ти­ки. Опре­де­ли­те зна­че­ние пе­ре­мен­ной b после вы­пол­не­ния ал­го­рит­ма:а := 5b := 4a :=2*a+3*bb :=a/2*bВ ответе укажите одно целое число-значение переменной b2)В программе «:=» обозначает оператор присваивания, знаки «+», «-», «*» и «/» — соответственно операции сложения, вычитания, умножения и деления. Правила выполнения операций и порядок действий соответствуют правилам арифметики. Определите значение переменной b после выполнения алгоритма:а := 6b := 4а := 2*а + 3*bb := a/2*bВ ответе укажите одно целое число — значение переменной b.3)В программе «:=» обозначает оператор присваивания, знаки «+», «-», «*» и «/» — соответственно операции сложения, вычитания, умножения и деления. Правила выполнения операций и порядок действий соответствуют правилам арифметики. Определите значение переменной a после выполнения алгоритма:а := 4b := 2b := a/2*ba := 2*а + 3*bВ ответе укажите одно целое число — значение переменной a.4)В программе «:=» обозначает оператор присваивания, знаки «+», «-», «*» и «/» — соответственно операции сложения, вычитания, умножения и деления. Правила выполнения операций и порядок действий соответствуют правилам арифметики. Определите значение переменной a после выполнения алгоритма:а := 10b := 1b := a/2*ba := 2*а + 3*bВ ответе укажите одно целое число — значение переменной

Информатика

Ответы

dimaaristov

1) 44

2) 48

3) 20

4) 35

oskina3

22

Объяснение:

Понятно, что каждая из команд может только увеличить число.

У нас обязательно есть число 16, из него есть два пути:

1. сделать +1

2. сделать x2

Если мы сделаем +1, то после этого уже точно не сможем сделать x2, т.к. 17 x 2 =  34, а 34 > 33, а уменьшить число мы не сможем. Если мы будем делать постоянно +1, то мы точно пройдём через 30.

Значит не нужно делать +1, когда мы на числе 16, а надо делать x2.

Следовательно, концовка у нас точно будет такая 16 -> 32 -> 33.

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

Считать сколькими можно получить 16 из 2 будет динамическим программированием.

ans[i] - количество различных программ, которые получают i из 2.

Очевидно, ans[2] = 1 (пустая программа).

ans[3] = 1 (нужно сделать +1)

ans[4] = ans[3] + ans[2] = 2 (можно сделать +1 к 3, а можно x2 к 2)

Далее вычисления всегда следующие:

ans[i] = ans[i - 1] + ans[i / 2] для чётных i (можно либо добавить +1 к числу i - 1, либо сделать x2 для числа i / 2)

ans[i] = ans[i - 1] для нечётных i (можно получить только путём добавления +1 к числу i - 1)

Итак, считаем:

ans[2] = 1

ans[3] = ans[2] = 1

ans[4] = ans[3] + ans[2] = 2

ans[5] = ans[4] = 2

ans[6] = ans[5] + ans[3] = 4

ans[7] = ans[6] = 4

ans[8] = ans[7] + ans[4] = 6

ans[9] = ans[8] = 6

ans[10] = ans[9] + ans[5] = 8

ans[11] = ans[10] = 8

ans[12] = ans[11] + ans[6] = 12

ans[13] = ans[12] = 12

ans[14] = ans[13] + ans[7] = 16

ans[15] = ans[14] = 16

ans[16] = ans[15] + ans[8] = 22

Значит 16 из 2 можно получить И столькими же можно получить 33 из 2 выполняя условия задачи.

mez-omts-d5

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

uses GraphABC;

type point=record

          x,y:integer;

          end;

procedure plitk(x,y,r:integer);

var p:array[1..9]of point;

   a,da:real;

   i:byte;

begin

a:=pi/2;

da:=pi/4;

for i:=1 to 9 do

begin

 p[i].x:=x+round(r*cos(a));

 p[i].y:=y-round(r*sin(a));

 a:=a+da;

end;

polygon(p,9);

end;

var r,i,j,x,y,d:integer;

begin

r:=20;

y:=r;

while y<=windowheight do

begin

 x:=r;

 while x<=windowwidth do

  begin

   plitk(x,y,r);

   x:=x+2*r;

  end;

 y:=y+2*r

end;

end

Ответить на вопрос

Поделитесь своими знаниями, ответьте на вопрос:

1)В про­грам­ме «:=» обо­зна­ча­ет опе­ра­тор при­сва­и­ва­ния, знаки «+», «-», «*» и «/» — со­от­вет­ствен­но опе­ра­ции сло­же­ния, вы­чи­та­ния, умно­же­ния и де­ле­ния. Пра­ви­ла вы­пол­не­ния опе­ра­ций и по­ря­док дей­ствий со­от­вет­ству­ют пра­ви­лам ариф­ме­ти­ки. Опре­де­ли­те зна­че­ние пе­ре­мен­ной b после вы­пол­не­ния ал­го­рит­ма:а := 5b := 4a :=2*a+3*bb :=a/2*bВ ответе укажите одно целое число-значение переменной b2)В программе «:=» обозначает оператор присваивания, знаки «+», «-», «*» и «/» — соответственно операции сложения, вычитания, умножения и деления. Правила выполнения операций и порядок действий соответствуют правилам арифметики. Определите значение переменной b после выполнения алгоритма:а := 6b := 4а := 2*а + 3*bb := a/2*bВ ответе укажите одно целое число — значение переменной b.3)В программе «:=» обозначает оператор присваивания, знаки «+», «-», «*» и «/» — соответственно операции сложения, вычитания, умножения и деления. Правила выполнения операций и порядок действий соответствуют правилам арифметики. Определите значение переменной a после выполнения алгоритма:а := 4b := 2b := a/2*ba := 2*а + 3*bВ ответе укажите одно целое число — значение переменной a.4)В программе «:=» обозначает оператор присваивания, знаки «+», «-», «*» и «/» — соответственно операции сложения, вычитания, умножения и деления. Правила выполнения операций и порядок действий соответствуют правилам арифметики. Определите значение переменной a после выполнения алгоритма:а := 10b := 1b := a/2*ba := 2*а + 3*bВ ответе укажите одно целое число — значение переменной
Ваше имя (никнейм)*
Email*
Комментарий*

Популярные вопросы в разделе

laleonaretouch
Равилевич_Олеговна1496
nadjasokolova2017
Liliya-buc
Sergeevna-Makarov
cernovarmechta
Irina-Tunyan
mishagoride885
yelenaSmiryagin
Юрий197
sveta1864
andreich97
Валерия Воробьева396
ykolkova76
tonyakuznetsova