Решение задач на разветвляющиеся алгоритмы

Разделы: Информатика


Цели:

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

Тип урока: обобщающий

Ход урока

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

II. Повторение

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

Для демонстрации заданий урока используется презентация Приложение 1

1. Если два дела делать одновременно делать, то ничего не получится.

Ответ: “За двумя зайцами погонишься – ни одного не поймаешь”.

2. Если делать дело не торопясь, то быстрее его закончишь.

Ответ: “Тише едешь – дальше будешь”.

3. Если не будешь трудится, то не сваришь ухи.

Ответ: “Без труда не вынешь рыбку из пруда”.

4. Если сам натворил бед, то сам и отвечай.

Ответ: “Сам кашу заварил, сам и расхлебывай”.

Учитель: А теперь свяжите это задание с темой урока.

Ответ: Конструкция если …то присуща разветвляющемуся алгоритму.

III. Тренировочные упражнения

Задание “Цитаты”

Учитель (предварительно разделяет класс на 4 рабочие группы): Вы должны из приведенной программы “добыть золото” - изречение известного мыслителя.

Командиры групп получают карточки-задания.

1.

10 goto 90
20 print “его”
30 goto 130
40 print “ядро ореха”
50 print “,”
60 goto 110
70 goto 130
80 print “(Плавт)” : end
90 print “Кто хочет съесть”
100 goto 40
110 print “должен расколоть”
120 goto 20
130 print “скорлупу”
140 goto 80

“Кто хочет съесть ядро ореха, должен расколоть его скорлупу”. (Плавт)

2.

10 goto 90
20 print “всякий страх”.
30 goto 80
40 print “только,”
50 print “чего не знает,”
60 goto 110
70 goto 130
80 print “(В.Г. Белинский)”: end
90 print “Человек страшится”
100 goto 40
110 print “знанием”
120 goto 70
130 print “побеждается”
140 goto 20

“Человек страшится только, чего не знает, знанием побеждается всякий страх”. (В.Г. Белинский)

3.

10 goto 90
20 print “к силам ума”.
30 goto 80
40 print “слабость”
50 print “ума”
60 goto 110
70 goto 130
80 print “(В.Г. Белинский)”: end
90 print “Величайшая”
100 goto 40
110 print “заключается”
120 goto 70
130 print “в недоверчивости”
140 goto 20

“Величайшая слабость ума заключается в недоверчивости к силам ума”. (В.Г. Белинский)

4.

10 goto 90
20 print “верят”.
30 goto 80
40 print “часто”
50 print “настолько проста,”
60 goto 110
70 goto 130
80 print “(Ф. Левальд)”: end
90 print “Истина бывает”
100 goto 40
110 print “что в нее”
120 goto 70
130 print “не”
140 goto 20

“Истина бывает часто настолько проста, что в нее не верят”. (Ф. Левальд)

Учащиеся в группах, “выполняя” программу, записывают изречение. Командиры их зачитывают.

Учитель: Каким образом связано задание с темой урока?

Ответ: Команда безусловного перехода GOTO необходима при описании разветвляющегося алгоритма на Бейсике.

2) Задание “Найди число”

Каждая рабочая группа получает по 4 карточки с фрагментами программ. Учащимся необходимо определить результат их выполнения; затем сложить все полученные числа. В итоге у каждой группы получится одно число.

1)

1)

10 а=4: b=7
20 if a<b then a=a+b
30 b=a+b
40 print a;b

2)

10 а=4: b=7
20 if a<b then a=a+b: goto 40
30 b=a+b
40 print a;b

3)

10 а=7: b=4
20 if a<b then a=a+b
30 b=a+b
40 print a;b

4)

10 а=4: b=4
20 if a<b then a=a+b: goto 40
30 b=a+b
40 print a;b

Число: 77 (сумма всех ответов 1) a=11, b=18 2) a=11,b=7, 3) b=11, a=7, 4) a=4, b=8)

2)

1)

10 а=5: b=8
20 if a<b then a=a+b
30 b=a+b
40 print a;b

2)

10 а=5: b=8
20 if a<b then a=a+b: goto 40
30 b=a+b
40 print a;b

3)

10 а=8: b=5
20 if a<b then a=a+b
30 b=a+b
40 print a;b

4)

10 а=5: b=5
20 if a<b then a=a+b: goto 40
30 b=a+b
40 print a;b

Число: 91 (1) a=13,b=21 2) a=13 b=8 3) b=13 a=8 4) b=10, a=5)

3)

1)

10 а=6: b=10
20 if a<b then a=a+b
30 b=a+b
40 print a;b

2)

10 а=6: b=10
20 if a<b then a=a+b: goto 40
30 b=a+b
40 print a;b

3)

10 а=10: b=6
20 if a<b then a=a+b
30 b=a+b
40 print a;b

4)

10 а=6: b=6
20 if a<b then a=a+b: goto 40
30 b=a+b
40 print a;b

Число: 112 (1) a=16,b=26 2) a=16,b=10, 3) b=16 a=10, 4) b=12 a=6)

4)

1)

10 а=3: b=9
20 if a<b then a=a+b
30 b=a+b
40 print a;b

2)

10 а=3: b=9
20 if a<b then a=a+b: goto 40
30 b=a+b
40 print a;b

3)

10 а=9: b=3
20 if a<b then a=a+b
30 b=a+b
40 print a;b

4)

10 а=3: b=3
20 if a<b then a=a+b: goto 40
30 b=a+b
40 print a;b

Число: 84 ( 1) a=12 b=21 2) a=12 b=9 3) b=12 a=9 4) b=6 a=3 )

3) Задание (выполняется на компьютере): составить программу, по которой из положительного числа извлекается корень

10 CLS

20 INPUT “Введите любое число”; x

30 IF X>=0 THEN PRINT “Корень квадратный из х=”; SQR(X) ELSE PRINT “Корень из отрицательного числа не извлекается. Дайте положительное число”: GOTO 20

Учитель: Хочу обратить ваше внимание на то, что эти задачи подводят нас к пониманию принципа работы таких сложных программ, как Базы данных, где среди большого количества данных осуществляется поиск информации по определенному признаку.

IV. Итог урока

Учитель: Спасибо группам за активную работу. Вы работали дружно, оказывали друг другу помощь.

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

Варианты заданий приведены в Приложении 2.

После выполнения теста, учащиеся проверяют правильность его выполнения по ключу, который приведен в презентации. Выставляют “+” и “-” напротив каждого задания. Учитель тут же по количеству “+” оглашает каждому оценку за тест.

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

Учитель: вы должны были придумать задачи по теме “Ветвление”.

Ключ к тесту:

Вариант Вопрос
1 2 3 4 5
I 3 2 3 1 3
II 3 2 4 2 3
III 3 2 2 3 1
IV 3 2 4 4 2