Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Алгоритмізація та програмування.doc
Скачиваний:
3
Добавлен:
18.09.2019
Размер:
156.16 Кб
Скачать
  1. Поняття алгоритму, типові алгоритмічні структури та способи їх опису.

Алгоритми – це точна та зрозуміла послідовність дій, які потрібно виконати над заданими об'єктами для отримання виконавцем розв'язку поставленої задачі, або ж досягненням поставленої мети.

Властивості: Дискретність, Визначеність, Масовість, Результативність.

1.Алгоритм складається з послідовності закінчених дій – кроків . Перехід до наступного кроку можливий лише по закінченню попереднього. Кожен крок – це окрема дія. Властивість алгоритму складатись із окремих кроків називають – дискретністю.

2.Для виконання алгоритму потрібно, щоб кожна його команда завжди однозначно трактувалась та точно виконувалась. Це означає – що будь яка команда при багаторазовому виконанні за однакових вих. даних давала б один і той-же результат.

1.Можна вирішити не одну конкретну задачу, а багато однотипних задач, та робити це неодноразово.

2.Виконання алгоритму повинне призводити до результату за скінчену кількість кроків.

Способи зображення алгоритмів

1.Словесний – всі дії описуються словами. Використовують коли виконавцем є людина.

2.Графічний – записують у вигляді блок-схем. Правила складання схем задаються державними стандартами. Послідовність дій зображається геометричними фігурами тобто блоками розташованими послідовно з гори до низу та з'єднаних. Кожна дія зображається фігурою відповідної форми. Виконувана дія записується в середині блоку. Блоки мають наскрізну нумерацію.

Типові алгоритмічні структури: Лінійна структура, Розгалужена, Циклічна, Комбінована.

1.Лінійна структура являє собою послідовне виконання заданих дій

2.Розгалужена структура. В цій структурі обчислювальний процес проходить по одній із 2х можливих гілок в залежності від умов вибору.

3. В циклічній структурі алгоритмів певні дії виконуються багаторазово

  1. Циклічні структури алгоритмів та способи їх реалізації при розробленні программ

Існують 3 види циклу:

  • Цикл з параметром, з передумовою, з післяумовою

  • Тіло циклу – це певні дії, які повторюються багаторазово.

  • Ітерацією називається одне виконання тіла циклу.

Параметр циклу – величина, яка змінює своє значення від початкового до кінцевого з певним кроком.

  1. Параметричний цикл

А лгоритм роботи циклу:

  1. Параметру циклу присвоюється початкове значення.

  2. Перевіряється, чи воно не перевищує кінцевого значення.

  3. Якщо не перевищує, то виконується тіло циклу.

  4. До параметру циклу додається крок.

  5. Перехід до пункту 2.

Якщо параметр циклу перевищує кінцеве значення,

то здійснюється вихід з циклу.

  1. Цикл з передумовою.

Це такий цикл, в якому умова передує тілу

циклу і називається умовою продовження циклу.

3.Цикл з післяумовою.

Це такий цикл, в якому умова вказується після тіла циклу і являється

умовою виходу з циклу тіло циклу.

Виконується завжди, принаймні 1 раз.

  1. Типи даних: поняття, призначення та класифікація.

Під типом даних розуміють характеристику величини, яка визначає її розмір, діапазон її значень та сукупність операцій.

ТИПИ ДАНИХ є:

1.Процедурні;

2.Прості:

2.1.Порядкові:

2.1.1.Цілі

2.1.2.Логічні

2.1.3.Символьні

2.1.4.Діапазон

2.1.5.Перелічувані

2.2.Дійсні

3.Вказівники

4.Структуровані

4.1.Масиви

4.2.Рядки

4.3.Записи

4.4.Множини

4.5.Файли

5.Обєкти

Тип даних повинна мати будь-яка величина. Можна використовувати стандартні типи даних або розробляти свої власні.

Прості типи даних

1.Логічний тип даних ( boolean ) представляє логічні значення – true або fаlse. Займає 1 байт пам‘яті.

2.Цілі типи даних

Тип даних

Діапазон значень

Формат

К-ть байтів

Shortint

-128 : 127

звичайний

1

Integer

-32768 : 32767

Звичайний

2

Longint

-2147483648 :21474 83647

Звичайний

4

Byte

0 : 255

Беззнакове

1

Word

0 : 65535

Беззнакове

2

  1. Символьний тип даних ( char) - 1 байт пам‘яті, в якому розміщується код симола

  2. Перелічувальний тип даних не є стандартним. Його визначає користувач шляхом перелічування усіх значень через кому у круглих дужках Type color = (red, yellow green,);

  3. Тип діапазон визначається на базі порядкового як підмножина значень Year = 1900..2000; Day = 1..31;

Дійсні типи даних

Тип даних

Діапазон значень

Точність

К-ть

байтів

Real

2.9E-39 : 1.7E38

11-12

6

Single

1.5E-45 : 3.4E38

7-8

4

Double

5.0E-324 : 1.7E308

15-16

8

Extended

3.4E-4932 : 1.1E4932

19-20

10

Comp

-9.2E18 : 9.2E18

19-20

8


  1. Р еалізація алгоритмів розгалуженої структури мовою Турбо-Паскаль.

Умовні оператори

Умовні операції використовуються для реалізації розгалужених алгоритмів ,

тобто коли доводиться обирати один варіант із кількох можливих.

IF логічний вираз then оператор 1 else оператор 2;

якщо true, то виконується оператор 1

якщо false, то виконується оператор 2

Оператор 1 begin _ _ _ _ _ end;

Оскільки при написанні програми а невідоме, то потрібно заздалегідь

передбачити всі можливі варіанти і запропонувати певні дії в залежності від

кожного окремого випадку; необхідний варіант повинен підібрати комп'ютер,

коли значення зміної буде знаходиться в оперативній пам'яті.

if a>0 then f:=1 else f:=0;

f:=0

if a>0 then f:=1;

Приклад:

1.if(x>=-2)and(x<=2) then y:=sqr(x)

else y:=4;

2.if(x<-2)or(x>2) then y:=4

else y:=sqr(x);

Оператор варіанту (або вибору) CASE

CASE селектор OF список значень [ELSE оператор ] END;

Селектор-зміна, вираз.

Оператор case вибирає один варіант із перелічених у списку значень.

Кожному варіанту списка значень передується мітка, яка відокремлюється :

Від відповідного елемента і використовується для передачі управління в залежності від значення селектора.

Типи даних міток і селектора мають співпадати.

case k of

1: y:= sqrt(a+8)

2: y:= sqrt(b+3)

3: y:= sqrt(c+4)

end

case odd(a) of

true: k:=sqr(a)

false: k:=a*sqr(a)

end;

5.Алгоритм пошуку екстремальних значень в одновимірному числовому масиві. Цикл з параметром

FOR Змінна := (початкове значення) TO [DownTo] (кінцеве значення)

DO (тіло циклу – перелік операторів)

Алгоритм: Тіло циклу виконується по одному разу для кожного значення

змінної в діапазоні від початкового до кінцевого значення змінної.

Змінна повинна мати порядковий тип. Коли тіло циклу налічує декілька операторів

тоді ці оператори беруться в операторні дужки Begin ….. end.

TO – кожний раз змінна збільшується на 1;

DownTo – кожний раз змінна зменшується на 1;

П риклад: Обчислити .

Program Sum;

Var i, s : integer;

Begin

s:=0;

{ for i := 7 downto 1 do }

for i := 1 to 7 do

s := s + ( i – 5 );

Writeln( s );

End.

Цикл з передумовою

WHILE (логічний вираз - умова продовження циклу) DO

(тіло циклу – перелік операторів)

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

якщо результат істина, тоді виконується тіло циклу і знову

обчислюється логічний вираз, якщо логічний вираз приймає

значення фальш, тоді цикл не виконується жодного разу.

Приклад: Обчислити 5!.

Program F1;

Var f, i : integer;

Begin

i:=0; f:=1;

while i < 5 do

Begin

i := i + 1; f := f * i;

End;

Writeln(‘ 5! ’, f);

End.

Ц икл з після умовою

REPEAT (тіло циклу – перелік операторів) UNTIL (логічний вираз - закінчення циклу) ;

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

який являється умовою виходу з циклу.

Якщо істина ­­– виходу з циклу

Якщо фальш ­­– повторення тіла циклу

Приклад: Скласти схему алгоритму та написати програму для обчислення членів

послідовності . Вивести усі члени послідовності. Обчислення припинити

при значенні , значення Е задати самостійно (0<Е<1).

Программа

Program Count;

Uses Crt;

Const E=0.0001;

Var x, y : real;

k, n : integer;

Begin

Write(‘Задайте Х : = ’);

Readln(x);

n:=1;

k:=1;

repeat

y:=x/n;

writeln(y);

n:=n+1;

k:=k+1;

until y<=E;

writeln(‘Кількість членів послідовності = ’, k-1)

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]