План-конспект внеклассного мероприятия по информатике «Паскаль в морском бою»
План-конспект
внеклассного мероприятия по информатике
«Паскаль в морском бою»
Цели урока:
1) контроль и проверка знаний учащихся по теме «Начала программирования»;
2) формирование устойчивого интереса к предмету.
Тип урока: урок-игра.
Ход урока
1. Организационный момент (2 мин).
Учитель. Здравствуйте, ребята! Сегодня вы будете моряками. Вам придется сразиться в морском бою. Каждой команде дается план моря, где отмечены места расположения кораблей противников. Чем больше вы убьете кораблей противника, тем ближе будете к победе. Победа в морском бою будет зависеть от вашей сплоченности, скорости работы и, конечно же, ваших знаний языка программирования Паскаль.
2. Проведение игры (35 мин).
Правила игры и подготовка. Игра аналогична игре «Морской бой». Класс делится на две команды. Каждая придумывает себе название. На доску вешаются два плаката с квадратами 10 х 10. Сверху буквы, а слева цифры. От каждой команды выходит по одному представителю. Им даются карточки с заданием. Они его выполняют или сразу говорят ответ. Если выбран правильный ответ, то на плакате соответствующая клеточка закрашивается. Затем выходят другие представители от команд и т. д. Смысл игры заключается в том, чтобы правильными ответами убить все корабли противника. Выигрывает та команда, которая раньше и больше убьет кораблей.
Задания для первой команды
1. Что называют операторными скобками:
1а) Read…Write
2в) begin...end
2б) ()
1г) []
2. Какая из записей заголовка программы правильная:
1к) Program задание 5;
10а) Program 5;
2к) Program zadanie_5;
7д) Program1_zadanie
3. Как записывается оператор ввода:
6к) WRITELN (X, Y);
3е) READ (X, Y);
8в) WRITE (X; Y);
2и) READLN (X; Y);
4. Как записывается оператор присвоения:
3ж) Y := X + 2;
3а) Y = X + 2;
8к) Y : X + 2;
3в) X + 2 := Y;
5. Запись на языке Pascal выражения у = 10х - 2х + 8:х будет иметь вид:
1ж) у = 10*х - 2*х + 8/х
4к) у = 10х - 2х + 8/х
5д) у := 10х - 2х+8:х
4б) у := 10*х - 2*х + 8/х
6. Даны описания:
Var а, b: integer; х, у: real;
Какой из операторов ошибочен?
1б) х := a*y
4и) у := a/a
4в) b := a/2
8д) b := a*a
7. Условный оператор записывается в виде:
4г) If <условие> then <оператор1> else <оператор2>
1в) While <условие> do <оператор>
4а) <имя переменной> := <выражение>
9к) If <условие> then <оператор1>; else <оператор2>
8. Высказыванию «Если значение переменной x больше 10, то увеличить значение x на 5, иначе значение x уменьшить на 8» соответствует оператор:
1и) if x > 10 then x := x - 8; else x:=x+5
4е) if x > 10 then x := x + 5; else x := x - 8
5ж) if x > 10 then x := x + 5 else x:=x - 8
8а) if x > 10 then x := x + 5, x:=x – 8
9. Цикл с постусловием записывается в виде:
6б) While <условие> do <оператор>
6а) For i:=1to n do <оператор>
4з) Repeat <операторы> until <условие>
9з) If <условие> then <оператор1> else <оператор2>
10. Общий вид массива имеет вид:
1д) F: array [1..10] of real
6в) С: array[1..n] of real
10в) array[1..n] of integer
6д) darray [1..10] real
11. После выполнения операторов присваивания: а:=0; b:= 10, с:=18; d:=a; а:= b; b:=c, c:=d, соотношение значений переменных a, b и с следующее:
3б) а > b > с
5и) b > с > а
8ж) с > b > а
6ж) b > а > с
12. Чему равны переменные i, j, k в результате выполнения фрагмента программы:
i := 7;
j := 20;
k := i;
i := j mod i;
j := k;
6з) i = 6, j = 7, k = 7
6и) i = 2, j = 7, k = 7
2д) i = 2, j = 2, k = 2
2е) i = 7, j = 7, k = 7
13. Определите значение переменных x и y после выполнения фрагмента программы:
x := 3569;
y := (x div 1000)*10;
x := x mod 1000 + y;
5в) x = 5693, y = 5690
10к) x = 30, y = 399
7к) x = 399, y = 30
3д) x = 5690, y = 5693
14. Какая запись появится на экране в результате выполнения программы?
Program zadacha_1;
begin
writeln (100/(12 - 2));
write('карандашей');
end.
8б) 100 карандашей;
8г) 10 карандашей;
8е) карандашей 10;
9а) 8 карандашей;
15. Какое значение примет переменная С в результате выполнения программы:
Var A, B, C: integer;
Begin
A:=4;
B:=A*3-6;
If B>2*A Then A:=2;
If B<2*A Then A:=5;
If B=2*A Then A:=B-A;
C:=A*B+A-B;
Writeln (`C=`, C);
End.
7ж) 8
9б) 22
10е) 26
9г) 29
16. В результате выполнения фрагмента программы:
for i := 1 to 10 do begin
if A[i] > 0 then A[i] := A[i]/3
else A[i] := 2
end;
произойдет следующее:
8и) положительные значения элементов массива увеличатся втрое, а отрицательные заменятся на 2;
9ж) положительные значения элементов массива уменьшатся втрое, а отрицательные заменятся на 2;
9в) отрицательные значения элементов массива увеличатся вдвое, а положительные заменятся на 3;
7а) отрицательные значения элементов массива уменьшатся вдвое, а положительные заменятся на 3.
17. Результатом выполнения фрагмента программы
S := -5;
x:=0;
repeat s:=s*(x+1); x:=x+1;
until x < 2;
write(s);
будет сообщение
9д) -30
10б) -10
7б) 0
9е) -120
18. Выберите правильное выражение для задания следующей функции:
7г) If (x>0) and (x<5) then f : =-sqr(x)-1 else if x > = 5 then f : = sqrt ( 2*x-1) else f : = sqrt ( abs ( x-5) );
7и) If (x>0) or (x<5) then f : =-sqr(x)-1 else if x > = 5 then f : = sqrt ( 2*x-1) else f : = sqrt ( abs ( x-5) );
10г) If x>0 and x<5 then f : =-sqr(x)-1; if x > = 5 then f : = sqrt ( 2*x-1) else f : = sqrt ( abs ( x-5) );
10з) If (x>0) and (x<5) then f : =-sqr(x)-1 then if x > = 5 then f : = sqrt ( 2*x-1) else f : = sqrt ( abs ( x-5) );
19. Какие значения примут переменные C и D в результате выполнения программы:
Program aaa_1;
Var A, B, C, D: integer;
Begin
A:=3;
B:=3*A+7;
If B>A Then C:=B-A Else D:=A-B;
Writeln (`C = `, C); Writeln (`D = `, D);
End.
9e) C = 13, D = -13
10г) C = 3, D = -3
9ж) C = 0, D = -13
10д) C = 13, D = 0
20. Какой результат будет выведен после выполнения алгоритма программы?
Var s,i:integer;
Begin
s:=0; i:=0;
while i<5 do i:=i+1; s:=s+2*i;
writeln (s);
end.
7e) 0
10и) 5
9и) 20
10ж) 30
ОТВЕТЫ:
1-2в, 2-2к, 3-3е, 4-3ж, 5-4б, 6-4в, 7-4г, 8-5ж, 9-6б, 10-6в, 11-6ж, 12-6з, 13-7к, 14-8г, 15-9г, 16-9ж, 17-10б, 18-10г, 19-10д, 20-10ж.
Задания для второй команды
1. В каком разделе происходит описание переменных?
1д) const
2б) vag
1г) var
6е) procedure
2. Чем характеризуется переменная?
2а) Именем, типом, значением
6б) Именем, типом
1e) Типом, значением
1б) Типом
3. Как записывается оператор вывода:
1 и) READ (A; D);
2в) READLN (A, D);
1ж) WRITE (A; D);
2е) WRITELN (A, D);
4. Оператор присваивания имеет вид:
2г) <имя переменной>=<тип переменной>
4д) <имя переменной>:=<значение>
2и) <имя переменной>::=<значение>
10в) <значение>:=<имя переменной>
5. Выражение y = 8xz - k + 10:(x + 2) на языке Pascal будет записано в виде:
6к) y = 8xz - k + 10:(x + 2)
2д) y : 8*x*z - k + 10/(x + 2)
2к) y := 8*x*z – k + 10/(x+2)
1з) y := 8*x*z - k +10:(x + 2)
6. Какой из операторов записан правильно, если заданы описания:
Var i,j: integer; х,у: real;
4а) х := i*j
1к) у := i/x
3з) j := i + 2
3e) j:=i*y
7. Условию «если X больше или равно Y, то Z присвоить 1» соответствует фрагмент программы:
2ж) If X > Y then Z := 1
6з) If X > Y = Z then Z := 1
4к) If X >= Y then Z = 1
4б) If X >= Y then Z := 1
8. Цикл с параметром запишется в виде:
3к) While <условие> do <оператор>
5в) Repeat <операторы> until <условие>
4в) For i := 1 to n do<оператор>
10е) If <условие> then <оператор1> else <оператор2>
9. Цикл с предусловием запишется в виде:
2з) If<условие>then<оператор1>else<оператор2>
7б) For i:=1to n do <оператор>
5к) While<условие>do<оператор>
4г) Repeat<операторы>until<условие>
10. Какой из массивов может иметь 10 элементов целого типа:
3б) a: array [1..10] of read
6г) a: array [1..n] of real
4з) a: array [1.. 10] of integer
3ж) a: array [1..n] of integer
11. После выполнения операторов присваивания: а:=1; b:= 5, с:=10; d:=a; а:= b; b:=c, c:=d, соотношение значений переменных a, b и с следующее:
3в) а > b > с
5з) b > с > а
8д) с > b > а
4и) b > а > с
12. Определите значение целочисленных переменных а и b после выполнения фрагмента
программы:
а := 42;
b := 14;
а := a div b;
b := a*b;
a := b div a;
10з) a = 42, b = 14
8г) a=1, b = 42
5б) a = 0, b = 588
5и) а=14, b = 42
13. Определите значения переменных а, b и c после выполнения фрагмента программы:
a :=52;
b := a mod 10;
c := a div 10;
a := b*10 + c;
6д) a = 25, b = 2, c = 5
7в) a = 22, b = 2, c = 5
6ж) a = 25, b = 5, c = 2
7и) a = 55, b = 2, c = 5
14. Результатом выполнения фрагмента программы
S := -10;
x:=0;
repeat s:=s*(x+1); x:=x+1;
until x < 2;
write(s); будет сообщение
7г) -10
6и) -20
7к) 0
7е) -30
15. Какие значения примут переменные C и D в результате выполнения программы:
Program aaa_2;
Var A, B, C, D: integer;
Begin
A:=7;
B:=2*A-3;
If B>A Then C:=B-A Else D:=A-B;
Writeln (`C=`, C); Writeln (`D=`, D);
End.
9д) C=18, D=4;
8б) C=4, D=0;
7ж) C=14, D= -14;
8к) C=18, D=14;
16. В результате выполнения фрагмента программы:
For i := 1 to 10 do begin
If A[i] > 0 then A[i] := A[i]/2
else A[i] := i
end;
произойдет следующее:
8з) положительные значения элементов массива увеличатся вдвое, а отрицательные заменятся значениями индекса
8е) положительные значения элементов массива уменьшатся вдвое, а отрицательные заменятся значениями индекса
7а) отрицательные значения элементов массива увеличатся вдвое, а положительные заменятся значениями индекса
8и) отрицательные значения элементов массива уменьшатся вдвое, а положительные заменятся значениями индекса
17. В результате выполнения программы
Program klass;
begin
writeln (30/(11 -5));
write(‘классов’);
end.
на экране появится запись:
8ж) 5 классов
8а) 6 классов
9б) 5 классов;
10б) 6 классов.
18. Выберите правильное выражение для задания следующей функции:
7д) If (x>-2) and (x<2) then y :=abs(x)-1else if x <= -2 then y := -2/x else y := sqrt ( x-2) + 1;
7з) If (x>-2) or (x<2) then y :=abs(x)-1else if x <= -2 then y := -2/x else y := sqrt ( x-2) + 1;
9e) If x>-2 and x<2 then y :=abs(x)-1; if x <= -2 then y := -2/x else y := sqrt ( x-2) + 1;
10а) If (x>-2) and (x<2) then y :=abs(x)-1then if x <= -2 then y := -2/x else y := sqrt ( x-2) + 1;
19. Если в цикле с параметром: for i:= A to B do S; значение B меньше, чем значение A, то ...
10и) оператор S не выполняется ни разу;
9в) оператор S выполняется один раз.
9к) оператор S выполняется B-A раз.
10д) оператор S выполняется B-A+1 раз.
20. Какой результат будет выведен после выполнения алгоритма программы?
Var s,i: integer;
Begin
s:=0; i:=0;
while i<5 do i:=i+1; s:=s+3*i;
writeln (s);
end.
8в) 30
10к) 45
9и) 20
10ж) 50
ОТВЕТЫ:
1-1г, 2-2а, 3-2е, 4-2и, 5-2к, 6-3е, 7-4б, 8-4в, 9-4г, 10-4з, 11-4и, 12-5и, 13-6д, 14-6и, 15-8б, 16-8е, 17-8ж, 18-9е, 19-10и, 20-10к.
3. Подведение итогов (3 мин)
Оценивание работы учащихся на мероприятии.
Ольга Юрьевна Мазанова
Бондарчук Анна Леонидовна
Ольга Юрьевна Мазанова
Бондарчук Анна Леонидовна