Для всех учителей из 37 347 образовательных учреждений по всей стране

Скидка до 75% на все 778 курсов

Выбрать курс
Получите деньги за публикацию своих
разработок в библиотеке «Инфоурок»
Добавить авторскую разработку
и получить бесплатное свидетельство о размещении материала на сайте infourok.ru
Инфоурок Информатика Другие методич. материалыУрок игра Морской бой

Урок игра Морской бой

библиотека
материалов


Ход урока

  1. Организационный момент (2 мин).

Отмечаются отсутствующие.

Учитель. Здравствуйте, ребята! Сегодня вы будете моряками. Вам придется сразиться в морском бою. Каждой команде дается план моря, где отмечены места расположения кораб­лей противников. Чем больше вы убьете кораблей противника, тем ближе будете к победе. Победа в морском бою будет зависеть от вашей сплоченности, скорости работы и, конечно же, ваших знаний языка программирования Паскаль.

  1. Проведение игры (35 мин).

Правила игры и подготовка. Игра аналогична игре «Морской бой». Класс делится на две команды. Каждая придумывает себе название. На доску вешаются два плаката с квад­ратами 10 х 10. Сверху буквы, а слева цифры. От каждой команды выходит по одному пред­ставителю. Им даются карточки с заданием. Они его выполняют или сразу говорят ответ. Ес­ли выбран правильный ответ, то на плакате соответствующая клеточка закрашивается. Затем выходят другие представители от команд и т. д. Смысл игры заключается в том, чтобы пра­вильными ответами убить все корабли противника. Выигрывает та команда, которая раньше и больше убьет кораблей. На рис. 33 представлены квадраты с обозначенными кораблями для каждой из команд.

Задания по определенной теме и расположение кораблей каждая команда выбирает сама. Задания должны быть согласованы с учителем.

Примерные задания
Задания для первой команды

    1. Что называют операторными скобками:

За) () 4в) { } 6ж) [ ] 1г) begin...end

    1. Какая из записей заголовка программы правильная:

8а) Program задача 1 4д) Program 1

1к) Program zadacha l 6ж) Program l zadacha

    1. Как записывается оператор ввода:

6к) WRITELN (X, Y) 26) READ (X, Y)

8в) WRITE (X; Y) 2и) READLN (X; Y)

    1. Как записывается оператор присвоения:

2к) А := В + 5 За) А = В + 5 6к) А := В + 5 Зв) В + 5

    1. Запись на языке Pascal выражения у=5х - 10х + 2:х будет иметь вид:

10а) у = 5*х - 10*х + 2/х 6д) у = 5х - 10х + 2/х

9и) у := 5х - 10х+2:х 36) у := 5*х - 10*х + 2/х

59

hello_html_6f42e7bd.jpg

  1. Какой из операторов ошибочен, если заданы описания: var i,j: integer; х,у: real:

5а) х := i*y 4е) у := i/i Зе) j := i/2 6и) j := i*i

  1. Условный оператор записывается в виде:

1 ж) While <условие> do <оператор>

4к) If <условие> then <оператор1> else <оператор2>

86) <имя переменной>:=<выражение>

4и) If <условие> then <оператор1>; else <оператор2>

  1. Высказыванию «Если значение переменной b больше 5, то увеличить значение b на 15, иначе значение b уменьшить на 3» соответствует оператор:

1д) if b > 5 then b := b - 3; else b:=b+15

3г) if b > 5 then b := b + 15; else b := b - 3

5в) if b > 5 then b := b + 15 else b:=b - 3

10к) if b > 5 then b := b + 15 b ~b - 3

  1. Цикл с постусловием записывается в виде:

5г) While <условие> do <оператор>

6а) For i:=l to n do <оператор>

4и) Repeat <операторы> until <условие>

9ж) If <условие> then <оператор1> else <оператор2>

  1. Общий вид массива имеет вид:

10а) a: array [1..10] of real 6д) array[l..n] of integer

6в) c:array[l..n] of read 4з) d array [1..10] real

  1. После выполнения операторов присваивания: а:=3; b:= 5, с:=7; d:=a; а:= b; b:=c, c:=d, со­отношение значений переменных a, b и с следующее:

За) а > b > с 5и) b > с > а 8ж) с>Ь>а 6з)Ь>а>с

  1. Определите значение целочисленных переменных х, у и t после выполнения фрагмента программы: х := 5; у := 7; t := х; х := у mod х; у := t:

7а) х = 2, у = 5, t = 5 Зв) х = 7, у = 5, t = 5 2е) х = 2, у = 2, t = 2

7к) х = 5, у = 5, t = 5

  1. Определите значение целочисленных переменных а и b после выполнения фрагмента программы: а := 2468; b := (a mod 1000)* 10; а := a div 1000 + b:

6и) а = 22, b = 20 7ж) а = 8246, b = 246 7з) а = 4682, Ъ = 4680 6ж) а = 470, b = 468

  1. Значения двумерного массива задаются с помощью вложенного оператора цикла в пред­ставленном фрагменте программы:

for n :- 1 to 5 do for k := 1 to 5 do B[n,k] := n + k;

Чему будет равно значение В(2,4): 8в) 9 8д) 8 7г) 7 8г) 6

  1. В представленном фрагменте программы значение двумерного массива задается с помо­щью вложенного оператора цикла и условного оператора. Чему будет равно а(3,2): for п := 1 to 5 do for k := n to 5 do if n > k then a[n, k] = n else

a[n, k] = k;

7ж) 1 8ж) 2 8з) 3 7и) 4

  1. В результате выполнения фрагмента программы:

for i := 1 to 10 do

begin if A[i] >0 then A[i] := A[i]/3 else A[i] := 2

end

60


произойдет следующее:

9а) положительные значения элементов массива увеличатся втрое, а отрицательные за­менятся на 2;

96) положительные значения элементов массива уменьшатся втрое, а отрицательные за­менятся на 2;

8а) отрицательные значения элементов массива увеличатся вдвое, а положительные за­менятся на 3;

10а) отрицательные значения элементов массива уменьшатся вдвое, а положительные заменятся на 3.

  1. В результате выполнения программы

program klass; begin

writeln (45/(12 - 3)); write('классов'); end.

на экране появится запись:

8в)5 классов 10в)9 классов

9в) 5 классов; 10г) 9 классов

  1. Фрагмент программы, в котором значения двумерного массива задаются с помощью вложенных циклов. Определите, какое значение приобретет элемент массива А[3,2]

for п:=1 То 5 do for k:=l То 5 do if n

then A[n,k] := n + k else A[n,k] := n*k;

9r) 6 9д) 12 10г) 3 10в) 9

  1. Определите, как будут располагаться отрезки в результате выполнения программы:

xl := 10; yl := 10; х2 := 40;у2 := 40;

fori := 1 to 10 do

begin

Iine(xl,yl,x2,y2); setlinestyle(l + i, i, 2) xl := xl + 10;

end;

10д) будут параллельны

9e) будут пересекаться

10е) будут исходить из одной точки

9д) будут перпендикулярны

  1. Что будет происходить в результате выполнения фрагмента программы

setbkcolor(6); х := 30; у := 30;

for i := 1 to 10 do begin

setcolor(7); circle(x, y, 20); setfillstyle(l, i) floodfill(50, 50, 7) x := x + 40;

end;

9e) меняется цвет кругов

10г) меняется цвет экрана

9ж) меняется цвет фона и кругов

10ж) меняется цвет фона


61



Ответы. 1 — 1г, 2 — 1к, 3 — 26,4 — 2к, 5 — 36, 6 — Зе, 7 — 4к, 8 — 5в, 9 — 5г, 10 —6в, 11 —

6з, 12 —7а, 13 — 7з, 14 —8г, 15 — 8з, 16 — 96, 17 —9в, 18 —9г, 19— 10е, 20—Юж.
Задания для второй команды

    1. В каком разделе происходит описание переменных:

1д) в разделе описания констант 2а) в разделе описания типов

1 а) в разделе описания переменных 6е) в разделе описания выражений

    1. Чем заканчивается программа:

26) READLN 6б) READLN; END le) END 16) END

    1. Как записывается оператор вывода:

1 г) WRITELN (A, D) 2в) READLN (A, D)

1 ж) WRITE (A; D) 6к) READ (A; D)

    1. Оператор присваивания имеет вид:

2г) <имя переменной>=<тип переменной>
4д) <имя переменной>:=<значение>
3е) <имя переменной>::=<значение>
10в) <значение>:=<имя переменной>

    1. Выражение х = 4вс - ч + 2:(в + 3) на языке Pascal будет записано в виде:

6и) х = 4вс - ч + 2:(в + 3) 2д) х := 4*в*с - ч + 2/(в + 3)

3ж) х := 4*в*с - ч+2/(в+3) 1з) х := 4*в*с - ч +2:(в + 3)

    1. Какой из операторов записан правильно, если заданы описания:
      var i,j: integer; х,у: real

4а) х := i*j 1и) у := i/x 3з) j i + 2 6г)j:=i*y

    1. Условию «если А больше или равно С, то В равно 1» соответствует фрагмент программы:

2е) If А>С then В := 1 6з) If А>В=С then В := 1

4к) If А>=С then В = 1 1 к) If А>=С then В := 1

    1. Цикл с параметром запишется в виде:

3к) While <условие> do <оператор>

5в) For i := 1 to n do <оператор>

8a) Repeat <операторы> until <условие>

10е) If <условие> then <оператор1> else <оператор2>

    1. Цикл с предусловием запишется в виде:

2ж) While <условие> do <оператор>

76) For i:=l to n do <оператор>

5к) Repeat <операторы> until <условие>

8ж) If <условие> then <оператор1> else <оператор2>

    1. Какой из массивов может иметь 10 элементов целого типа:
      36) a: array [1..10] of read 6
      д) a: array [l..n] of real
      7a) a: array [1.. 10] of integer
      2з) a: array [1. .n] of integer

    2. После выполнения операторов присваивания: а := с; b := d; а := а + b; b := а - b; а := а - Ь,
      переменные а и
      b принимают значения переменных:

9а) а = с, b = d

56) а = с, b = с

7д) а = d, b = с

3к) а = с + d, b = с - d

    1. Определите значение целочисленных переменных а и b после выполнения фрагмента
      программы: а := 42;
      b := 14; а := a div b; b := a*b; a := b div a;

10з) a = 42, b = 14 8г)a=l,b = 42

5б) a = 0, b = 588 7з)а=14,Ь = 42

    1. Определите значения переменных х, у и z после выполнения фрагмента программы:

х :=52; у := х mod 10; z := х div 10; х := у*Ю + z;

3и) х = 55, у = 2, z = 5 7в) х = 22, у = 2, z = 5

6к) х = 25, у = 5, z = 2 7и) х-= 25, у = 2, z = 5

    1. Значения двумерного массива размера 7x7 задаются с помощью вложенного оператора
      цикла в представленном фрагменте программы:

for n := 1 to 7 do for к := 1 to 7 do B[n, к] := к - n;

Сколько элементов массива будут иметь положительные значения:

7г) 49 8г) 28 8д) 21 7е) 7

    1. Все элементы двумерного массива А размером 10x10 элементов первоначально были равны 0. Затем значения элементов меняются с помощью вложенного оператора цикла в представленном фрагменте программы:

for n:=l to 4 do for k:=n to 4 do begin

if n=k then a[n, k] = 1 else a[n, k] = k; end

Сколько элементов массива в результате будут равны 1 :

9е) 0 8ж) 16 7е) 12 8е) 4

    1. В результате выполнения фрагмента программы:

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к) отрицательные значения элементов массива уменьшатся вдвое, а положительные за­менятся значениями индекса

    1. В результате выполнения программы

program klass;

begin

writeln (30/(11 -5));

write(‘классов’);

end.

на экране появится запись: 9а)5 классов 86)6 классов

96)5 классов; 106)6 классов.

    1. Фрагмент программы, в котором значения двумерного массива задаются с помощью вложенных циклов. Определите, какое значение приобретет элемент массива А[3,3]

for n := 1 То 5 do for k := 1 То 5 do if n>k

then A[n,k] := n + k else A[n,k] := n*k;

9в) 9 10b) 6 8в) 3 9г) 12

    1. Определите, что будет меняться в результате выполнения программы:

xl := 10; yl := 10; х2 := 40; у2 := 40;

for i := 1 to 10 do

begin

line(xl, yl, x2, y2);
setlinestyle(l+i, i, 2)
xl :=xl + 10;

end




9и) цвет и тип линии
9з) цвет и толщина линии
8з) тип и толщина линии
9к) цвет, тип и толщина линии

20. Что будет происходить в результате выполнения фрагмента программы

setbkcolor(6);
х := 30; у := 30;
fori := 1 to 10 do
begin

setcolor(7);
circle(x, y, 20);
setfillstyle(l, i)
floodfill(30, 30, 7)

end;

10ж) меняется цвет круга
10з) меняется цвет экрана
9з) меняется цвет фона и круга
10и) меняется цвет фона

Ответы. 1 — 1а, 2 — 16, 3 — 1г, 4 — Зе, 5 — Зж, 6 — Зз, 7 — 4к, 8 — 5в, 9 — 5к, 10 — 7а, 11 —
7д, 12 —7з, 13 —7и, 14 —8д, 15 — 8е, 16 —8и, 17 — 96, 18 —9в, 19 —9и,
20 —Юж.

III. Итог урока (3 мин)

Выставляются оценки.


Курс повышения квалификации
Курс профессиональной переподготовки
Учитель информатики
Курс профессиональной переподготовки
Учитель математики и информатики
Найдите материал к любому уроку,
указав свой предмет (категорию), класс, учебник и тему:
также Вы можете выбрать тип материала:
Краткое описание документа:

Игра аналогична игре «Морской бой». Класс делится на две команды. Каждая придумывает себе название. На доску вешаются два плаката с квад­ратами 10 х 10. Сверху буквы, а слева цифры. От каждой команды выходит по одному пред­ставителю. Им даются карточки с заданием. Они его выполняют или сразу говорят ответ. Ес­ли выбран правильный ответ, то на плакате соответствующая клеточка закрашивается. Затем выходят другие представители от команд и т. д. Смысл игры заключается в том, чтобы пра­вильными ответами убить все корабли противника. Выигрывает та команда, которая раньше и больше убьет кораблей. На рисунке представлены квадраты с обозначенными кораблями для каждой из команд.

Задания по определенной теме и расположение кораблей каждая команда выбирает сама. Задания должны быть согласованы с учителем.

Оставьте свой комментарий

Авторизуйтесь, чтобы задавать вопросы.

Репетиторы онлайн

✅ Подготовка к ЕГЭ/ГИА
✅ По школьным предметам

✅ На балансе занятий — 1

Подробнее