У нас: 141825 рефератів
Щойно додані Реферати Тор 100
Скористайтеся пошуком, наприклад Реферат        Грубий пошук Точний пошук
Вхід в абонемент



Лабораторна робота - Підпрограми-функції
2
Міністерство освіти і науки України

Лабораторна робота

Тема: Підпрограми-функції

 

 

 

Мета

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

 

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

Мова Сi дозволяє використовувати лише один вид пiдпрограми:

процедуру-функцiю з параметрами. Характерною особливiстю процедури-функцiї є наявнiсть багатьох вхiдних параметрiв i одного вихi-

дного, який присвоюється iменi функцiї. Всi пiдпрограми повиннi

бути оголошенi в головнiй або пiдпорядкованих програмах. Оголо-

шення процедури-функцi має вигляд:

ТПЗ IПФ(СТП);,

де ТПЗ - тип значення, яке повертає процедура-функцiя;

IПФ - iм'я процедури-функцiє, iдентифiкатор;

СТП - список типiв дiйсних параметрiв.

Крiм оголошення, функцiя має бути визначена, тобто має бути вка-

зано що ця функцiя власне виконує. Визначення функцiї має вигляд:

ТПЗ IПФ(СФП){ОЗП;ТПФ;},

де:СФП - список формальних параметрiв i їх типiв;

ОЗП - оголошення внутрiшнiх (власних) змiнних функцiї;

ТПФ - тiло процедури, оператори та вирази.

Тiло процедури-функцiї може мiстити один або декiлька операто-

рiв. RETURN(вираз):його виконання приводить до завершення проце-

дури i повернення в програму, з якої функцiя викликалася. Якщо

цей оператор має вираз, то його значення присвоюється iменi про-

цедури i є результатом її виконання. Формальнi параметри функцiї,

якщо вони є, локалiзованi в її тiлi, пам'ять пiд них дублюється.

Локалiзованими є також внутрiшнi змiннi функцiї, їх значення теж

втрачаються пiсля виходу з процедури, якщо вони не мають клас па-

м'ятi static. Звернення до процедури-функцiї в головнiй програмi

вiдбувається шляхом вказування її iменi, пiсля якого в круглих

дужках дається список дiйсних параметрiв.

Забороняється передавати масиви в якостi параметрiв функцiї.

Натомiсть можна використовувати вказувачi на масиви. Масиви в

процедурi не дублюються.

Звернення до процедури графiчно вiдображаїться за допомогою

прямокутника з подвоїними бiчними сторонами.

Завдання №13.1

Скласти програму для визначення величини

1.

, де а=1, b=32

Oбчислення інтегралу оформити у вигляді підпрограми-функції , використовуючи метод Сімпсона:

,

де h=(b-a)/n=0.5.

Програма

#include<math.h>

#include<stdio.h>

main()

{

int a=1,b=32;

float h=0.5,Q,S,integ(int,int,float);

clrscr();

Q=integ(a,b,h)+pow((a+b),1/3);

printf("Q=%f",Q);

getch();

}

float integ(int a,int b,float h)

{

int i=0,n=62;

float x,y[62],Y=0,S;

for(x=a;x<=b;x+=h)

{

y[i]=pow(x,3)*exp(x+sin(x));

i++;

}

for(i=1;i<=(n/2-1);i++)

{

Y+=4*y[2*i-1]+2*y[2*i];

}

S=h/3*(y[0]+4*y[n-1]+y[n]+Y);

return S;

}

Блок-схема

 

Результат виконання програми

q=7096370091456987140.0000.

Висновок

На цій лабораторній роботі я навчився створювати підпрограми-функції,

і оволодів прийомами складання алгоритмів.