Начнем по порядку с вопроса №8. Часть 1.
Тема: Оператор присваивания в языке
программирования[1].
Что
нужно знать:
·
переменная – это величина, которая имеет имя,
тип и значение; переменная может изменяться во время выполнения программы
·
оператор присваивания служит для записи значения
в переменную
·
если в переменную записывают новое значение,
старое стирается
·
знаки +, -, *,
/
используются для обозначения операций сложения, вычитания, умножения и деления
[1] Здесь рассматривается
только язык Паскаль, который является наиболее распространенным в школах
России.

Шаги алгоритма выполняются последовательно
1. а=6
2. b=2
3. b=6:2*2=6
4. a=2*6+3*6=30
Задачи для тренировки
1) Определите
значение переменной b после выполнения следующего фрагмента
программы, где a и b – вещественные (действительные) переменные:
a := -5;
b := 5 + 7 * a;
b := b / 2 * a;
2) Определите
значение переменной b после выполнения следующего фрагмента
программы, где a и b – вещественные (действительные) переменные:
a := 5;
b := 5 - 3 * a;
b := b / 2 * a;
3) Определите
значение переменной b после выполнения следующего фрагмента
программы, где a и b – вещественные (действительные) переменные:
a := 5;
b := 5 + 5 * a;
b := b / 2 * a;
4) Определите
значение переменной b после выполнения следующего фрагмента
программы, где a и b – вещественные (действительные) переменные:
a := 7;
b := 7 + 3 * a;
b := b / 2 * a;
Определите значение переменной c после
выполнения следующего фрагмента программы.
a := 5;
a := a + 6;
b := –a;
c := a – 2*b;
Часть 1. Вопрос №9
Тема:
Анализ программы с циклами
Что
нужно знать:
·
основные конструкции языка программирования:
o
объявление переменных
o
оператор присваивания
o
оператор вывода
o
циклы
·
уметь выполнять ручную прокрутку программы
·
уметь выделять переменную цикла, от изменения
которой зависит количество шагов цикла
·
уметь определять количество шагов цикла
·
уметь определять переменную, которая выводится
на экран
Алгоритм выполнения приводится на трех языках. Решаете на том языке, который вы знаете и понимаете.
Проводим анализ выполнения алгоритма (программы) с помощью таблицы
k
|
S
|
|
Начальное значение переменных
|
6
|
0
|
1
|
6
|
0+10=10
|
2
|
7
|
10+10=20
|
8
|
20+10=30
|
|
9
|
30+10=40
|
|
10
|
40+10=50
|
|
11
|
50+10=60
|
|
12
|
60+10=70
|
Задачи для тренировки[1]:
1)
Определите, что будет напечатано в результате
работы следующего фрагмента программы:
var k, s: integer;
begin
s:=0;
k:=1;
while k < 11
do begin
s:=s+k;
k:=k+1;
end;
write(s);
end.
2)
Определите, что будет напечатано в результате
работы следующего фрагмента программы:
var k, s: integer;
begin
s:=0;
k:=0;
while k < 30
do begin
k:=k+3;
s:=s+k;
end;
write(s);
end.
3)
Определите, что будет напечатано в результате
работы следующего фрагмента программы:
var k, s: integer;
begin
s:=3;
k:=1;
while k < 25
do begin
s:=s+k;
k:=k+2;
end;
write(s);
end.
4)
Определите, что будет напечатано в результате
работы следующего фрагмента программы:
var k, s: integer;
begin
s:=2;
k:=2;
while s < 50
do begin
s:=s+k;
k:=k+2;
end;
write(k);
end.
5)
Определите, что будет напечатано в результате
работы следующего фрагмента программы:
var k, s: integer;
begin
s:=0;
k:=0;
while s < 100
do begin
s:=s+k;
k:=k+4;
end;
write(k);
end.
6)
Определите, что будет напечатано в результате
работы следующего фрагмента программы:
var k, s: integer;
begin
s:=0;
k:=1;
while s < 66
do begin
k:=k+3;
s:=s+k;
end;
write(k);
end.
7)
Определите, что будет напечатано в результате
работы следующего фрагмента программы:
var k, s: integer;
begin
s:=5;
k:=0;
while k < 15
do begin
k:=k+2;
s:=s+k;
end;
write(s);
end.
8)
Определите, что будет напечатано в результате
работы следующего фрагмента программы:
var k, s: integer;
begin
s:=0;
k:=0;
while k < 12
do begin
s:=s+2*k;
k:=k+3;
end;
write(s);
end.
9)
Определите, что будет напечатано в результате
работы следующего фрагмента программы:
var k, s: integer;
begin
s:=0;
k:=0;
while s < 80
do begin
s:=s+2*k;
k:=k+4;
end;
write(s);
end.
10)
Определите, что будет напечатано в результате
работы следующего фрагмента программы:
var k, s: integer;
begin
s:=1;
k:=0;
while k < 13
do begin
s:=s+2*k;
k:=k+4;
end;
write(s+k);
end.
[1]
Источники заданий:
1.
Демо-варианты ЕГЭ 2012-2013 гг.
2.
Тренировочные и диагностические работы МИОО.
Часть 2. Вопрос №10
Тема: Работа с массивами и матрицами в языке
программирования[1].
Что
нужно знать:
·
работу цикла for (цикла с
переменной)
·
массив – это набор однотипных элементов, имеющих
общее имя и расположенных в памяти рядом
·
для обращения к элементу массива используют
квадратные скобки, запись A[i]
обозначает элемент массива A с номером (индексом) i
·
матрица (двухмерный массив) – это прямоугольная
таблица однотипных элементов
·
если матрица имеет имя A, то обращение A[i,k]
обозначает элемент, расположенный на пересечении строки i и столбца k
Массив заполняется произвольными числами.
Изначально массив Dat выглядит так:
№ элемента массива Dat
|
1
|
2
|
3
|
4
|
5
|
6
|
7
|
8
|
9
|
10
|
значения
|
16
|
20
|
20
|
41
|
14
|
21
|
28
|
12
|
15
|
35
|
Анализ выполнения проведем в табличной форме.
№ действия
|
k
|
Dat[k]
|
Dat[k]>m
|
m:= Dat[k]
|
1
|
1
|
16
|
16>0, да
|
16
|
2
|
2
|
20
|
20>16, да
|
20
|
3
|
3
|
20
|
20>20, нет
|
20
|
4
|
4
|
41
|
41>20, да
|
41
|
5
|
5
|
14
|
14>41, нет
|
41
|
6
|
6
|
21
|
21>41, нет
|
41
|
7
|
7
|
28
|
28>41, нет
|
41
|
8
|
8
|
12
|
12>41, нет
|
41
|
9
|
9
|
15
|
15>41, нет
|
41
|
10
|
10
|
35
|
35>41, нет
|
41
|

