Материалдар / "Алгоритмизация и язык программирования Паскаль"
МИНИСТРЛІКПЕН КЕЛІСІЛГЕН КУРСҚА ҚАТЫСЫП, АТТЕСТАЦИЯҒА ЖАРАМДЫ СЕРТИФИКАТ АЛЫҢЫЗ!
Сертификат Аттестацияға 100% жарамды
ТОЛЫҚ АҚПАРАТ АЛУ

"Алгоритмизация и язык программирования Паскаль"

Материал туралы қысқаша түсінік
Цели познавательные: • Углубление и систематизация знаний, учащихся по основным понятиям: алгоритм, свойства алгоритма, исполнитель, блок-схема; • научить обрабатывать алгоритмы, записывать программы на языке Паскаль; • стимулирование интереса учащихся к изучаемой на уроке теме и предмету "Информатика" в целом;
Авторы:
Автор материалды ақылы түрде жариялады. Сатылымнан түскен қаражат авторға автоматты түрде аударылады. Толығырақ
28 Қараша 2018
517
0 рет жүктелген
770 ₸
Бүгін алсаңыз
+39 бонус
беріледі
Бұл не?
Бүгін алсаңыз +39 бонус беріледі Бұл не?
Тегін турнир Мұғалімдер мен Тәрбиешілерге
Дипломдар мен сертификаттарды алып үлгеріңіз!
Бұл бетте материалдың қысқаша нұсқасы ұсынылған. Материалдың толық нұсқасын жүктеп алып, көруге болады
logo

Материалдың толық нұсқасын
жүктеп алып көруге болады

















Урок "Алгоритмизация и язык программирования Паскаль"

9 класс





























2018 год






Цели

познавательные:

  • Углубление и систематизация знаний, учащихся по основным понятиям: алгоритм, свойства алгоритма, исполнитель, блок-схема;

  • научить обрабатывать алгоритмы, записывать программы на языке Паскаль;

  • стимулирование интереса учащихся к изучаемой на уроке теме и предмету "Информатика" в целом;

развивающие:

  • развитие алгоритмического и логического мышления учащихся;

  • развитие умения применять полученные знания при решении задач различной направленности;

  • развитие памяти, внимания;

  • развитие познавательного интереса;

  • активизация взаимодействия между учащимися, развитие навыков групповой работы;

воспитательные:

  • воспитание у учащихся самостоятельности, коллективизма, ответственности за себя и других членов коллектива.

  • развивать умение отстаивать свою точку зрения, аргументировано вести диалог с одноклассниками.

Оборудование урока:

  • Ноутбуки;

  • Мультимедийный проектор;

  • Интерактивная доска.

Использованные программы

  • MS PowerPoint

Ход урока

I. Организационный момент.

Учитель сообщает тему и цели урока.

II.Актуализация знаний.

Мы изучаем информатику с 5 класса. На уроках мы узнали многое об информации, устройствах компьютера, алгоритмах. Заинтересовало то, что в нашей повседневной жизни нас окружают алгоритмы, любой человек выполняет свои действия по порядку, раздумывая, правильно ли он поступает.

В настоящее время слово “алгоритм” является одним из важнейших понятий науки информатики и имеет следующее определение: Алгоритм - это описание последовательности действий (план), строгое исполнение которых приводит к решению поставленной задачи за конечное число шагов.

1.Сообщение ученика: История возникновения слова «алгоритм».

Правила выполнения арифметических действий над целыми числами и дробями в десятичной системе счисления впервые были сформулированы выдающимся средневековым ученым по имени Мухаммед ибн Мусса аль – Хорезми (в переводе с арабского это означает «Мухаммед, сын Муссы из Хорезма»), сокращенно Ал – Хорезми.

Ал – Хорезми жил и творил в IX веке. Арабский оригинал его арифметического труда утерян, но имеется латинский перевод XII века, по которому западная Европа ознакомилась с десятичной системой счисления и правилами выполнения в ней арифметических действий.

Ал – Хорезми стремился к тому, чтобы сформулированные им правила были понятны для всех грамотных людей. Достичь этого в веке, когда еще была разработана математическая символика (знаки операций, скобки, буквенные обозначения и тому подобное) было очень трудно. Но Ал-Хорезми удалось выработать в своих трудах такой стиль четкого, строгого словесного предписания, который не давал читателю никакой возможности уклониться от предписанного или пропустить какие – нибудь действий.

В латинском переводе книги Ал-Хорезми правила начинались словами «Алгоризми сказал». С течением времени люди забыли, что «Алгоризми» - это автор правил, и стали сами правила называть алгоритмами. Постепенно «Алгоризми сказал» преобразовалось в «алгоритм гласит».

Таким образом, слово «алгоритм» происходит от имени ученого Ал-Хорезми. Как научный термин первоначально оно обозначало лишь правила выполнения действий в десятичной системе счислении. С течением времени это слово приобрело более широкий смысл и стало обозначать любые точные правила действий.

Научное определение понятия алгоритма дал А. Черч в 1930 году.

2. Вспомним основные свойства алгоритма:

Дискретность (от лат. discretus — разделённый, прерывистый, раздельность) (алгоритм должен состоять из конкретных действий, следующих в определенном порядке);
Детерминированность (от. лат. determinate – определенность, точность) (любое действие должно быть строго и недвусмысленно определено в каждом случае);
Конечность (каждое действие и алгоритм в целом должны иметь возможность завершения);
Массовость (один и тот же алгоритм можно использовать с разными исходными данными);
Результативность (отсутствие ошибок, алгоритм должен приводить к правильному результату для всех допустимых входных значениях).

Понятность алгоритма означает, что алгоритм должен содержать только те команды, которые входят в набор команд, который может выполнить конкретный исполнитель;

Точность алгоритма означает, что каждая команда должна пониматься однозначно.

3.Виды алгоритмов:
- Линейный алгоритм (описание действий, которые выполняются однократно в заданном порядке);
-
 Циклический алгоритм (описание действий, которые должны повторятся указанное число раз или пока не выполнено заданное условие);
-
 Разветвляющийся алгоритм (алгоритм, в котором в зависимости от условия выполняется либо одна, либо другая последовательность действий);
-
 Вспомогательный алгоритм (алгоритм, который можно использовать в других алгоритмах, указав только его имя).

Массив — это пронумерованная последовательность величин одинакового типа, обозначаемая одним именем. Элементы массива располагаются в последовательных ячейках памяти, обозначаются именем массива и индексом. Каждое из значений, составляющих массив, называется его компонентой (или элементом массива).

Если за каждым элементом массива закреплен только один его порядковый номер, то такой массив называется линейным. Вообще количество индексов элементов массива определяет размерность массива. По этом признаку массивы делятся на одномерные (линейные), двумерные, трёхмерные и т.д.


На практике наиболее распространены следующие
 формы представления алгоритмов: 
В устной форме.
В письменной форме на естественном языке.
В письменной форме на формальном языке.

Для более наглядного представления алгоритма широко используется графическая форма –
 блок-схема, которая составляется из стандартных графических объектов.

В блок-схеме каждому типу действий (вводу исходных данных, вычислению значений выражений, проверке условий, управлению повторением действий, окончанию обработки и т.п.) соответствует геометрическая фигура.

Языки программирования - это формальные языки, предназначенные для записи алгоритмов, исполнителем которых будет компьютер.

Записи алгоритмов на языках программирования называются программами.

Язык Паскаль – универсальный язык программирования.

Алфавит языка


Алфавит языка программирования Паскаль - набор допустимых символов, которые можно использовать для записи программы.



Словарь языка

На листочках даны служебные слова языка Паскаль. Нужно написать значения этих слов.

Используем структуру РЕЛЛИ ТЭЙБЛ. Два участника по плечу поочередно записывают свои ответы на одном листе бумаги.


Операции над целыми числами в языке Паскаль:


Операция

Обозначение

Тип результата

Сложение

+

integer

Вычитание

-

integer

Умножение

*

integer

Получение целого частного

div

integer

Получение целого остатка деления

mod

integer

Деление

/

real



Амперса́нд (&) (иногда — амперсенд; от англ. ampersand) — знак, заменяющий слово «и».

Этапы решения задач на компьютере







III. Решение задач на алгоритмы. Используем структуру КОНЭРС. Это обучающая структура на взаимодействие УЧЕНИК – УЧЕНИК, для развития КОММУНИКАЦИИ И СОТРУДНИЧЕСТВА, «углы», обучающая структура, в которой ученики распределяются по разным углам в зависимости от выбранного им варианта ответа. Направляясь к углам класса, ученики осознают, что существует разнообразие точек зрения по данной проблеме.  Обучающая структура КОНЭРС призвана для развития коммуникации и сотрудничества, своего собственного мышления, учит ценить и принимать разность точек зрения и идей. Учитель объявляет 3 угла: «линейный алгоритм», «массив чисел», «циклический алгоритм». Перед учащимися лежат карточки №1. Нужно определить к какому алгоритму относится задание, подойти к выбранному углу, обсудить, решить задачи. Учитель опрашивает учащихся из разных углов.  Затем решения и ответы вводятся через сканер и каждая группа видит решения через интерактивную доску.

Задание для 1 угла. Ли­ней­ный алгоритм, за­пи­сан­ный на ал­го­рит­ми­че­ском языке (задание 8 из ОГЭ)

1. а) В про­грам­ме «:=» обо­зна­ча­ет опе­ра­тор при­сва­и­ва­ния, знаки «+», «-», «*» и «/» — со­от­вет­ствен­но опе­ра­ции сло­же­ния, вы­чи­та­ния, умно­же­ния и де­ле­ния. Пра­ви­ла вы­пол­не­ния опе­ра­ций и по­ря­док дей­ствий со­от­вет­ству­ют пра­ви­лам ариф­ме­ти­ки. Опре­де­ли­те зна­че­ние пе­ре­мен­ной b после вы­пол­не­ния ал­го­рит­ма:

 

а := 1

b := 4

а := 2*а + 3*b

b := a/2*b

 

В от­ве­те ука­жи­те одно целое число — зна­че­ние пе­ре­мен­ной b.

Реше­ние.

Вы­пол­ним про­грам­му:

 

а := 1

b := 4

а := 2*а + 3*b = 2 + 12 = 14

b := a/2*b = 7 · 4 = 28.


б) В про­грам­ме «:=» обо­зна­ча­ет опе­ра­тор при­сва­и­ва­ния, знаки «+», «-», «*» и «/» — со­от­вет­ствен­но опе­ра­ции сло­же­ния, вы­чи­та­ния, умно­же­ния и де­ле­ния. Пра­ви­ла вы­пол­не­ния опе­ра­ций и по­ря­док дей­ствий со­от­вет­ству­ют пра­ви­лам ариф­ме­ти­ки. Опре­де­ли­те зна­че­ние пе­ре­мен­ной b после вы­пол­не­ния ал­го­рит­ма:

 

а := 4

b := 10

а := b - a*2

b := 24/a*4

 

В от­ве­те ука­жи­те одно целое число — зна­че­ние пе­ре­мен­ной b.

Реше­ние.

Вы­пол­ним про­грам­му:

 

а := 4

b := 10

а := b − a*2 = 10 − 8 = 2

b := 24/a*4 = 12 · 4 = 48.


в) В про­грам­ме «:=» обо­зна­ча­ет опе­ра­тор при­сва­и­ва­ния, знаки «+», «-», «*» и «/» — со­от­вет­ствен­но опе­ра­ции сло­же­ния, вы­чи­та­ния, умно­же­ния и де­ле­ния. Пра­ви­ла вы­пол­не­ния опе­ра­ций и по­ря­док дей­ствий со­от­вет­ству­ют пра­ви­лам ариф­ме­ти­ки. Опре­де­ли­те зна­че­ние пе­ре­мен­ной b после вы­пол­не­ния ал­го­рит­ма:

 

a := 4

b := 5

a := b + 15

b := 100/a*4

 

В от­ве­те ука­жи­те одно целое число — зна­че­ние пе­ре­мен­ной b.

Реше­ние.

Вы­пол­ним про­грам­му:

 

a := 4

b := 5

a := b + 15 = 20

b := 100/a*4 = 20.


Задание для 2 угла. Про­стей­ший циклический алгоритм, за­пи­сан­ный на ал­го­рит­ми­ческом языке (задание 9 из ОГЭ)

1.а) За­пи­ши­те зна­че­ние пе­ре­мен­ной s, по­лу­чен­ное в ре­зуль­та­те ра­бо­ты сле­ду­ю­щей про­грам­мы. Текст про­грам­мы при­ведён на трёх язы­ках про­грам­ми­ро­ва­ния.

 

Ал­го­рит­ми­че­ский язык

Бей­сик

Пас­каль

алг

нач

цел s, k

s := 0

нц для k от 3 до 8

s := s + 7

кц

вывод s

кон

DIM k, s AS INTEGER

s = 0

FOR к = 3 TO 8

s = s + 7

NEXT k

PRINT s

Var s,k: integer;

Begin

s := 0;

for k := 3 to 8 do

s := s + 7;

writeln(s);

End.


Реше­ние.

Цикл «for k := 3 to 8 do» вы­пол­ня­ет­ся шесть раз. Каж­дый раз пе­ре­мен­ная s уве­ли­чи­ва­ет­ся на 7. По­сколь­ку из­на­чаль­но s = 0, после вы­пол­не­ния про­грам­мы по­лу­чим: s = 7 · 6 = 42.


б) Опре­де­ли­те, что будет на­пе­ча­та­но в ре­зуль­та­те ра­бо­ты сле­ду­ю­щей про­грам­мы. Текст про­грам­мы при­ведён на трёх язы­ках про­грам­ми­ро­ва­ния.

 

Ал­го­рит­ми­че­ский язык

Бей­сик

Пас­каль

алг

нач

цел s, k

s := 100

нц для k от 1 до 9

s := s - 5

кц

вывод s

кон

DIM k, s AS INTEGER

s = 100

FOR k = 1 TO 9

s = s - 5

NEXT k

PRINT s

END

Var s, k: integer;

Begin

s := 100;

for k := 1 to 9 do

s := s - 5;

write (s);

End.


Реше­ние.

Цикл «for k := 1 to 9 do» вы­пол­ня­ет­ся де­вять раз. Каж­дый раз пе­ре­мен­ная s умень­ша­ет­ся на 5. По­сколь­ку из­на­чаль­но s = 100, после вы­пол­не­ния про­грам­мы по­лу­чим: s = 100 − 9 · 5 = 55.


в) Опре­де­ли­те, что будет на­пе­ча­та­но в ре­зуль­та­те ра­бо­ты сле­ду­ю­щей про­грам­мы. Текст про­грам­мы при­ведён на трёх язы­ках про­грам­ми­ро­ва­ния.

 

Ал­го­рит­ми­че­ский язык

Бей­сик

Пас­каль

алг

нач

цел s, k

s := 2

нц для k от 1 до 5

s := s*2

кц

вывод s

кон

s = 2

FOR k = 1 TO 5

s = s*2

NEXT k

PRINT s

END

Var s, k: integer;

Begin

s := 2;

for k := 1 to 5 do

s := s*2;

write (s);

End.


Реше­ние.

Цикл «for k := 1 to 5 do» вы­пол­ня­ет­ся пять раз. Каж­дый раз пе­ре­мен­ная s умно­жа­ет­ся на 2. По­сколь­ку из­на­чаль­но s = 2, после вы­пол­не­ния про­грам­мы по­лу­чим: s = 2 · 2 · 2 · 2 · 2 · 2 = 64.


Задание для 3 угла. Цик­ли­че­ский алгоритм об­ра­бот­ки массива чисел, за­пи­сан­ный на алгоритмическом языке (задание 10 из ОГЭ)


1. а) В таб­ли­це Dat хра­нят­ся дан­ные из­ме­ре­ний сред­не­су­точ­ной тем­пе­ра­ту­ры за 10 дней в гра­ду­сах (Dat[1] — дан­ные за пер­вый день, Dat[2] — за вто­рой и т. д.). Опре­де­ли­те, какое число будет на­пе­ча­та­но в ре­зуль­та­те ра­бо­ты сле­ду­ю­щей про­грам­мы. Текст про­грам­мы при­ведён на трёх язы­ках про­грам­ми­ро­ва­ния.

 

Ал­го­рит­ми­че­ский язык

Бей­сик

Пас­каль

алг

нач

цел­таб Dat[1:10]

цел к, m

Dat[1] := 2

Dat[2] := 5

Dat[3] := 8

Dat[4] := 5

Dat[5] := 4

Dat[6] := 2

Dat[7] := 0

Dat[8] := 3

Dat[9] := 4

Dat[10] := 5

m := 0

нц для к от 1 до 10

если Dat[к] > m то

m : = Dat[к]

все

КЦ

вывод m

КОН

DIM Dat(10) AS INTEGER

DIM k,m AS INTEGER

Dat(1) = 2: Dat(2) = 5

Dat(3) = 8: Dat(4) = 5

Dat(5) = 4: Dat(6) = 2

Dat(7) = 0: Dat(8) = 3

Dat(9) = 4: Dat(10) = 5

m = 0

FOR k := 1 TO 10

IF Dat(k)>m THEN

m = Dat[k]

ENDIF

NEXT k

PRINT m

Var k, m: integer;

Dat: array[1...10] of integer;

Begin

Dat[1] := 2; Dat[2] := 5;

Dat[3] := 8; Dat[4] := 5;

Dat[5] := 4; Dat[6] := 2;

Dat[7] := 0; Dat[8] := 3;

Dat[9] := 4; Dat[10] := 5;

m := 0;

for k := 1 to 10 do

if Dat[k] > m then

begin

m := Dat[k]

end;

writeln(m);

End.


Реше­ние.

Про­грам­ма пред­на­зна­че­на для на­хож­де­ния мак­си­маль­но­го зна­че­ния сред­не­су­точ­ной тем­пе­ра­ту­ры. Про­ана­ли­зи­ро­вав вход­ные дан­ные, при­хо­дим к вы­во­ду, что ответ 8.


б) В таб­ли­це Dat хра­нят­ся дан­ные из­ме­ре­ний сред­не­су­точ­ной тем­пе­ра­ту­ры за 10 дней в гра­ду­сах (Dat[1] — дан­ные за пер­вый день, Dat[2] — за вто­рой и т. д.). Опре­де­ли­те, какое число будет на­пе­ча­та­но в ре­зуль­та­те ра­бо­ты сле­ду­ю­щей про­грам­мы. Текст про­грам­мы при­ведён на трёх язы­ках про­грам­ми­ро­ва­ния.

 

Ал­го­рит­ми­че­ский язык

Бей­сик

Пас­каль

алг

нач

цел­таб Dat[1:10]

цел к, m

Dat[1] := 2

Dat[2] := 5

Dat[3] := 7

Dat[4] := 5

Dat[5] := 4

Dat[6] := 2

Dat[7] := 0

Dat[8] := 3

Dat[9] := 4

Dat[10] := 5

m := 10

нц для к от 1 до 10

если Dat[к] < m то

m : = Dat[к]

все

КЦ

вывод m

КОН

DIM Dat(10) AS INTEGER

DIM k,m AS INTEGER

Dat(1) = 2: Dat(2) = 5

Dat(3) = 7: Dat(4) = 5

Dat(5) = 4: Dat(6) = 2

Dat(7) = 0: Dat(8) = 3

Dat(9) = 4: Dat(10) = 5

m = 10

FOR k := 1 TO 10

IF Dat(k) < m THEN

m = Dat[k]

ENDIF

NEXT k

PRINT m

Var k, m: integer;

Dat: array[1...10] of integer;

Begin

Dat[1] := 2; Dat[2] := 5;

Dat[3] := 7; Dat[4] := 5;

Dat[5] := 4; Dat[6] := 2;

Dat[7] := 0; Dat[8] := 3;

Dat[9] := 4; Dat[10] := 5;

m := 10;

for k := 1 to 10 do

if Dat [ k] < m then

begin

m := Dat[k]

end;

writeln(m);

End.


Реше­ние.

Про­грам­ма пред­на­зна­че­на для на­хож­де­ния зна­че­ния ми­ни­маль­но­го эле­мен­та мас­си­ва Dat. Про­ана­ли­зи­ро­вав вход­ные дан­ные, при­хо­дим к вы­во­ду, что ответ 0.


в) В таб­ли­це Dat пред­став­ле­ны дан­ные о ко­ли­че­стве го­ло­сов, по­дан­ных за 10 ис­пол­ни­те­лей на­род­ных песен (Dat[1] — ко­ли­че­ство го­ло­сов, по­дан­ных за пер­во­го ис­пол­ни­те­ля, Dat[2] — за вто­ро­го и т. д.). Опре­де­ли­те, какое число будет на­пе­ча­та­но в ре­зуль­та­те ра­бо­ты сле­ду­ю­щей про­грам­мы. Текст про­грам­мы при­ведён на трёх язы­ках про­грам­ми­ро­ва­ния.

 

Ал­го­рит­ми­че­ский язык

Бей­сик

Пас­каль

алг

нач

цел­таб Dat[1:10]

цел к, m

Dat[1] := 56

Dat[2] := 70

Dat[3] := 20

Dat[4] := 41

Dat[5] := 14

Dat[6] := 22

Dat[7] := 30

Dat[8] := 12

Dat[9] := 65

Dat[10] := 35

m := 0

нц для к от 1 до 10

если Dat[к] > 25 то

m : = m+1

все

КЦ

вывод m

КОН

DIM Dat(10) AS INTEGER

DIM k,m AS INTEGER

Dat(1) = 56: Dat(2) = 70

Dat(3) = 20: Dat(4) = 41

Dat(5) = 14: Dat(6) = 22

Dat(7) = 30: Dat(8) = 12

Dat(9) = 65: Dat(10) = 35

m = 0

FOR k := 1 TO 10

IF Dat(k) > 25 THEN

m =m+1

ENDIF

NEXT k

PRINT m

Var k, m: integer;

Dat: array[1...10] of integer;

Begin

Dat[1] := 56; Dat[2] := 70;

Dat[3] := 20; Dat[4] := 41;

Dat[5] := 14; Dat[6] := 22;

Dat[7] := 30; Dat[8] := 12;

Dat[9] := 65; Dat[10] := 35;

m := 0;

for k := 1 to 10 do

if Dat[k] > 25 then

begin

m := m+1

end;

writeln(m);

End.


Реше­ние.

Про­грам­ма пред­на­зна­че­на для опре­де­ле­ния ко­ли­че­ства ис­пол­ни­те­лей, за ко­то­рых по­да­ли более 25 го­ло­сов. Про­ана­ли­зи­ро­вав вход­ные дан­ные, при­хо­дим к вы­во­ду, что таких ис­пол­ни­те­лей было шесть.

IV. Практическая работа.

Целая часть – div, остаток – mod.

z := x div y


x - число , которое будем делить на y (делимое)
y - число , на которое будем делить число x (делитель)
z - результат целочисленного деления (целочисленное частное)
Таким образом, вот такая запись (55 / 6) нацело = 9 в результате использования оператора div будет выглядеть так

z := 55 div 6


z будет равно 9. Запомните ! При использовании оператора div дробная часть будет отброшена!
А сейчас поговорим о делении с остатком. Оно не особо отличается и главным здесь является то , что в результате отбрасывается как раз целая часть .То есть (40 / 6) с остатком = 4, (10 / 3) с остатком =1, (22 / 5) с остатком = 2 и т.д. В паскале для этого есть оператор mod. Записывается он точно так же.

z := x mod y


x - число , которое будем делить на y (делимое)
y - число , на которое будем делить число x (делитель)
z - остаток 
Например (40 / 6) с остатком = 4 с оператором mod будет такой

z := 55 mod 6


И как результат получим z=1 . 

Задание 2. Используем структуру РЕЛЛИ ТЭЙБЛ. Два участника по плечу поочередно записывают свои ответы на одном листе бумаги. Это примеры ко­рот­кого алгоритма на языке программирования. (задание 20 из ОГЭ).


Дописать: (первым начинает тот ученик, который стоит первым по списку).

1. На­пи­ши­те про­грам­му, ко­то­рая в по­сле­до­ва­тель­но­сти на­ту­раль­ных чисел опре­де­ля­ет ко­ли­че­ство чисел, крат­ных 4. Про­грам­ма по­лу­ча­ет на вход ко­ли­че­ство чисел в по­сле­до­ва­тель­но­сти, а затем сами числа. В по­сле­до­ва­тель­но­сти все­гда име­ет­ся число, крат­ное 4. Ко­ли­че­ство чисел не пре­вы­ша­ет 1000. Введённые числа не пре­вы­ша­ют 30 000. Про­грам­ма долж­на вы­ве­сти одно число — ко­ли­че­ство чисел, крат­ных 4.

Решение.

var n, s, k, g: integer; begin s:=0; readln(n); for k:=1 to n do begin readln(g);

if ___________ then


s:=______;


end;

writeln(s);

end.


Ответ:   (g mod 4 = 0) s+1;


Через сканер на экране появляются ответы одной пары. Проверяем, выявляем ошибки, делаем выводы.


2. На­пи­ши­те про­грам­му, ко­то­рая в по­сле­до­ва­тель­но­сти на­ту­раль­ных чисел опре­де­ля­ет ко­ли­че­ство чисел, крат­ных 6. Про­грам­ма по­лу­ча­ет на вход ко­ли­че­ство чисел в по­сле­до­ва­тель­но­сти, а затем сами числа. В по­сле­до­ва­тель­но­сти все­гда име­ет­ся число, крат­ное 6.

Решение.

var n, s, k, g: integer;

begin

s:=0;

readln(n);

for k:=1 to n do

begin

readln(g);


if ___________then


s:=_______


end;

writeln(s);

end.


Ответ: (g mod 6 = 0) s+1;

V. Тестирование.

Первая группа учащихся (не сдающие ОГЭ) на ноутбуках выполняют тест в Excel, вторая группа ( сдающие ОГЭ по информатике) составляют программу к задаче 20.

Задание 1

Вопрос:

Алгоритм - это ...


Выберите один из 5 вариантов ответа:

1) правила выполнения определенных действий

2) ориентированный граф, указывающий порядок исполнения некоторого набора команд

3) понятное и точное предписание исполнителю со­вершить последовательность действий, направ­ленных на достижение поставленных целей

4) набор команд для компьютера

5) протокол вычислительной сети


Задание 2

Вопрос:

Укажите наиболее полный перечень способов за­писи алгоритмов:


Выберите один из 5 вариантов ответа:

1) словесный, графический, псевдокод, програм­мный

2) словесный

3) графический, программный

4) словесный, программный

5) псевдокод


Задание 3

Вопрос:

Суть такого свойства алгоритма как результатив­ность заключается в том, что:


Выберите один из 5 вариантов ответа:

1) алгоритм должен иметь дискретную структуру (должен быть разбит на последовательность от­дельных шагов)

2) записывая алгоритм для конкретного исполни­теля, можно использовать лишь те команды, что входят в систему его команд

3) алгоритм должен обеспечивать решение не од­ной конкретной задачи, а некоторого класса за­дач данного типа

4) при точном исполнении всех команд алгоритма процесс должен прекратиться за конечное число шагов, приведя к определенному результату

5) исполнитель алгоритма не должен принимать решения, не предусмотренные составителем ал­горитма


Задание 4

Вопрос:

Суть такого свойства алгоритма как массовость заключается в том, что:


Выберите один из 5 вариантов ответа:

1) алгоритм должен иметь дискретную структуру (должен быть разбит на последовательность от­дельных шагов)

2) при точном исполнении всех команд алгоритма процесс должен прекратиться за конечное чис­ло шагов, приведя к определенному результа­ту

3) алгоритм должен обеспечивать решение не од­ной конкретной задачи, а некоторого класса за­дач данного типа

4) записывая алгоритм для конкретного исполни­теля, можно использовать лишь те команды, что входят в систему его команд

5) способ решения задачи определён однозначно в виде последовательности шагов. На любом шаге не допускаются никакие двусмысленности или неопределённости


Задание 5

Вопрос:

Суть такого свойства алгоритма как дискретность заключается в том, что:


Выберите один из 5 вариантов ответа:

1) алгоритм должен иметь дискретную структуру (должен быть разбит на последовательность от­дельных шагов)

2) записывая алгоритм для конкретного исполни­теля, можно использовать лишь те команды, что входят в систему его команд

3) алгоритм должен обеспечивать решение не од­ной конкретной задачи, а некоторого класса за­дач данного типа

4) при точном исполнении всех команд алгоритма процесс должен прекратиться за конечное число шагов, приведя к определенному результату

5) исполнитель алгоритма не должен принимать решения, не предусмотренные составителем ал­горитма



Задание 6

Вопрос:

Суть такого свойства алгоритма как понятность заключается в том, что:


Выберите один из 5 вариантов ответа:

1) алгоритм должен иметь дискретную структуру (должен быть разбит на последовательность от­дельных шагов)

2) записывая алгоритм для конкретного исполни­теля, можно использовать лишь те команды, что входят в систему его команд

3) алгоритм должен обеспечивать решение не од­ной конкретной задачи, а некоторого класса за­дач данного типа

4) при точном исполнении всех команд алгоритма процесс должен прекратиться за конечное число шагов, приведя к определенному результату

5) исполнитель алгоритма не должен принимать решения, не предусмотренные составителем ал­горитма


Задание 7

Вопрос:

Суть такого свойства алгоритма как детерминируемость заключается в том, что:


Выберите один из 5 вариантов ответа:

1) способ решения задачи определён однозначно в виде последовательности шагов. На любом шаге не допускаются никакие двусмысленности или неопределённости

2) записывая алгоритм для конкретного исполни­теля можно использовать лишь те команды, что входят в систему его команд

3) алгоритм должен обеспечивать решение не од­ной конкретной задачи, а некоторого класса за­дач данного типа

4) при точном исполнении всех команд алгоритма процесс должен прекратиться за конечное чис­ло шагов, приведя к определенному результа­ту

5) исполнитель алгоритма не должен принимать решения, не предусмотренные составителем ал­горитма


Задание 8

Вопрос:

Алгоритм называется линейным:


Выберите один из 5 вариантов ответа:

1) если он составлен так, что его выполнение пред­полагает многократное повторение одних и тех же действий

2) если ход его выполнения зависит от истинности тех или иных условий

3) если его команды выполняются в порядке их ес­тественного следования друг за другом незави­симо от каких-либо условий

4) если он представим в табличной форме

5) если он включает в себя вспомогательный алго­ритм


Задание 9

Вопрос:

Алгоритм называется циклическим:


Выберите один из 5 вариантов ответа:

1) если он составлен так, что его выполнение пред­полагает многократное повторение одних и тех же действий

2) если ход его выполнения зависит от истинности тех или иных

3) если его команды выполняются в порядке их ес­тественного следования друг за другом незави­симо от каких-либо условий

4) если он представим в табличной

5) если он включает в себя вспомогательный алго­ритм


Задание 10

Вопрос:

Алгоритм включает в себя ветвление, если:


Выберите один из 5 вариантов ответа:

1) если он составлен так, что его выполнение пред­полагает многократное повторение одних и тех же действий

2) если ход его выполнения зависит от истинности тех или иных

3) если его команды выполняются в порядке их ес­тественного следования друг за другом незави­симо от каких-либо условий

4) если он представим в табличной форме

5) если он включает в себя вспомогательный алго­ритм


Ответы:

1

2

3

4

5

6

7

8

9

10

3

1

4

3

1

2

1

3

1

2



Критерии оценивания:

1 б. за каждое задание, «5» - 10 б, «4» - 8-9 б, «3» - 5-7 б, «2» - меньше 5 б.


Учащиеся, сдающие ОГЭ по информатике, пишут программу на языке Паскаль.


20.2 На­пи­ши­те про­грам­му, ко­то­рая в по­сле­до­ва­тель­но­сти на­ту­раль­ных чисел опре­де­ля­ет сумму всех чисел, крат­ных 7 и окан­чи­ва­ю­щих­ся на 2. Про­грам­ма по­лу­ча­ет на вход на­ту­раль­ные числа, ко­ли­че­ство введённых чисел не­из­вест­но, по­сле­до­ва­тель­ность чисел за­кан­чи­ва­ет­ся чис­лом 0 (0 — при­знак окон­ча­ния ввода, не вхо­дит в по­сле­до­ва­тель­ность). Ко­ли­че­ство чисел не пре­вы­ша­ет 1000. Введённые числа не пре­вы­ша­ют 30 000. Про­грам­ма долж­на вы­ве­сти одно число: сумму всех чисел, крат­ных 7 и окан­чи­ва­ю­щих­ся на 2.

 

При­мер ра­бо­ты про­грам­мы:

 

Вход­ные дан­ные

Вы­ход­ные дан­ные

112
24
42
49
22
0

154

Решение.

Program z1; 

Var a, s: integer;

Begin

s: = 0;

readin(a);

while a<>0 do

begin

if (a mod 7=0) and (a mod 10 = 2) then

s : = s + a;

readin(a);

end;

writeln(s);

End.

 

Для про­вер­ки пра­виль­но­сти ра­бо­ты про­грам­мы не­об­хо­ди­мо ис­поль­зо­вать сле­ду­ю­щие тесты:

 


Вход­ные дан­ные

Вы­ход­ные дан­ные

1

21

12

112

182

0

294

2

36

0

0

3

112

0

112


Дополнительно:

Простой линейный алгоритм для формального исполнителя (задание 14 из ОГЭ)

Один ученик выполняет работу с сайта http://inf.reshuoge.ru/test?id=679300&nt=True&pub=False, используя интерактивную доску, остальные работают по карточкам.

Задание 1

У ис­пол­ни­те­ля Умно­жа­тель две ко­ман­ды, ко­то­рым при­сво­е­ны но­ме­ра:

 

1. умножь на 2

2. при­бавь 3

 

Пер­вая из них умно­жа­ет число на 2, вто­рая — при­бав­ля­ет к числу 3. Со­ставь­те ал­го­ритм по­лу­че­ния из числа 4 числа 62, со­дер­жа­щий не более 5 ко­манд. В от­ве­те за­пи­ши­те толь­ко но­ме­ра ко­манд.


Решение.

Умно­же­ние на число об­ра­ти­мо не для лю­бо­го числа, по­это­му, если мы пойдём от числа 62 к числу 4, то од­но­знач­но вос­ста­но­вим про­грам­му. По­лу­чен­ные ко­ман­ды будут за­пи­сы­вать­ся спра­ва на­ле­во. Если число не­крат­но 2, то от­ни­ма­ем 3, а если крат­но, то делим на 2:

 

62 / 2 = 31 (ко­ман­да 1);

31 − 3 = 28 (ко­ман­да 2);

28 / 2 = 14 (ко­ман­да 1);

14 / 2 = 7 (ко­ман­да 1).

7 − 3 = 4 (ко­ман­да 2).

 

За­пи­шем по­сле­до­ва­тель­ность ко­манд в об­рат­ном по­ряд­ке и по­лу­чим ответ: 21121.

 

Ответ: 21121.


 Задание 2

У ис­пол­ни­те­ля Квад­ра­тор две ко­ман­ды, ко­то­рым при­сво­е­ны но­ме­ра:

 

1. воз­ве­ди в квад­рат

2. при­бавь 3

 

Пер­вая из них воз­во­дит число на экра­не во вто­рую сте­пень, вто­рая — при­бав­ля­ет к числу 3.

Со­ставь­те ал­го­ритм по­лу­че­ния из числа 2 числа 55, со­дер­жа­щий не более 5 ко­манд. В от­ве­те за­пи­ши­те толь­ко но­ме­ра ко­манд.

 
Решение.

Пойдём от конца к на­ча­лу, будем из­вле­кать корни и вы­чи­тать трой­ку, пока не по­лу­чим из числа 55 число 2, а затем ин­вер­ти­ру­ем по­ря­док ко­манд

 

 (ко­ман­да 2);

 (ко­ман­да 2);

 (ко­ман­да 1);

 (ко­ман­да 2).

 (ко­ман­да 1).

 

Ис­ко­мая по­сле­до­ва­тель­ность ко­манд 12122.



 Задание 3

У ис­пол­ни­те­ля Де­ли­тель две ко­ман­ды, ко­то­рым при­сво­е­ны но­ме­ра:

 

1. раз­де­ли на 2

2. вычти 3

 

Пер­вая из них умень­ша­ет число на экра­не в 2 раза, вто­рая умень­ша­ет его на 3. Ис­пол­ни­тель ра­бо­та­ет толь­ко с на­ту­раль­ны­ми чис­ла­ми. Со­ставь­те ал­го­ритм по­лу­че­ния из числа 76 числа 5, со­дер­жа­щий не более 5 ко­манд. В от­ве­те за­пи­ши­те толь­ко но­ме­ра ко­манд. 

Решение.

По­сколь­ку Де­ли­тель ра­бо­та­ет толь­ко с на­ту­раль­ны­ми чис­ла­ми и число 76 — чётное, пер­вая ко­ман­да долж­на быть 1. Из числа 38 число 5 можно по­лу­чить по­сле­до­ва­тель­но­стью ко­манд 1212. Сле­до­ва­тель­но, ис­ко­мый ал­го­ритм: 11212.

    

 Задание 4

У ис­пол­ни­те­ля Де­ли­тель две ко­ман­ды, ко­то­рым при­сво­е­ны но­ме­ра:

 

1. раз­де­ли на 2

2. при­бавь 1

 

Пер­вая из них умень­ша­ет число на экра­не в 2 раза, вто­рая уве­ли­чи­ва­ет его на 1. Ис­пол­ни­тель ра­бо­та­ет толь­ко с на­ту­раль­ны­ми чис­ла­ми. Со­ставь­те ал­го­ритм по­лу­че­ния из числа 23 числа 4, со­дер­жа­щий не более 5 ко­манд. В от­ве­те за­пи­ши­те толь­ко но­ме­ра ко­манд. 


Решение.

По­сколь­ку Де­ли­тель ра­бо­та­ет толь­ко с на­ту­раль­ны­ми чис­ла­ми и число 23 — нечётное, пер­вая ко­ман­да долж­на быть 2. Из числа 24 число 4 можно по­лу­чить по­сле­до­ва­тель­но­стью ко­манд 1112. Сле­до­ва­тель­но, ис­ко­мый ал­го­ритм: 21112.



Задание 5

У ис­пол­ни­те­ля Де­ли­тель две ко­ман­ды, ко­то­рым при­сво­е­ны но­ме­ра:

 

1. раз­де­ли на 2

2. при­бавь 1

 

Пер­вая из них умень­ша­ет число на экра­не в 2 раза, вто­рая уве­ли­чи­ва­ет его на 1. Ис­пол­ни­тель ра­бо­та­ет толь­ко с на­ту­раль­ны­ми чис­ла­ми. Со­ставь­те ал­го­ритм по­лу­че­ния из числа 89 числа 24, со­дер­жа­щий не более 5 ко­манд. В от­ве­те за­пи­ши­те толь­ко но­ме­ра ко­манд. 


Решение.

По­сколь­ку Де­ли­тель ра­бо­та­ет толь­ко с на­ту­раль­ны­ми чис­ла­ми и число 89 — нечётное, пер­вая ко­ман­да долж­на быть 2. Из числа 90 число 24 можно по­лу­чить по­сле­до­ва­тель­но­стью ко­манд 1212. Сле­до­ва­тель­но, ис­ко­мый ал­го­ритм: 21212.


VI. Домашнее задание.

Вариант1

1. Решение квадратного уравнения

Квадратное уравнение имеет вид ax2 + bx + c = 0, где а ≠ 0. Требуется найти корни этого уравнения.

Найдём дискриминант по формуле D = b2 – 4ac.

Если дискриминант D > 0, то уравнение имеет 2 корня:  ; ,

если дискриминант D = 0, то уравнение имеет 1 корень: ,

если дискриминант D < 0, то уравнение не имеет корней.


Задание:

  1. Составьте алгоритм решения квадратного уравнения.

  2. Ответьте на вопросы:
    а) в каком школьном предмете вы определяли алгоритмы?
    в) как проявляются свойства алгоритма: 

    • конечность;

    • дискретность;

    • массовость;

    • понятность
      на вашем примере?

Вариант 2

20.2 На­пи­ши­те про­грам­му, ко­то­рая в по­сле­до­ва­тель­но­сти на­ту­раль­ных чисел опре­де­ля­ет сумму всех чисел, крат­ных 7 и окан­чи­ва­ю­щих­ся на 1. Про­грам­ма по­лу­ча­ет на вход на­ту­раль­ные числа, ко­ли­че­ство введённых чисел не­из­вест­но, по­сле­до­ва­тель­ность чисел за­кан­чи­ва­ет­ся чис­лом 0 (0 — при­знак окон­ча­ния ввода, не вхо­дит в по­сле­до­ва­тель­ность). Ко­ли­че­ство чисел не пре­вы­ша­ет 100. Введённые числа не пре­вы­ша­ют 300. Про­грам­ма долж­на вы­ве­сти одно число: сумму всех чисел, крат­ных 7 и окан­чи­ва­ю­щих­ся на 1.

 

При­мер ра­бо­ты про­грам­мы:

 

Вход­ные дан­ные

Вы­ход­ные дан­ные

21

14

31

28

91

0

112


Решение.

 

20.2 Ре­ше­ни­ем яв­ля­ет­ся про­грам­ма, за­пи­сан­ная на любом языке про­грам­ми­ро­ва­ния. При­мер вер­но­го ре­ше­ния, за­пи­сан­но­го на языке Пас­каль:

 

var a, s: integer;

begin

s:= 0;

readln(a);

while a<>0 do

begin

if (a mod 7 = 0) and (a mod 10 = 1)

then s := s + a;

readln(a);

end;

writeln(s)

end.

 

Воз­мож­ны и дру­гие ва­ри­ан­ты ре­ше­ния. Для про­вер­ки пра­виль­но­сти ра­бо­ты про­грам­мы не­об­хо­ди­мо ис­поль­зо­вать сле­ду­ю­щие тесты:

 

Вход­ные дан­ные

Вы­ход­ные дан­ные

1

21

91

0

112

2

70

0

0

3

11

0

0

4

10

15

0

0









- Написать синквейн к словам «Компьютер, алгоритм».

Алгоритм написания синквейна.

1-я строка. Кто? Что? 1 существительное.

2-я строка. Какой? 2 прилагательных.

3-я строка. Что делает? 3 глагола.

4-я строка. Что автор думает о теме? Фраза из 4 слов.

5-я строка. Кто? Что? (Новое звучание темы). 1 существительное.

Примеры:

1. Алгоритм
2.точный, понятный.
3.составлять, действовать, выполнять
4.строгое исполнение последовательности действий
5. план

1.Компьютер 
2.мощный, рабочий 
3.работает, помогает, затягивает 
4.хороший помощник для человека 
5.ЭВМ

VII. Рефлексия. Итог, оценивание.

Подведи итог своей работы.


ФИ_______________________________________________________________________

Shape1 Shape2

1. Мне было интересно работать на уроке. Да. Нет.

Shape3 Shape4

2. Мне было легко выполнять задания. Да. Нет.

Shape5 Shape6

3. Мне было трудно выполнять задания. Да. Нет.


4. Труднее всего было выполнить задание_______________________________________

Ресми байқаулар тізімі
Республикалық байқауларға қатысып жарамды дипломдар алып санатыңызды көтеріңіз!