B8 (базовый уровень, время – 3 мин)
Тема: Умение исполнить линейный алгоритм, записанный на алгоритмическом языке.
Что нужно знать:
· Алгоритмы описывают последовательность действий, производимых над объектами, определенными условием задачи;
· переменная – это величина, которая имеет имя, тип и значение; переменная может изменяться во время исполнения алгоритма;
· оператор присваивания служит для записи значения в переменную, который записывается так: <имя переменной> =: <выражение>;
· значение, присвоенное переменной, сохраняется в ней до следующего присваивания этой переменной нового значения; если в переменную записывают новое значение, старое стирается;
· знаки +, -, *, / используются для обозначения операций сложения, вычитания, умножения и деления. Правила выполнения операций и порядок действий соответствуют правилам арифметики.
· запись вида a div b означает результат целочисленного деления a на b (остаток отбрасывается);
· запись вида a mod b означает остаток от деления a на b;
|
|
· запись вида a:= с + 4*d + 1; означает «вычислить значения выражения справа от знака присваивания:= и записать результат в переменную a»; при этом значения других переменных (кроме a) не изменяются.
Задача 1: Определите значение переменной c после выполнения следующего фрагмента программы.
а =: 5;
а =: а + 6;
b =: -а;
с =: а - 2*b;
Решение:
1) выполним вручную все действия программы;
2) составим таблицу, где в первом столбце записаны операторы программы, а в остальных показаны изменения переменных при выполнении этих операторов;
3) в задаче используются три переменные: a, b, c;
4) после выполнения оператора a:= 5; изменяется значение переменной a:
a | b | c | |
a:= 5; |
5) следующий оператор a:= a + 6; в результате новое значение равно 5 + 6 = 11:
a | b | c | |
a:= 5; | |||
a:= a + 6; |
6) оператор, b:= -a; изменяет значение переменной b, записывая в нее –a; поэтому значение b = –11:
a | b | c | |
a:= 5; | |||
a:= a + 6; | |||
b:= –a; | –11 |
7) оператор c:= a – 2*b, изменяет значение переменной c; результат с = 33 (11 – 2*(–11) = 33):
a | b | c | |
a:= 5; | |||
a:= a + 6; | |||
b:= –a; | –11 | ||
c:= a – 2*b; |
Ответ: 33
Задача 2: Определите значение целочисленных переменных a и b после выполнения фрагмента программы:
a:= 3 + 8*4;
b:= (a div 10) + 14;
a:= (b mod 10) + 2;
Решение:
1) выполним вручную все действия программы;
2) составим таблицу, где в первом столбце записаны операторы программы, а в остальных показаны изменения переменных при выполнении этих операторов;
3) в задаче используются три переменные: a, b, c;
4) после выполнения оператора a:= 3+8*4; изменяется значение переменной a:
|
|
a | b | |
a:= 3+8*4; |
5) следующий оператор b:= (a div 10) + 14; изменяется значение переменной b, в результате новое значение равно 17 ((35 div 10) + 14 = 17), где запись вида 35 div 10 означает результат целочисленного деления 35 на 10 (остаток отбрасывается), т.е. 3:
a | b | |
a:= 3+8*4; | ||
b:= (a div 10) + 14; |
6) оператор a:= (b mod 10) + 2; изменяет значение переменной a, в результате новое значение равно 9 ((17 mod 10) + 2 = 9), где запись вида 17 mod 10 означает результат остаток деления 17 на 10 (остаток отбрасывается), т.е. 7:
a | b | |
a:= 3+8*4; | ||
b:= (a div 10) + 14; | ||
a:= (b mod 10) + 2; |