Islom karimov nomidagi toshkent davlat texnika universiteti energetikaning matematik masalalari


Download 1.89 Mb.
Pdf ko'rish
bet28/64
Sana20.10.2023
Hajmi1.89 Mb.
#1710691
1   ...   24   25   26   27   28   29   30   31   ...   64
Bog'liq
energetik matematik masalalari

Ostfunksiyalarning ishlatilishi 
Ostfunksiyalar asosiy funksiyaning ichida e‘lon qilinadi va yoziladi. 
Ostfunksiyaning tuzilishi asosiy funksiyaniki bilan bir xil. Quyida 
ostfunksiyaga ega bo‗lgan funksiyaga misol keltirilgan:
function [mean,stdev] = statv(x)
%USTATV Interesting statistics.


46 
%Ostfunksiyaga ega bo‘lgan funksiyaga misol 
n = length(x);
mean = avg(x,n);
stdev = sqrt(sum((x-avg(x,n)).^2)/n);
%--------------------------------------
function m = avg(x,n)
%Ostfunksiya
m = sum(x)/n;
function [mean,stdev] = statv(x)
Ushbu misolda x vektor elementlarining o‗rtacha qiymati avg(x,n)
ostfunksiya yordamida hisoblangan 
>> x=[1 2 3 4 5]; 
>> [a,m]=statv(x) 
a = 

m = 
1.4142 
>> help statv 
USTATV Interesting statistics.
Ostfunksiyaga ega bo‘lgan funksiyaga misol 
Ostfunksiya lokal, ya‘ni u tarkibida bo‗lgan m-faylning ichida 
ishlaydi. Faqat asosiy funksiyaga tegishli bo‗lgan izohni help name 
komandasi, m-faylning to‗liq matnini esa type name komandasi chiqaradi 
(name ning o‗rniga funksiyaning nomi yoziladi). Agar funksiyada ham 
ostfunksiyada ham umumiy o‗zgaruvchilar ishlatiladigan bo‗lsa ular 
fuksiyada ham ostfunksiyada ham global deb e‘lon qilinishi kerak. 
Argumentlarining soni o‘zgaruvchi funksiyalar 
Maxsus xususiyatlarga ega bo‗lgan funksiyalarni yaratishda quyidagi 
ikki funksiya foydali bo‗lishi mumkin:

nargin — berilgan funksiyadagi kirish parametrlarining sonini 
qaytaradi;

nargout — berilgan funksiyadagi chiqish parametrlarining sonini 
qaytaradi. 
Aytaylik, beshta xl, x2, xZ, x4 i x5 argumentlar kvadratlarining 
yig‗indisini hisoblaydigan funksiya yaratish zarur bo‗lsin. 
Odatdagi yo‗l bilan sum2_5 nomli funksiyani yaratamiz:


47 
function f=sum2_5(x1,x2,x3,x4,x5) ;
f=x1^2+x2^2+x3^2+x4*2+x5^*2;
Uning ishlashini tekshirib ko‗ramiz:
» sum2_5(l,2.3.4.5)
ans =
55
» sum2_5(l,2)
??? Input argument 'xZ' is undefined.
Error in ==> C:\MATI_AB\bin\sum2_5.m
On line 2 ==> f=x1^2+x2^2+x3^2+x4^2+x5^2;
Shunday qilib, beshta argument bo‗lganda funksiya to‗g‗ri ishlaydi. 
Lekin argumentlar soni beshtadan kam bo‗lsa xatolik to‗g‗risida axborot 
beradi. Har qanday sondagi kirish argumentlari bo‗lganda (yuqoridagi 
misol uchun beshtagacha) to‗g‗ri ishlaydigan funksiyani yaratish uchun 
nargin funksiyasidan foydalanamiz:
function f=sum2m_5(x1 ,x2 , xZ ,x4 , x5) ;
n=nargin;
if n==1 f=x1^2; end
if n==2 f=x1^2+x2^2;end
if n==3 f=x1^2+x2^2+x3^2; end
if n==4 f=x1^2+x2
^
2+x3^2+x4
^
2: end
if n==5 f=x1^2+x2^2+x3^2+x
Funksiyaning ishlashini tekshirib ko‗ramiz:
» sum2_5m(1)
ans =
1
» sum2_5m(1,2)
ans =
5
» sum2_5m( 1,2,3)
ans =
14
» sum2_5m(1,2,3,4)
ans =
30
» sum2_5m(1,2,3,4,5)
ans=
55
» sum2_5m(1,2,3,4,5,6)


48 
??? Error using ==> sum2_5m
Too many input arguments.
Shunday qilib, kirish parametrlarining soni 1 dan 5 tagacha bo‗lganda 
hisoblashlar to‗g‗ri bajariladi. Undan ortiq bo‗lsa xatolik to‗g‗risida 
axborot chiqadi. Bu axborotni interpretatorga biriktirilgan xatoliklarni 
diagnostika qilish tizimi beradi.

Download 1.89 Mb.

Do'stlaringiz bilan baham:
1   ...   24   25   26   27   28   29   30   31   ...   64




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©fayllar.org 2024
ma'muriyatiga murojaat qiling