Глава 2 алгоритмы и элементы программирования

Информатика

Понятие алгоритма — одно из основных в программировании и информатике. Это последовательность команд, предназначенная исполнителю, в результате выполнения которой он должен решить поставленную задачу.

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

Исполнитель — это человек, компьютер, автоматическое устройство и т. д. Исполнитель должен уметь выполнять все команды, составляющие алгоритм. Множество возможных команд конечно и изначально строго задано. Действия, которые выполняет исполнитель по этим командам называются элементарными. Запись алгоритма на формальном языке называется программой.

Алгоритм обладает следующими свойствами:

1. Дискретность. Процесс решения задачи должен быть разбит на последовательность отдельных шагов-команд, которые выполняются одна за другой. Только после завершения одной команды начинается выполнение следующей.

2. Понятность. Алгоритм должен содержать только те команды, которые известны исполнителю.

3. Детерминированность. Каждый шаг и переход от шага к шагу должны быть точно определены, чтобы его мог выполнить любой другой человек или механическое устройство.

4. Конечность. Обычно предполагают, что алгоритм заканчивает работу за конечное число шагов.

5. Массовость. Алгоритм должен решать не одну частную задачу, а класс задач.

В обучении алгоритмическому мышлению часто используют псевдокод.

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

Для записи любого алгоритма достаточно трех базовых структур:

следование (линейный) — алгоритм, в котором все шаги (команды) выполняются по порядку, друг за другом и только один раз.

ветвление — алгоритм, в котором в зависимости от выполнения условия, совершается одно или другое действие

цикл (while) — алгоритм, в котором заданное действие выполняется указанное число раз или до выполнения условия, прописанного в цикле

Часто требуется подсчитать, сколько раз во время вычислений наступает то или иное событие (выполняется то или иное условие). Для этого вводится вспомогательная переменная, которой в начале присваивается нулевое значение, а после каждого наступления события она увеличивается на единицу. Такая переменная называется счетчиком. Переменная-счетчик хранит количество выполнений того или иного условия.

Один и тот же алгоритм в разных языках программирования может быть записан по-разному — эти формальные правила записи конструкций называются синтаксисомязыка.

Значение синтаксических конструкций называется семантикой. Строго же говоря, семантика алгоритмического языка — это соответствие между синтаксически правильными программами и действиями исполнителя.

Дополнительные материалы:

Глава 2. Основы алгоритмизации (Информатика: учебник для 8 класса / Л.Л. Босова, А.Ю. Босова. — М.: БИНОМ. Лаборатория знаний, 2013)

Глава 2. Алгоритмизация и программирование (Информатика. 10 класс. Базовый уровень / Л.Л. Босова, А.Ю. Босова. — М.: БИНОМ. Лаборатория знаний, 2017)

Глава 2. Алгоритмы и элементы программирования (Информатика. 11 класс. Базовый уровень : учебник / Л. Л. Босова, А. Ю. Босова. — М. : БИНОМ. Лаборатория знаний, 2016)

Источник

Тест по информатике Алгоритмы и элементы программирования 11 класс

Тест по информатике Алгоритмы и элементы программирования 11 класс с ответами. Тест включает 24 задания с выбором ответа.

1. Какой из документов можно считать алгоритмом?

1) правила техники безопасности
2) инструкция по приготовлению пищи
3) расписание движения поездов
4) список книг в школьной библиотеке

2. Массовость — это свойство алгоритма, заключающееся в том, что:

1) алгоритм предназначен для множества исполнителей
2) алгоритм может использоваться на множестве однотипных задач
3) алгоритм состоит из множества конечных команд
4) в результате работы алгоритма может получаться множество различных результатов

3. Какую смысловую нагрузку несет блок?

1) блок начала-конца алгоритма
2) блок ввода-вывода
3) блок обработки
4) логический блок

4. Предлагается некоторая операция над двумя произвольными трехзначными десятичными числами:

1) записывается результат сложения старших разрядов этих чисел;
2) к нему дописывается результат сложения средних разрядов по такому правилу: если он меньше первой суммы, то полученное число приписывается к первому слева, иначе — справа;
3) итоговое число получают приписыванием справа к числу, полученному после второго шага, суммы значений младших разрядов исходных чисел.

Какое из перечисленных чисел могло быть построено по этому правилу?

1) 141310
2) 102113
3) 101421
4) 101413

5. У исполнителя Калькулятор две команды, которым присвоены номера:

1. прибавь 2
2. умножь на 3

Выполняя первую из них, Калькулятор прибавляет к числу на экране 2, а выполняя вторую, утраивает его. Запишите порядок команд в программе получения из 0 числа 28, содержащей не более 6 команд, указывая лишь номера команд.

Например, программа 21211 — это программа:

умножь на 3
прибавь 2
умножь на 3
прибавь 2
прибавь 2

которая преобразует число 1 в 19.

6. Какое определение можно использовать для разветвляющегося алгоритма?

1) алгоритм, который может быть записан с помощью набора геометрических фигур
2) алгоритм, в котором команды выполняются последовательно друг за другом
3) алгоритм, в котором одни и те же действия исполняются многократно
4) алгоритм, в котором есть хотя бы одно условие

7. Какой тип алгоритма используется для вычисления площади треугольника по трем сторонам?

1) линейный
2) разветвляющийся
3) циклический
4) любой

8. Исполнитель Черепашка перемещается на экране компьютера, оставляя след в виде линии. В каждый конкретный момент известно положение исполнителя и направление его движения. У исполнителя существуют две команды:

Вперед n, где n – целое число, вызывающая передвижение черепашки на n шагов в направлении движения.
Направо m, где m – целое число, вызывающая изменение направления движения на m градусов по часовой стрелке.

Запись Повтори 5 [Команда1 Команда2] означает, что последовательность команд в скобках повторится 5 раз.

Черепашке был дан для исполнения следующий алгоритм:

Повтори 5 [Повтори 4 [Вперед 40 Направо 90] Направо 120]

Какая фигура появится на экране?

Фигуры на экране

9. Сколько клеток лабиринта соответствуют требованию, что, начав движение в ней и выполнив следующую программу

Лабиринт для робота

НАЧАЛО
ПОКА
ПОКА
вниз
КОНЕЦ ПОКА
ПОКА
вправо
КОНЕЦ ПОКА
КОНЕЦ ПОКА
КОНЕЦ

РОБОТ уцелеет и остановится в закрашенной клетке (клетка F6)?

10. Определите значение целочисленных переменных x, y и t после выполнения фрагмента программы:

x := 5;
y := 7;
t := x;
x := y mod x;
y := t;

1) x=2, y=5, t=5
2) x=7, y=5, t=5
3) x=2, y=2, t=2
4) x=5, y=5, t=5

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

a := 6;
b := 15;
a := b – a*2;
if a > b
then c := a + b
else c := b – a;

12. Определите значение переменной y, которое будет получено в результате выполнения следующей программы:

var i, y: integer;
begin
y := 0;
for i := 1 to 4 do
begin
y := y * 10;
y :=y + i;
end
end.

13. Определите значение переменной y, которое будет получено в результате выполнения следующей программы:

var y : real; i : integer;
begin
y := 0;
i := 5;
while i>2 do
begin
i:=i − 1;
y := y + i * i
end;
end.

14. Определите значение переменной y, которое будет получено в результате выполнения следующей программы:

var y : real; i : integer;
begin
y := 0;
i := 1;
repeat
i :=2*i;
y := y + i
until i > 5;
end.

15. В программе описан одномерный целочисленный массив с индексами от 0 до 10. В приведенном ниже фрагменте программы массив сначала заполняется, а потом изменяется:

for i:=0 to 10 do
A[i]:= i + 1;
for i:=0 to 10 do
A[i]:= A[10-i];

Чему будут равны элементы этого массива?

1) 10, 9, 8, 7, 6, 5, 4, 3, 2, 1, 0
2) 11, 10, 9, 8, 7, 6, 5, 4, 3, 2, 1
3) 11, 10, 9, 8, 7, 6, 7, 8, 9, 10, 11
4) 10, 9, 8, 7, 6, 5, 6, 7, 8, 9, 10

16. Все элементы двумерного массива A размером 5х5 равны 0. Сколько элементов массива после выполнения фрагмента программы будут равны 1?

for n:=1 tо 5 do
for m:=1 tо 5 do
A[n,m] := (m – n)*(m – n);

17. Дан фрагмент программы, обрабатывающей линейный массив A из 6 элементов.

for i:=1 tо 3 do
if A[i] > A[i+3] then
begin
c :=A[i];
A[i] :=A[i+3];
A[i+3] := c;
end;

Определите, какой из данных массивов станет упорядоченным по возрастанию после обработки алгоритмом.

1) 6, 3, 7, 35, 24, 13
2) 13, 6, 35, 3, 24, 7
3) 3, 7, 13, 24, 6, 35
4) 35, 3, 13, 24, 6, 7

18. Ниже представлен фрагмент программы, в которой описан одномерный целочисленный массив A и обрабатываются элементы массива с индексами от 1 до 10.

n := 10;
for i := 1 to n do begin
A[n+1-i] := 2*A[i];
end;

Перед началом выполнения фрагмента элементы массива имеют значения соответственно 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, т.е. A[1] = 1; A[2] = 2 и т.д.

Укажите значение, которое после выполнения указанного фрагмента программы имеют два или более рассмотренных в этом фрагменте элемента массива. Если таких чисел несколько, укажите наибольшее из них.

1) такого значения нет
2) 10
3) 8
4) 4

19. В программе описан одномерный целочисленный массив A с индексами от 0 до 10. Ниже представлен фрагмент этой программы, в котором значения элементов массива сначала задаются, а затем меняются.

for i:=0 to 10 do
A[i]:=i-1;
for i:=1 to 10 do
A[i-1]:=A[i];
A[10]:=10;

Как изменятся элементы этого массива после выполнения фрагмента программы?

1) все элементы, кроме последнего, окажутся равны между собой
2) все элементы окажутся равны своим индексам
3) все элементы, кроме последнего, будут сдвинуты на один элемент вправо
4) все элементы, кроме последнего, уменьшатся на единицу

20. Алгоритм вычисления значения функции F(n), где n – натуральное число, задан следующими соотношениями:

F(1) = 1
F(n) = F(n–1) * (2*n + 1), при n > 1

Чему равно значение функции F(4)?

21. Алгоритм вычисления значений функций F(n) и G(n), где n – натуральное число, задан следующими соотношениями:

F(1) = 1; G(1) = 1;
F(n) = F(n–1) – 2*G(n–1),
G(n) = F(n–1) + G(n–1), при n >=2

Чему равно значение величины G(5)/F(5)?

22. Дан рекурсивный алгоритм:

procedure F(n: integer);
begin
writeln(‘*’);
if n > 0 then begin
F(n-3);
F(n div 2);
end
end;

Сколько символов «звездочка» будет напечатано на экране при выполнении вызова F(7)?

23. Дан рекурсивный алгоритм:

Найдите сумму чисел, которые будут выведены при вызове F(1).

24. Ниже записан рекурсивный алгоритм F:

function F(n: integer): integer;
begin
if n > 2 then
F := F(n-1)+F(n-2)+F(n-3)
else
F := n;
end;

Чему будет равно значение, вычисленное алгоритмом при выполнении вызова F(6)?

Ответы на тест по информатике Алгоритмы и элементы программирования 11 класс
1-2
2-2
3-4
4-4
5. 121211
6-4
7-1
8-3
9-3
10-1
11-4
12. 1234
13. 29
14. 14
15-3
16-3
17-2
18-3
19-2
20-4
21-1
22-4
23. 42
24. 20

Источник

Глава 2 алгоритмы и элементы программирования

6665564 6546783 6542916 6542905 6476635 6470700 6470682 6468450 6468440 6468438 6468435 6468434 6468431 6468429 6468426 6468425 6468421 6468414 6468411 6468409

Если Вы не нашли темы для своего учебника, то можете добавить оглавление учебника и получить благодарность от проекта «Инфоурок».

26 минут

Особенности регламентации оплаты предоставления платных образовательных услуг

78 минут

Медиация как инструмент разрешения конфликтов в образовательной среде

31 минута

Организация и содержание занятий по обучению плаванию детей дошкольного возраста

  • Дидактический материал для уроков в начальной школе
  • Рабочая тетрадь для подготовки к ОГЭ по математике
  • Памятка и закладки

Подарочные сертификаты

Ответственность за разрешение любых спорных моментов, касающихся самих материалов и их содержания, берут на себя пользователи, разместившие материал на сайте. Однако администрация сайта готова оказать всяческую поддержку в решении любых вопросов, связанных с работой и содержанием сайта. Если Вы заметили, что на данном сайте незаконно используются материалы, сообщите об этом администрации сайта через форму обратной связи.

Все материалы, размещенные на сайте, созданы авторами сайта либо размещены пользователями сайта и представлены на сайте исключительно для ознакомления. Авторские права на материалы принадлежат их законным авторам. Частичное или полное копирование материалов сайта без письменного разрешения администрации сайта запрещено! Мнение администрации может не совпадать с точкой зрения авторов.

Источник

Читайте также:  Этапы решения задачи линейного программирования симплекс методом
Оцените статью