Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Основи програмування. Лекія 1.doc
Скачиваний:
6
Добавлен:
10.11.2019
Размер:
29.39 Mб
Скачать

3.6. Задачі для досліджень

1. Дослідити, як блок-схеми реалізовано в стандартах.

2. Дослідити недоліки і переваги псевдокоду і графічних сїем для представлення специфікацій.

3.7. Практичні заняття

Практичні заняття полягають у побудові студентами специфікацій програм, спрямованих на вирішення простих типових завдань програмування. Специфікації будуються у двох формах – графічної у вигляді діаграми потоку керування та вербальної у вигляді псевдокода. У специфікаціях повинні використовуватися стандартні керуючі дії – перетворення, вибір та повторення, які відповідають операторам структурного програмування.

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

Практичне заняття 1 Опис перетворюючих дій у програмних специфікаціях

Мета – дослідити та набути практичних навичок з використання при складанні програмних специфікацій перетворюючих дій та їх з’єднання

Приклад складення специфікацій

Задача 1.1. Задані два значення А і В. Знайти їх суму Sum і добуток Mul

Рішення

Програмні специфікації запишемо у псевдокоді (рис.1.1) та графічній формі (рис.1.2)

Крок 1. Визначимо основні дії (рис.1.1,а і рис.1.2,а)

Крок 2. Деталізуємо дію суми (рис.1.1,б і рис.1.2,б)

Крок 3. Деталізуємо дію множення (рис. 1.1,в і рис.1.2,в)

початок

обчислення суми Sum

обчислення добутку Mul

кінець

початок

Sum := A + B

обчислення добутку Mul

кінець

початок

Sum := A + B

Mult := A * B

кінець

а) крок 1 б) крок 2 в) крок 3

Рис.1.1. Програмна специфікація розв’язання задачі 1.1 у псевдокоді

а) крок 1 б) крок 2 в) крок 3

Рис.1.2. Програмна специфікація розв’язання задачі 1.1 у графічній формі

Задачі для самостійного розв’язання

  1. Задані два значення А і В. Знайти їх середнє арифметичне

  2. Задані два значення А і В. Поміняти місцями значення А і В

  3. Задані два значення А і В. Знайти їх різницю і частку

  4. Задано число А. Виконати над числом операцію заперечення знаку

Практичне заняття 2

Опис управляючої дії чергування у програмних специфікаціях

Мета – дослідити та набути практичних навичок з використання при складанні програмних специфікацій управляючої дії чергування у вигляді альтернативної форми вибору дій

Приклад складення специфікацій

Задача 1.2. Задані два нерівних значення А і В . Знайти максимальне значення

Рішення

Програмні специфікації запишемо у псевдокоді (рис.1.3) та графічній формі (рис.1.4)

Крок 1. Визначимо основні дії (рис.1.3,а і рис.1.4,а)

Крок 2. Деталізуємо дію знаходження максимального значення з використанням альтернативної форми вибору (рис.1.3,б і рис.1.4,б)

початок

пошук максимального значення

кінець

початок

якщо А > B

то

max := A

інакше

max := B

все якщо

кінець

а) крок 1 б) крок 2

Рис.1.3. Програмна специфікація розв’язання задачі 1.2 у псевдокоді

а) крок 1 б) крок 2

Рис.1.4. Програмна специфікація розв’язання задачі 1.2 у графічній формі

Задачі для самостійного розв’язання

  1. Задані два значення А і В. Визначити, чи А дорівнює В.

  2. Задані два нерівних значення А і В. Знайти мінімальне значення.

  3. Задано число А. Знайти абсолютне значення

Практичне заняття 3

Опис управляючих дій чергування і перетворення у програмних специфікаціях

Мета – дослідити та набути практичних навичок з використання чергування і перетворюючих дій та їх з’єднання при складанні програмних специфікацій

Приклад складення специфікацій

Задача 1.3. Задані два нерівних значення А і В, знайти максимальне значення (max) серед їх суми S і добутку М

Рішення

Програмні специфікації запишемо у псевдокоді (рис.1.5) та графічній формі (рис.1.6)

Крок 1. Визначимо основні дії (рис.1.5,а і рис.1.6,а)

Крок 2. Деталізуємо дію обчислення суми і добутку за допомогою перетворюючих дій (рис.1.5,б і рис.1.6,б).

Крок 2. Деталізуємо дію обчислення максимального значення (рис.1.5,в і рис.1.6,в)

початок

обчислення суми S і добутку M

знаходження max

кінець

початок

S := A + B

M := A * B

знаходження max

кінец

початок

S := A + B

M := A * B

якщо S > M

то

max := S

інакше

max := M

все якщо

кінець

а) крок 1 б) крок 2 в) крок 3

Рис.1.5. Програмна специфікація розв’язання задачі 1.3 у псевдокоді

а) крок 1 б) крок 2 в) крок 3

Рис.1.6. Програмна специфікація розв’язання задачі 1.3 у графічній формі

Задачі для самостійного розв’язання

Практичне заняття 4

Опис вкладеного чергування у програмних специфікаціях

Мета – дослідити та набути практичних навичок з використання вкладеного чергування при складанні програмних специфікацій

Приклад складення специфікацій

Задача 1.4. Задані три нерівних значення А, В і С. Знайти мінімальне значення.

Рішення

Програмні специфікації запишемо у псевдокоді (рис.1.7) та графічній формі (рис.1.8)

Крок 1. Визначимо основні дії (рис. 1.7,а і рис.1.8,а)

Крок 2. Деталізуємо дію знаходження мінімуму з використанням управляючої дії чергування (рис. 1.7,б і 1.8,б)

початок

знаходження min

кінець

початок

якщо А > C

то

якщо В > С

то

min := C

інакше

min := B

все якщо

інакше

якщо А > С

то

min := A

інакше

min := С

все якщо

все якщо

кінець

а) крок 1 б) крок 2

Рис.1.7. Програмна специфікація розв’язання задачі 1.4 у псевдокоді

а) крок 1 б) крок 2

Рис. 1.8. Програмна специфікація розв’язання задачі 1.4 у графічній формі

Задачі для самостійного розв’язання

1) Задані три нерівних значення А, В і С. Знайти максимальне значення

Практичне заняття 5

Опис управляючої дії повторення у програмних специфікаціях

Мета – дослідити та набути практичних навичок з використання управляючої дії повторення при складанні програмних специфікацій

Приклад складення специфікацій

Задача 1.5. Задана послідовність А1...Аn. Знайти суму елементів послідовності

Рішення

Програмні специфікації запишемо у псевдокоді (рис.1.9) та графічній формі (рис.1.10)

Крок 1. Визначимо основні дії (рис. 1.9,а і 1.10,а)

Крок 2. Деталізуємо дію знаходження суми з використанням повторення. Повторення буде виконуватися N разів, тобто поки i не стане рівним N + 1; i := i + 1 - збільшення номера значення в послідовності на 1, тобто спочатку і = 1, після виконання команди i := i + 1, i стає рівним 2 (i = 1 + 1) і т.д. (рис. 1.9,б і 1.10,б)

Крок 3. Деталізуємо дію знаходження суми. Суму значень послідовності А1,...,Аn будемо шукати як S := S + A[i] , де і - номер значення в послідовності. Перед виконанням ітерації S присвоєно значення 0. Виконання S := S + A[i] приведе до збільшення суми.

(рис. 1.9,в і 1.10,в)

початок

Знайти суму елементів А1..Аn

кінець

початок

S := 0

i := 1

поки i <= n

повторити

Знайти S

i := i + 1

все повторити

кінець

початок

S := 0

i := 1

поки i <= n

повторити

S := S + A[i]

i := i + 1

все повторити

кінець

а) крок б) крок 2 в) крок 3

Рис.1.9. Програмна специфікація розв’язання задачі 1.5 у псевдокоді

а) крок 1 б) крок 2 в) крок 3

Рис.1.10. Програмна специфікація розв’язання задачі 1.5 у графічній формі