Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Роб_прогр_пропед_пр_3 курс.doc
Скачиваний:
0
Добавлен:
01.05.2025
Размер:
137.73 Кб
Скачать

Лабораторна робота № 7 Оператор for та циклічні алгоритми типу арифметичної прогресії в пакеті Mathcad

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

Теоретичні відомості

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

Характерною рисою циклів типу арифметичної прогресії є те, що кількість повторень тіла циклу можна визначити до початку виконання програми, що реалізує цикл.

Програмування циклу типу арифметичної прогресії. Для програмування таких циклів використовується оператор циклу for. Для введення такого оператора необхідно виконати наступні дії:

  • клацнути на кнопці for складальної панелі Програмування. На екрані з'являться поля введення, зображені на рис. 12.

Рис. 12. Структура оператора циклу типу арифметичної прогресії for.

  • у поле 1 вводять ім'я параметра циклу;

  • у поле 2 вводять діапазон значень параметра циклу, використовуючи для цього дискретний аргумент ;

  • у поле 3 вводяться оператори, що становлять тіло циклу. Якщо одного рядка недостатньо, то додаткові поля введення (додаткові рядки) створюються натисканням лівою клавішою миші на “Add line” в панелі програмування і тоді ліворуч від тіла циклу з'явиться вертикальна риса.

Оператор for відноситься до базової структури, яка має назву цикл. Цикл припускає повторення виконання деякої інструкції. Розрізняють два види базових циклів залежно від порядку виконання дій, один з них оператор циклу for.

На мал. 13. зображена блок-схема оператора циклу for. Якщо кількість повторень тіла циклу виконується (вихід по стрілці з написом Так), то інструкція буде виконана. Якщо ж кількість повторень тіла циклу не виконується (вихід по стрілці з написом Ні), то інструкція не буде виконана і відбудеться вихід з циклу. Базова структура – цикл має один вхід і один вихід.

Рис. 13. Блок-схема базової структури оператора циклу for.

Приклад: Для x змінних на інтервалі від -2 до 2 із кроком 0,5 обчислити значення функції f(x) = e-x .cos(2x) і сформувати із цих значень вектор y, тобто y1 = f(-2), y= f(-1.5) і т.д.

У цьому прикладі кількість повторень визначається за формулою:

де xk , x0 - кінцеве та початкове значення параметра циклу;

d - крок його зміни.

Підставивши значення, одержимо (2 - (-2) )/0.5+1=9.

Опис програми-функції має вигляд:

У цьому варіанті опису програми-функції формальні параметри використовуються для завдання діапазону зміни параметра циклу (змінної x) та кроку. Для зміни індексу в елемента масиву y вводиться змінна i цілого типу всередині програми-функції. Звернення до описаної програми-функції може мати вигляд:

Приклад: Програм-функція визначення факторіала числа:

Завдання на лабораторну роботу

1. Використовуючи оператор for необхідно написати програм-функцію, яка дозволить найти суму всіх чисел на інтервалі від ар (початкове значення) до аk (кінцеве значення).

2. Використовуючи оператор for написати програму-функцію сумарного визначення витрати теплоти на опалення та вентиляцію.

Визначення витрати теплоти на опалення та вентиляцію кожної будівлі визначається за формулою:

, Вт,

де та - питомі теплові характеристики для опалення та вентиляції, Вт/м3·К;

та - розрахункові температури зовнішнього повітря для проектування опалення та вентиляції, оС;

- об’єм приміщення, м3.

Визначаємо витрати теплоти на опалення та вентиляцію для п’яти різних приміщень, об’єми приміщень наведені в індивідуальному завданні;

Записати програму-функцію, яка має ім’я „op_ven”, та підставити значення свого варіанту за індивідуальним завданням до виконання лабораторної роботи таблиця 10.

Програма виконання роботи

1. Завантажити середовище Mathcad.

2. Відкрити блок програмування.

3. Ознайомитись з оператор програмування циклічних алгоритмів типу арифметичної прогресії for, що викладено в теоретичних відомостях.

4. Виконати приклади, що наведені в лабораторній роботі.

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

6. Оформити результати у формі звіту.

7. Закінчити роботу в Mathcad.

Індивідуальні завдання до виконання лабораторної роботи

Таблиця 10. – Значення величини для розрахунку за варіантом.

№ варіанту

, м3

1

2

3

4

5

1

3120

2830

2385

1705

640

2

3125

2835

2390

1710

650

3

3130

2840

2395

1715

660

4

3135

2845

2400

1720

670

5

3140

2850

2405

1725

680

6

3145

2855

2410

1730

690

7

3150

2860

2415

1735

700

8

3155

2865

2420

1740

710

9

3160

2870

2425

1745

720

10

3165

2875

2430

1750

730

11

3170

2880

2435

1755

740

12

3175

2885

2440

1760

750

13

3180

2890

2445

1765

760

14

3185

2895

2450

1770

770

15

3190

2900

2455

1775

780

16

3195

2905

2460

1780

790

17

3200

2910

2465

1785

800

18

3205

2915

2470

1790

810

19

3210

2920

2475

1795

820

20

3215

2925

2480

1800

830

21

3220

2930

2485

1805

840

22

3225

2935

2490

1810

850

23

3230

2940

2495

1815

860

24

3235

2945

2500

1820

870

25

3240

2950

2505

1825

880

26

3245

2955

2510

1830

890

27

3250

2960

2515

1835

900

28

3255

2965

2520

1840

910

29

3260

2970

2525

1845

920

30

3265

2975

2530

1850

930

Оформлення звіту

Звіт повинен містити:

- назву та мету роботи;

- наведені приклади;

- програму-функцію завдання №1;

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

- висновки по роботі з аналізом операторів та розроблених програм-функцій.

Запитання для самоперевірки

1. Дайте визначення оператора for?

2. Структура оператора for?

3. Що таке параметр циклу?

4. Дайте визначення терміну тіло циклу?

5. До якого типу алгоритмів відноситься оператор for?

6. Як працює програм-функція завдання №2?