Опорнi конспекти по темі Алгоритмізація та програмування
Завантажити презентаціюПрезентація по слайдам:
Відділ освіти Дубенської міської ради Дубенська гімназія №2 Алгоритмізація та програмування. Мова Паскаль (опорні конспекти) З досвіду роботи вчителя інформатики Колошкіної Тетяни Віталіївни Дубно - 2006
Алгоритмізація та програмування. Мова Паскаль “… мова, якою учня навчають висловлювати свої думки, здійснює глибокий вплив на його навички мислення та винахідницькі здібності…” Ніколаус Вірт
Схвалено методичною радою Дубенської гімназії №2 (протокол №4 від 27.02.2006) У пропонованому посібнику узагальнено досвід роботи вчителя інформатики Дубенської гімназії №2 Колошкіної Т.В. з питань вивчення курсу “Алгоритмізація та програмування” за опорними конспектами. Матеріал подано в обсязі, визначеному Програмою неперервного курсу інформатики 5-11 кл . До кожного опорного конспекту подано коментар, а також запитання для самоконтролю. Посібник призначений для вчителів інформатики, учнів шкіл, гімназій. Мета його – допомогти школярам швидко, цілісно і на високому рівні засвоїти програмовий матеріал.
Етапи розв’язування задач з використанням комп’ютера 1. Постановка задачі. 2. Побудова моделі. 3. Складання алгоритму. 4. Вибір програмного засобу. 5. Тестування програмного засобу. 6. Виконання програми та аналіз результатів. 5 6 10 19
Постановка задачі Формулювання умови задачі. Конкретизація даних, невідомих. Визначення правильних результатів. Точність постановки задачі Можливість забезпечити однакове розуміння задач різними людьми. 4
Моделювання Модель – це спрощене уявлення про реальний об’єкт, процес чи явище. Географія Хімія Фізика Біологія Головне призначення моделі Демонстрація лише суттєвих властивостей об’єктів, процесів і явищ. 4
Класифікація моделей За галузями використання: Методи дослідження навчальні ігрові дослідні науково-технічні імітаційні За способом представлення: матеріальні інформаційні За ознакою фактора часу: динамічні статичні експериментальний теоретичний 4 8 6
Інформаційні моделі Інформаційна модель – це сукупність інформації, яка харак-теризує властивості та стан об’єкта, процесу чи явища, а та-кож їх взаємодію із зовнішнім світом. Інформаційна модель вербальна знакова За формою представлення: геометричні словесні математичні структурні логічні спеціальні комп’ютерні некомп’ютерні 4
Запитання для самоконтролю З яких етапів складається розв’язання задачі на комп’ютері? Які етапи виконує людина? На яких етапах використовується комп’ютер? Що таке модель? Яке призначення моделі? Що називається моделюванням? На яких двох методах дослідження базується моделювання? За якими основними ознаками класифікують моделі? Які існують типи моделей? Що таке інформаційна модель? Наведіть власні приклади побудови інформаційної моделі.
Алгоритми Алгоритм – це зрозумілий, точний та повний опис послідовності простих дій для розв’язування конкретної задачі. IX століття. Узбецький математик Мухаммед ібн Муса аль_Хорезмі (латинь: Algorithm). Трактат про правила виконання арифметичних дій. Алгоритм числовий нечисловий Виконавець алгоритму людина машина
Властивості алгоритму зрозумілість однозначність (визначеність) дискретність (покроковість) універсальність (масовість) правильність (результативність) Помилки в алгоритмі синтаксичні логічні
Запитання для самоконтролю: Що ми називаємо алгоритмом? Як виник термін “алгоритм”? Які бувають алгоритми? Назвіть основні властивості алгоритмів. Що називається системою команд виконавця? Хто може бути виконавцем алгоритму? Які помилки можуть бути в алгоритмі? Які помилки називаються синтаксичними? Які помилки називаються логічними? Хто їх знаходить і виправляє?
Словесний запис алгоритму Виконавець: людина Правила запису: алгоритм складається з послідов-ності дій, записаних словами; дії можуть мати різні скорочення, позначення, формули; дії повинні бути точно визна-ченими і посильними для вико-нання; усі дії алгоритму повинні бути пронумеровані Задача: Обчислити значення функції y=3a2 - 5a.. а помножити на а, результат позначити R1. R1 помножити на 3, результат позначити R2. 5 помножити на а, результат позначити R3. R2 відняти R3, результат позначити y
Типи виразів Арифметичний – це звичайна формула, операндами якої можуть бути числа, змінні, функції. (b2-4ac) Умовний – це вислів про значення операндів, який може бути істинним або хибним. Результат: “так” або “ні”; “істина” або “хибність”; “true” або “false” Логічний – складений вислів про значення декількох умовних виразів. Логічні операції: і (and), або (or), ні (not)
Графічний запис алгоритму Графічний запис алгоритму складається із визначених зображень дій за допомогою геометричних фігур: початок кінець введення даних виведення результату обчислення умова Блок-схема Геометричні фігу-ри з’єднуються лініями зі стріл-ками
Базові структури алгоритмів Лінійний Послідовність дій Циклічний Визначена кількість повто-рень однієї або декількох дій згідно сформульованої умови Розгалужений Вибір з двох можливих дій в за-лежності від сформульованої умови
Запитання для самоконтролю: Які ви знаєте способи запису алгоритмів? Яких правил потрібно дотримуватись у словесному записі алгоритму? Чому словесний спосіб запису алгоритму вважається найпростішим? В чому особливості графічного запису алгоритму? Які існують типи виразів? Які базові структури може мати алгоритм? З яких типів вказівок складається будь-який алгоритм? Які існують типи алгоритмів? Які загальні принципи запису вказівок? Які алгоритми називаються лінійними? Які алгоритми називаються розгалуженими? Які алгоритми називаються циклічними?
Мови програмування Середовище програмування: редактор текстів програм; довідково-інформаційна система; бібліотека процедур та функцій; компілятор чи інтерпретатор; засоби виконання усієї програми
Запитання для самоконтролю: Що називається мовою програмування? Чим викликана значна кількість різних мов програмування? На які класи традиційно поділяються мови програмування? Яку функцію виконують транслятори? Поясніть різницю між інтерпретатором та компілятором? Що входить до складу середовища програмування?
Основні поняття мови Паскаль Алфавіт латинські символи символи кирилиці цифри від 0 до 9 математичні символи: + - * / = < > розділові знаки: ( ) [ ] { } , . : ; ‘ Команди введення – виведення; присвоєння; складена; розгалуження; циклу Слова службові ідентифікатори стандартні імена Рік створення: 1960 Автор: професор Ніколаус Вірт зі Швейцарії Призначення: навчання студентів програмуванню Використання: розв’язування різноманітних задач Історична довідка
Службові слова Призначені для написання команд. Goto – перейти до If – якщо Label – позначка (мітка) Mod – остача від ділення Not – не Of – з Or – або Procedure – процедура Program – програма Record – запис Repeat – повторювати Then – то While – поки (доки) And – і Array – масив Begin – початок Case – вибір Const – сталі (константи) Div – ділення без остачі Do – виконати Downto –униз до Else – інакше End – кінець File – файл For – для Function – функція
Ідентифікатори, або імена користувача Правила утворення імен користувача: Ім’я може складатися лише з латинських літер, цифр і символа “_”; Ім’я не може бути службовим словом; Першим символом є буква; Літери можуть бути великими або малими; Імена повинні бути короткими і відповідати суті об’єкта; Пропуски в іменах не допускаються; Два різні об’єкти не можуть мати одне ім’я. Приклади правильно утворених імен a, b, x, a1, a2, alpha, cat, My_name, Z_1
Структура Паскаль-програми Програма складається з двох частин: описової виконуваної заголовок розділ описів розділ команд та оголошень Program ; ; Begin ; End. Команди Введення присвоєння виведення Read readln Write writeln := Складена команда: begin ; … ; end;
Запитання для самоконтролю: Хто створив мову і яке призначення мови Паскаль? Яка відмінність між алфавітом алгоритмічної та української мов? Для чого потрібні службові слова? Розкажіть про правила утворення імен. З яких частин складається програма? Як відокремлюються команди у програмі? Назвіть імена, які користувач утворив правильно: а) a, a1, 2a, a+1; б) aa, aa+aa, for, begin; в) Myname, my_number, do. Якого значення набуде змінна А після обчислення виразів: а) A:= 8 + 4 * 2 – 3; б) A:= 3 * 6 + 3 * 5 + 3 * 4?
Величини Величини бувають: константи і змінні. Константи Змінні не міняють свого значення під час виконання програми. Опис здійснюється у розділі констант: Const =; Наприклад: Const Pi=3.14 призначені для зберігання конкретних значень в оперативній пам’яті під час виконання програми. Опис здійснюється в розділі змінних: Var :;
Типи даних Це множина значень однакової природи разом із набором операцій, які над ними виконуються. Цілий Дійсний Літерний integer real char (-32768…32767) (29Е-39…1.7Е38) (кодова таблиця) Операції: Операції: +, -, *, /, div, mod +, -, *, / Булевий Рядковий boolean string (true, false) (0 – 255 байт)
Вирази Правила утворення та обчислення виразів: Правило пріоритетів. Правило дужок. Правило лінійного запису. Правило коректних імен. Стандартні функції: Abs(x) - |x| - модуль числа x Arctan (x) – arctg x – арктангенс числа х Cos(x) – cos x) – косинус числа х Exp(x) – ex – експонента Ln(x) – lnx – натуральний логарифм числа х Sin(x) – sin x – синус числа х Sqr(x) – x2 – піднесення до квадрату Sqrt(x) - - корынь квадратний з числа х Записати вираз на мові Паскаль: (sqr(x)*sqr(x)+2*y)/(sin(2*y)-1)
Запитання для самоконтролю: Як ви розумієте поняття “величина”? Що називається константою? Наведіть приклади. Яка величина називається змінною? Які стандартні типи величин використовуються у Паскалі? Яке призначення виразів? Сформулюйте правило дужок. Які операції визначені над цілими даними? Яких значень набудуть такі функції та вирази: abs(-5); sqrt(49); 8div3; 11mod4.
Лінійні (прості) програми Команди: введення; присвоєння; виведення. Задача: Задано два цілі числа. Знайти їх суму, добуток, різницю. Дано: a,b. Знайти: s,d,r. Обчислення: s=a+b d=a*b r=a-b Program z1; Var a,b,s,d,r : integer; Begin read (a,b); s:=a+b; d:=a*b; r:=a-b; writeln(‘s=‘,s); writeln (‘d=‘,d); writeln (эк=эбк); End.
Програми з розгалуженням Скорочений запис: If then ; Задача: Ввести два числа. Третьому присвоїти їх суму, якщо перше більше за друге, і добуток, якщо друге більше за перше. Дано: a,b. Знайти: c. Обчислення: Якщо a>b, то c=a+b Якщо b>a, то с=a-b Program z2; Var a,b,c : integer; begin read (a,b); if a>b then c:=a+b; if b>a then c:=a*b; writeln (‘c=‘,c); end.
Програми з розгалуженням (продовження) Дано: a,b. Знайти: c. Обчислення: Якщо a>b, то c=a+b iнакше с=a*b Задача: Ввести два числа. Третьому присвоїти їх суму, якщо перше більше за друге, і добуток, якщо друге більше за перше. If then else ; Program z2; Var a,b,c : integer; begin read (a,b); if a>b then c:=a+b else c:=a*b; writeln (‘c=‘,c); end.
Запитання для самоконтролю: Які службові слова використовуються для запису лінійних програм? Яка стандартна команда забезпечує введення інформації у Паскалі? Яка команда призначена для виведення інформації? Як діє скорочена команда розгалуження? Яке її призначення? Який загальний вигляд має скорочена команда If? Який загальний вигляд має команда повного розгалуження? Чи можна ставити символ “;” перед словом else?
Циклічні програми Цикл з передумовою призначений для організації багатократного виконання групи команд (тіло циклу) до тих пір, поки залишається істинною умова виконання циклу. Опис: While do ; Задача: Обчислити добуток перших 25 натуральних чисел. Program z3; Var d,n:integer; Begin d:=1; n:=1; while n
Циклічні програми Цикл “для” призначений для організації багатократного виконання тіла циклу для значень параметра циклу з деякої впорядкованої дискретної множини. Опис: 1) for < параметр i>:=a to b do ; (ab). Задача: Обчислити добуток перших 25 натуральних чисел. Program z4; Var i,d:integer; begin d:=1; for i:=1 to 25 do d:=d*I; writeln (‘d=‘,d); end.
Запитання для самоконтролю: Опишіть дію команди while. Опишіть правило обчислення добутку. Як буде обчислюватись сума, кількість? Що таке цикл з параметром? Що таке параметр циклу? Чим відрізняється команда for-to від команди for-downto? Чому цикл “доки” є більш універсальним, ніж цикл “для”?
Табличні величини Масив – це скінченна послідовність змінних одного типу, імена яких складаються з імені масиву та покажчика, що визначає положення змінної у масиві. Масиви Одновимірні Двовимірні Властивості масиву: Тип елементів масиву повинен бути конкретно описаний. До кожного елемента масиву існує прямий доступ. 2. Число елементів масиву визначається під час його опису і надалі не змінюється. Опис масиву: Var : ARRAY [m..n] of ; Наприклад: Var A:ARRAY [1..5] of real; B: ARRAY [1..100,1..100] of integer;
Алгоритми і програми роботи з таблицями Алгоритми: Знаходження суми й добутку елементів таблиць; Пошук елементів з деякою властивістю; Пошук мінімального (максимального) елемента; Впорядкування табличних величин: 1. метод мінімальних елементів; 2. метод вставки. Задача: Обчислити суму всіх елементів масиву A [1..25]. Program z5; Var A:ARRAY [1..25] of real; i: integer; s: real; begin for i:=1 to 25 do begin writeln (‘введіть елемент масиву a[i]’); read (a[i]); end; for i:=1 to 25 do S:=S+A[i]; writeln (‘S=‘,S); end.
Рядкові величини Рядок – це послідовність символів кодової таблиці комп’ютера. Опис: Var : string [максим довжина рядка]; Операції: з’єднання (+), присвоєння (:=), порівняння, введення-виведення. Функції Процедури 1. Length (A) – довжина рядка 1. Insert (A,B,p) – вставка рядка А у рядок В, починаючи з позиції номером р 2. Copy (R,Poz, N) –копіює фрагмент 2. Delete (B,p,m) – вилучає m символів з довжиною N рядка R з позиції Poz рядка В, починаючи від позиції р 3. Pos (A,B) –дає номер символу, з якого 3. Str (C,B) – переводить числове дане починається входження рядка А у рядок В С у дане В типу рядок 4. Concat (A,B,…) – з’єднує рядки в один 4. Val (A,C,D) – засилає у числову змінну С рядок числовий образ рядка А
Запитання для самоконтролю: Для чого призначені масиви? Чи може масив складатись з даних різних типів? Як вводяться дані у масив? Назвіть методи впорядкування даних у масиві? Для чого використовують текстові дані? Які дії визначені над текстовими даними?
Процедури і функції Підпрограма – це засіб скорочення тексту програми та підвищення її структурованості. Процедура Функція Procedure function (); (): Begin ; Begin End; End; Змінні Локальні – описуються в підпрограмі. Глобальні – описуються в основній програмі. Формальні – описуються в заголовку підпрограми. 4. Фактичні – описуються у команді підпрограми при її виклику.
Література Глинський Я.М. Інформатика: 8-11 класи: Навч. посіб. Для загальноосвіт. навч. закл.: У 2-х ч. – Ч.1 Алгоритмізація і програмування. 4-те вид.- Львів: Деол, СПД Глинський, 2004. – 256 с. Глинський Я.М., Анохін В.Є., Ряжська В.А. Паскаль. Turbo Pascal I Delphi. 3-тє вид. – Львів: “Деол”, 2002. – 144 с. 3. Караванова Т.П. Інформатика. Базовий курс. Основи алгоритмізації та програму-вання/Караванова Т.П. – Шепетівка: “Аспект”, 2005. - 192 с. 4. Милов А.В. Основы программирования в задачах и примерах: Учебный курс/Худож.-оформитель А.С.Юхтман.- Харьков: Фолио, 2002.- 397 с. 5. Сальнікова І.І., Шестопалов Є.А. Інформатика. Короткий курс. Навчальний посібник у 2-х частинах. Частина 2. 2005.- 208 с. 6. Сердюченко В.Я. Розробка алгоритмів та програмування на мові Turbo Pascal: Навчальний посібник для техн. вузів / Укр.мовою – Х.: ВКП “Парытет” ЛТД, 1995.- 352 с. 7. Фролков Ю.А. Основы информатики. Алгоритмический язык// Учеб. пособие для 10 кл. – Донецк: Центр подготовки абитуриентов, 1999.- 112 с. 8. Шестопалов Э.А. Алгоритми та програми. Основи інформатики та обчислювальної техніки. Книга 2.- Тернопіль: Підручники і посібники, 2000.- 112 с. 9. Шост Д.М. Основи інформатики та обчислювальної техніки. Turbo Pascal. 10-11 класи. Тернопіль: “Навчальна книга – Богдан”, 1997. – 192 с.
Схожі презентації
Категорії