Набір презентацій на факультатив з програмування

Про матеріал

Архівний файл містить набір презентацій для вивчення мови програмування Турбо Паскаль. Відкриття презентацій по темах здійснюється з головної презентації "Основи програмування Паскаль". Кожний урок містить розв'язані задачі, та задачі для самостійної роботи.

Зміст слайдів
Номер слайду 1

1. Рядки (string). Дане типу рядок — це послідовність довільних символів (тобто елементів типу char). Сталі типу рядок записують за допомогою двох штрих-символів, які охоплюють текст. Рядок може містити від 0 до 255 символів. Наприклад, 'Україна', 'Львівська політехніка', '' – порожній рядок нульової довжини, ' ' – рядок, що містить один символ-пропуск. Змінну типу рядок оголошують за допомогою слова string так: var <змінна>: string[n]; де n –довжина рядка, n<256. Довжину рядка можна не зазначати. Приклад. const slovo=’University’; var fraza1: string[45]; fraza2: string; Над змінними типу рядок визначені операції з’єднання (+) та порівняння (<, <=, >, >=, =, <>). Порівняння двох рядків здійснюється зліва направо до перших різних символів, причому 'A'<'B', 'B'<'C' тощо. “Більшим” вважається символ, який розташований в алфавіті далі. Числовий код символу дає функція ord, наприклад, ord('B')=66, ord('A')=65. Зворотну дію виконує функція chr: chr(66) дає 'B'. Приклад. Нехай t1='New', t2=' Year'. Тоді з'єднанням цих рядків буде s:=t1+t2 (s матиме значення 'New Year'). Тут s > t1. Приклад. Вивести на екран малі літери латинського алфавіту та їхні коди можна так: for v:= 'a' to 'z' do writeln(v, ord(v):5).

Номер слайду 2

Char –символьний тип (займає 1 байт пам’яті) Опис даних символьного типу:  Const name1= ‘v’; — опис символьної константи,  Var name2: CHAR; — опис символьної змінної.  Допустимі всі операції порівняння:  <, <=, =, >, >=, <>.  Функції для роботи з символами CHR(N) — символ з кодом N. Наприклад: chr(65) A  ORD(S) — код символу S. Наприклад: ord(‘A’) 65  SUCC(S) — наступний символ. Наприклад: succ(‘K’) L  PRED(S) — попередній символ. Наприклад: pred(‘K’) J  UPCASE(S) — переводить літери у верхній регістр. Наприклад: upcase(‘m’) M  Опис даних рядкового типу:  Const <ім’я>=‘ліцей’  Var <ім’я>:array[1..50] of char;  Var <ім’я>:string[максимальна довжина рядка];  Приклад. Const R1=‘computer’;  Var R2: STRING;  R3: STRING [20];  R3:array[1..20] of char;  Кількість символів в рядку називається його довжиною. Довжина рядка може бути від 0 до 255. Рядкові величини можуть бути константами і змінними. Рядкова константа – це послідовність символів між апострофами.  Над рядковими величинами допустимі операція склейки (конкатенації) (+) та операції відношення (=,<,>,<=,>=,<>). 

Номер слайду 3

Функція Concat.  Функція Concat здійснює об’єднання рядків Rl; R2, R3 в один рядок в такому порядку, в якому вони записані.  Формат  Concat(Rl,R2,R3); або R1+R2+R3 (string)  Приклад. Program Fconcat;  Const Rl='Moвa '; R2='програмування '; R3=’Turbo Pascal';  Var R:string[35];  begin  R:=concat(Rl,R2,R3);  writeln(R);  end.  Функція Length. Функція Length видає фактичну довжину рядка, який міститься в даній змінній.  При підрахуванні довжини рядка враховуються всі символи, в тому числі і проміжки!!!  Формат: Length(R); (integer)  Приклад. Program Flength;  Const R=’Turbo Pascal’;  Var N: integer;  begin  N:=length(R);  writeln('n=',N);  end. 

Номер слайду 4

Функція Copy. Функція Copy копіює фрагмент довжиною N рядка R, починаючи з позиції Poz.  Формат Copy(R, Poz, N); (string)  Приклад: Program Fcopy;  const R='Turbo Pascal';  var R1: string[6];  begin  R1:=Copy(R, 7, 6);  writeln(R1);  end.  Функція Pos. Функція Pos знаходить номер позиції Р, з якої починається перше входження слова C в рядку R. Якщо слово C в рядку R не знайдено, то буде надруковано число 0.  Формат Pos(C,R); (integer)  Приклад: Program Fpos;  Const R=‘інформатика'; C=‘форма';  Var P: integer;  begin  P:=Pos(C, R);  writeln('P=',P);  end. 

Номер слайду 5

Процедура Insert. Процедура Insert вставляє слово R1 в рядок R, починаючи з позиції Poz.  Формат Insert(R1, R, Poz); (string)  Приклад. Program PInsert;  Var Poz: integer;  R, R1: string[35];  begin  R:='Moвa Pascal';  R1:=’Turbo ‘;  insert(R1, R, 6);  writeln(R);  end.  Процедура Delete. Процедура Delete знищує слово, яке починається з вказаної позиції Poz і має задану довжину N в рядку R.  Формат Delete(R, Poz, N); (string)  Приклад. Program PDelete;  Var R:string[35];  begin  R:='Moвa Turbo Pascal';  delete(R, 6, 6);  writeln(R);  end. 

Номер слайду 6

Стала нульової довжини – ‘’  Рядок символів вводиться і виводиться як одна змінна.  Значення типу string вводяться за допомогою тільки процедури readln і за один раз може бути введений лише один рядок. 

Номер слайду 7

Задача 1. Підрахувати кількість слів в реченні. Program kol_slow; Var St : String; i, k : Integer; Begin Write(‘Введіть текст:); Readln(St); k := 0; St := St+ ‘ ’; For i:=1 to length(St) – 1 do if (St[i] <> ‘ ’) and (St[i+1] = ‘ ’) then inc(k); writeln(‘У введеному тексті ’, k, ‘ слів.’); Readln end. Задача 2. Ввести довільний текст. Перевірити, чи в ньому кількість відкритих дужок дорівнює кількості закритих дужок. Вивести повідомлення “так” або “ні”.  Program Sumvol;  uses crt;  var R:string[100];  i,k1,k2,l:integer;  begin  clrscr;  writeln('Vvestu text:');  readln(r);  k1:=0; k2:=0;  l:=length(R);  for i:=1 to l do  begin  if copy(R,i,1)='(' then k1:=k1+1;  if copy(R,i,1)=')' then k2:=k2+1;  end;  if k1=k2 then write('yes') else write('no');  readln;  end.

Номер слайду 8

Задача 3. У введеному тексті замінити всі пропуски, що йдуть підряд одним єдиним пропуском. Program del_space; var St, St1 : string; i : integer; begin write(‘Введiть текст:’); readln(St); St1 := ‘[’+St[1]; for i := 2 to length(St) do if st[i] <> ‘ ’ then st1:=st1+st[i] else if (st[i] = ‘ ’) and (st[i+1] <> ‘ ’) then st1 := St1 + st[i] St1 := St1 + ‘]’; writeln(St1); readln end. Задача 4. Кодування інформації. Вилучити з фрази а пропуски, коми і крапки, інші символи продублювати. Вивести результат. Program MyCode; uses Crt; var a, b, c : string; i : integer; begin clrscr; write('Введіть текст: '); readln(a); b := ''; for i := 1 to Length(a) do begin c := Copy(a, i, 1); if (c <> ',') and (c <>'.') and (c <>' ' ) then b := b + c + c end; writeln(b); readln end.

Номер слайду 9

1. Дано два слова. Скільки разів в другому слові зустрічається літера, яка в першому слові зустрічається найбільшу кількість разів. Якщо декілька літер зустрічаються однакову кількість разів, то за літеру, що зустрічається найбільшу кількість разів прийняти першу літеру. 2. Підрахувати кількість різних цифр у введеному рядку. 3. Знайти, в якому місці введеного речення вперше зустрілась літера “я”. 4. У заданому рядку поміняти всі коми на крапки, а крапки на знаки оклику. 5. У введеному рядку видалити всі розділові знаки (крапки, коми, знаки оклику і знаки питання). 6. Підрахувати кількість слів у реченні. 7. У введеному тексті знайти довжину найкоротшого та найдовшого слова. 8. У введеному тексті знайти найдовше слово–поліндром. 9. У введеному тексті замінити всі маленькі літери на великі. 10. Замініть у введеному тексті всі групи літер «абв» на «абвг». 11. Підрахуйте, яка з голосних літер зустрічається у тексті найбільшу кількість разів.

Номер слайду 10

12. Знайдіть, одно–, дво– чи трискладних слів у введеному реченні більше. 13. Знайдіть у введеному реченні найдовше слово і підрахуйте, скільки у ньому різних літер. 14. Ввести речення і перевірити, чи є в ньому задане слово. 15. З даного тексту видалити всі фрагменти, що знаходяться у фігурних дужках. 16. Підрахувати, скільки у введеному реченні слів–поліндромів. 17. Підрахувати, який процент слів у реченні починається на задану літеру. 18. У реченні всі фрагменти «і так далі» замінити на «і т. д.». 19. Складіть програму «Словарний диктант». Програма повинна перевіряти правильність написання відомих слів. Невідомих для програми слів у тексті диктанту використовувати не слід. 20. Скласти гру «Відгадай столицю». Назви країн та їх столиць занесіть у відповідні символьні масиви. Програма повинна зменшувати оцінку на 1 за кожну помилку і після трьох помилок припиняти роботу, видаючи відповідне повідомлення. 21. Дано рядок, що складається зі слів і пропусків. Перевернути кожне слово, зберігши незмінним їх порядок в рядку. 22. В символьному рядку є круглі дужки. Перевірити, чи вірно вони розташовані. 23. В арифметичному виразі, записану в один рядок, є круглі, квадратні та фігурні дужки. Чи вірно записано вираз?

Перегляд файлу
Загальні відомості про мову Паскаль.  Мова ПАСКАЛЬ є універсальною мовою програмування  високого рівня.  Його основи розробив Ніклаус Вірт, професор технічного університету в Цюріху (Швейцарія) у 1971 році.  Мета створення - полегшити процес навчання систематичному підходу до програмування для ЕОМ   Програма, написана мовою ПАСКАЛЬ, складається з лексем і роздільників. Лексемами називаються мінімальні значимі одиниці тексту в програмі, написаній мовою ПАСКАЛЬ. Вони подані такими категоріями як спеціальні символи, ідентифікатори, мітки, числа, рядкові константи.  Роздільник являє собою пробіл або коментар. Дві сусідніх лексеми, якщо вони являють собою зарезервоване слово, ідентифікатор, мітку або число, повинні бути відділені одна від одної хоча б одним роздільником.  Зарезервоване слово – це ідентифікатор, якому в мові програмування наданий певний смисл. Це може бути ім’я операції, оператор, службове слово, тощо.
Абетка (алфавіт) — це набір символів, які використовуються для написання програм. Абетку мови Паскаль складають: 1) Літери A..Z, a..z та символ підкреслювання (){}[].,:;#$'". 4) Службові слова: function - функція goto - перейти до if - якщо in - в label - мітка mod - мод, остача nil - нуль, нічого not - не of - з or - або, чи packed - упакований procedure - процедура       program - програма     record - запис repeat - повторювати set - множина then - то to - до (збільшуючи до) type - тип until - доти поки var - змінна while - поки with – з  and - і, та array - масив begin - початок case - варіант const – константа div - ділення do - виконати downto - зменшуючи до else - інакше end - кінець file – файл for - для   Алфавіт мови Паскаль " title="Абетка (алфавіт) — це набір символів, які використовуються для написання програм. Абетку мови Паскаль складають: 1) Літери A..Z, a..z та символ підкреслювання "_". 2) Цифри від 0 до 9. 3) Спеціальні символи + -*/ = <>(){}[].,:;#$'". 4) Службові слова: function - функція goto - перейти до if - якщо in - в label - мітка mod - мод, остача nil - нуль, нічого not - не of - з or - або, чи packed - упакований procedure - процедура       program - програма     record - запис repeat - повторювати set - множина then - то to - до (збільшуючи до) type - тип until - доти поки var - змінна while - поки with – з  and - і, та array - масив begin - початок case - варіант const – константа div - ділення do - виконати downto - зменшуючи до else - інакше end - кінець file – файл for - для   Алфавіт мови Паскаль ">
  Алфавіт мови Паскаль 5) Деякі послідовності з двох спеціальних символів: : = надати значення            >= більше або дорівнює      <= менше або дорівнює   <> не дорівнює .. роздільник діапазонів (* або {   початок коментарію *) або }   кінець коментарію  Службові слова інтерпретуються як цілі символи . Програма мовою Паскаль оперує різноманітними об'єктами, що містять або певні дані (константи, змінні, типи, файли), або виконують певні дії (процедури та функції). Кожний об'єкт позначається іменем (ідентифікатором). Іменем може бути будь-яка послідовність латинських літер, цифр, знаку підкреслювання, що починається з літери чи знаку підкреслювання (пробіли в іменах ставити заборонено). Заборонено в якості імен використовувати службові слова. Довжина ідентифікатора не повинна перевищувати 127 символів.  Великі та малі літери в іменах транслятор не відрізняє. Сполучення цих літер використовується для того, аби зручніше було читати інформацію.
цілий цілий залишок цілочисельного ділення mod цілий цілий цілочисельне ділення div дійсний дійсний дійсний цілий ділення / дійсний дійсний цілий цілий множення * дійсний дійсний цілий цілий віднімання – дійсний дійсний цілий цілий додавання + Тип  результату Тип  операндів Операція Оператор Бінарні арифметичні операції
Значення виразу  i div j являє собою цілу частину від ділення i/j. Якщо j дорівнює 0, то виникає помилка.  Наприклад: 25 div 4 = 6,  21 div 3 = 7,                    5 div 2 = 2,  5 div 6 = 0. Оператор mod повертає залишок, отриманий при діленні двох його операндів. Знак результату оператора mod є тим же, що і знак змінної i. Якщо j дорівнює 0, то виникає помилка. Бінарні арифметичні операції Наприклад: 25 mod 4 = 1, 21 mod 3 = 0,                       5 mod 2 = 1,  5 mod 6 = 5.
real real Exp(b*ln(a)) 10 real  real  sqrt(x)  9 integer  integer  8 real  real  sqr(x)  x2 7 integer  integer  6 real  real  abs(x)  |x|   5 real  real  Ln(x) ln x  4 real  real  Exp(x) ex  3 real  real  Cos(x) cos x 2 real  real  Sin(x) sin x  1 Тип результату Тип  операнду  Запис в  ПАСКАЛІ  Математичний запис  №  Основні арифметичні функції.
Приклади  запису арифметичних виразів. Вираз записується в один рядок. Наприклад, вираз:     мовою Паскаль має бути записаний так:    (a*x+b*sqr(x)+c*sqr(x)*x)/(14*x-x). 2. У виразах використовуються тільки круглі дужки, причому кіль­кість дужок, що відкриваються, повинна відповідати кількості дужок, що закриваються. З. Не можна записувати підряд два знаки арифметичних операцій.  Обчислення виконуються зліва направо відповідно пріорітету операцій: операція обчислення функцій; операції піднесення до степення; операції множення, ділення, mod і div; операції додавання і віднімання.
exp(1/3*ln(x+1))  sin((2*x)/(x+1))/cos(((2*x)/(x+1))  sqr(sin(x*x*x))  exp(x+1)*(a-x)  (a+b)/(c*d) Запис мовою ПАСКАЛЬ Математичний запис Приклади  запису арифметичних виразів.
Зміст слайдів
Номер слайду 1

Загальні відомості про мову Паскаль. Мова ПАСКАЛЬ є універсальною мовою програмування  високого рівня.  Його основи розробив Ніклаус Вірт, професор технічного університету в Цюріху (Швейцарія) у 1971 році. Мета створення - полегшити процес навчання систематичному підходу до програмування для ЕОМ Програма, написана мовою ПАСКАЛЬ, складається з лексем і роздільників. Лексемами називаються мінімальні значимі одиниці тексту в програмі, написаній мовою ПАСКАЛЬ. Вони подані такими категоріями як спеціальні символи, ідентифікатори, мітки, числа, рядкові константи. Роздільник являє собою пробіл або коментар. Дві сусідніх лексеми, якщо вони являють собою зарезервоване слово, ідентифікатор, мітку або число, повинні бути відділені одна від одної хоча б одним роздільником. Зарезервоване слово – це ідентифікатор, якому в мові програмування наданий певний смисл. Це може бути ім’я операції, оператор, службове слово, тощо.

Номер слайду 2

Абетка (алфавіт) — це набір символів, які використовуються для написання програм. Абетку мови Паскаль складають: 1) Літери A..Z, a..z та символ підкреслювання "_". 2) Цифри від 0 до 9. 3) Спеціальні символи + -*/ = <>(){}[].,:;#$'". 4) Службові слова: function - функція goto - перейти до if - якщо in - в label - мітка mod - мод, остача nil - нуль, нічого not - не of - з or - або, чи packed - упакований procedure - процедура       program - програма     record - запис repeat - повторювати set - множина then - то to - до (збільшуючи до) type - тип until - доти поки var - змінна while - поки with – з  and - і, та array - масив begin - початок case - варіант const – константа div - ділення do - виконати downto - зменшуючи до else - інакше end - кінець file – файл for - для   Алфавіт мови Паскаль

Номер слайду 3

Алфавіт мови Паскаль 5) Деякі послідовності з двох спеціальних символів: : = надати значення >= більше або дорівнює <= менше або дорівнює <> не дорівнює .. роздільник діапазонів (* або { початок коментарію *) або } кінець коментарію Службові слова інтерпретуються як цілі символи . Програма мовою Паскаль оперує різноманітними об'єктами, що містять або певні дані (константи, змінні, типи, файли), або виконують певні дії (процедури та функції). Кожний об'єкт позначається іменем (ідентифікатором). Іменем може бути будь-яка послідовність латинських літер, цифр, знаку підкреслювання, що починається з літери чи знаку підкреслювання (пробіли в іменах ставити заборонено). Заборонено в якості імен використовувати службові слова. Довжина ідентифікатора не повинна перевищувати 127 символів.  Великі та малі літери в іменах транслятор не відрізняє. Сполучення цих літер використовується для того, аби зручніше було читати інформацію.

Номер слайду 4

цілий цілий залишок цілочисельного ділення mod цілий цілий цілочисельне ділення div дійсний дійсний дійсний цілий ділення / дійсний дійсний цілий цілий множення * дійсний дійсний цілий цілий віднімання – дійсний дійсний цілий цілий додавання + Тип результату Тип операндів Операція Оператор Бінарні арифметичні операції

Номер слайду 5

Значення виразу  i div j являє собою цілу частину від ділення i/j. Якщо j дорівнює 0, то виникає помилка. Наприклад: 25 div 4 = 6, 21 div 3 = 7, 5 div 2 = 2, 5 div 6 = 0. Оператор mod повертає залишок, отриманий при діленні двох його операндів. Знак результату оператора mod є тим же, що і знак змінної i. Якщо j дорівнює 0, то виникає помилка. Бінарні арифметичні операції Наприклад: 25 mod 4 = 1, 21 mod 3 = 0, 5 mod 2 = 1, 5 mod 6 = 5.

Номер слайду 6

real real Exp(b*ln(a)) 10 real real sqrt(x) 9 integer integer 8 real real sqr(x) x2 7 integer integer 6 real real abs(x) |x| 5 real real Ln(x) ln x 4 real real Exp(x) ex 3 real real Cos(x) cos x 2 real real Sin(x) sin x 1 Тип результату Тип операнду Запис в ПАСКАЛІ Математичний запис № Основні арифметичні функції.

Номер слайду 7

Приклади  запису арифметичних виразів. Вираз записується в один рядок. Наприклад, вираз: мовою Паскаль має бути записаний так: (a*x+b*sqr(x)+c*sqr(x)*x)/(14*x-x). 2. У виразах використовуються тільки круглі дужки, причому кіль­кість дужок, що відкриваються, повинна відповідати кількості дужок, що закриваються. З. Не можна записувати підряд два знаки арифметичних операцій. Обчислення виконуються зліва направо відповідно пріорітету операцій: операція обчислення функцій; операції піднесення до степення; операції множення, ділення, mod і div; операції додавання і віднімання.

Номер слайду 8

exp(1/3*ln(x+1)) sin((2*x)/(x+1))/cos(((2*x)/(x+1)) sqr(sin(x*x*x)) exp(x+1)*(a-x) (a+b)/(c*d) Запис мовою ПАСКАЛЬ Математичний запис Приклади  запису арифметичних виразів.

Зміст слайдів
Номер слайду 1

Константи – це величини, що не змінюють своїх значень в ході виконання програми. Змінні – об’єкти, що можуть приймати різні значення. Скалярні величини являють собою прості значення. Тобто, скалярний об’єкт може приймати в будь-який момент виконання програми лише одне якесь значення. Структуровані величини складаються з декількох значень, тобто, одній величині відповідає деякий набір значень одразу. Стандартні величини реалізовані в трансляторі мови ПАСКАЛЬ, тому їх можна використовувати без додаткового оголошення. Крім того, користувач може оголошувати і використовувати власні величини, які називаються даними користувача. Типи даних. Дані  в програмуванні являють собою величини, які опрацьовуються програмою. Вони поділяються на :   константи та змінні;   скалярні та структуровані;   стандартні та дані користувача. Тип даних визначає множину значень, що може приймати змінна.

Номер слайду 2

У ТУРБО ПАСКАЛЬ існує п’ять вбудованих цілочисельних типів: Shortint (коротке ціле), Integer (ціле), Longint (довге ціле), Byte (довжиною в байт) і Word (довжиною в слово). Кожний тип визначає певну підмножину цілих чисел, як це показано таблиці   16 бітів без знака 0 .. 65535 Word 8 бітів без знака 0 .. 255 Byte 32 біта зі знаком -2147483648 .. 2147483647 Longint 16 бітів із знаком -32768 .. 32767 Integer 8 бітів із знаком -128 .. 127 Shortint Формат Діапазон Тип Вбудовані цілочисельні типи Типи даних. В ПАСКАЛІ є чотири скалярних стандартних типів даних : integer (тип цілих чисел), real (тип дійсних чисел), char (літерний тип) та boolean (логічний тип).

Номер слайду 3

19 - 20 19 - 20 15 - 16 7 - 8 11 - 12 Кількість цифр 8 байт -2E+63+1 .. 2E+63-1 Comp 10 байт 1,9E-4951 .. 1,1E+4932 Extended 8 байт 5,0E-324 .. 1,7E+308 Double 4 байти 1,5E-45 ..3,4E+38 Single 6 байт 2,9E-39 .. 1,7E+38 Real Формат Діапазон Тип У ТУРБО ПАСКАЛЬ існує п’ять видів дійсних типів: Real, Single, Double, Extended і Comp. Вбудовані дійсні типи Символьний тип 1 байт Формат Char Тип Рядковий тип 256 байт Формат String Тип True, False Діапазон 1 байт Формат Boolean Тип Типи даних. Логічний тип

Номер слайду 4

Типи даних. Приклади: 1) 0; 12; 6; -146 - цілі; 2) 1.2; -0.4; 5.13 - дійсні з фіксованою крапкою; 3) 10.43Е-02; 1е20 - дійсні з плаваючою крапкою.  Записи останнього прикладу відповідають науковій формі запису чисел. Літера Е (чи е) означає "помножити на 10 в степені". Тому число 1е20 читається так: "одиниця, помножена на 10 в степені 20".

Зміст слайдів
Номер слайду 1

Структура програми Програма мовою Паскаль складається з заголовка, опису даних та тіла програми, що являє собою блок команд обробки даних, обмежений словами BEGIN (початок) та END (кінець). Закінчується програма крапкою.  Правила мови Паскаль передбачають єдину для всіх програм форму основної структури: PROGRAM ім'я; Var опис даних; BEGIN   оператор; { тіло програми }   ……………   оператор; END.

Номер слайду 2

Структура програм Приклад програми, що обчислює площу круга та довжину кола:   Program circl; {заголовок}   const pi=3.141593; {константа}   var r,len,s : real; {змінні} BEGIN   readln (r); {ввести радіус}   len:=2 * pi * r; {обчислити довжину кола}   s:=pi * r * r; {обчислити площу}   writeln ('Довжина=', len ,' площа=' ,s) {вивести результати} END.  У фігурних дужках записуються коментарі (пояснення до програми), які транслятором мови ігноруються. Заголовок програми і кожен опис повинні закінчуватися крапкою з комою.

Номер слайду 3

Правила написання Pascal-програм 1.  Основний текст будь-якої програми починається службовим словом begin і закінчується словом end, після чого слідує крапка. Без крапки програма вважається не закінченою. І навпаки, якщо в програмі знаходиться крапка, то всі команди, що слідують за нею ігноруються (оскільки програма завершена). 2.  В кінці кожної команди ставиться крапка з комою (“;”) - символ, що розділяє команди між собою. 3.  Після команди, яка знаходиться перед end, крапку з комою (“;”) бажано не встановлювати, оскільки буде вважатись, що перед end є ще один порожній оператор. 4.  Команди в Pascal можна записувати в один рядок, хоча для полегшення читабельності програми бажано кожну команду вказувати з нового рядка. 5.  Якщо користувач бажає помістити в текст програми коментарі, то їх необхідно вказувати у фігурних дужках (замість фігурних дужок можна вказувати альтернативний набір символів   - “(*     ,,,    *)” ). 6.  При вказанні в програмі виразів, що містять будь-які дужки потрібно пам’ятати, що кількість закритих та відкритих дужок повинна бути однаковою. 7.  Якщо потрібно використати декілька операторів у якості одного складеного оператора, то їх слід взяти в операторні дужки, що починаються словом begin і закінчуються end. При цьому кількість слів begin у програмі повинна співпадати з кількістю слів end. 8.  Усі змінні, константи та типи даних, що використовуються в програмі, повинні бути описані в розділах const, type та var.

Номер слайду 4

Середовище програмування Turbo Pascal Написавши програму мовою Паскаль на папері, ми повинні мати можливість ввести цю програму до пам'яті комп'ютера, причому не тільки в текстовому вигляді, а й у відкомпільованому, (машинному) вигляді. Для цього створено інтерактивне інтегроване середовище, яке об'єднує в собі функції: текстового редактора - для набирання та редагування текстів програм; компілятора - для трансляції текстової програми в машинний код; налагоджувача - для покрокового виконання програм і виявлення прихованих алгоритмічних помилок в програмі. Інтерактивним середовище називається тому, що воно знаходиться в режимі постійного діалогу з програмістом, а інтегрованим, тому що об'єднує в собі всі перелічені функції.

Номер слайду 5

Середовище програмування Turbo Pascal

Номер слайду 6

Основні пункти меню Turbo Pascal File - меню для роботи з файлами (створення, відкриття, збереження тощо); Edit - редагування програми в активному вікні з використанням буферу обміну; Search - пошук у активному вікні необхідного елемента. Window – робота з вікнами Run - запуск програми на виконання

Номер слайду 7

Пункт меню Window дозволяє швидко працювати з вікнами. Його підпунктами являються наступні: Основні пункти меню Turbo Pascal Tile - розміщення всіх відкритих вікон на екрані мозаїкою рівномірно на весь екран; Cascade - розташування всіх відкритих вікон на екрані каскадом (видимими являються тільки заготовочні рядки); Close all - закриття всіх відкритих вікон (якщо у вікні знаходиться не збережена програма, система про це повідомить і запропонує вам її зберегти); Size/Move - зміна розмірів та положення активного вікна (в рядку повідомлень в цьому випадку зазначені клавіші, що дозволяють виконати ці дії); Zoom - розгортання активного вікна на весь екран; Next - активізація наступного вікна; Previous - активізація попереднього вікна; Close - закриття активного вікна; List - виведення на екран списку всіх відкритих вікон.

Номер слайду 8

Для роботи з файлами (пункт меню File) система пропонує наступні пункти меню: Основні пункти меню Turbo Pascal New - відкриття нового вікна для створення програми; Open - відкриття файлу, що був збережений раніше, для подальшого редагування та відлагодження; Save - збереження вмісту активного вікна під "старим" іменем (тим іменем, з яким цей файл вже був збережений); якщо файл зберігається вперше, система автоматично пропонує режим Save as; Save as - збереження вмісту активного вікна під новим іменем; Save all - збереження вмісту всіх відкритих вікон під визначеними іменами (якщо серед них будуть такі, вміст яких ще не зберігався, система запропонує надати йому ім'я); Change dir - зміна поточного каталогу; Exit - завершення роботи інтегрованого середовища.

Номер слайду 9

Для роботи з буфером обміну в середовищі Turbo Pascal існують стандартні засоби (пункт меню Edit) : Основні пункти меню Turbo Pascal Cut (Copy) - вирізати (скопіювати) виділений фрагмент в буфер обміну; Paste - вставити фрагмент з буферу обміну; Show Clipboard - передивитися вміст буферу обміну в окремому вікні; Clear - знищити виділений фрагмент.

Номер слайду 10

Пункт Run міститьт наступні можливості: Основні пункти меню Turbo Pascal Run-запуск програми на виконання. Якщо програма не була відкомпілювати, то перед запуском проводиться її компіляція. При запуску програма виконується або до кінця, або до точки переривання (якщо така була встановлена​​). Stepover-виконання програми по операторам (без трасування процедур і функцій). Traceinto-виконання програми по рядках з заходом у процедури і функції. Gotocursor-виконання програми до рядка, на якій знаходиться курсор. Programreset-припинити виконання програми (наприклад, при налагодженні). Parameters-завдання параметрів програмі (аналогічно тому, як вони задаються в підпрограмі).

Номер слайду 11

Основні команди і гарячі клавіші Ctrl+F9 – завантаження (виконання, запуск) програми Alt+F5 - проглядання призначеного для користувача екрану F2 - збереження програми F3 - відкриття збереженої програми Alt+F3 - закриття активного вікна Alt+X - вихід з Турбо Паскаль F1 - контекстна допомога Ctrl+F1 - довідка про оператора, на якому встановлений курсор Alt+Backspace - відміна останньої зміни Ctrl+Y - видалення рядка Shift+стрілки - виділення блоку тексту Ctrl+Insert - копіювання виділеного блоку в буфер Shift+Insert - вставка з буфера

Зміст слайдів
Номер слайду 1

Номер слайду 2

if <умова> then <вказівка1> else<вказівка2>; Іf <умова> then <вказівка>; Дія оператора: Якщо умова справджується, то виконується вказівка 1, якщо ні – то вказівка 2. Дія оператора: Якщо умова істинна, то виконується вказівка, якщо ні, то вказівка не виконується. Умова (розгалуження) – це вид управляючої структури, що передбачає можливість вибору з декількох варіантів, для кожного з яких в залежності від певної умови виконується своя послідовність операторів. Логічний вираз — це засіб записування умов для відшукання потрібних даних. Логічний вираз може приймати значення true (істинність) або false (хибність). Логічні вирази бувають прості та складені. Простий — це два арифметичні вирази, з’єднані символом відношення, а складений — це прості логічні вирази, з’єднані назвами логічних операцій: not, and i or. Опис та використання вказівки розгалуження Вказівка розгалуження в мові програмування Паскаль може записуватися в повній або в скороченій формах.

Номер слайду 3

Службові слова, які використовуються в умовній вказівці, мають зміст if — якщо, then — то, else — інакше. Умова — це вираз булевого типу. Умова може бути простою або складеною. Наприклад. 1. Проста умова: а<5, с>=а, х=0, а5) and (a<10 ), (а=2) or (b=3) Складена умова записується з допомогою логічних операцій and — і, or — чи (або), not — не. При записі умови можна використовувати всі можливі операції відношення. Результатом виразу умови завжди буде величина булевого типу.

Номер слайду 4

Програма обчислення модуля числа а (неповне розгалуження) Program Modul; Var a: real ; begin WriteLn(' vvedit a'); ReadLn(a); if a<0 then a:=-a WriteLn( a:0:3); end. Програма обчислення значень складеної функції (повне розгалуження) Program Umovny; Var x,y: real ; begin WriteLn(' vvedit x'); ReadLn(x); if x<3 then y:=x*x else y:=sqrt(x); WriteLn('y=', y:8:3); end.

Номер слайду 5

Програма обчислення коренів квадратного рівняння Program roots(input, output); var a, b, c: real; x1, x2: real; BEGIN readln(a,b,c); d:=b*b-4*a*c; if d>0 then begin x1:=(-b+sqrt(d))/(2*a); x2:=(-b-sqrt(d))/(2*a) end else if d=0 then x1:=-b/(2*a) END. Програма обчислення значень функції Program Prim5;  Var a, x: real;  BEGIN  writeln ('введіть а, х '); readln (a, x);  if (a> 0) and (x> 0) and (x <= 0.5) then  writeln ('z =', a * ​​sqr (x) / sin (x)); if (a> 0) and (x> = 0.5) and (x <3) then writeln ('z =', exp (x)) ; if (a <= 0) or (x <= 0) then  writeln ('z =', sqrt (a) * sqrt (x) / sin (x)) else  writeln ('z = 0');readln; END. 

Номер слайду 6

У випадку, коли необхідно використовувати декілька вказівок розгалуження, вкладених одна в одну, то краще замінити їх вказівкою вибору. Case <вираз> of значення1:<вказівка1>; значення2:<вказівка2>; значенняМ:<вказівкаM> end; Дія оператора: Якщо значення виразу збігається зі значенням з деякого списку, то виконується відповідний оператор, а інші оператори не виконуються Якщо ні одне з значень не співпадає зі значенням виразу, то виконується вказівка, яка знаходиться після вказівки варіанту, тобто після службового слова end. Вираз, який записується між службовим словом case і of, називається селектором. Селектор повинен належати до одного з цілого, булевого, символьного типів або типу користувача. Дійсні і рядкові типи в селекторах використовувати не можна.

Номер слайду 7

Приклад. Скласти програму, яка визначає пору року за порядковим номером місяця. Program PORA; Var MONTH: integer; begin Write('Введіть порядковий номер місяця (від 1 до 12): '); readln(MONTH); case MONTH of 3,4,5:writeln('Becнa'); 6,7,8 : writeln ('Літо'); 9,10,11:writeln('Ociнь'); 12,1,2:writeln('Зимa') end; end. Довільна вказівка в програмі може бути помічена міткою. Мітка вказівки записується перед нею і відділяється від неї двокрапкою. Мітка — це довільне ціле число в інтервалі від 0 до 9999 або довільний ідентифікатор (тобто ім'я мітки записується згідно з правилами запису ідентифікаторів). Однією міткою може бути помічена тільки одна вказівка. Ідентифікатор мітки не повинен співпадати з ідентифікатором змінної або константи. Мітки варіантів — константи, типи яких повинні співпадати з типом селектора. Всі мітки варіантів повинні бути різними. Якщо одній вказівці у вказівці варіанту відповідає декілька міток, то вони перераховуються через кому.

Номер слайду 8

9. Три точки на площині задано координатами A(X1,Y1), B(X2,Y2), C(X3,Y3). Чи належить початок координат трикутнику ABC. 10. Задано розміри прямокутних дверей А, B та розміри шафи, що має форму прямокутного паралелепіпеда X,Y,Z. Перевірити, чи можна шафу пронести через двері. а) Проносити шафу через двері дозволяється лише так, щоб кожне з її ребер було паралельно або перпендикулярно кожній з сторін дверей. б) Проносити шафу крізь двері можна під кутом. 11. На площині в прямокутній системі координат задано три точки Вважаючи, що вони є вершинами деякого прямокутника, знайти координати четвертої вершини. 12. На координатній площині задано два прямокутника, сторони яких паралельні координатним вісям. (X1,Y1), (X2,Y2) – координати діагоналей першого, а (X3,Y3), (X4,Y4) – другого прямокутника. У випадку, якщо прямокутники мають спільну частину, визначити її площу або вивести повідомлення про те, що прямокутники не перетинаються. 1. Скласти програму знаходження більшого серед: а) двох чисел; б) трьох чисел; в) чотирьох чисел. 2. На площині задано трикутник координатами своїх вершин. Знайти найменшу сторону трикутника. 3. Точку А задано на площині своїми координатами (X,Y). Знайти номер координатної чверті, якій належить дана точка. 4. Дві точки на площині А (X1 ,Y1 ) і В (X2 ,Y2 ) задано своїми координатами. Перевірити, чи лежать ці точки в одній координатній чверті. 5. Дано дійсні додатні числа X, Y, Z. Чи існує трикутник з довжинами сторін X, Y, Z. 6. Три точки на площині задано своїми координатами (X1,Y1), (X2,Y2), (X3,Y3). Знайти радіус найменшого кола (з центром в початку координат), якому належать данні точки. 7. Дано коло радіусом R і прямокутник зі сторонами A, B. Визначити, чи поміститься коло в прямокутнику. 8. Дано натуральне число N (N < 100), що визначає вік людини в роках. Після цього числа потрібно дописати одне з слів: "рік", "роки" або "років". Наприклад: 1 рік, 23 роки, 97 років.

Зміст слайдів
Номер слайду 1

Номер слайду 2

Базові алгоритмічні конструкції (управляючі структури) — це способи управління процесами обробки даних. Комбінуючи керуючі структури, можна складати програми для розв'язання різноманітних завдань. Виділяють три базові алгоритмічні конструкції: лінійні алгоритми (послідовне виконання); умова (розгалуження); цикли (повторення);

Номер слайду 3

Надати значення змінним можна за допомогою команди присвоєння. Такий спосіб найпростіший, однак не найкращий, оскільки програми від цього стають не універсальними (немасовими). Ось чому в усіх алгоритмічних мовах використовують принцип уведення даних у пам’ять за допомогою команди введення даних. Команда введення даних має вигляд: read (<список змінних>) Дія команди. Виконування програми призупиняється для введення значень змінних (екран буде чорним в MS DOS чи відкриється екран для введення даних у Windows). Значення відповідних змінних зі списку набирають на клавіатурі через пропуск, якщо їх декілька. Після цього натискують на клавішу вводу (ENTER) – змінні отримають значення, і програма виконуватиметься далі. Використовують також різновид команди введення readln (<список змінних>) Це команда є особливо корисною під час роботи з текстовими файлами. Приклад 1. Нехай трьом змінним треба надати значення 2, 5 і 1. Для цього запишемо команду read (a, b, c). Під час виконання команди настане пауза – середовище перейде у режим введення даних. Треба набрати числа на клавіатурі через пропуск так 2_5_1 і натиснути клавішу вводу (ENTER). Змінна а набуває значення 2, змінна b – значення 5, а змінна с – значення 1. Клавішу вводу можна також натискати після кожного числа. Приклад 2. Програма про відстань між містами матиме вигляд: Program Distance; Var t1, v1, t2, v2, ab, bc, ac: integer; Begin read (t1, t2, v1, v2); ab:=v1*t1; bc:=v2*t2; ac:=ab+bc; writeln (ab:6, bc:6, ac:6); readln end.

Номер слайду 4

Команда виведення призначена для виведення значень на екран. Вона має такий загальний вигляд: write <список> Список може складатися зі сталих, змінних, виразів, текстових даних, записаних у лапках. Дія команди. Вирази обчислюються і їхні значення виводяться на екран без пропусків. Це може призвести до злиття даних на екрані. Наступна команда write виводитиме дані у тому ж рядку. Щоб виводити дані у наступному рядку, застосовують команду : writeln <список> Приклад 3. Нехай змінні а, b, c отримали такі значення: 2, 5, 1. Команда write (a, 9, b+c) виведе у лівому кутку екрана таке: 296. 3. Формати виведення. Під час виведення даних треба домагатися якнайкращого розташування чисел на екрані. Це роблять за допомогою форматів, а також текстів, які пояснюють, що саме виводиться. Формат: n надає на екрані n позицій для цілого числа, а також для тексту. Формат :n:k надає n позицій для дійсного числа з к для цифр після десяткової крапки. Якщо позицій забагато, то перед цілою частиною числа будуть пропуски. Якщо замало позицій для дробової частини, то відбувається заокруглення числа. Якщо замало позицій для цілої частини, то компілятор додасть позиції. Знак “-” і десяткова крапка входять до кількості позицій n. Приклад 4. Розглянемо команди виведення чисел і їхній вигляд на екрані. Символ “-” означає один пропуск. Команди Вигляд чисел на екрані write (5,15,25,-35) 51525-35 write (5:2, 15:3, 25:4, -35:4) 5_15_25_-35 write (6+2:2, +50,4) _8_50 write (2.5:7:2) _ _ _ _ 2.5 write (-2.5:6:2,3.548:6:2) -2,50 _3.55

Номер слайду 5

Коментарі використовують для пояснення роботи програми, команд чи дій користувача. Їх записують у фігурних дужках. Вони не впливають на хід виконання програми і в навчальних програмах набирати їх на клавіатурі не потрібно. Діалоговий (інша назва - інтерактивний) алгоритм імітує діалог між користувачем і комп’ютером. Відповідна програма складається в основному з команд writeln та readln. Діалог можна використовувати під час введення даних з метою отримати на екрані підказку про те, що саме треба ввести, наприклад, так: Write (’Введіть значення радіуса R:’); readln (R); Повідомлення “Введіть значення радіуса R:” виводить комп’ютер, а число 5 чи інше користувач набирає сам і натискає на клавішу вводу. Задача. Скласти програму діалогу користувача з комп’ютером за таким сценарієм: комп’ютер запитує користувача, як того звати, користувач вводить своє ім’я, комп’ютер вітається і пропонує з ним поспілкуватися на тему улюбленого предмету. Program Dialog; uses crt; var name, g, c: string; n: integer; begin clrscr; writeln (‘як тебе звати ?’); readln (name); {треба буде ввести текст}; writeln (‘Привіт, name’); writeln (‘Поспілкуйся зі мною!’); readln (g); {відповідай: так} writeln (‘Скільки занять сьогодні?’); readln (n); {треба буде ввести число}; writeln (‘Який твій улюблений предмет?’); readln (c); {треба буде ввести текст}; writeln (‘Добре , ’, C, ’ – важливий предмет); writeln (‘Bye - бувай’). End.

Номер слайду 6

Лінійна структура передбачає, що тіло програми являє собою послідовність операторів, що виконуються підряд один за одним. Лінійні алгоритми (інша назва – прості) – це алгоритми, що складаються з команд присвоєння, введення-виведення даних та викликів процедур.

Номер слайду 7

Приклад 1. Обчислити суму двох цілих (дійсних) чисел. Програма (для дійсних чисел) Program sum_real; Var a, b, s : real; Begin Readln (a,b): S := a+b; Writeln (S:3:2); End. Програма (для цілих чисел) Program sum_int; Var a, b, s : integer; Begin Readln (a,b): S := a+b; Writeln (S); End. Блок-схема

Номер слайду 8

Приклад 2. Обчислити площу трикутника, якщо відомо координати його вершин. Program geron; var xa, ya, xb, yb, xc, yc : integer; a, b, c, S, p : real; begin write('Координата Х точки А: ');readln(xa); write('Координата Y точки А: ');readln(ya); write('Координата Х точки B: ');readln(xb); write('Координата Y точки B: ');readln(yb); write('Координата Х точки C: ');readln(xc); write('Координата Y точки C: ');readln(yc); a := sqrt(sqr(xc-xb)+sqr(yc-yb)); { Довжина сторони а } b := sqrt(sqr(xc-xa)+sqr(yc-ya)); { Довжина сторони b } c := sqrt(sqr(xb-xa)+sqr(yb-ya)); { Довжина сторони с } p := (a + b + c)/2; { Пiвпериметр } S := sqrt(p*(p-a)*(p-b)*(p-c)); { Формула Герона } write(' S = ',S:4:2); readln; end. Розв’язання : Досить відома в математиці задача, розв’язання якої базується на знанні формули Герона та знаходження довжини відрізка на підставі координат його кінців у декартовій системі координат. Для спрощення будемо вважати, що координати вершин трикутника завжди є цілими числами. Всі інші дії прокоментуємо в коментарях до програми, які поміщено у фігурних дужках. Коментарі не впливають на хід виконання програми.

Номер слайду 9

Приклад 3. Округлити дробове число з заданою точністю. Program demoround; var a,b,c : real; n : byte; begin write('Введiть число: '); readln(a); write('Скiльки знакiв пiсля коми залишити: '); readln(n); b := a*exp(ln(10)*n); { множимо на 10n } b := round(b); { округлюємо до цілих } c := b*(exp(ln(10)*(-n))); { ділимо на 10n } writeln('Шукана точнiсть ',c:2:n); readln; end. Ідея округлення полягає в слідуючому: вводимо число; визначаємо, скільки знаків після коми нам потрібно мати; множимо дане число на 10 в степені «кількість значущих цифр після коми»; до отриманого числа застосовуємо функцію round; отримане число ділимо на 10 в степені «кількість значущих цифр після коми». У мові Паскаль немає операції піднесення до степеня (крім піднесення до квадрату), проте є дві функції, які можуть допомогти: exp(x) i ln(x), отже маємо програму:

Номер слайду 10

Петрик запропонував своє тлумачення «щасливого» квитка. Для нього він «щасливий» тільки тоді, коли сума його цифр ділиться на 5. Перевірити, чи куплений Петриком квиток є щасливим. Визначити площу прямокутника, якщо відомо, що одна сторона більша за другу на х см, а периметр дорівнює р см. Вказівка: після спрощення формула для визначення площі прийме вигляд S=(p2-x2)/16. Знайти суму перших n членів арифметичної прогресії {An}, якщо відомі А1 і D. Хлопчик, що торгує на базарі газетами, заробляє а грн. від продажу перших 100 газет. На кожній з інших проданих газет він заробляє по х коп. Напишіть програму, яка визначає заробіток за день хлопчика, якщо він продасть у газет (у>100). На протязі місяця продавець доставляв додому 4 л молока в день. В березні молоко коштувало х коп. за літр. З першого квітня ціна підвищилась до (х+а) коп. за літр. Скільки потрібно заплатити продавцю за все доставлене молоко в кінці квітня? Кількість молока, що купується щоденно, залишилась тією ж. 6.Обчисліть заробітну плату працівника при погодинній системі оплати, якщо відомі тарифна ставка за 1 годину і кількість відпрацьованих годин за місяць. 7.Складіть програму знаходження площі трикутника за його основою та висотою. 8. Складіть програму знаходження площі ромба за його стороною і гострим кутом (кут попередньо переведіть в радіани). S=a2Sinf, де a – сторона, f – кут. 9.В прямокутному трикутнику відомі катет і гіпотенуза. Знайдіть інший катет. 10.В арифметичній прогресії відомі 1-й член послідовності і різниця. Знайдіть 30-й член послідовності і суму перших 40 членів. 11.Знайдіть координати кінців відрізку, заданого координатами його кінців. 12.За двома сторонами і кутом між ними в трикутнику АВС знайдіть два інших кути і третю сторону. , де а, b – відомі сторони, а f – кут між ними. 13.Складіть програму обчислення рівнодійної сил F, що діють на тіло масою m, яке рухається з прискоренням а. F = ma.

Номер слайду 11

if <умова> then <вказівка1> else<вказівка2>; Іf <умова> then <вказівка>; Дія оператора: Якщо умова справджується, то виконується вказівка 1, якщо ні – то вказівка 2. Дія оператора: Якщо умова істинна, то виконується вказівка, якщо ні, то вказівка не виконується. Умова (розгалуження) – це вид управляючої структури, що передбачає можливість вибору з декількох варіантів, для кожного з яких в залежності від певної умови виконується своя послідовність операторів. Логічний вираз — це засіб записування умов для відшукання потрібних даних. Логічний вираз може приймати значення true (істинність) або false (хибність). Логічні вирази бувають прості та складені. Простий — це два арифметичні вирази, з’єднані символом відношення, а складений — це прості логічні вирази, з’єднані назвами логічних операцій: not, and i or. Опис та використання вказівки розгалуження Вказівка розгалуження в мові програмування Паскаль може записуватися в повній або в скороченій формах.

Номер слайду 12

Службові слова, які використовуються в умовній вказівці, мають зміст if — якщо, then — то, else — інакше. Умова — це вираз булевого типу. Умова може бути простою або складеною. Наприклад. 1. Проста умова: а<5, с>=а, х=0, а5) and (a<10 ), (а=2) or (b=3) Складена умова записується з допомогою логічних операцій and — і, or — чи (або), not — не. При записі умови можна використовувати всі можливі операції відношення. Результатом виразу умови завжди буде величина булевого типу.

Номер слайду 13

Програма обчислення модуля числа а (неповне розгалуження) Program Modul; Var a: real ; begin WriteLn(' vvedit a'); ReadLn(a); if a<0 then a:=-a WriteLn( a:0:3); end. Програма обчислення значень складеної функції (повне розгалуження) Program Umovny; Var x,y: real ; begin WriteLn(' vvedit x'); ReadLn(x); if x<3 then y:=x*x else y:=sqrt(x); WriteLn('y=', y:8:3); end.

Номер слайду 14

Програма обчислення коренів квадратного рівняння Program roots(input, output); var a, b, c: real; x1, x2: real; BEGIN readln(a,b,c); d:=b*b-4*a*c; if d>0 then begin x1:=(-b+sqrt(d))/(2*a); x2:=(-b-sqrt(d))/(2*a) end else if d=0 then x1:=-b/(2*a) END. Програма обчислення значень функції Program Prim5;  Var a, x: real;  BEGIN  writeln ('введіть а, х '); readln (a, x);  if (a> 0) and (x> 0) and (x <= 0.5) then  writeln ('z =', a * ​​sqr (x) / sin (x)); if (a> 0) and (x> = 0.5) and (x <3) then writeln ('z =', exp (x)) ; if (a <= 0) or (x <= 0) then  writeln ('z =', sqrt (a) * sqrt (x) / sin (x)) else  writeln ('z = 0');readln; END. 

Номер слайду 15

У випадку, коли необхідно використовувати декілька вказівок розгалуження, вкладених одна в одну, то краще замінити їх вказівкою вибору. Case <вираз> of значення1:<вказівка1>; значення2:<вказівка2>; значенняМ:<вказівкаM> end; Дія оператора: Якщо значення виразу збігається зі значенням з деякого списку, то виконується відповідний оператор, а інші оператори не виконуються Якщо ні одне з значень не співпадає зі значенням виразу, то виконується вказівка, яка знаходиться після вказівки варіанту, тобто після службового слова end. Вираз, який записується між службовим словом case і of, називається селектором. Селектор повинен належати до одного з цілого, булевого, символьного типів або типу користувача. Дійсні і рядкові типи в селекторах використовувати не можна.

Номер слайду 16

Приклад. Скласти програму, яка визначає пору року за порядковим номером місяця. Program PORA; Var MONTH: integer; begin Write('Введіть порядковий номер місяця (від 1 до 12): '); readln(MONTH); case MONTH of 3,4,5:writeln('Becнa'); 6,7,8 : writeln ('Літо'); 9,10,11:writeln('Ociнь'); 12,1,2:writeln('Зимa') end; end. Довільна вказівка в програмі може бути помічена міткою. Мітка вказівки записується перед нею і відділяється від неї двокрапкою. Мітка — це довільне ціле число в інтервалі від 0 до 9999 або довільний ідентифікатор (тобто ім'я мітки записується згідно з правилами запису ідентифікаторів). Однією міткою може бути помічена тільки одна вказівка. Ідентифікатор мітки не повинен співпадати з ідентифікатором змінної або константи. Мітки варіантів — константи, типи яких повинні співпадати з типом селектора. Всі мітки варіантів повинні бути різними. Якщо одній вказівці у вказівці варіанту відповідає декілька міток, то вони перераховуються через кому.

Номер слайду 17

9. Три точки на площині задано координатами A(X1,Y1), B(X2,Y2), C(X3,Y3). Чи належить початок координат трикутнику ABC. 10. Задано розміри прямокутних дверей А, B та розміри шафи, що має форму прямокутного паралелепіпеда X,Y,Z. Перевірити, чи можна шафу пронести через двері. а) Проносити шафу через двері дозволяється лише так, щоб кожне з її ребер було паралельно або перпендикулярно кожній з сторін дверей. б) Проносити шафу крізь двері можна під кутом. 11. На площині в прямокутній системі координат задано три точки Вважаючи, що вони є вершинами деякого прямокутника, знайти координати четвертої вершини. 12. На координатній площині задано два прямокутника, сторони яких паралельні координатним вісям. (X1,Y1), (X2,Y2) – координати діагоналей першого, а (X3,Y3), (X4,Y4) – другого прямокутника. У випадку, якщо прямокутники мають спільну частину, визначити її площу або вивести повідомлення про те, що прямокутники не перетинаються. 1. Скласти програму знаходження більшого серед: а) двох чисел; б) трьох чисел; в) чотирьох чисел. 2. На площині задано трикутник координатами своїх вершин. Знайти найменшу сторону трикутника. 3. Точку А задано на площині своїми координатами (X,Y). Знайти номер координатної чверті, якій належить дана точка. 4. Дві точки на площині А (X1 ,Y1 ) і В (X2 ,Y2 ) задано своїми координатами. Перевірити, чи лежать ці точки в одній координатній чверті. 5. Дано дійсні додатні числа X, Y, Z. Чи існує трикутник з довжинами сторін X, Y, Z. 6. Три точки на площині задано своїми координатами (X1,Y1), (X2,Y2), (X3,Y3). Знайти радіус найменшого кола (з центром в початку координат), якому належать данні точки. 7. Дано коло радіусом R і прямокутник зі сторонами A, B. Визначити, чи поміститься коло в прямокутнику. 8. Дано натуральне число N (N < 100), що визначає вік людини в роках. Після цього числа потрібно дописати одне з слів: "рік", "роки" або "років". Наприклад: 1 рік, 23 роки, 97 років.

Номер слайду 18

Цикл – це вид управляючої структури, що дозволяє кілька разів повторити задану кількість операторів. Цикли - основний засіб у програмуванні, що дозволяє коротко записувати алгоритм, який здійснює велику кількість дій Для реалізації циклічних алгоритмів у мові Паскаль використовуються оператори повторення (цикли): оператор циклу з параметром (For); оператор циклу з передумовою (While); оператор циклу з післяумовою (Repeat).

Номер слайду 19

Оператор циклу з параметром передбачає повторне виконання деякого оператора з одночасною зміною значення, що присвоюється керуючою змінною (параметру цього циклу). Зі значенням 1 кроку зміни параметра: For < параметр > := <вираз1 > to <вираз2 > do <оператор > Дія оператора: Параметрові циклу присвоюється значення виразу 1. Якщо це значення менше-рівне, ніж значення виразу 2, то виконується оператор. Після виконання оператора значення параметра автоматично збільшується на 1 і знову порівнюється зі значенням виразу 2 і т.д. Коли значення параметра стане більшим, ніж значення виразу 2, то виконується наступний після циклу оператор. Зі значенням -1 кроку зміни параметра: For < параметр >:=< вираз1 > downto <вираз2 > do оператор> Дія оператора: Ця команда діє як попередня, але крок зміни параметра є –1. Оператор - тіло циклу. Параметр циклу, вираз1 і вираз2 повинні бути одного й того ж скалярного типу (крім дійсного). Вираз1 і вираз2 обчислюється лише один раз - при вході в цикл, і, отже, повинні бути визначені до входу в цикл і не можуть бути змінені в тілі циклу. Якщо вираз1 і вираз2 розділяє службове слово to, то після виконання оператора (тіла циклу) параметр циклу v приймає значення Succ(v), якщо ж дільником виразу1 і виразу2 служить слово downto, то параметр циклу v після виконання тіла циклу приймає значення Pred(v).

Номер слайду 20

Приклад 1 Піднести будь-яке дійсне число а до будь-якого цілого степення n. Розв'язок: program Stepin; var a,p:real; i,n:integer; begin write('введіть a - основу степеня, а='); readln(a); write('введіть ціле n - показник степеня, n='); readln(n); p:=1; for i:=1 to n do p := p * a; writeln('p=',p) end. Блок-схема задачі

Номер слайду 21

Приклад 2 Обчислити суму чисел від 100 до 1. Розв'язок: program Suma; var S,m:integer; begin S: =0; for m:=100 downto 1 do S:=S+m; writeln('p=',p) end. Блок-схема задачі

Номер слайду 22

а) звичайний порядок: program latsimvol; var S:char; begin S:='A'; while S<='Z' do begin writeln(S); S:=succ(S); end end. б) у зворотному порядку: program latsimvol; var S:char; begin S:='Z'; while S>='A' do begin writeln(S); S:=pred(S); end end. У випадку, коли кількість повторень заздалегідь невідома, а задана деяка умова закінчення (або продовження) циклу, у мові Pascal використовують оператор циклу з передумовою While WHILE <умова> DO begin <вказівка 1>; <вказівка 2> end; Дія оператора: Оператор (тіло циклу) виконується до тих пір, поки умова істинна. Якщо при першій перевірці умова виявилась хибною, оператор не виконується. Зазначений оператор виконується нуль, один або декілька разів, поки умова справджується. Тіло циклу WHILE виконується до тих пір, поки умова приймає значення True. Дії, що містяться в тілі циклу, будуть виконані у крайньому випадку один раз. Таким чином, не виконання умови є умовою закінчення циклу. Приклад 1. Роздрукувати символи латинського алфавіту.

Номер слайду 23

Приклад 1: обчислення суми перших 100 натуральних чисел методом послідовного додавання. m:=1; S: =0; WHILE m<=100 DO begin S:=S+m; m:=m+1; end; Приклад 2. Вивести таблицю чисел від 20 до 30, їхні квадрати та куби за допомогою команди можна while так: i := 20; while i <= 30 do begin writeln(i:4, i*i:6, i*i:8); i :=i+1 end; Приклад 3. Визначити дійсне додатне число а, для якого виконується співвідношення а/2=0 в комп’ютерній арифметиці дійсних чисел. Таке число характеризує нижню додатну межу типу даних real. Program MinRealNumber; uses Crt; var a : real; begin clrscr; a := 1; while a/2>0 do  a := a/2; writeln(’a =’, a); readln end.

Номер слайду 24

Приклад 4. Визначити число, яке отримується записуванням у зворотному порядку цифр заданого натурального числа. Дане число у записі містить не більше 6 цифр. Розв’язання: Ідея розв'язання повністю базується на понятті розрядів числа, яке вивчається ще в початкових класах. Нам потрібно на кожному етапі виділяти з даного числа по одній цифрі, причому з кінця, а у самому числі відкидати останній розряд. З отриманих цифр потрібно формувати нове число на кожному кроці збільшуючи всі раніше отримані розряди на одиницю, тобто, інакше кажучи, збільшуючи отримане число в 10 разів. Словесно алгоритм розв'язання можна описати так: доки дане число більше нуля ми шукаємо остачу від ділення числа на 10, а самому числу присвоюємо цілу частину від ділення на 10. Шуканому числу S присвоюємо 10*S плюс отриману остачу. Перед початком виконання алгоритму S = 0. Все вище сказане повністю реалізує наступна програма: Program naooborot; var i, s, n : longint; begin write('Введiть натуральне число: '); readln(n); s := 0; while n > 0 do begin s := 10*s + n mod 10; n := n div 10; end; writeln('Число записане навпаки = ',s); readln; end.

Номер слайду 25

а) звичайний порядок: program latsimvol; var S:char; begin S:='A'; Repeat write(S); S:=succ(S); until S>'Z' end. б) у зворотному порядку: program latsimvol; var S:char; begin S:='Z'; Repeat write(S); S:=pred(S); until S<'A' end. Оператор циклу з післяумовою передбачає повторне виконання деякого оператора(ів) до тих пір, поки не виконається умова.. Він має вид: REPEAT <вказівка1 > <вказівка2 > *** UNTIL <умова>; Дія оператора: Спочатку виконуються зазначені оператори, а пізніше перевіряється умова. Якщо умова справджується (істинна), то виконання циклу завершується, якщо ні, то оператори виконуються ще раз, і так далі. Тіло циклу Repeat виконується до тих пір, поки умова приймає значення False. Дії, що містяться в тілі циклу, будуть виконані у крайньому випадку один раз. Таким чином, виконання умови є умовою закінчення циклу. Приклад 1. Роздрукувати символи латинського алфавіту.

Номер слайду 26

Приклад 2. Обчислення суми перших 100 натуральних чисел методом послідовного додавання. Program Suma; var m,S:integer; begin m:= 0; S: = 0; REPEAT m:=m +1; S:=S+m; UNTIL m >= 100; writeln(’S =’, S); end.

Номер слайду 27

Приклад 3. Обчислити значення функції 10Сos(2x) на проміжку від -2 до 2 з кроком 0.2. Розв’язання: Дана задача є класичною у програмуванні і називається задачею табулювання. У даному випадку можна використати один з циклів, що дають можливість працювати з дійсними числами. Такими числами у мові Паскаль є цикл з передумовою і цикл з післяумовою. Саме останній ми і використаємо. Програмна реалізація не становить труднощів, про що легко судити з приведеного тексту програми. Program tabulirovanie; var a, b, h, x, y : real; begin a := -2; b:= 2; h := 0.2; x := a; repeat y := 10*Cos(2*x); writeln('x = ',x:3:2,' y = ',y:3:2); x := x + h; until x > b + h; readln end.

Номер слайду 28

Приклад 1. Обчислити значення змінної Y=2K+N при всіх значеннях змінних N=1, 2, 3 і K=2, 4, 6, 8. Program priklad_1; var n, k, y:integer; begin for n:=1 to 3 do begin k:=2; while k<=8 do begin y:=2*k+n; writeln(n:3, k:3,y:3); k:=k+2; end; end; end. Часто буває так, що при повтореннях змінюється не одна величина, а дві (чи навіть більше). І при кожному значенні однієї величини інша величина «пробігає» усі свої значення. У деяких випадках важливо повторити підзадачу кілька разів усередині більш загальної задачі. Один зі способів написання такої програми - включити цикл у набір інструкцій, що повторюються всередині іншого циклу. Така структура, що складається з циклу в циклі, називається вкладеними циклами. Вкладення циклів використовується зокрема при розв'язуванні таких задач: задачі на перебір варіантів; табулювання функцій; обробка двовимірних масивів. Якщо в програмі використовуються вкладені цикли, то для підвищення наочності програмного коду прийнято кожний наступний рівень вкладання зміщувати відносно попереднього. Правило вкладення циклів: внутрішній цикл цілком укладається в тіло зовнішнього циклу.

Номер слайду 29

Текст програми: Program Priklad_2; var b, k, t:integer; begin for b:=0 to 10 do for k:=0 to 20 do for t:=0 to 200 do if (10b + 5k + 0.5t = 100)and (b + k + t =100) then writeln('биків - ', b, ' корів - ', k,‘телят - ',t); end. Приклад № 2. Старовинна задача.  Скільки можна купити биків, корів та телят, якщо вартість одного бика - 10 руб, однієї корови - 5 руб, а за одного теля платять 0,5 рубля. І якщо на 100 рублів потрібно купити 100 голів скоту. Розв'язування: Позначимо через b кількість биків; k - кількість корів; t - кількість телят. Після цього можна записати два рівняння: 10b + 5k + 0.5t = 100 і b + k + t = 100 На 100 рублів можна купити: не більше 10 биків, тобто 0<=b<=10; не більше 20 корів, тобто 0<=k<=20; не більше 200 телят, тобто 0<=t<=200.

Номер слайду 30

1. Натуральне число N (1<=N<=10000) вводиться з клавіатури. Підрахувати кількість дільників числа N. 2. В інтервалі [A, B] знайти число, що має найбільшу кількість дільників (10<=A,B<=10000). А та В вводяться з клавіатури. 3. Скласти програму розкладу числа на прості множники. 4. Визначити, чи є дане число N, що вводиться з клавіатури, простим. 5. Перевірити, чи можна задане число N записати у вигляді добутку двох простих чисел. 6. Перевірити, чи можна задане число N записати у вигляді добутку трьох простих чисел. 7. Перевірити, чи можна задане число N записати у вигляді квадрату простого числа. 8. Перевірити, чи можна задане число N записати у вигляді кубу простого числа. 9. Знайти всі прості числа в заданому діапазоні. 10. Знайти перші 5 простих чисел, більших від деякого числа N. 11. Дано просте число N. Знайти наступне просте число. 12. Задано деяке число N. Знайти найближче до нього просте число. 13. Знайти три попередніх до числа N простих числа. 14. Прості числа А та В називаються «близнятами», якщо |А–В|=2. На заданому проміжку [A, B] знайти всіх «близнят». 15. Задано деяке парне число N. Визначити, чи є сусідні з ним числа «близнятами». 16. Задано деяке число N. Скласти програму пошуку простих чисел менших N при допомозі «решета Ератосфена». 17. Знайти суму дільників натурального числа N. 18. Задано натуральне N. Знайти 3 «досконалих» числа, більших за задане. 19. Знайти всі «досконалі» числа на заданому проміжку.

Зміст слайдів
Номер слайду 1

Не завжди нам зручно користуватися командним рядком при введенні і виведенні інформації в програмі.  Наприклад: необхідно зберігати вихідні дані при відладці; велика кількість вхідних даних (той, хто вручну тестував програми із заповненням матриць, мене розуміє); багатократне введення однієї і тієї ж інформації, з мінімальними змінами або зовсім без змін. Так от в цих і деяких інших випадках до нас на допомогу приходить уміння працювати  з файлами.

Номер слайду 2

У розділі опису наступний запис var f1, f2: text; говорить про те, що змінні f1 і f2 це текстові файли (які ми можемо відкрити за допомогою блокнота, подивитися, і при необхідності редагувати).

Номер слайду 3

Спеціальна процедура assign(f,'ім'я_файлу'); — встановлює зв'язок між файловою змінною і самим файлом Наприклад assign(f,' input.txt '); Тобто змінній f відповідає ім'я файлу input.txt Тут файл з самою програмою знаходиться в тій же папці, що і текстовий файл input.txt. Якщо ж він в іншій папці, то нам треба вказати відносне розташування цього файлу. ‘Ім'я_файлу' — повний шлях до вказаного файлу, записаний у відносній або абсолютній формі.

Номер слайду 4

Відкрити для читання  reset(f); Якщо файлу не існує, то буде виведена помилка. Створити або перезаписати  rewrite(f); Якщо файлу не існує, то він буде створений; Створити або відкрити і дописати в кінець файлу  append(f); Якщо файлу не існує, то він буде створений; Зберегти і закрити файл close(f);

Номер слайду 5

read(f, a, b)  —  читати з файлу f дві змінні a і b. Після виконання цієї процедури покажчик у файлі пересунеться за змінну b; readln(f, a, b, c) — читати з файлу f три змінні a, b і c, а потім перекласти покажчик (курсор) на початок наступного рядка; якщо окрім вже лічених змінних в рядку містилося ще щось, то воно буде проігноровано.  write(f, a, b, c)  —  записати у файл f змінні a, b і c;  writeln(f, a, b)  —  записати у файл f змінні a і b, а потім записати туди ж символ "кінець рядка".

Номер слайду 6

Приклад 1.Виведення таблиці значень функції у файл. Program file_of_values; var х : Real; k : Word; out_file : Text; function F(x: Real): Real;  begin F := x/d.O + x);  end; begin Assign(out_file, 'c:\user\ivanov\table.dat'); Rewrite(out_file); x := 0.0; WriteLn(out_file, 'Таблиця значень функції F(x) = x/(l + x)');

Номер слайду 7

Тут Text означає тип файлу, що складається з символів, організованих в рядки. Такий файл створюється звичайним текстовим редактором, містить текст і називається текстовим файлом.  Процедура Assign модуля System зв'язує спеціальну файлову змінну out_file з файлом на диску, що має те ім'я, яке задає програміст. У нашому випадку це файлtable.dat, який знаходиться в каталозі userна диску С:. У цей момент файлова змінна тільки зв'язується з ім'ям файлу — нічого більше не відбувається. Процедура Rewrite відкриває файл для запису і, якщо файл table.dat вже існує на диску, видаляє його вміст. Про це не слід забувати! Надалі процедура Close закриває файл, виконавши заздалегідь його повне оновлення, і розміщує його на диску.  Зверніть особливу увагу на те, як використовується оператор WriteLn, коли вивід спрямовується у файл, відмінний від файлу Output, що задається за умовчанням. Процедура WriteLn в загальному випадку має вигляд  WriteLn(par_1, раг_2,....раr_n);  з довільним числом параметрів par_i. Якщо першим параметром є файлова змінна, то усі інші значення записуватимуться у відповідний файл, інакше вони виводитимуться на екран (тобто на стандартне облаштування виводу

Номер слайду 8

Приклад 2. У текстовому файлі DANO.TXT знаходиться значення радіусу кулі. Записати у текстовий файл RESULT.TXT значення її об’єму. Program demo_file; var f : text; { файлова змiнна для текстового файлу } R, V : real; { змінні для радіусу і об’єму } begin Assign(f,'DANO.TXT'); {Поставили у відповідність файловій змінній ім’я файлу } Reset(f); { Відкрили файли тільки для читання } Readln(f,R); { Прочитали з файлу значення змінної } Close(f); { Закрили файл } V := (4*pi*R*R*R)/3; { Обчислили об’єм } Assign(f,'RESULT.TXT'); { Поставили у відність файловій змінній новий файл } Rewrite(f); { Відкрили його для запису } Write(f,V:5:3); { Записали у файл значення об’єму } Close(f); { Закрили файл } end.

Номер слайду 9

Приклад 3. Скласти програму, що виводить на принтер символи з 32-го по 255-й. Program file3; var txt : text; i : integer; st : string; begin Assign(txt, 'PRN'); Rewrite(txt); writeln(txt,' Приклад друку на принтер: '); for i := 32 to 255 do begin st := chr(i); write(txt,st); if i mod 40 = 0 then writeln(txt,''); end; Close(txt); end.

Номер слайду 10

Приклад 4. У текстовому файлі INPUT.TXT у кожному рядку записано або слово, або число. Порахувати кількість чисел, записаних у файлі. Program Pidrachunok; uses dos, crt; var f : text; kol, kod : integer; r : real; begin Assign( f,'INPUT.TXT'); Reset( f ); kol := 0; {$I-} while not(eof( f )) do { поки не кінець файлу) begin readln( f, r ); kod := ioresult; writeln(kod,' r = ',r,' kol = ',kol ); if kod = 0 then inc(kol); end; {$I+} Close( f ); write('Кiлькiсть чисел у файлi = ', kol); readln end.

Номер слайду 11

1. Дано файл f, компоненти якого є цілими числами. Знайти: а) найбільше число, записане у файлі; б) найменше число, записане у файлі; в) суму найбільшого і найменшого чисел файлу; г) кількість чисел у файлі; д) кількість парних чисел у файлі; е) кількість чисел у файлі, що діляться на 3; є) кількість квадратів непарних чисел. 2. Дано два текстових файли f і g. Поміняти місцями вміст файлів. 3. Дано файл f, компоненти якого є символами. Отримати файл g, утворений з файлу f заміною всіх малих літер на великі (прописні). 4. У файлі f записано деякі цілі числа. Впорядкувати у даному файлі всі числа за неспаданням.

Номер слайду 12

5. У текстовому файлі записано деякий текст з розділовими знаками. Замінити у ньому всі слова “книга” на “підручник”. Врахувати можливість написання літер у слові великими літерами. 6. У текстовому файлі замінити всі групи пропусків, більші за 1 на 1 пропуск. 7. У файлі, що складається з дійсних чисел, знайти розмір самої довгої неспадаючої послідовності. 8. У файлі зберігається деякий текст на українській мові. Складіть програму, яка під час роботи при кожному звертанні до файлу повертала б чергове слово тексту. 9. Складіть програму кодування та розкодування текстового файлу з використанням пароля.

zip
Пов’язані теми
Інформатика, Інші матеріали
Додано
13 січня 2019
Переглядів
8508
Оцінка розробки
Відгуки відсутні
Безкоштовний сертифікат
про публікацію авторської розробки
Щоб отримати, додайте розробку

Додати розробку