Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

REFERAT / C++ te funkciyalar

.docx
Скачиваний:
0
Добавлен:
14.01.2024
Размер:
213.53 Кб
Скачать

ÓZBEKSTAN RESPUBLIKASÍ JOQARÍ BILIMLENDIRIW,

ILIM HÁM INNOVACIYALAR MINISTRLIGI

MUHAMMED AL-XOREZMIY ATÍNDAǴÍ TASHKENT INFORMACIYALÍQ TEXNOLOGIYALARÍ UNIVERSITETI

NÓKIS FILIALÍ

TELEKOMMUNIKACIYA TEXNOLOGIYALARÍ HÁM

KÁSIPLIK TÁLIM FAKULTETI

INFORMACIYA QAWIPSIZLIGI

1-kurs studenti

PROGRAMMALASTÍRÍW I PÁNINEN

ÓZBETINSHE JUMÍS

Tema: Funkciyalar. Funkciya aniqlamasi

Orınlaǵan:

Qabıllaǵan:

Nókis – 2024

Jobası:

I. Kirisiw

II. Tiykarǵı bólim

a) Funkciya parametrleri hám argumentler

b) Funkciyanı shaqırıw

c) Funkciya aniqlamasi

III. Juwmaqlawshı bólim

IV. Paydalanılǵan ádebiyatlar

C++ de funktsiyalar to’mendegishe ta’riplenedi.

<funktsiya tipi> <funktsiya ati> (<parameter1; parametr2;…;parametern>)

; - funktsiya protatipi dep ataladi. funktsiya sintaksisi to’mendegishe:

{

an’latpa-1; // funktsianin’ denesi

}

Egerde funktsiya tipi VOID bolsa, onda bul funktsiya ma’nis qaytarmaytin funktsiya bolip tabiladi.

Misal: qa’legen 2 pu’tin sandi qosiwshi pu’tin tu’rdegi funktsiyani du’zin’. Programmasi to’mendegishe:

# include<iostream>

using namespace std;

int qosiw(int,int);

{

int a,b;

cout<<”san a ha’m b”;

cin>>a>>b;

cout<<qosiw(a,b);

system(“pause”);

}

int qosiw(int x, int y)

{

return(x+y);

}

Eger funktsiyanin’ parametrlerin, tiplerin ta’riplegennen keyin kompersant belgisi qoyilsa, onda bul funktsiyalar ma’nis qaytariwshi parametrli funktsiya boladi. Bunda kompersant belgisi (and) onin’ adressi menen islesedi, yag’niy o’zgeriwshi ma’nisin aladi ha’m shiqqan na’tiyjeni funktsiyani shaqirg’andag’i o’zgeriwshinin’ adressin jan’alaydi.

Misal: a saninin’ ma’nisin b sanina almastirin’.

# include<iostream>

using namespace std;

void almastiriw(int &a,int &b);

void main()

{

int a,b;

cout<<” Eki san a ha’m b”;

cin>>a>>b;

cout<<almastiriw(a,b)

system(“pause”);

}

{ cout<< almastiriw(int &a, int &b)

int S=a;

a=b;

b=S;

return () ;

}

C++ tilinde bir o’lshemli massivlerdi funktsiyalarda paydalaniw ushin funktsiyani to’mendegishe ta’ripleymiz.

Funksiyanin’_ tipi funksiyanin’_ati(massivtin’_ati [], massiv_ uzinlig’i)

Misal: 10 elementten turatin,pu’tin sanlardan ibarat massivti,massivtin’ elemntlerin baspag’a shig’aratin funktsiya du’zin’.

# include<iomanip>

# include<iostream>

using namespace std;

# define n 10

void Func(int massiv[ ]);

void main() {

int i; a[n];

for(i=0; i<n ; i++)

cin>>a[i];

Func(a);

system(“pause”); }

void Func(int massiv[ ]);

{ int i;

for(i=0; i<n; i++)

cout<<massiv[i];

<<setw(5); }

Jumıstıń maqseti:

Funkciyanıń járiyalanıwı, funkciya jaratıw, Mánis qaytaratuǵın hám mánis qaytarmaytuǵın funkciyalar. Funkciya prototiplerinen paydalanıp, parametrlerdi mánis hám silteme járdeminde jiberiwge baylanıslı mısallar sheshiw.

Teoriyalıq bólim:

Funkciya - belgili bir tapsırmanı orınlaytuǵın kod blogı. Funkciyanıń eki túri bar.

1. Standart kitapxana funkciyaları: C++ tilinde aldınnan anıqlanǵan funkciya.

2. Paydalanıwshı anıqlaytuǵın funkciya: paydalanıwshılar jaratqan funkciya. Biz tiykarınan paydalanıwshılar jaratqan funkciyaǵa itibar beremiz.

Paydalanıwshı anıqlaytuǵın funkciya

C++ te programmalawshıǵa óz funkciyasın anıqlawǵa imkaniyat beredi. Paydalanıwshı anıqlaytuǵın funkciya belgili bir tapsırmanı orınlaw ushın kodtı toplaydı hám sol kod toparına at (identifikator) beriledi. Funkciya programmanıń qálegen bóleginen shaqırılǵanda, onıń barlıǵı funkciyanıń denesinde anıqlanǵan kodlardı orınlaydı.

Programma támiynatın jaratıw ámelde qıyın process esaplanadı. Programma dúziwshi programma kompleksin bir pútinliktegi hám onıń hár bir bóleginiń ishki mazmunın hám olardıń sezilmes parıqların esapqa alıwı kerek boladı.

Programmalastırıwǵa sistemalı jandasıw sonnan ibarat, programma dúziwshi aldına qoyılǵan másele aldınnan eki, úsh hám onnan artıq salıstırmalı kishi másele astılarına bólinedi. Óz náwbetinde bul másele astıları da jáne kishi másele astılarına bóliniwi múmkin. Bul process tap mayda máselelerdi ápiwayı standart ámeller járdeminde sheshiw múmkin bolǵansha dawam etedi. Usı jol menen máseleni dekompoziciyalaw ámelge asırıladı.

Ekinshi tárepten, programmalastırıwda sonday processler baqlanadı, onda programmanıń túrli jerlerinde mazmunı tárepten birdey algoritmlerdi orınlawǵa tuwrı keledi. Algoritmniń bul bólekleri tiykarǵı sheshilip atırǵan máseleden ajıratıp alınǵan qandayda bir másele astın sheshiwge arnalǵan bolıp, jeterli dárejede ǵarezsiz mániske (nátiyjege) iye esaplanadı. Misal ushın tómendegi máseleni kóreyik:

Bul mısaldı sheshiwde bólshektiń alımı hám bólimindegi mánisler birdey algoritm menen esaplanadı hám programmada hár bir ańlatpanı esaplaw ushın bul algoritmdi 3 márte jazıwǵa tuwrı keledi. Máseledegi 30-dárejeli kóp aǵzanı esaplaw algoritmin, maselen, Gorner algoritmin bólek, bir nusxada jazıp, oǵan túrli parametrler - bir márte vektor hám mánisin, ekinshi mártebe vektor hám mánisin, hámde vektor hám (x+z) mánisleri menen múráját etiw arqalı tiykarǵı máseleni sheshiw múmkin boladı. Funkciyalar qollanılıwınıń jáne bir sebebin tómendegi máselede kóriwimiz múmkin - berilgen sızıqlı teńlemeler sistemasın Gauss, Kramer, Zeydel usıllarınıń birewi menen sheshiw talap etilsin. Bul jaǵdayda tiykarǵı programmanı tómendegi bóleklerge bóliw maqsetke muwapıq bolar edi: teńleme koefficientlerin kiritiw bólegi, sheshiw usılın tańlaw bólegi, Gauss, Kramer, Zeydel usılların ámelge asırıw ushın óz aldına bólekler, nátiyjeni shıǵarıw bólegi. Hár bir bólek ushın óz funkciyalar kompleksin jaratıp, kerek bolǵanda olarǵa bas funkciya denesinen múrájátti ámelge asırıw arqalı bas másele sheshiw paydalı esaplanadı.

Bunday jaǵdaylarda programmanı qolaylı hám paydalı etiw ushın C++ tilinde programma bólegin óz aldına ajıratıp alıp, onı funkciya kórinisinde anıqlaw múmkinshiligi bar.

Funkciya bul - C++ tilinde másele sheshiwdegi eń áhmiyetli elementlerden biri esaplanadı.

Funkciya parametrleri hám argumentler

Programmada isletiletuǵın hár qanday funkciya járiyalanıwı kerek. Ádette funkciyalar járiyalanıwı baslama fayllarda beriledi hám #include direktivası járdeminde programma tekstine qosıladı.

Funkciya járiyalanıwın funkciya prototipi súwreteydi (ayrım jaǵdaylarda signatura delinedi). Funkciya prototipi tómendegi kóriniste boladi:

<qaytarıwshı mánis tipi> <funkciya atı>(<parametrler dizimi>);

Bul jerde <qaytarıwshı mánis tipi>- funkciya islewi nátiyjesinde ol tárepinen qaytaratuǵın mánis tipi. Eger qaytarılatuǵın mánis tipi kórsetilmegen bolsa, kelisim boyınsha funkciya qaytaratuǵın mánis tipi int dep esaplanadı, <parametrler dizimi>

- útir menen ajıratılǵan funkciya parametrleriniń tipi hám atları dizimi. Parametr atın jazbasada boladı. Dizim bos bolıwı da múmkin. Funkciya prototiplerine mısallar:

int almassın(int, int);

double max(double x,double y);

void func();

void shıǵarıw(void);

Funkciya prototipi túsirilip qaldırılıwı múmkin, eger programma tekstinde funkciya anıqlanıwı onı shaqıratuǵın funkciyalar tekstinen aldın jazılǵan bolsa. Biraq bul jaǵday jaqsı usıl esaplanbaydı, ásirese óz-ara bir-birine múráját etiwshi funkciyalar járiyalawda mashqalalar júzege keliwi múmkin.

Funkciya anıqlanıwı - funkciya baslaması hám figuralı qawısqa (‘{‘,}’) alınǵan qandayda bir ámeliy mazmunǵa iye deneden ibarat boladı. Eger funkciya qaytarıwshı tipi void tipinen parıqlı bolsa, onıń denesinde álbette sáykes tiptegi parametrge iye return operatorı bolıwı shárt. Funkciya denesinde birewden artıq return operatorı bolıwı múmkin. Olardıń qálegen birewin orınlaw arqalı funkciyadan shıǵıp ketiledi. Eger funkciyanıń mánisi programmada isletilmeytuǵın bolsa, funkciyadan shıǵıw ushın parametrsiz return operatorı isletiliwi múmkin yáki ulıwma return isletilmeydi. Aqırǵı jaǵdayda funkciyadan shıǵıw – aqırǵı jawılıwshı qawısqa jetip kelgende ámelge asırıladı.

Funkciya programmanıń qálegen bir modulinde tek bir nusxada anıqlanıwı kerek, onıń járiyalanıwı bolsa funkciyanı isletetuǵın modullerde bir neshe márte jazılıwı múmkin. Funkciya anıqlanıwında baslamadaǵı barlıq parametrler atları jazılıwı shárt.

Ádette programmada funkciya belgili bir jumıstı ámelge asırıw ushın shaqırıladı. Funkciyaǵa múráját qılǵanda, ol qoyılǵan máseleni sheshedi hám óz jumısın juwmaqlawında qandayda bir mánisti nátiyje sıpatında qaytaradı. Funkciyanı shaqırıw ushın onıń atı hám onnan keyin qawıs ishinde argumentler dizimi beriledi:

Bul jerde hár bir <argument> - funkciya denesine uzatılatuǵın hám keyin esaplaw processinde isletiletuǵın ózgeriwshi, ańlatpa yamasa turaqlı esaplanadı. Argumentler dizimi bos bolıwı múmkin.

Funkciyalar hám óz denesinde basqa funkciyalardı, ózin de shaqırıwı múmkin. Óz denesinde ózin shaqıratuǵın funkciyalarǵa rekursiv funkciyalar delinedi.

Ámeliy bólim:

C++ te funkciyanıń járiyalanıwı

Funkciyanıń járiyalaw sintaksisi:

returnType functionName (parameter1, parameter2,...) {

// funkciya denesi

}

Bunda funkciya járiyalanıwıńıń mısalı keltirilgen:

// funkciyanı járiyalaw

void tatu() {

cout << "Sálem Dúnya";

}

Bunda,

  • funkciyanıń atı: tatu()

  • funkciyanıń qaytarıw túri: void

  • bos qawsırma onıń heshqanday parametri joq degendi bildiredi

  • {}ishine funkciya denesi jazıladı

Funkciyanı shaqırıw

Joqarıdaǵı baǵdarlamada biz tatu() dep atalatuǵın funkciyanı járiyaladıq. Funkciyanı paydalanıw ushın tatu() onı shaqırıw kerek. Mine joqarıdaǵı tatu() funkciyanı tómendegishe shaqırıwǵa boladı.

int main() {

// funkciyanı shaqırıw

tatu();

}

Tolıq kodı:

#include<iostream>

using namespace std;

void tatu() {

cout << "Sálem Dúnya";

}

int main() {

// funkciyanı shaqırıw

tatu();

}

Funkciya parametrleri:

Joqarıda atap ótilgendey, funkciyanı parametrleri menen (argumentler menen) járiyalawǵa boladı. Parametr - funkciyanı járiyalaw gezinde beriletuǵın mánis. Mısalı, tómendegi funkciyanı qarastırayıq:

void printNum(int num) {

cout << num;

}

Bunda, int ózgeriwshi num funkciya parametri bolıp tabıladı. Funkciyanı shaqırıw gezinde funkciya parametrine mánis beremiz.

int main() {

int n = 7;

// funkciyanı shaqırıw

// n funkciya parametri

printNum(n);

return 0;

}

2-mısal. Parametrleri bar funkciya.

// tekstti shıǵarıw

#include <iostream>

using namespace std;

// sandı ekranǵa shıǵarıw

void displayNum(int n1, float n2) {

cout << "int sanı " << n1;

cout << "double sanı " << n2;

}

int main() {

int num1 = 5;

double num2 = 5.5;

// funkciyanı shaqırıw

displayNum(num1, num2);

return 0;

PAYDALANÍLǴAN ÁDEBIYATLAR

  1. Kosimov S.S. Axborot texnologiyalari. Toshkent – “Aloqachi”-2006

  2. B.Yu.Xodiev, B.A.Begalov i dr. Vvedenie v bazι dannιx i znaniy. Toshkent.-

2003

  1. İnformatsionnιe sistemι i texnologii v ekonomike i upravlenii. Pod red V.V.Trofimova. M., Vιsshee obrazovanie-2007

  2. Gulomov S.S. va boshk. Axborot tizimlari va texnologiyalari. Toshkent., «ShARK», 2000.-591 b.

  3. Olifer V.G. Komp`yuternιe seti. Printsipι, texnologii, protokolι: Ucheb. posobie dlya stud.vuzov/-3-e izd.-M.; SPB.; Nijniy Novgorod: Piter,2006.-958s.

  4. Trofimova İ.P. Sistemι obrabotki i xraneniya informatsii. M.: Vιssh. shkola,

1989.

  1. Zamulin A.V. Sistema programmirovaniya baz dannιx i znaniy. Novosibirsk : Nauka, 1990.

R. Djordeyn. Spravochnik programmista personal`nιx komp`yuterov tipa IVM RS, XT i AP. M.: Finansι i statistika, 1992

Соседние файлы в папке REFERAT