Блок-схема — графический способ описания алгоритма с использованием геометрических фигур.
На блок-схеме шаги алгоритма обозначаются специальными геометрическими фигурами, внутри которых записываются действия. Направление выполнения алгоритма обозначается стрелками.
(_________ ) |
Начало(конец)алгоритма |
I____ I |
Действие |
Проверка условия |
|
Z/__ / |
Ввод или вывод |
Алгоритм называется линейным, если он содержит несколько шагов и все шаги выполняются последовательно друг за другом от начала до конца.
Алгоритм называется Разветвляющимся, если порядок выполнения шагов изменяется в зависимости от выполнения некоторых условий.
Если условие выполнено, то для решения задачи используется ветвь Да, в противном случае — ветвь Нет.
Алгоритм Называется Циклическим, если определенная последовательность шагов повторяется несколько раз в зависимости от заданной величины (параметра цикла).
Тело цикла — это шаги алгоритма, которые повторяются несколько раз.
Параметр цикла — величина, от которой зависит Число повторений в цикле.
Цикл заканчивается, когда параметр цикла принимает нужное значение.
Операция присваивания в блок-схемах, а также на языках Паскаль и Алгоритмический выглядит как :=, а на Бейсике записывается просто знаком равенства в форме:
Имя переменной = выражение.
Операция присваивания обозначает действие, во время которого в определенную ячейку памяти записывается значение, полученное в результате выполнения Выражения.
Например, K:=1 означает, что число 1 запишется в ячейку с именем K.
В случае когда запись выглядит как K:=K+1, сначала вычисляется вражение, находящееся справа от знака равенства с последним имеющимся значением K, а потом итоговый результат присваивается переменной К, стирая предыдущее значение.
Операции Div и mod
Операция \ (Div) Вычисляет результат деления нацело первого аргумента на второй, то есть:
7\5=1 14 div 5=2
Операция MOD (Mod) Вычисляет остаток от деления первого аргумента на второй, то есть:
7 MOD 5=2 14 mod 5=4
7 5
5 1
2 \
7\5
7 mod 5
Операции \ И MOD (Бейсик), Div и Mod (Паскаль и Алгоритмический), — операции, вычисляющие результат деления нацело первого аргумента на второй и остаток от деления соответственно.
Массив — упорядоченный набор данных, обозначаемый одним именем.
Каждый элемент массива имеет свой порядковый номер. Массивы могут быть числовыми или строковыми. Массивы служат для хранения и обработки больших объемов информации. Создание массива начинается с объявления его типа и резервирования для него места в памяти компьютера.
В основном массивы обрабатывают числовые (содержащие числа) и строковые (содержащие текст и символы) данные.
Например: А[10] — одномерный массив, содержащий 10 ячеек, где [i] — указывает на номер ячейки. Например, содержимое ячейки A[5] будет равно 2.
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
Номера ячеек |
0 |
5 |
4 |
9 |
2 |
4 |
6 |
4 |
7 |
4 |
Содержимое ячеек |
Такой массив можно представить в виде квадратной таблицы, в которой для элемента массива A[i, j] величина i является номером строки, а величина j — номером столбца, в котором расположен элемент.
Например, содержимое ячейки A[5,6] будет равно 1.
J (номер столбца)
Женных циклов, заполняется по строкам, то есть сначала последовательно заполняются ячейки первой строки (от A[1,1] до A[1,j]), потом второй (от A[2,1] до A[2,j]) и т. д. Считывание данных происходит в той же последовательности.
Поиск в числовом массиве
В числовых массивах обычно производится поиск наименьшего, наибольшего или среднего значения элементов.
Например, для того чтобы найти наименьший элемент (то есть элемент с наименьшим значением), необходимо завести переменную MIN и присвоить ее нулю. Затем в цикле заполнить массив (если это не было сделано раньше), а потом в массиве со счетчиком сначала приравнять переменную MIN первому элементу массива. Следующий шаг — последовательно в этом же цикле сравнить, является ли каждый следующий элемент меньше значения переменной MIN. Если какой-то элемент оказывается меньшим, чем значение MIN, то переменной MIN присваивается это значение. В конце цикла переменная MIN будет содержать значение наименьшего элемента. Если есть необходимость запомнить и его индекс, то для этого следует завести дополнительную переменную, чье значение будет изменяться вместе с переменной MIN, но содержать именно индекс ячейки.
Подобным алгоритмом следует воспользоваться и для поиска наибольшего элемента массива.
Для поиска среднего значения элементов массива необходимо завести переменные SUMM и SR, заполнить массив, а затем в цикле сложить последовательно значение всех элементов массива, используя переменную SUMM. После окончания цикла необходимо найти среднее значение элементов (SR) путем деления значения переменной SUMM на количество элементов в массиве.
Поиск в строковом массиве
Поиск в строковом массиве обычно реализуется в форме поиска индекса элемента массива, совпадающего с заданным.
Например, строковый массив содержит алфавит, и необходимо определить, какой порядковый номер будет у заданной буквы. В данном случае порядковый номер будет совпадать с индексом элемента, содержащего данную букву.
Сначала надо заполнить массив буквами по алфавиту и завести переменную N под индекс заданной буквы. С клавиатуры ввести букву, чей индекс мы будем искать в массиве, затем в цикле со счетчиком необходимо сопоставить заданную букву со всеми элементами и в случае обнаружения совпадения запомнить в переменной N индекс данного элемента.
Существует довольно много способов сортировки, но самым распространенным является так называемый «метод пузырька», смысл которого заключается в том, что минимальные (максимальные) элементы, «как пузырьки, всплывают на поверхность», так они перемещаются в начало массива, меняясь местами с другими элементами.
Рассмотрим задачу упорядочения (сортировки) числового массива по возрастанию значений его элементов. Пусть имеется целочисленный числовой массив, состоящий, например, из 10 элементов и заполненный случайными числами.
Далее в цикле необходимо найти минимальный элемент в массиве среди элементов с 1-го по 10-й. Теперь надо поменять найденный минимальный элемент с элементом с индексом 1 (стоящим на первом месте), то есть выполняем перестановку. Затем снова проводим поиск минимального элемента, но уже среди элементов со 2-го по 10-й и делаем перестановку.
Многократно повторяем процедуру поиска и перестановки минимального элемента среди оставшихся неупорядоченных элементов массива. Сортировка реализуется с помощью цикла со счетчиком, и количество повторений равно N — 1, где N — количество элементов в массиве. В результате массив упорядочивается.
По аналогичному алгоритму происходит сортировка по убыванию, только в этом случае осуществляется поиск максимального элемента массива.
Основные функции
Математика |
Бейсик |
Паскаль |
X2 |
X^2 |
Sqr(x) |
X3 |
X^3 |
X*X*X или exp(3*ln(x)) |
Х~Х |
SQR(X) |
Sqrt(x) |
33X |
X^(1∕3) |
Exp((1/3)*ln(x)) |
Sin X |
SIN(X) |
Sin(x) |
Cos X |
COS(X) |
Cos(x) |
Tg X |
TAN(X) |
Sin(x)/cos(x) |
I X I |
ABS(X) |
Abs(x) |
Ln X |
LOG(X) |
Ln(x) |
EX |
EXP(X) |
Exp(x) |
При выполнении заданий этой ÷acτπ ^eобxодимо выбрать оди^ вер^1Й ответ из представленных ÷eτb∣pex вариантов и поставить з^aк <<×>>в кёеточку, номер которой соответствует номеру выбранного вами ответа.
1. Определите значение переменной С После выполнения следующего фрагмента программы:
Бейсик |
Паскаль |
Алгоритмический |
A= -3 |
A:= -3; |
A:= -3 |
A= — a — a |
A:= — a — a; |
A:= — a — a |
B= a + 2 |
B:= a + 2; |
B:= a + 2 |
C= — b + a*b |
C:= — b + a*b; |
C:= — b + a*b |
1) 12 2) 32 3) 40 |
4) 48 |
2. Определите значение переменной С После выполнения следующего фрагмента программы:
Бейсик |
Паскаль |
Алгоритмический |
A= 4 A= a *(-a) B= — a/2 C= (a + b) + 3 |
A:= 4; A:= a *(-a); B:= — a/2; C:= (a + b) + 3; |
A:= 4 A:= a *(-a) B:= — a/2 C:= (a + b) + 3 |
1) -5
2) 8
3) -12
4) 14
3. Определите значение переменной С После выполнения следующего фрагмента программы:
Бейсик |
Паскаль |
Алгоритмический |
A= 8 A= -5 + (a + 2) b= (-a +a)*a C= (b — a)*(2 — a) |
A:= 8; A:= -5 + (a + 2); B:= (-a +a)*a; C:= (b — a)*(2 — a); |
A:= 8 A:= -5 + (a + 2) b:= (-a +a)*a C:= (b — a)*(2 — a) |
1) 15
2) 12
3) 10
4) -5
4. Определите значение переменной С После выполнения следующего фрагмента программы:
Бейсик |
Паскаль |
Алгоритмический |
A= -3 |
A:= -3; |
A:= -3 |
B= (a + 7) — a |
B:= (a + 7) — a; |
B:= (a + 7) — a |
B= b — a |
B:= b — a; |
B:= b — a |
C= (-b*a) — (a*a) |
C:= (-b*a) — (a*a); |
C:= (-b*a) — (a*a) |
1) -31
2) -25
3) 21
4) 16
5. Определите значение переменной C После выполнения следующего фрагмента программы:
Бейсик |
Паскаль |
Алгоритмический |
A= 6 |
A:= 6; |
A:= 6 |
A= (a + 3) — a — a |
A:= (a + 3) — a — a; |
A:= (a + 3) — a — a |
B= 21 + a*a |
B:= 21 + a*a; |
B:= 21 + a*a |
C= b/(- a) + 5 |
C:= b/(-a) + 5; |
C:= b/(- a) + 5 |
1) 25 2) 15 3) -15 4) -30
6. Определите значение целочисленных переменных A И B После выполнения фрагмента программы:
Бейсик |
Паскаль |
Алгоритмический |
A= 1235 B= (a \100) + 25 a= (a mod 100) — b (\ и Mod — Операции, вычисляющие результаты деления нацело первого аргумента на второй и остаток от деления соответственно) |
A:= 1235; B:= (a div 100) + 25; a:= (a mod 100) — b; {Div И Mod — операции, вычисляющие результаты деления нацело первого аргумента на второй и остаток от деления соответственно} |
A:= 1235 B:= (a div100) + 25 a:= (a mod 100) — b (Div И Mod — операции, вычисляющие результаты деления нацело первого аргумента на второй и остаток от деления соответственно) |
1) a = -2, b = 37
2) a = 37, b = 35
3) a = 5, b = 123
4) a = -12, b = 35
7. Определите значение целочисленных переменных A И B После выполнения фрагмента программы:
Бейсик |
Паскаль |
Алгоритмический |
A= (20*100) + (3*7) B= (a \1000) + + (a mod 100) A= (a — b) mod 10 |
A:= (20*100) + (3*7); b:= (a div 1000) + + (a mod 100); A:= (a — b) mod 10; |
A:= (20*100) + (3*7) B:= (a div1000) + + (a mod 100) A:= (a — b) mod 10 |
Бейсик |
Паскаль |
Алгоритмический |
(\ и Mod — Операции, вычисляющие результаты деления нацело первого аргумента на второй и остаток от деления соответственно) |
{Div И Mod — операции, вычисляющие результаты деления нацело первого аргумента на второй и остаток от деления соответственно} |
(Div И Mod — операции, вычисляющие результаты деления нацело первого аргумента на второй и остаток от деления соответственно) |
1) a = 19, b = 22
2) a = 8, b = 23
3) a = 9, b = 22
4) a = 98, b = 24
8. Определите значение целочисленных переменных A И B После выполнения фрагмента программы:
Бейсик |
Паскаль |
Алгоритмический |
A= 2521 B= ((a \100)*101) mod 1000 A= (b — (b mod 10))/10 (\ и Mod — Операции, вычисляющие результаты деления нацело первого аргумента на второй и остаток от деления соответственно) |
A:= 2521; B:= ((a div100)*101) mod 1000; A:= (b — (b mod 10))/10; {Div И Mod — операции, вычисляющие результаты деления нацело первого аргумента на второй и остаток от деления соответственно} |
A:= 2521 B:= ((a div100)*101) mod 1000 A:= (b — (b mod 10))/10 (Div И Mod — операции, вычисляющие результаты деления нацело первого аргумента на второй и остаток от деления соответственно) |
1) a = 52, b = 252
2) a = 52, b = 525
3) a = 521, b = 525
4) a = 25, b = 251
9. Определите значение целочисленных переменных A И B После выполнения фрагмента программы:
Бейсик |
Паскаль |
Алгоритмический |
A= 2143 B= 7 + (a \100)*10 A= (10*b — a) mod 10 |
A:= 2143; B:= 7 + (a div100)*10; A:= (10*b — a) mod 10; |
A:= 2143 B:= 7 + (a div100)*10 A:= (10*b — a) mod 10 |
(\ и Mod — Операции, вычисляющие результаты деления нацело первого аргумента на второй и остаток от деления соответственно) |
{Div И Mod — операции, вычисляющие результаты деления нацело первого аргумента на второй и остаток от деления соответственно} |
(Div И Mod — операции, вычисляющие результаты деления нацело первого аргумента на второй и остаток от деления соответственно) |
1) a = 210, b = 27
2) a = 27, b = 210
3) a = 7, b = 217
4) a = 43, b = 270
10. Определите значение целочисленных переменных A И B После выполнения фрагмента программы:
Бейсик |
Паскаль |
Алгоритмический |
A= 5010 B= (a mod 100)*11 A= (a + (b\10)) \ 10 |
A:= 5010; B:= (a mod 100)*11; A:= (a + (b div10)) Div 10; |
A:= 5010 B:= (a mod 100)*11 A:= (a + (b div10)) Div 10 |
(\ и Mod — операции, вычисляющие результаты деления нацело первого аргумента на второй и остаток от деления соответственно) |
{Div И Mod — операции, вычисляющие результаты деления нацело первого аргумента на второй и остаток от деления соответственно} |
(Div И Mod — операции, вычисляющие результаты деления нацело первого аргумента на второй и остаток от деления соответственно) |
1) a = 502, b = 110
2) a = 52, b = 121
3) a = 501, b = 110
4) a = 151, b = 521
11. Дан фрагмент программы, обрабатывающей двумерный массив А размера N×N.
Бейсик |
Паскаль |
Алгоритмический |
K=2 FOR i=1 TO n b=A(i, i) A(i, i) = A(i, k) A(i, k) = b NEXT i |
K:=2; For i:=1 to n do begin b:=A[i, i]; A[i, i]:= A[i, k]; A[i, k]:= b end; |
K:=2 Нц ДляI От1 ДоN B:=A[i, i] A[i, i]:= A[i, k] A[i, k]:= b Кц |
Представим массив в виде квадратной таблицы, в которой для элемента массива A[i, j] величина i является номером строки, а величина j — номером столбца, в котором расположен элемент. Тогда данный алгоритм меняет местами:
1) элементы диагонали и k-й строки таблицы
2) две строки в таблице
3) элементы диагонали и k-го столбца таблицы
4) два столбца в таблице
12. Дан фрагмент программы, обрабатывающей двумерный массив А размера N×N.
Бейсик |
Паскаль |
Алгоритмический |
K=2 FOR i=1 TO n b=A(i, i) A(i, i) = A(k, i) A(k, i) = b NEXT i |
K:=2; For i:=1 to n do begin b:=A[i, i]; A[i, i]:= A[i, k]; A[k, i]:= b end; |
K:=2 Нц ДляI От1 ДоN b:=A[i, i] A[i, i]:= A[i, k] A[k, i]:= b Кц |
Представим массив в виде квадратной таблицы, в которой для элемента массива A[i, j] величина i является номером строки, а величина j — номером столбца, в котором расположен элемент. Тогда после исполнения данного алгоритма в массиве изменят значения:
1) только элементы диагонали
2) элементы диагонали и k-й строки
3) все элементы массива
4) элементы диагонали и k-го столбца таблицы
13. Дан фрагмент программы, обрабатывающей двумерный массив А размера 5 × 5.
Бейсик |
Паскаль |
Алгоритмический |
K=5 FOR i=1 TO 5 E=A(i, i) A(i, i) = A(k, i) A(k, i) = с K=k — 1 NEXT i |
K:=5; For i:=1 to 5 do begin c:=A[i, i]; A[i, i]:= A[k, i]; A[k, i]:= c; k:=k — 1 end; |
K:=5 Нц ДляI От1 До5 c:=A[i, i] A[i, i]:= A[k, i] A[k, i]:= c k:=k — 1 Кц |
Представим массив в виде квадратной таблицы, в которой для элемента массива A[i, j] величина i является номером строки, а величина j — номером столбца, в котором расположен элемент. Тогда данный алгоритм меняет местами:
1) две строки
2) элементы диагонали и k-й строки
3) два столбца
4) элементы двух диагоналей
14. Дан фрагмент программы, обрабатывающей два массива А[1..10] и B[1..10].
Бейсик |
Паскаль |
Алгоритмический |
K=10 FOR i=1 TO 10 A(i)=k + 1 B(k) = A(i) k=k — 1 NEXT i |
K:=10; For i:=1 to 10 do begin A[i]:=k + 1; B[k]:= A[i]; k:=k — 1 end; |
K:=10 Нц дляI От1 До10 A[i]:= k +1 B[k]:= A[i] k:=k — 1 Кц |
Представим массив в виде строк длиной в 10 ячеек, в которой величина i является номером ячейки. Тогда данный алгоритм:
1) меняет местами элементы двух массивов
2) заполняет массив А c начала, а массив В с конца
3) меняет местами элементы массивов, стоящие на четных местах
4) заполняет массив А четными числами, а массив В — нечетными
15. Дан фрагмент программы, обрабатывающей два массива А[1..10] и B[1..10].
Бейсик |
Паскаль |
Алгоритмический |
K=2 FOR i=1 TO 10 A(i)=i + 1 NEXT i FOR i=1TO5 B(k) = A(11 — k) k=k + 2 NEXT i |
K:=2; For i:=1 to 10 do A[i]:=i+1; For i:=1to5do begin A[i]:=i + 1; B[k]:= A[11 — k]; k:=k + 2 end; |
K:=2 Нц дляI От1 До10 A[i]:= i +1 Кц Нц дляI От1 До5 B[k]:= A[11 — k] K:=k + 2 Кц |
Представим массив в виде строк длиной в 10 ячеек, в которой величина i является номером ячейки. Тогда данный алгоритм:
1) заполняет четные ячейки массива В значениями нечетных ячеек массива А
2) меняет местами первые 5 элементов массива А с последними 5 массива В
3) заполняет массив В элементами массива А в обратном порядке
4) меняет местами первый элемент массива А с последним массива В
16. Значения двумерного массива А размера 7 × 7 задаются с помощью вложенного оператора цикла в представленном фрагменте программы:
Бейсик |
Паскаль |
Алгоритмический |
FOR i=1 TO 7 FOR j=1 TO 7 A(i, j)=i*j — j NEXT j NEXT i |
For i:=1 to 7 do for j:=1 to 7 do A[i, j]:=i*j — j; |
Нц дляI От1 До7 Нц дляJ От1 До7 A[i, j]:= i*j — j Кц Кц |
Сколько строк в массиве будут иметь нулевые значения?
1) одна
2) две
3) три
4) ни одной
17. Значения двумерного массива А размера 5 × 5 задаются с помощью вложенного оператора цикла в представленном фрагменте программы:
Бейсик |
Паскаль |
Алгоритмический |
FOR i=1 TO 5 |
For i:=1 to 5 do |
Нц дляI От1 До5 |
FOR j=1 TO 5 |
For j:=1 to 5 do |
Нц дляJ От1 До5 |
A(i, j)= j — i |
Begin |
A[i, j]:= j — i |
A(j, i)= i |
A[i, j]:= j — i; |
A[j, i]:= i |
NEXT j |
A[j, i]:=i |
Кц |
NEXT i |
End; |
Кц |
Сколько в массиве столбцов с одинаковыми значениями?
1) один 3) ни одного
2) два 4) четыре
18. Значения двумерного массива А размера 5 × 5 задаются с помощью вложенного оператора цикла в представленном фрагменте программы:
Бейсик |
Паскаль |
Алгоритмический |
FOR n=1 TO 5 FOR k=1 TO 5 A(k, n)= (k — n)*n NEXT k NEXT n |
For n:=1 to 5 do for k:=1 to 5 do A[k, n]:= (k — n)*n; |
Нц дляN От1 До5 Нц дляK От1 До5 A[k, n]:= (k — n)*n Кц Кц |
Сколько элементов массива будут иметь положительные значения?
1) ни одного
2) 10
3) 15
4) 25
19. Значения двух массивов А[1..10] и B[1..10] задаются с помощью следующего фрагмента программы:
Бейсик |
Паскаль |
Алгоритмический |
FOR i=1 TO 10 A(i)=10 — i NEXT i FOR i=1 TO 10 B(i)=A(5) — A(i) NEXT i |
For i:=1 to 10 do A[i]:= 10 — i; For i:=1 to 10 do B[i]:= A[5] — A[i]; |
Нц дляI От1 До10 A[i]:= 10 — i Кц Нц дляI От1 До10 B[i]:= A[5] — A[i] Кц |
Сколько элементов массива будут иметь отрицательные значения?
1) 0 3) 10
2) 5 4) 4
20. Значения двух массивов А[1..10] и B[1..10] задаются с помощью следующего фрагмента программы:
Бейсик |
Паскаль |
Алгоритмический |
FOR n=1 TO 10 A(n)= — n — n B(11 — n)=A(n) NEXT n FOR n=1 TO 10 A(n)=B(n) + 10 NEXT n |
For n:=1 to 10 do begin A[n]:= — n — n; B[11 — n]:= A[n] end; For n:=1 to 10 do A[n]:= B[n] + 10; |
Нц дляN От1 До10 A[n]:= — n — n B[11 — n]:=A[n] Кц Нц дляN От1 До10 A[n]:= B[n] + 10 Кц |
Чему равен элемент массива A[8]?
1) 0 3) -6
2) -16 4) 4
21. Цепочка из трех бусин, помеченных латинскими буквами, формируется по следующему правилу. В конце цепочки стоит одна из бусин А, В, С. На первом месте — одна из бусин C, D, E, которой нет в середине. А в середине — одна из бусин A, B, E, D, не стоящая на третьем месте. Какая из перечисленных цепочек создана по этому правилу?
1) ABA
2) CCC
3) DAC
4) CDE
22. Для составления цепочек использованы буквы: A, B, M, O, P. В середине цепочки стоит одна из бусин М, В, А. На третьем — любая гласная, если первая буква согласная, и любая согласная, если первая буква гласная. На первом месте — одна из бусин P, O, M, A, не стоящая в середине или в конце цепочки. Какая из перечисленных цепочек создана по этому правилу?
1) OBP
2) POP
3) MMB
4) MAB
23. Для составления цепочек разрешается использовать бусины 5 типов, обозначаемых A, Б, О, К, И. Каждая цепочка должна состоять из трех бусин, при этом должны соблюдаться следующие правила:
1) На первом месте стоит одна из гласных букв.
2) После гласной буквы в цепочке не может снова идти гласная, а после согласной — согласная.
3) Последней буквой не может быть согласная буква.
Какая из перечисленных цепочек создана по этому правилу?
4) АОБ
5) БОК
6) ОКИ
7) ИКБ
24. В формировании цепочки из четырех бусин используются некоторые правила. В конце цепочки стоит одна из бусин К, Р, О, Т. На первом месте — одна из бусин К, O, Т, М, которой нет на последнем месте. На третьем месте — одна из бусин К, Р, если первая буква гласная, или одна из бусин М, Т, если первая буква согласная. Какая из перечисленных цепочек могла быть создана с учетом этих правил?
1) PMTO 3) ОТТО
2) МАКТ 4) ТКТО
25. Для составления цепочек используются бусины, помеченные буквами A, Б, Д, Е, К, Л, по следующему правилу. На первом месте в цепочке стоит одна из бусин А, Д, К, Л. На втором — одна из бусин А, Б, Е, Д, не стоящая в цепочке на первом или последнем месте. На третьем — любая гласная, если первая буква гласная, и любая согласная, если первая буква согласная. На четвертом месте — согласная буква, не стоящая на первом или втором месте. Какая из перечисленных цепочек создана по этому правилу?
1) БДАЕ 3) ЛКАД
2) АБЕЛ 4) КУАЛ
26. Система команд исполнителя РОБОТ, «живущего» в прямоугольном лабиринте на клетчатой плоскости:
Вверх |
Вниз |
Влево |
Вправо |
При выполнении любой из этих команд РОБОТ перемещается на одну клетку соответственно: вверх ↑, вниз ^, влево ^, вправо →.
Четыре команды проверяют истинность условия отсутствия стены у каждой стороны той клетки, где находится РОБОТ:
Сверху |
Снизу |
Слева |
Справа |
Свободно |
Свободно |
Свободно |
Свободно |
Цикл
ПОКА <условие>команда
Выполняется, пока условие истинно, иначе происходит переход на следующую строку.
Сколько клеток лабиринта соответствуют требованию, что, выполнив предложенную программу, РОБОТ остановится в той же клетке, с которой он начал движение?
НАЧАЛО
ПОКА <Справа свободно >Вправо
ПОКА <Сверху свободно >Вверх
ПОКА <Слева свободно >Влево
ПОКА <Снизу свободно >Вниз
КОНЕЦ
1) 1 2) 2 3) 3 4) 4
27. Система команд исполнителя РОБОТ, «живущего» в прямоугольном лабиринте на клетчатой плоскости:
Вверх |
Вниз |
Влево |
Вправо |
При выполнении любой из этих команд РОБОТ перемещается на одну клетку соответственно: вверх ↑, вниз ^, влево ^, вправо →.
Четыре команды проверяют истинность условия отсутствия стены у каждой стороны той клетки, где находится РОБОТ:
Сверху |
Снизу |
Слева |
Справа |
Свободно |
Свободно |
Свободно |
Свободно |
Цикл
ПОКА <условие>команда
Выполняется, пока условие истинно, иначе происходит переход на следующую строку.
Сколько клеток лабиринта соответствуют требованию, что, выполнив предложенную программу, РОБОТ остановится в той же клетке, с которой он начал движение?
НАЧАЛО
ПОКА <Слева свободно >Влево
ПОКА <Сверху свободно >Вверх
ПОКА <Справа свободно >Вправо
ПОКА <Снизу свободно >Вниз
КОНЕЦ
1) 1 2) 2 3) 3 4) 0
28. Система команд исполнителя РОБОТ, «живущего» в прямоугольном лабиринте на клетчатой плоскости:
Вверх |
Вниз |
Влево |
Вправо |
При выполнении любой из этих команд РОБОТ перемещается на одну клетку соответственно: вверх ↑, вниз ^, влево ^, вправо →.
Четыре команды проверяют истинность условия отсутствия стены у каждой стороны той клетки, где находится РОБОТ:
Сверху |
Снизу |
Слева |
Справа |
Свободно |
Свободно |
Свободно |
Свободно |
Цикл
ПОКА <условие>команда
Выполняется, пока условие истинно, иначе происходит переход на следующую строку.
Сколько клеток лабиринта соответствуют требованию, что, выполнив предложенную программу, РОБОТ остановится в той же клетке, с которой он начал движение?
НАЧАЛО
ПОКА <сверху свободно >вверх
ПОКА <слева свободно >влево
ПОКА <снизу свободно >вниз
1) 1 2) 2 3) 3 4) 0
29. Система команд исполнителя РОБОТ, «живущего» в прямоугольном лабиринте на клетчатой плоскости:
Вверх |
Вниз |
Влево |
Вправо |
При выполнении любой из этих команд РОБОТ перемещается на одну клетку соответственно: вверх ↑, вниз ^, влево ^, вправо →.
Четыре команды проверяют истинность условия отсутствия стены у каждой стороны той клетки, где находится РОБОТ:
Сверху свободно |
Снизу свободно |
Слева свободно |
Справа свободно |
Цикл
ПОКА <условие>команда
Выполняется, пока условие истинно, иначе происходит переход на следующую строку.
Сколько клеток лабиринта соответствуют требованию, что, выполнив предложенную программу, РОБОТ остановится в той же клетке, с которой он начал движение?
НАЧАЛО
ПОКА <Снизу свободно >Вниз
ПОКА <Справа свободно >Вправо
ПОКА <Сверху свободно >Вверх
ПОКА <Слева свободно >Влево
КОНЕЦ
1) 1
2) 2
3) 3
4) 0
30. Система команд исполнителя РОБОТ, «живущего» в прямоугольном лабиринте на клетчатой плоскости:
Вверх |
Вниз |
Влево |
Вправо |
При выполнении любой из этих команд РОБОТ перемещается на одну клетку соответственно: вверх ↑, вниз ^, влево ^, вправо →.
Четыре команды проверяют истинность условия отсутствия стены у каждой стороны той клетки, где находится РОБОТ:
Сверху |
Снизу |
Слева |
Справа |
Свободно |
Свободно |
Свободно |
Свободно |
Цикл
ПОКА <условие>команда
Выполняется, пока условие истинно, иначе происходит переход на следующую строку.
Сколько клеток лабиринта соответствуют требованию, что, выполнив предложенную программу, РОБОТ остановится в той же клетке, с которой он начал движение?
НАЧАЛО
ПОКА <Слева свободно >Влево
ПОКА <Справа свободно >Вправо
ПОКА <Снизу свободно >Вниз
ПОКА <Сверху свободно >Вверх
КОНЕЦ
1) 5
2) 9
3) 3
4) 7
31. Исполнитель Черепашка перемещается на экране компьютера, оставляя след в виде линии. В каждый конкретный момент известно положение исполнителя и направление его движения. У исполнителя существуют две команды: Вперед N, вызывающая передвижение Черепашки на N Шагов в направлении движения.
Направо M, вызывающая изменение направления движения на MГрадусов по часовой стрелке.
Вместо N И M Должны стоять целые числа.
Запись:
Повтори 5 [Команда 1 Команда 2]
Означает, что последовательность команд в квадратных скобках повторится 5 Раз.
Какое число необходимо записать вместо NВ следующем алгоритме:
Повтори 6 [Вперед 20 Направо N], чтобы на экране появился правильный прямоугольник? 1) 15 2) 45 3) 60 4) 90
32. Исполнитель Черепашка перемещается на экране компьютера, оставляя след в виде линии. В каждый конкретный момент известно положение исполнителя и направление его движения. У исполнителя существуют две команды: Вперед N, вызывающая передвижение Черепашки на N Шагов в направлении движения.
Направо M, вызывающая изменение направления движения на MГрадусов по часовой стрелке.
Вместо N И M Должны стоять целые числа.
Запись:
Повтори 5 [Команда 1 Команда 2]
Означает, что последовательность команд в квадратных скобках повторится 5 Раз.
Какая фигура появится на экране после выполнения следующего алгоритма:
Повтори 8 [Вперед 30 Направо 60]?
1) квадрат
2) треугольник
3) ломаная линия
4) шестиугольник
33. В приведенном ниже фрагменте алгоритма, записанном на алгоритмическом языке, переменные A, B, C Имеют тип «Строка», а переменные I, K — тип «Целое». Используются следующие функции:
Длина (A) — возвращает количество символов в строке A.
(Тип «Целое».)
Извлечь (A, I) — возвращает I-тый (слева) символ в строке A.(Тип «Строка».)
Склеить (A, B) — возвращает строку, в которой записаны сначала все символы строки A, а затем все символы строки B.(Тип «Строка»)
Значения строк записываются в одинарных кавычках. (Например, A:= ‘дом’.)
Фрагмент алгоритма:
I:= Длина (A) — 5
K:= 1
B:= ‘А’
ПокаI> 2
НЦ
C:= Извлечь (A, i)
B:= Склеить (C, b)
I:= I— K
Кц
Какое значение будет у переменной BПосле выполнения вышеприведенного фрагмента алгоритма, если значение переменной AБыло ‘ИНФОРМАТИКА’?
1) ‘ФОРМА’
2) ‘ФИРМА’
3) ‘МИНОР’
4) ‘АРФА’
34. Исполнитель Робот действует на клетчатой доске, между соседними клетками которой могут стоять стены. Робот передвигается по клеткам доски и может выполнять команды 1 (вверх), 2 (вниз), 3 (вправо), 4 (влево), переходя на соседнюю клетку в направлении, указанном в скобках. Если в этом направлении между клетками стоит стена, то Робот разрушается. Робот успешно выполнил программу вида: 1313133244.
Какую последовательность из четырех команд должен выполнить Робот, чтобы вернуться в ту клетку, где он был перед началом выполнения программы, и не разрушиться вне зависимости от того, какие стены стоят на поле?
1) 4423 2) 3113 3) 4242 4) 1313
![]() |
|
3) S = N + K
4) S = S + N * K
Ответом к заданиям этой части явёяется ^абор симвоёов, которые следует записать справа от номера соответствующего задания, ^ачи^ая с первой клеточки. Каждый симвоё пи0ите в отдельной кёеточке в соответствии с приведенными образцами (если имеются бланки ЕГЭ).
36. Запишите значение переменой B После выполнения фрагмента алгоритма:
Примечание. Знаком := обозначена операция присваивания, знаком * обозначена операция умножения.
37. Запишите значение переменой B После выполнения фрагмента алгоритма:
Примечание. Знаком := обозначена операция присваивания, знаком * обозначена операция умножения.
38. Запишите значение переменой B После выполнения фрагмента алгоритма:
Примечание. Знаком := обозначена операция присваивания, знаком * обозначена операция умножения.
39. Запишите значение переменой b после выполнения фрагмента алгоритма:
Примечание. Знаком := обозначена операция присваивания, знаком * обозначена операция умножения.
40. Запишите значение переменой B После выполнения фрагмента алгоритма:
Примечание. Знаком := обозначена операция присваивания, знаком * обозначена операция умножения.
41. У исполнителя Калькулятор две команды, которым присвоены номера:
2. умножь на 3
Выполняя первую из них, Калькулятор прибавляет к числу на экране 1, а выполняя вторую, умножает его на 3. Запишите порядок команд в программе получения из числа 1 числа 45, содержащей не более 5 команд, указывая лишь номера команд. (Например, программа 21211 — это программа, содержащая следующие команды: умножь на 3 прибавь 1 умножь на 3 прибавь 1 прибавь 1, которые преобразуют число 3 в 32.)
42. У исполнителя Калькулятор две команды, которым присвоены номера:
2. умножь на 4
Выполняя первую из них, Калькулятор уменьшает число на экране на 3, а выполняя вторую, увеличивает его в 4 раза. Запишите порядок команд в программе получения из числа 2 числа 500, содержащей не более 5 команд, указывая лишь номера команд. (Например, программа 21211 — это программа, содержащая следующие команды: умножь на 4 вычти 3 умножь на 4 вычти 3 вычти 3, которые преобразуют число 5 в 62.)
43. У исполнителя Калькулятор две команды, которым присвоены номера:
2. прибавь 3
Выполняя первую из них, Калькулятор умножает число на экране на 2, а выполняя вторую, прибавляет к нему 3. Запишите порядок команд в программе получения из числа 0 числа 30, содержащей не более 5 команд, указывая лишь номера команд. (Например, программа 21211 — это программа, содержащая следующие команды: прибавь 3 умножь на 2 прибавь 3 умножь на 2 умножь на 2, которые преобразуют число 1 в 44.)
44. У исполнителя Квадратор две команды, которым присвоены номера:
1. Возведи в квадрат
2. Вычти 1
Первая из них возводит в квадрат число на экране, а вторая — уменьшает его на 1. Запишите порядок команд в программе получения из числа 5 числа 225, содержащей не более 4 команд, указывая лишь номера команд. (Например, программа 21211 — это программа, содержащая следующие команды: вычти 1
Возведи в квадрат вычти 1
Возведи в квадрат
Возведи в квадрат,
Которые преобразуют число 3 в 81.)
45. У исполнителя Утроитель две команды, которым присвоены номера:
2. умножь на 3
Первая из них увеличивает число на экране на 2, а вторая — утраивает его. Запишите порядок команд в программе получения из числа 2 числа 40, содержащей не более 5 команд, указывая лишь номера команд. (Например, программа 21211 — это программа, содержащая следующие команды: умножь на три прибавь 2 умножь на три прибавь 2 прибавь 2, которые преобразуют число 3 в 37.)
46. Строки (цепочки символов латинских букв) создаются по следующему правилу. Первая строка состоит из одного символа — латинской буквы «А». Каждая из последующих цепочек создается такими действиями: в очередную строку сначала записывается буква, чей порядковый номер в алфавите соответствует номеру строки (на “i’’-м месте пишется “Г‘-я буква алфавита), к ней справа дважды подряд приписывается предыдущая строка.
Вот первые 4 строки, созданные по этому правилу:
A
BAA
CBAABAA
DCBAABAACBAABAA
Латинский алфавит (для справки): ABCDEFGHIJKLMNOPQRSTUVWXYZ.
Запишите шесть символов подряд, стоящих в пятнадцатой строке с одиннадцатого по шестнадцатое место (считая слева направо).
47. Строки (цепочки символов латинских букв) создаются по следующему правилу. Первая строка состоит из одного символа — латинской буквы «А». Каждая из последующих цепочек создается такими действиями: в очередную строку сначала записывается буква, чей порядковый номер в алфавите соответствует номеру строки (на “i’’-м месте пишется “1“-я буква алфавита, к ней справа дважды подряд приписывается предыдущая строка). Вот первые 4 строки, созданные по этому правилу:
A
BAA
CBAABAA
DCBAABAACBAABAA
Латинский алфавит (для справки): ABCDEFGHIJKLMNOPQRSTUVWXYZ.
Сколько раз встречается буква «А» в первых семи строках (суммарно)?
48. Цепочки символов (строки) создаются по следующему правилу. Первая строка состоит из одного символа — цифры «1». Каждая из последующих цепочек создается такими действиями: в начало записывается число — номер строки по порядку (для “i’’-й строки ставится число “i“, далее дважды подряд записывается предыдущая строка). Вот первые 4 строки, созданные по этому правилу:
1
211
3211211
432112113211211
Сколько раз в общей сложности встречаются в седьмой строке нечетные цифры (1, 3, 5, 7)?
49. Цепочки символов (строки) создаются по следующему правилу. Первая строка состоит из одного символа — цифры «1». Каждая из последующих цепочек создается следующими действиями: в очередную строку дважды записывается предыдущая цепочка цифр (одна за другой, подряд), а в конце приписывается еще одно число — номер строки по порядку (на “i’’-м месте дописывается число “i”). Вот первые 4 строки, созданные по этому правилу:
1
112
1121123
112112311211234
Какая цифра стоит в восьмой строке на 120-м месте (считая слева направо)?
50. Цепочки символов (строки) создаются по следующему правилу. Первая строка состоит из одного символа — цифры «1». Каждая из последующих цепочек создается следующими действиями: в очередную строку дважды записывается предыдущая цепочка цифр (одна за другой, подряд), а в конце приписывается еще одно число — номер строки по порядку (на “i’’-м месте дописывается число “i”). Вот первые 4 строки, созданные по этому правилу:
1
112
1121123
112112311211234
Запишите пять символов подряд, стоящих в седьмой строке со 119-го по123-е место (считая слева направо).
×Acτb 3
На бланке 3aπ∣∕∣0∣∕∣τe с^aчaёa номер задания, а затем — полное ре — 0ение. Ответы записывайте ÷eτко и разборчиво.
51. Два игрока играют в следующую игру. На координатной плоскости стоит фишка. Игроки ходят по очереди. В начале игры фишка находится в точке с координатами (4,3). Ход состоит в том, что игрок перемещает фишку из точки с координатами (x, y) в одну из трех точек: или в точку с координатами (x + 2,y), или в точку с координатами (x + 3,y), или в точку с координатами (x, y + 4). Выигрывает игрок, после хода которого расстояние от фишки до точки с координатами (0,0) не меньше 12 единиц. Кто выигрывает при безошибочной игре обоих партнеров — игрок, делающий первый ход, или игрок, делающий второй ход? Каким должен быть первый ход выигрывающего игрока? Ответ обоснуйте.
52. Два игрока играют в следующую игру. На координатной плоскости стоит фишка. Игроки ходят по очереди. В начале игры фишка находится в точке с координатами (7,15). Ход состоит в том, что игрок перемещает фишку из точки с координатами (x, y) в одну из трех точек: или в точку с координатами (x -2,y), или в точку с координатами (x, y -2), или в точку с координатами (x, y — 3). Выигрывает игрок, после хода которого расстояние от фишки до точки с координатами (0,0) не более 11 единиц. Кто выигрывает при безошибочной игре обоих партнеров — игрок, делающий первый ход, или игрок, делающий второй ход? Каким должен быть первый ход выигрывающего игрока? Ответ обоснуйте.
53. Два игрока играют в следующую игру. На координатной плоскости стоит фишка. Игроки ходят по очереди. В начале игры фишка находится в точке с координатами (5,3). Ход состоит в том, что игрок перемещает фишку из точки с координатами (x, y) в одну из трех точек: или в точку с координатами (x + 3, y), или в точку с координатами (x, y + 2), или в точку с координатами (x, y + 3). Выигрывает игрок, после хода которого расстояние от фишки до точки с координатами (0,0) не менее 13 единиц. Кто выигрывает при безошибочной игре обоих партнеров — игрок, делающий первый ход, или игрок, делающий второй ход? Каким должен быть первый ход выигрывающего игрока? Ответ обоснуйте.
54. Два игрока играют в следующую игру. Перед ними лежат две кучки камней, в первой из которых 3, а во второй 1 камень. У каждого игрока неограниченно много камней. Игроки ходят по очереди. Ход состоит в том, что игрок или увеличивает в 3 раза число камней в какой-то кучке, или добавляет два камня в какую-то кучку. Выигрывает игрок, после хода которого общее число камней в двух кучках становится не менее 30. Кто выигрывает при безошибочной игре — игрок, делающий первый ход, или игрок, делающий второй ход? Каким должен быть первый ход выигрывающего игрока? Ответ обоснуйте.
55. Два игрока играют в следующую игру. Перед ними лежат две кучки камней, в первой из которых 3, а во второй 5 камней. У каждого игрока неограниченно много камней. Игроки ходят по очереди. Ход состоит в том, что игрок или увеличивает в 2 раза число камней в какой-то кучке, или добавляет три камня в какую-то кучку. Выигрывает игрок, после хода которого общее число камней в двух кучках становится не менее 18. Кто выигрывает при безошибочной игре обоих игроков — игрок, делающий первый ход, или игрок, делающий второй ход? Каким должен ходить выигрывающий игрок? Ответ обоснуйте.