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

Алгоритмический язык программирования - формальный язык, используемый для записи, реализации и изучения алгоритмов. С помощью него можно записывать различные алгоритмические конструкции, которые будут понятны и на начальном уровне изучения алгоритмов.

Пример 1. Линейный алгоритм, записанный на алгоритмическом языке

№1. В про­грам­ме «:=» обо­зна­ча­ет опе­ра­тор присваивания, знаки «+», «-», «*» и «/» — соответственно опе­ра­ции сложения, вычитания, умно­же­ния и деления. Пра­ви­ла вы­пол­не­ния опе­ра­ций и по­ря­док дей­ствий со­от­вет­ству­ют пра­ви­лам арифметики. Опре­де­ли­те зна­че­ние пе­ре­мен­ной b после вы­пол­не­ния алгоритма:

а := 2

b := 4

а := 2*а + 3*b

b := a/2*b

В от­ве­те ука­жи­те одно целое число — значение пе­ре­мен­ной b.

Ответ: 32

№2. В про­грам­ме «:=» обо­зна­ча­ет опе­ра­тор присваивания, знаки «+», «-», «*» и «/» — соответственно опе­ра­ции сложения, вычитания, умно­же­ния и деления. Пра­ви­ла вы­пол­не­ния опе­ра­ций и по­ря­док дей­ствий со­от­вет­ству­ют пра­ви­лам арифметики. Опре­де­ли­те зна­че­ние пе­ре­мен­ной b после вы­пол­не­ния алгоритма:

а := 5

b := 4

а := 2*а + 3*b

b := a/2*b

В от­ве­те ука­жи­те одно целое число — значение пе­ре­мен­ной b.

Ответ: 44.

№3. В про­грам­ме «:=» обо­зна­ча­ет опе­ра­тор присваивания, знаки «+», «-», «*» и «/» — соответственно опе­ра­ции сложения, вычитания, умно­же­ния и деления. Пра­ви­ла вы­пол­не­ния опе­ра­ций и по­ря­док дей­ствий со­от­вет­ству­ют пра­ви­лам арифметики. Опре­де­ли­те зна­че­ние пе­ре­мен­ной b после вы­пол­не­ния алгоритма:

а := 4

b := 4

а := 2*а + 3*b

b := a/2*b

В от­ве­те ука­жи­те одно целое число — значение пе­ре­мен­ной b.

Ответ: 40. 

Пример 2. Простейший циклический алгоритм, записанный на алгоритмическом языке

№1. Запишите значение переменной s, полученное в результате работы следующей программы.

алг

нач

   цел s, k

   s := 0

   нц для k от 3 до 7

      s := s + 6

   кц

вывод s

кон

Ответ: 30

№2. Запишите значение переменной s, полученное в результате работы следующей программы.

алг

нач

   цел s, k

   s := 0

   нц для k от 4 до 8

      s := s + 7

   кц

   вывод s

кон

Ответ: 35

№3. Запишите значение переменной s, полученное в результате работы следующей программы.

алг

нач

   цел s, k

   s := 0

   нц для k от 4 до 7

      s := s + 8

   кц

   вывод s

кон

Ответ: 32. 

Пример 3. Циклический алгоритм обработки массива чисел, записанный на алгоритмическом языке

№1. В таблице Dat хранятся данные измерений среднесуточной температуры за 10 дней в градусах (Dat[1] — данные за первый день, Dat[2] — за второй и т. д.). Определите, какое число будет напечатано в результате работы следующей программы.

алг

нач

   целтаб Dat[1:10]

   цел k, m

   Dat[1] := 12

   Dat[2] := 15

   Dat[3] := 17

   Dat[4] := 15

   Dat[5] := 14

   Dat[6] := 12

   Dat[7] := 10

   Dat[8] := 13

   Dat[9] := 14

   Dat[10] := 15

   m := 0

   нц для k от 1 до 10

       если Dat[k]=15 то

           m := m + 1

       все

   кц

   вывод m

кон

Ответ: 3

№2. В таблице Dat хранятся данные измерений среднесуточной температуры за 10 дней в градусах (Dat[1] — данные за первый день, Dat[2] — за второй и т. д.). Определите, какое число будет напечатано в результате работы следующей программы.

алг

нач

   целтаб Dat[1:10]

   цел k, m

   Dat[1] := 12

   Dat[2] := 15

   Dat[3] := 17

   Dat[4] := 15

   Dat[5] := 14

   Dat[6] := 12

   Dat[7] := 10

   Dat[8] := 13

   Dat[9] := 14

   Dat[10] := 15

   m := 0

   нц для k от 1 до 10

       если Dat[k] > m то

           m := Dat[k]

       все

   кц

   вывод m

кон

Ответ: 17

№3. В таблице Dat хранятся данные измерений среднесуточной температуры за 10 дней в градусах (Dat[1] — данные за первый день, Dat[2] — за второй и т. д.). Определите, какое число будет напечатано в результате работы следующей программы.

алг

   нач

   целтаб Dat[1:10]

   цел k, m

   Dat[1] := 12

   Dat[2] := 15

   Dat[3] := 17

   Dat[4] := 15

   Dat[5] := 14

   Dat[6] := 12

   Dat[7] := 10

   Dat[8] := 13

   Dat[9] := 14

   Dat[10] := 15

   m := 20

   нц для k от 1 до 10

       если Dat[k] < m то

           m := Dat[k]

       все

   кц

   вывод m

   кон

Ответ: 10. 

Пример 4. Алгоритм с ветвлением, записанный на алгоритмическом языке

№1. Найти ошибки в следующем фрагменте алгоритма с ветвлением.

x:=5; y:=0

если x>y

то x:=x/y;

все

Ответ: на ноль делить нельзя

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

x:=8; y:=12

y:=x*2-y

если x>y

то z:=5*y-7

иначе z:=3*x-5

все

Ответ: 13

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

а:=5; b:=17

b:=2*b-а

если а=b

то c:=b+3*a

иначе c:=b-a

все

Ответ: 24