вівторок, 4 листопада 2014 р.

Програма факультативного курсу "програмування"



1-й рік навчання: програма - fak_programa-1.zip [154,6 Kb] (cкачувань: 1364)
 посібник мовою Pascal - fakultatyv_pascal.zip [635,47 Kb] (cкачувань: 1230)
 посібник мовою С++ - fakultatyv_c.zip [781,41 Kb] (cкачувань: 682)

2-й рік навчання: програма - fak_programa-2.zip [156,38 Kb] (cкачувань: 710) 
тематичний план tem_plan.zip [9,07 Kb] (cкачувань: 570) 
збірник завдань Хмельницьких олімпіад, класифікований за типами - zbirnyk.zip [1,38 Mb] (cкачувань: 691)








Програма
факультативного курсу «Основи програмування
на мові Paѕcal»
7-9 класи





Факультативний курс «Основи програмування на мові Paѕcal» розрахований для учнів 7-9 класів шкіл Хмельницької області.
Метою даного факультативного курсу з інформатики «Основи програмування на мові Paѕcal » є:
-         формування теоретичної бази знань учнів з основ програмування та практичних навичок розв’язування задач, які вже протягом 25 років пропонуються на олімпіадах з інформатики різного рівня, починаючи від шкільних олімпіад закінчуючи міжнародними;
-         активізація роботи в області гурткової і факультативної позакласної роботи з метою підготовки учнів до участі у шкільних, районних та міських олімпіадах з інформатики;
-         надання рівних можливостей учням у підготовці до надзвичайно захоплюючої діяльності – програмування;
-         розвиток дистанційних форм навчання для учнів шкіл області з використанням мережі Інтернет.
Особливістю даного факультативу є модульний принцип організації роботи факультативу. Він полягає у тому, що всі заняття рекомендується проводитися частинами (модулями) по 4 уроки. Перші два уроки (одна субота) вчитель з учнями вивчають новий матеріал, закріплюють його, розв'язуючи задачі. Третій урок (наступна субота) – проводитиметься контроль вивченого через мережу Інтернет у реальному часі через контестер. Четвертий урок відводиться для узагальнення результатів проведеного контролю і проведення корекції знань учнів.
Розрахований на використання мов програмування Паскаль   та середовищa програмування Free Pascal.
Курс розрахований на 68 год.
Розподіл годин між темами факультативного курсу "Основи програмування на мові Paѕcal ":
Тема
Теоретичні
Практичні
Разом
1
Основні поняття мови програмування.
2
6
8
2
Логіка мови програмування.
2
6
8
3
Організація циклів.
2
6
8
4
Процедури. Формальні та фактичні параметри.
2
2
4
5
Функції.
2
2
4
6
Масиви.
2
10
12
7
Масиви символів, рядкові величини.
2
6
8
8
Рекурсивні функції та процедури.
2
2
4
9
Використання множин.
2
2
4
10
Робота з файлами даних.
2
2
4
11
Структури даних. Записи.
2
2
4
Всього



68
Тематичне планування (Free Pascal)
Тема 1. Основні поняття мови програмування. (8 годин)
Приклад простої програми. Константи  та змінні. Оператор присвоювання. Арифметика Паскаля. Тип змінних. Арифметичні вирази. Операції. Функції. Ввід та вивід на консоль.
Учні повинні знати:
-         принципи побудови, опису програми мовою програмування;
-         основні типи даних у мові програмування;
-         набір базових функцій та операцій у мові програмування;
-         сутність операції присвоювання;
-         сутність вказівок введення та виведення;
Учні повинні вміти:
-         користуватися інтегрованим середовищем програмування;
-         застосовувати вказівки введення та виведення, присвоювання при складанні лінійних програм;
-         налагоджувати лінійні програми;
-         відправляти розв’язки на систему автоматизованої перевірки
Тема 2. Логіка мови програмування. (8 годин)
Умовний оператор. Складений оператор. Складені умови. Тип Boolean.
Учні повинні знати:
-         правила складання простих та складених умов;
-         призначення та правила описування вказівок розгалуження.
Учні повинні вміти:
-         складати та реалізовувати розгалуження;
-         налагоджувати програми з розгалуженням;
Тема 3. Організація циклів. (8 годин)
Цикли. Види циклів та їх призначення. Вкладені цикли. Розв’язування задач на застосування циклів.
Учні повинні знати:
-        призначення та правила користування вказівками повторення.
Учні повинні вміти:
-        складати та реалізовувати циклічні програми з використанням циклів з постумовою, з передумовою та з параметром;
-        налагоджувати програми з циклами.
Тема 4. Процедури. Формальні та фактичні параметри. (4 години)
Опис процедур. Процедури. Параметри-змінні.
Учні повинні знати:
-         сутність поняття процедур;
-         правила опису та використання процедур користувача;
Учні повинні вміти:
-         створювати та застосовувати процедури;
-         налагоджувати програми з процедурами.
Тема 5. Функції. (4 години)
Опис функцій. Звернення до функції.
Учні повинні знати:
-         сутність поняття функції;
-         правила опису та використання функцій користувача;
Учні повинні вміти:
-         створювати та застосовувати функції;
-         налагоджувати програми з функціями.
Тема 6. Масиви. (12 годин)
Призначення масивів. Створення одномірних та двомірних масивів. Організація масивів мовою програмування. Пошук максимального та мінімального елемента масиву. Обробка масивів. Сортування масивів.
Учні повинні знати:
o      принципи побудови, опису масивів мовою програмування;
o      призначення масивів;
o      операціі над масивами та елементами масивів;
o      правила пошуку у масивах;
o      правила обробки масивів;
o      алгоритм пошуку мінімума та максимума у масиві;
o      алгоритми сортування масивів;
Учні повинні вміти:
o      застосовувати масиви;
o      використовувати масиви при побудові програми;
o      налагоджувати програми з масивами;
o      використовувати вказівки масивів при побудові програм на пошук мінімуму ті максимуму серед множини елементів;
o      налагоджувати програми з алгоритмами сортування;
Тема 7. Масиви символів, рядкові величини. (8 годин)
Тип даних рядок символів. Операції над рядками. Довжина рядка. Операція конкатенації.
Учні повинні знати:
o      сутність поняття рядкового типу
o      опис рядків у мові програмування;
o      набір функцій та операцій для роботи з рядками програмування;
o      сутність понятті довжини рядка;
o      алгоритми для обробки рядків;
o      сутність поняття конкатенаціі;
Учні повинні вміти:
o      описувати та використовувати рядковий тип даних при складанні програм;
o      налагоджувати програми з рядками;
o      виконувати операції над рядками;
o      знаходити довжину рядка;
o      виконувати програмно операцію конкатенації рядків.
Тема 8. Рекурсивні функції та процедури. (4 години)
Поняття про рекурентні формули та рекурентні алгоритми. Програмування рекурсії. Обчислення формул з факторіалами та прогресій за допомогою рекурентних процедур. Рекурсивні алгоритми та рекурсивні визначення. Рекурсивні процедури та функції. Рекурсія зсередини. Поняття обмінного швидкого сортування.
Учні повинні знати:
o      сутність поняття рекурсії;
o      призначення рекурсії;
o      принцип побудови рекурентних алгоритмів;
Учні повинні вміти:
o      застосовувати рекурентні формули;
o      програмно обчислювати факторіали та прогресії;
o      складати та реалізовувати  програми на рекурсію;
o      налагоджувати програми з рекурсіями.
Тема 9. Використання множин. (4 години)
Значення типу множина. Відношення і операції на множинах. Внутрішнє представлення множин.
Учні повинні знати:
o      сутність поняття типу множина;
o      допустимі операції на множинах.
Учні повинні вміти:
o      описувати та використовувати тип множин при складанні програм;
Тема 10. Робота з файлами даних. (4 години)
Організація та обробка файлів. Файлова змінна. Види файлів – текстовий, типізований, нетипізований, файл типу запис. Пов’язання файлу з файловою змінною. Відкриття файлу для читання, запису, доповнення. Операції читання з файлу та запису у файл. Закриття файлу.
Учні повинні знати:
o      призначення файлів у мові програмування;
o      типи файлів у мові програмування;
o      опис файлової змінної та її призначення;
o      сутність пов’язання файлу та файлової змінної;
o      способи відкриття файлів;
o      правила описання вказівок відкриття файлу мовою програмування;
o      правила читання та запис інформації у файл;
o      правила закриття файлу.
Учні повинні вміти:
o      працювати з файлами у середовищі програмування;
o      складати та реалізовувати  програми для роботи з файлами;
o      налагоджувати програми з файлами;
o      використовувати різні типи файлових змінних;
o      організовувати запис та читання інформації у файл.
Тема 11. Структури даних. Записи. (4 години)
Організація та обробка структури типу запис. Робота із записами.
Учні повинні знати:
o      призначення та правила опису структури запис;
Учні повинні вміти:
o      організовувати програмно тип запис та застосовувати його;
o      налагоджувати програми з використанням типу запис.

Тематичне планування (C++)
Тема 1. Основні поняття мови програмування. (8 годин)
Приклад простої програми. Константи  та змінні. Оператор присвоювання.  Тип змінних. Арифметичні вирази. Операції. Функції. Ввід та вивід на консоль.
Учні повинні знати:
-         принципи побудови, опису програми мовою програмування;
-         основні типи даних у мові програмування;
-         набір базових функцій та операцій у мові програмування;
-         сутність операції присвоювання;
-         сутність вказівок введення та виведення;
Учні повинні вміти:
-         користуватися інтегрованим середовищем програмування;
-         застосовувати вказівки введення та виведення, присвоювання при складанні лінійних програм;
-         налагоджувати лінійні програми;
-         відправляти розв’язки на систему автоматизованої перевірки
Тема 2. Логіка мови програмування. (8 годин)
Умовний оператор. Складений оператор. Складені умови. Логічний тип. Логічні операції. Подання логічних значень у С++. Оператор switch.
Учні повинні знати:
-         правила складання простих та складених умов;
-         призначення та правила описування вказівок розгалуження.
-         призначення та правила описування  оператора switch.
Учні повинні вміти:
-         складати та реалізовувати розгалуження;
-         налагоджувати програми з розгалуженням;
-         використовувати оператор switch - перемикач.
Тема 3. Організація циклів. (8 годин)
Цикли. Види циклів та їх призначення. Вкладені цикли. Розв’язування задач на застосування циклів.
Учні повинні знати:
-        призначення та правила користування  циклічних операторів.
-        особливості використання циклу for.
Учні повинні вміти:
-        складати та реалізовувати циклічні програми з використанням циклів з постумовою, з передумовою та з параметром;
-        налагоджувати програми з циклами.
Тема 4. Функції. Локальні та глобальні змінні. (4 години)
Опис функції . Стандартні функції. Функція main. Параметри-змінні. Локальні та глобальні змінні. Область видимості.
Учні повинні знати:
-         сутність поняття функції ;
-         правила опису та використання функції  користувача;
-         сутність локальних та глобальних змінних;
-         поняття  області видимості змінних.
Учні повинні вміти:
-         створювати та застосовувати функції;
-         налагоджувати програми з функції.
Тема 5. Функції (продовження). (4 години)
Вказівники. Адреси змінних.  Передача параметрів через вказівник. Звернення до функції.
Учні повинні знати:
-         сутність поняття функції;
-         правила опису та використання функцій користувача;
-         сутність  та особливості використання вказівників;
-         сутність операції взяття адреси.
Учні повинні вміти:
-         створювати та застосовувати функції;
-         налагоджувати програми з функціями.
      -     передавати параметри у функції через вказівник.

Тема 6. Масиви. (12 годин)
Призначення масивів. Створення одномірних та двомірних масивів. Організація масивів мовою програмування. Пошук максимального та мінімального елемента масиву. Обробка масивів. Сортування масивів. Багатомірні масиви. Динамічні масиви.
Учні повинні знати:
o      принципи побудови, опису масивів мовою програмування;
o      призначення масивів;
o      операції над масивами та елементами масивів;
o      правила пошуку у масивах;
o      правила обробки масивів;
o      алгоритм пошуку мінімуму та максимуму у масиві;
o      алгоритми сортування масивів;
Учні повинні вміти:
o      застосовувати масиви;
o      використовувати масиви при побудові програми;
o      налагоджувати програми з масивами;
o      використовувати вказівки масивів при побудові програм на пошук мінімуму ті максимуму серед множини елементів;
o      налагоджувати програми з алгоритмами сортування;
o      створювати масиви за допомогою функції випадкових чисел:
o      передавати масиви у функції;
o      використовувати багатомірні масиви.
o      створювати та використовувати динамічні масиви.
Тема 7. Масиви символів, рядкові величини. (8 годин)
Тип даних рядок символів. Операції над рядками. Довжина рядка. Операція конкатенації. Способи ініціалізації рядків. Передавання рядків у функцію.
Учні повинні знати:
o      сутність поняття рядкового типу
o      опис рядків у мові програмування;
o      набір функцій та операцій для роботи з рядками;
o      сутність поняття довжини рядка;
o      алгоритми для обробки рядків;
o      сутність поняття конкатенації;
o      передавати рядки у функції.
Учні повинні вміти:
o      описувати та використовувати рядковий тип даних при складанні програм;
o      налагоджувати програми з рядками;
o      виконувати операції над рядками;
o      знаходити довжину рядка;
o      виконувати програмно операцію конкатенації рядків.
Тема 8. Рекурсія та рекурсивні функції . (4 години)
Поняття про рекурентні формули та рекурентні алгоритми. Програмування рекурсії. Обчислення формул з факторіалами та прогресій за допомогою рекурентних співвідношень. Рекурсивні алгоритми та рекурсивні визначення. Рекурсивні  функції. Рекурсія зсередини. Поняття обмінного швидкого сортування.
Учні повинні знати:
o      сутність поняття рекурсії;
o      призначення рекурсії;
o      принцип побудови рекурентних алгоритмів;
Учні повинні вміти:
o      застосовувати рекурентні формули;
o      програмно обчислювати факторіали та прогресії;
o      складати та реалізовувати  програми на рекурсію;
o       налагоджувати програми з рекурсіями.
Тема 9. Використання множин. (4 години)
Значення типу множина. Відношення і операції на множинах. Внутрішнє представлення множин.
Учні повинні знати:
o      сутність поняття типу множина;
o      допустимі операції на множинах.
Учні повинні вміти:
o      описувати та використовувати тип множин при складанні програм;
Тема 10. Робота з файлами даних. (4 години)
Поняття файлового потоку. Організація та обробка файлів. Файлова змінна. Текстовий файл. Пов’язання файлу з файловою змінною. Відкриття файлу для читання, запису. Операції читання з файлу та запису у файл. Закриття файлу.
Учні повинні знати:
o      призначення файлів у мові програмування;
o      типи файлів у мові програмування;
o      опис файлової змінної та її призначення;
o      сутність пов’язання файлу та файлової змінної;
o      способи відкриття файлів;
o      правила описання вказівок відкриття файлу мовою програмування;
o      правила читання та запис інформації у файл;
o      правила закриття файлу.
Учні повинні вміти:
o      працювати з файлами у середовищі програмування;
o      складати та реалізовувати  програми для роботи з файлами;
o      налагоджувати програми з файлами;
o      використовувати різні типи файлових змінних;
o      організовувати запис та читання інформації у файл.
Тема 11. Структури даних. (4 години)
Організація та обробка структур. Робота із структурами. Функції, що змінюють елементи структури.
Учні повинні знати:
o      призначення та правила опису структури;
o      особливості доступу до елементів структури.
Учні повинні вміти:
організовувати програмно тип структуру та застосовувати його;
налагоджувати програми з використанням типу структура.
Використовувати функції, що змінюють елементи структури.

Календарне планування на 2010-2011 н.р.
Дата
Тема уроку
Примітка
1
4.09.10
Основні поняття мови програмування

2
4.09.10
Основні поняття мови програмування

3
11.09.10
Контроль через контестер

4
11.09.10
Аналіз та корекція

5
18.09.10
Основні поняття мови програмування

6
18.09.10
Основні поняття мови програмування

7
25.09.10
Контроль через контестер

8
25.09.10
Аналіз та корекція

9
2.10.10
Логіка мови програмування

10
2.10.10
Логіка мови програмування

11
9.10.10
Контроль через контестер

12
9.10.10
Аналіз та корекція

13
16.10.10
Логіка мови програмування

14
16.10.10
Логіка мови програмування

15
23.10.10
Контроль через контестер

16
23.10.10
Аналіз та корекція

17
6.11.10
Організація циклів

18
6.11.10
Організація циклів

19
13.11.10
Контроль через контестер

20
13.11.10
Аналіз та корекція

21
20.11.10
Організація циклів

22
20.11.10
Організація циклів

23
27.11.10
Контроль через контестер

24
27.11.10
Аналіз та корекція

25
4.12.10
Процедури. Формальні та фактичні параметри

26
4.12.10
Процедури. Формальні та фактичні параметри

27
11.12.10
Контроль через контестер

28
11.12.10
Аналіз та корекція

29
18.12.10
Функції

30
18.12.10
Функції

31
25.12.10
Контроль через контестер

32
25.12.10
Аналіз та корекція

33
15.01.11
Масиви

34
15.01.11
Масиви

35
22.01.11
Контроль через контестер

36
22.01.11
Аналіз та корекція

37
29.01.11
Масиви

38
29.01.11
Масиви

39
5.02.11
Контроль через контестер

40
5.02.11
Аналіз та корекція

41
12.02.11
Масиви

42
12.02.11
Масиви

43
19.02.11
Контроль через контестер

44
19.02.11
Аналіз та корекція

45
26.02.11
Масиви символів, рядкові величини

46
26.02.11
Масиви символів, рядкові величини

47
5.03.11
Контроль через контестер

48
5.03.11
Аналіз та корекція

49
12.03.11
Масиви символів, рядкові величини

50
12.03.11
Масиви символів, рядкові величини

51
19.03.11
Контроль через контестер

52
19.03.11
Аналіз та корекція

53
2.04.11
Рекурсивні функції та процедури

54
2.04.11
Рекурсивні функції та процедури

55
9.04.11
Контроль через контестер

56
9.04.11
Аналіз та корекція

57
16.04.11
Використання множин

58
16.04.11
Використання множин

59
23.04.11
Контроль через контестер

60
23.04.11
Аналіз та корекція

61
30.04.11
Робота з файлами даних

62
30.04.11
Робота з файлами даних

63
7.05.11
Контроль через контестер

64
7.05.11
Аналіз та корекція

65
14.05.11
Структури даних. Записи

66
14.05.11
Структури даних. Записи

67
21.05.11
Контроль через контестер

68
21.05.11
Аналіз та корекція. Підсумок роботи факультативу





Немає коментарів:

Дописати коментар