Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
практичні алгоритмізація дл студ.docx
Скачиваний:
0
Добавлен:
01.04.2025
Размер:
6.12 Mб
Скачать

8. Напишіть і запустіть програму на виконання що написана нижче. Потім напишіть програму що кінцевим числом виведе на екран ваш номер варіанту по списку.

/* Використання оператора continue в структурі for * /'

#include <stdio.h>

main ()

{

int x;

for ( x = 1; x <= 10; x++) {

if ( х == 5 )

continue; /* пропускає код, що залишився, в циклі лише якщо х == 5 */

printf("%d ", x);

}

printf("\nUsed continue to skip printing the value 5\n");

return 0;

}

1234678910

Used continue to skip printing the value 5

4.12. Використання оператора continue в структурі for

Лабораторна робота №17. Тема: Програмні модулі в с. Функції математичної бібліотеки

Мета: Навчитися користуватися програмними модулями.

Аргументи функцій можуть бути константами, змінними або виразами. Якщо c1 = 13.0, d = 3.0 і f = 4.0, то оператор

printf("%.2f", sqrt(c1 + d * f));

обчислює і друкує значення квадратного кореня з 13.0+3.0*4.0=25.0, тобто 5.00.

Деякі функції математичної бібліотеки С приведені в табл.5. Змінні х і у мають тип double.

Таблиця 5

Функції загального призначення математичної бібліотеки

Функція

Призначення

Приклад

sqrt(x)

квадратний корінь з х

sqrt(900.0) дорівнює 30.0 sqrt(9.0) дорівнює 3.0

ехр(х)

експоненціальна функція ех

ехр(1.0) дорівнює 2.718282 ехр(2.0) дорівнює 7.389056

log(x)

натуральний логарифм х (основа е)

lоg(2.718282) дорівнює 1.0 lоg(7.389056) дорівнює 2.0

Iog10(x)

логарифм х (основа 10)

log10(1.0) дорівнює 0.0 log10(10.0) дорівнює 1.0 log10(100.0) дорівнює 2.0

fabs(x)

абсолютне значення х

якщо х > 0, то fabs(х) рівне х якщо х=0, то fabs(x) дорівнює 0.0 якщо х < 0, то fabs(х) рівно -х

ceil(x)

округлює х до найближчого цілого, не меншого X

ceil (9.2) дорівнює 10.0 сеil(- 9.8) рівне - 9.0

floor(x)

округлює х до найближчого цілого, не перевершуючого X

floor (9.2) дорівнює 9.0 floor (- 9.8) рівне - 10.0

pow(x, y)

х підноситься до степеня у (Xу)

pow (2,7) дорівнює 128.0 роw (9,5) дорівнює 3.0

fmod (x, у)

залишок х/у як число з плаваючою точкою

fmod (13.657, 2.333) дорівнює 1.992

sin(x)

тригонометричний синус х (х в радіанах)

sin (0.0) дорівнює 0.0

cos(x)

тригонометричний косинус х (х в радіанах)

соs (0.0) дорівнює 1.0

tan(x)

тригонометричний тангенс х (х в радіанах)

tan(0.0) дорівнює 0.0

1. Напишіть і запустіть програму на виконання що написана нижче. Потім напишіть програму замінивши змінну х на свій номер варіанту по списку.

/* Функція square, визначена програмістом */

#inciude <stdio.h>

int sguare (int); /* прототип функції */

main ( )

{

int x;

for (x = 1; x <= 10; x++)

printf("%d ", square(x));

printf("\n");

return 0;

}

Визначення функції */

int square(int у)

{

return у * у;

}

1 4 9 16 25 36 49 64 81 100

5.3. Використання функції, визначеної програмістом

Кожна з приведених раніше програм складалася з функції з ім'ям main, яка для виконання свого завдання викликала функції стандартної бібліотеки. Тепер ми розглянемо, як програмісти пишуть свої власні спеціалізовані функції.

Розглянемо програму, яка використовує функцію square для обчислення квадрата цілих чисел від 1 до 10 (лістингу 5.3).

Функція square активується, або викликається в main усередині оператора printf :

printf("%d ", square (х));

Функція square отримує копію значення х в параметрі у. Потім square обчислює значення твору у*у. Результат передається назад функції printf в main, де була викликана square, і printf виводить результат. Цей процес повторюється десять разів в циклі for.

Визначення функції square показує, що square припускає передачу в параметрі у цілого значення. Ключове слово int, передування імені функції, показує, що square повертає результат цілого типу. Оператор return в square передає результат обчислень функції, яка викликала square.

Рядок програми

int square(int);

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

2. Напишіть і запустіть програму на виконання що написана нижче. Потім напишіть програму замінивши вводимі значення на свій номер варіанту по списку і номери двух ваших сусідів по робочому місцю.

Існує три способи повернення управління в ту точку програми, в якій була викликана функція.

/* Пошук максимального з трьох цілих значень */

#include <stdio.h>

int maximum(int, int, int); /* прототип функції */

main()

{

int а, b, c;

printf("Enter three integers: ");

scanf("%d%d%d", &а, &b, &c);

printf("Maximum is; %d\n", maximum(a, b, c));

return 0;

}

/* Визначення функції maximum */

int maximum (int x, int. y, int z)

{

int max = x;

if (y > max)

max = y;

if (z > max)

max = z;

return max;

}

Enter three integers: 22 85 17

Maximum is: 85

Enter three integers: 85 22 17

Maximum is: 85

Enter three integers: 22 17 85

Maximum is: 85

Визначена програмістом функція maximum

Якщо функція не повертає результат, управління повертається просто досягши правої фігурної дужки, що завершує функцію, або при виконанні оператора return;

Якщо функція повертає результат, оператор return вираження; повертає зухвалій функції значення вираження.

Наш другий приклад демонструє визначену програмістом функцію maximum для визначення і повернення найбільшого з трьох цілих значень. За допомогою функції scanf три цілі числа вводяться. Після цього числа передаються функції maximum, яка знаходить найбільше ціле число. Це значення повертається в main оператором return у функції maximum. Повернене значення виводиться на друк оператором printf.