Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
LAB_ZI.doc
Скачиваний:
5
Добавлен:
13.11.2019
Размер:
1.85 Mб
Скачать

4 Методичні вказівки

1 Для опрацювання елементів масиву використати оператори циклу.

2 При описі масивів врахувати задану кількість елементів і типи елементів. Елементи масиву вводити з клавіатури або задавати при описі.

3 Розробити алгоритм розв'язку задачі, дати короткий опис основних кроків алгоритму.

4 Для розгалужених процесів використати умовний оператор if.

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

6 Запустити програму на виконання. У випадку необхідності виправити семантичні помилки.

5 Приклад розв’язку завдання

Задати двовимірний масив з цілими елементами розмірністю (4 4). Елементи, які належать відрізку [5;10], зменшити на 7, всі інші елементи збільшити на 7. Новий масив вивести на екран.

Текс програми

#include <stdio.h>

#include<conio.h>

int i, j:

int A[4][4]={1, 4, 3, 7 -8, 5, 3, 0, 56, 34, -6,45, 45, 12, 0, 46};

int B[4][4];

void main()

{ clrscr();

printf («Programa Lab_4\n»);

for (i=0; i<4; i=i+1)

for (j=0; j<4; j=j+1)

{if ((A[i][j]>=5) && (A[i][j]<=10)) B[i][j]= A[i][j]-7;

else B[i][j]= A[i][j]+7; }

for (i=0; i<4; i=i+1)

{for (j=0; j<4; j=j+1)

printf(“B[%d][%d]=%d\t”, i, j, B[i][j]);

printf (“\n”);}

}

5 Питання вихідного контролю

1 За допомогою яких операторів опрацьовуються елементи масиву?

2 Яке значення має індекс 1-го елементу одновимірного масиву?

3 Яке значення має індекс 1-го елементу двовимірного масиву ?

4 Яке значення має індекс останнього елементу двовимірного масиву розміром (5 5)?

5 Як задаються масиви при описі?

Лабораторна робота № 5

Тема. Обчислення значень математичних функцій

Мета роботи: Навчитись писати програми на мові С для обчислення значень математичних функцій, які знаходяться в бібліотечному файлі math.h.

1 Короткі теоретичні відомості

Означення функції. Функцією називається незалежний фрагмент програми, який має ім’я, призначена для виконання конкретної задачі, і повертає значення в викликаючу програму (що не обов’язково). Розглянемо складові частини означення функції:

  1. Ім’я. Кожна функція має своє унікальне ім’я, використовуючи яке в іншій частині програми, можна виконати оператори, які містяться в цій функції. Це називається викликом функції. Функцію можна викликати з іншої функції.

  2. Незалежність. Функція може виконати свою задачу, не вмішуючись в інші функції, і в свою чергу не вмішуватися в їх роботу.

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

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

Опис функції. Функції при використанні потрібно описувати. Опис функції називають прототипом функції. Синтаксис опису: (прототип функції)

Тип функції (значення, яке повертає функція) ім’я функції(тип арг1. імя-арг. 1, тип арг2. імя-арг.2, тип арг3. імя арг.3);

Оператор опису функції повідомляє компілятору функцію, яка буде визначена в програмі пізніше. Опис включає тип значення, яке повертає функція, ім’я функції і типи аргументів, які передаються в функцію. Оператор опису закінчується ;

Приклад float cube(float x);

Для того, щоб до функції можна було звернутися, у тому ж файлі повинно бути опис функції (прототип).

double line(double x1,double y1,double x2,double y2);

double square(double a, double b, double c);

Це прототипи функцій, описаних вище.

Прототипи функцій повинні бути бути в тексті швидше аніж виклик функції, щоб компілятор міг здійснити перевірку правильності виклику.

Виклик функції. Для того, щоб виконувалися оператори, записані в тілі функції, функцію необхідно викликати. При виклику вказуються: ім'я функції й фактичні параметри. Фактичні параметри заміняють формальні параметри при виконанні операторів тіла функції. Фактичні й формальні параметри повинні співпадати по кількості й типу.

Параметри функції.В багатьох функцій є аргументи-значення, які передаються в функцію при її виклику. Функції має бути відомий тип даних кожного аргументу. Інформація про типи приводиться в заголовку функції в виді списку параметрів. Для кожного аргументу список параметрів має відповідний пункт, який складається з типу даних і імені параметру. Якщо параметрів декілька, то вони відділяються комами.

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

  • Математичні функції.

  • Функції роботи з часом і датами.

  • Функції обробки похибок.

  • Функції пошуку і сортування даних.

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

  1. Математичні функції.

  2. Функції роботи з часом і датами.

  3. Функції обробки похибок.

  4. Функції пошуку і сортування даних.

Прототипи математичних функцій знаходяться в бібліотечному файлі math.h. Всі вони повертають значення типу double. (дійсні числа з подвійною точністю). Аргументи тригонометричних функцій задаються в радіанах, а не в градусах.

1 рад. = 57.296

  1. = 2рі рад.

Прототипи математичних функцій наведено в табл. 1.

Таблиця.1 Прототипи математичних функцій

№ п/п

Функція

Прототип

Значення

2. Тригонометричні функції

1

arccosx

double acos(double x)

Повертає арккосинус x. Аргумент знаходиться в межах , значення функції - в інтервалі .

2

arcsinx

double asin(double x)

Повертає арксинус x. Аргумент знаходиться в межах , значення функції - в інтервалі .

3

arctgx

double atan(double x)

Повертає арктангенс x. Аргумент знаходиться в межах , значення функції - в інтервалі .

4

arctg2x

double atan2(double x, double y)

Повертає арктангенс . Аргумент знаходиться в межах , значення в інтервалі .

5

cosx

double cos(double x)

Повертає косинус x. Значення функції знаходиться в інтервалі

6

sinx

double sin(double x)

Повертає синус x. Значення функції знаходиться в інтервалі

7

tgx

double tan(double x)

Повертає тангенс x. Значення функції знаходиться в інтервалі .

3. Степеневі і логарифмічні функції

8

exp()

double exp(double x)

Повертає експоненту аргументу

9

log()

double log(double x)

Повертає натуральний логарифм аргументу , який має бути додатним

10

log10()

double log10(double x)

Повертає логарифм по основі 10 аргументу, який має бути додатним

11

ldexp()

double ldexp(double x, int y)

Повертає

4. Інші математичні функції

12

double sqrt(double x)

Повертає квадратний корінь аргументу x, який має бути додатнім

13

ceil()

double ceil(double x)

Повертає найменше ціле число, яке перевищує аргумент, 4.5=5, а –4.5=-4

14

int abs(int x)

Повертає абсолютне значення аргументу цілого типу

15

long int labs(long int x)

Повертає абсолютне значення аргументу довгого цілого

16

floor()

double floor(double x)

Повертає найбільше ціле число, яке не перевищує аргумент, -4.5=-5, а 4.5=4

17

double pow(double x, double y)

Повертає . Якщо , і у 0 або і у не ціле, то помилка

18

fmod()

double atan2(double x, double y)

Повертає дійсну остачу від ділення , з тим знаком , що в , якщо х=0, функція повертає 0

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