Научная статья на тему 'С# ДА АМАЛИЙ МАСАЛАЛАРНИ ДАСТУРЛАШТИРИШ ТАДБИҚЛАРИ'

С# ДА АМАЛИЙ МАСАЛАЛАРНИ ДАСТУРЛАШТИРИШ ТАДБИҚЛАРИ Текст научной статьи по специальности «СМИ (медиа) и массовые коммуникации»

CC BY
23
5
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
аниқ интеграл / дисперсия / System / функция / массив / матрица. / definite integral / dispersion / system / function / array / matrix

Аннотация научной статьи по СМИ (медиа) и массовым коммуникациям, автор научной работы — Sh. Fayzullaev, S. Fayzullaev

Маълумки, C#да программа тузиш учун маълум бир кўникмалар талаб қилинади. Бу C# алфавитидан бошлаб, то охирги маърузуларгача давом этадиган назарий ва амалий машғулотлардир. Дастлабки тушунчалардан энг асосийси-бу C# да сонларнинг (бутун, ҳақиқий ва экспоненциал) ёзилиши тўлиқ ўрганилган бўлиши талаб қилинади. Сўнгра ўзгармас, ўзгарувчи, тамға тушунчалари, индексли ўзгарувчилар, массив тушунчаси, асосий математик функцияларнинг ёзилиши асосида ифодаларни ёзишни ўрганиш мумкин. Навбатдагиси, бу асосий тасвирлаш операторларибутун, ҳақиқий ва символли, ўзлаштириш, киритиш, чиқариш, шартли ва шартсиз ўтиш, такрорлаш операторлари бўлиб ҳисобланади. Фақат кейинчалик функция қисм программаси, процедура қисм программаси каби мавзуларни ўзлаштириш талаб қилинади. Амалий машғулотлардаги программалаштириш элементлари мана шундай мавзуларни қамраб олиб, оддийдан мураккабга томон олиб борилиши лозим. Тайёрланган прогаммаларни 2 хил режимда бажариш мумкин. Шулардан биттаси -Console режимида ишлашдир. Принцип жиҳатидан бу Паскальга ўхшаб кетади. Лекин, имкониятлари бўйича бу тил анча устун туради. Шу боисдан ҳам ҳар хил соҳалардан олинган оддий мисолларнинг қисқача алгоритмлари ва программаларини тўплаш мақсадга мувофиқдир. Таклиф қилинаётган мазкур ишда мисолларнинг алгоритмлари ва программалари келтирилиши билан бир қаторда, программаларнинг компьютердаги бажарилишлари учун қисқача кўрсатма ҳам келтирилади. Булар асосан-интегрални бирор тақрибий формула билан ҳисоблаш, матрицаларнинг симметрикларини текшириш, матрицаларнинг кўпайтмаларини ҳисоблаш, тажриба натижаларини қайта ишлаш, итерация усули ва оралиқни иккига бўлиш ёрдамида трансцендент тенламаларни ечиш, тенгламалар системасини Крамер усули билан ечиш кабилардир. Буларнинг олинишига сабаб шуки, бундай мисоллар ихтиёрий табиий йўналишдаги соҳаларда учраб туради ва уларни бирор алгоритмик тилда ечиш доим биринчи планда туради. Мисоллар иложи борича содда йўлларда ечилган ва компьютерда бажариш кўрсатмалари ҳам келтирилган.

i Надоели баннеры? Вы всегда можете отключить рекламу.

Похожие темы научных работ по СМИ (медиа) и массовым коммуникациям , автор научной работы — Sh. Fayzullaev, S. Fayzullaev

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

PROGRAMMING PRACTICE APPLICATIONS IN C#

As you know, programming in C# requires certain skills. This is a series of theoretical and practical exercises, starting with the C# alphabet and ending with the last lectures. The most basic of the initial concepts is that you should have a complete understanding of how to write numbers (integer, real, and exponential) in C#. Then you can learn how to write expressions based on constants, variables, symbolic concepts, index variables, array concepts, write basic mathematical functions. Further, these are the main representation operators integer, real and symbolic, assignment, input, output, conditional and unconditional transition, iteration operators. Only later it is necessary to study such topics as the program of the part of the function, the program of the part of the procedure. Elements of programming in practical classes should cover such topics and move from simple to complex. Prepared programs can be run in 2 different modes. One of them is to run in -Console mode. In principle, it is similar to Pascal. However, in terms of features, this language is far superior to it. Therefore, it is desirable to assemble short algorithms and programs based on simple examples from different areas. The proposed work, in addition to providing algorithms and example programs, also provides a brief instruction on how to run programs on a computer. Basically, this is the calculation of the integral using an approximate formula, checking the symmetries of matrices, calculating the product of matrices, processing the results of the experiment, solving transcendental equations by iteration and dividing the interval by two, solving the system of equations using the Cramer method. They are taken because such examples occur in fields of arbitrary natural direction, and their solution in the algorithmic language is always in the foreground. The examples are solved as simply as possible, and instructions for computer implementation are given.

Текст научной работы на тему «С# ДА АМАЛИЙ МАСАЛАЛАРНИ ДАСТУРЛАШТИРИШ ТАДБИҚЛАРИ»

INTERNATIONAL SCIENTIFIC JOURNAL VOLUME 1 ISSUE 6 UIF-2022: 8.2 | ISSN: 2181-3337

С# ДА АМАЛИЙ МАСАЛАЛАРНИ ДАСТУРЛАШТИРИШ ТАДБЩЛАРИ

Файзуллаев Шерали Бахтиёр ^ли

Термез давлат университет Ахборот технологиялари факультети талабаси Файзуллаев Самандарбек Бахтиёр ^ли

Термез давлат университет Кимё факультети талабаси https://doi. org/10.5281/zenodo.7105838 Аннотация. Маълумки, С#да программа тузиш учун маълум бир куникмалар талаб цилинади. Бу C# алфавитидан бошлаб, то охирги маърузуларгача давом этадиган назарий ва амалий машгулотлардир. Дастлабки тушунчалардан энг асосийси-бу C# да сонларнинг (бутун, %ациций ва экспоненциал) ёзилиши тулиц урганилган булиши талаб цилинади. Сунгра узгармас, узгарувчи, тамга тушунчалари, индексли узгарувчилар, массив тушунчаси, асосий математик функцияларнинг ёзилиши асосида ифодаларни ёзишни урганиш мумкин. Навбатдагиси, бу асосий тасвирлаш операторлари- бутун, %ациций ва символли, узлаштириш, киритиш, чицариш, шартли ва шартсиз утиш, такрорлаш операторлари булиб %исобланади. Фацат кейинчалик функция цисм программаси, процедура цисм программаси каби мавзуларни узлаштириш талаб цилинади. Амалий машгулотлардаги программалаштириш элементлари мана шундай мавзуларни цамраб олиб, оддийдан мураккабга томон олиб борилиши лозим. Тайёрланган прогаммаларни 2 хил режимда бажариш мумкин. Шулардан биттаси -Console режимида ишлашдир. Принцип жщатидан бу Паскальга ухшаб кетади. Лекин, имкониятлари буйича бу тил анча устун туради. Шу боисдан %ам %ар хил со%алардан олинган оддий мисолларнинг цисцача алгоритмлари ва программаларини туплаш мацсадга мувофицдир. Таклиф цилинаётган мазкур ишда мисолларнинг алгоритмлари ва программалари келтирилиши билан бир цаторда, программаларнинг компьютердаги бажарилишлари учун цисцача курсатма %ам келтирилади. Булар асосан-интегрални бирор тацрибий формула билан %исоблаш, матрицаларнинг симметрикларини текшириш, матрицаларнинг купайтмаларини %исоблаш, тажриба натижаларини цайта ишлаш, итерация усули ва оралицни иккига булиш ёрдамида трансцендент тенламаларни ечиш, тенгламалар системасини Крамер усули билан ечиш кабилардир. Буларнинг олинишига сабаб шуки, бундай мисоллар ихтиёрий табиий йуналишдаги со%аларда учраб туради ва уларни бирор алгоритмик тилда ечиш доим биринчи планда туради. Мисоллар иложи борича содда йулларда ечилган ва компьютерда бажариш курсатмалари %ам келтирилган.

Калит сузлар: аниц интеграл, дисперсия, System, функция, массив, матрица.

ПРОГРАММИРОВАНИЕ ПРИЛОЖЕНИЙ ПРАКТИЧЕСКИХ ЗАДАЧ НА C# Аннотация. Как известно, программирование на C# требует определенных навыков. Это серия теоретических и практических упражнений, начиная с алфавита C# и заканчивая последними лекциями. Самая основная из первоначальных концепций заключается в том, что вы должны иметь полное представление о том, как записывать числа (целые, действительные и экспоненциальные) в C#. Затем вы можете научиться писать выражения на основе констант, переменных, символьных понятий, индексных переменных, понятий массива, писать основные математические функции. Далее, это основные операторы представления - целочисленные, вещественные и символьные, присваивания, ввода, вывода, условного и безусловного перехода, операторы итерации. Только позже необходимо изучить такие темы, как программа части функции,

INTERNATIONAL SCIENTIFIC JOURNAL VOLUME 1 ISSUE 6 UIF-2022: 8.2 | ISSN: 2181-3337

программа части процедуры. Элементы программирования в практических занятиях должны охватывать такие темы и двигаться от простого к сложному. Подготовленные программы могут выполняться в 2 различных режимах. Один из них — запустить в режиме -Console. В принципе он похож на Паскаль. Однако с точки зрения возможностей этот язык намного превосходит его. Поэтому желательно собирать короткие алгоритмы и программы на простых примерах из разных областей. В предлагаемой работе, помимо предоставления алгоритмов и программ примеров, также приводится краткая инструкция по выполнению программ на компьютере. В основном это вычисление интеграла по приближенной формуле, проверка симметрий матриц, вычисление произведения матриц, обработка результатов эксперимента, решение трансцендентных уравнений методом итераций и деления интервала на два, решение системы уравнений по методу Крамера. Они взяты потому, что такие примеры встречаются в полях произвольного естественного направления, и их решение на алгоритмическом языке всегда находится на первом плане. Примеры решены максимально просто, а также даны инструкции для компьютерной реализации.

Ключевые слова: определенный интеграл, дисперсия, система, функция, массив, матрица.

PROGRAMMING PRACTICE APPLICATIONS IN C#

Abstract. As you know, programming in C# requires certain skills. This is a series of theoretical and practical exercises, starting with the C# alphabet and ending with the last lectures. The most basic of the initial concepts is that you should have a complete understanding of how to write numbers (integer, real, and exponential) in C#. Then you can learn how to write expressions based on constants, variables, symbolic concepts, index variables, array concepts, write basic mathematical functions. Further, these are the main representation operators -integer, real and symbolic, assignment, input, output, conditional and unconditional transition, iteration operators. Only later it is necessary to study such topics as the program of the part of the function, the program of the part of the procedure. Elements of programming in practical classes should cover such topics and move from simple to complex. Prepared programs can be run in 2 different modes. One of them is to run in -Console mode. In principle, it is similar to Pascal. However, in terms of features, this language is far superior to it. Therefore, it is desirable to assemble short algorithms and programs based on simple examples from different areas. The proposed work, in addition to providing algorithms and example programs, also provides a brief instruction on how to run programs on a computer. Basically, this is the calculation of the integral using an approximate formula, checking the symmetries of matrices, calculating the product of matrices, processing the results of the experiment, solving transcendental equations by iteration and dividing the interval by two, solving the system of equations using the Cramer method. They are taken because such examples occur in fields of arbitrary natural direction, and their solution in the algorithmic language is always in the foreground. The examples are solved as simply as possible, and instructions for computer implementation are given.

Keywords: definite integral, dispersion, system, function, array, matrix.

КИРИШ

Аник интегрални х,исоблаш. Маълумки,

INTERNATIONAL SCIENTIFIC JOURNAL VOLUME 1 ISSUE 6 UIF-2022: 8.2 | ISSN: 2181-3337

rb

S = I f(x)dx =

Jn

П

a f(a)+f(b) |

n—2

1

2

i=1

+ i*h)]

трапеция формуласи ёрдамида амалга оширилади. Бу ерда h =

b-a п-1'

а ва b

интегралнинг цуйи ва юцори чегалари булиб, n - эса оралицнинг булиниш тугун нуцталари сонини ифодалайди улрнинг цийматлари берилади. Масалан, а=0, b=1 ва n=11 булсин. ТАДЦЩОТ МАТЕРИАЛЛАРИ ВА МЕТОДОЛОГИЯСИ

Ушбу мисолнинг трапеция усули оркали х,исоблаш программаси куйидагича булади. using System;

/* Инт остидаги функция куриниши */ class inthis {

static Double func(Double x){ Double rez=x*x*x;

return (rez); }

/* Асосий программа */ public static void Main() { Console.WriteLine(" C# да 1-пр. " ); Double a,b,s,s1,h; int i,n; Console.WriteLine(" Киритинг a,b= ");

/* a,b,n- лар диалог режимида экрандан киритиш ва конвертация килиш */

a=Convert.ToDouble(Console.ReadLine());

b=Convert.ToDouble(Console.ReadLine());

Console.WriteLine(" n= ");

n=Convert.ToInt32(Console.ReadLine());

h=(b-a)/(n-1); /* булиниш кадами */

s1=0; /* Йигинди х,осил килиш учун */

for (i=1; i<n-1; i++) s1=s1+func(a+i*h);

s=h*(( func(a)+ func(b))/2+s1);

Console.WriteLine(); /* буш сатр ташлаш */

Console.WriteLine(" Трапеция усули буйича инт киймати s= "+s);

Console.WriteLine("Инт аник киймати s= "+0.25);

Console.WriteLine();

Console.ReadLine(); /* диалог режимида кутиш учун */ }

}

Бу программани бажаришга бериш учун C# ойнасидаги Debug --> Start Debugging F5 лар кетма кет босилади. Натижада цора ойнада C# да 2-пр Киритинг a,b= чикади. Шунда, 0 Enter

Ъ

INTERNATIONAL SCIENTIFIC JOURNAL VOLUME 1 ISSUE 6 UIF-2022: 8.2 | ISSN: 2181-3337

Enter босилади. Энди экранда Трапеция усули буйича инт киймати s= 0,253086 Инт аник киймати s= "+0,25

чикади.

ТАДЦЩОТ НАТИЖАЛАРИ

1. Берилган A(nxm) матрицанинг симметриклигини текшириш программаси

Фараз цилайлик,

/ ап аг2 ... а1т

_ Й21 Й22 ... &2т \ап1 &п2 "■ ,

Берилган булсин. У симметрик дейилади, агарда а^ = aji бажарилса (i = 1, п; j = 1,т ). Программаси цуйидагича булади: using System; /* Асосий программа */

class Simmatr

{

public static void Main()

{

Console.WriteLine(" C# да 2-пр. Матрицанинг симметрик-ни текшириш "); int n,m,i;

Console.WriteLine("Матрицанинг улчамини киритинг n,m= " ); n=Convert.ToInt32(Console.ReadLine()); m=Convert.ToInt32(Console.ReadLine());

Double [ , ] a=new Double[n,m]; /* А массивни эълон килиш */ Console.WriteLine(" а11, а12 ,, , а1т ларни киритинг= "); /* aij - ларни экрандан киритиш ва конвертация килиш */

for(i=1; i<n; i++) {

for(j=1; j<m; j++)

a[i,j]=Convert.ToDouble(Console.ReadLine());

}

k=0;

for(i=1; i<m; i++) {

for(j=l; j<l; j++) if( a[i,j]/== a[j,i]) k=1;

}

if( k==0) Console.WriteLine("Матрицанинг симметрик "); else Console.WriteLine("Матрица симметрик эмас"); /* Матрицани чоп этиш */

for(i=1; i<n; i++) {

Console.WriteLine( );

}

} /* 5-пр охири */

Бу программани бажаришга бериш учун C# ойнасидаги Debug --> Start Debugging F5 лар кетма кет босилади. Натижада цора ойнада C# да 2-пр. Матрицанинг симметрик-ни текшириш Деган ёзув чицади ва n,m ларнинг цийматларини циритиш суралади: Матрицанинг улчамини киритинг n,m= буларнинг мос цийматларини киритгандан кейин эса аи, а12, , , , а1т — ларни киритинг

деган хабар чицади. Шунда, А матрицаларнинг элементлари сатр буйича киритилади. Натижада экранда текшириш натижаси к га боглиц %олда Матрицанинг симметрик

ёки

Матрица симметрик эмас

деган хабар босиб чицарилади. Сунгра А матрицанинг а[.i,j] элементлари чоп этилади. 2. А (n x m) ва В (m x l) матрицалар купайтмасини х,исобланг.

Фараз цилайлик,

Шунда С = AB =

купайтмани уисоблашга тузилган программа цуйидагича булади:

using System;

/* Асосий программа */

INTERNATIONAL SCIENTIFIC JOURNAL VOLUME 1 ISSUE 6 UIF-2022: 8.2 | ISSN: 2181-3337

Console.WriteLine(" C# да 3-пр. Матрицалар купайтмасини х,исоблаш " ); int n,m,l;

n=Convert.ToInt32(Console.ReadLine());

m=Convert.ToInt32(Console.ReadLine());

l=Convert.ToInt32(Console.ReadLine());

Double [ , ] a=new Double[n,m]; /* А массивни эълон килиш */ Double [ , ] b=new Double[m,l]; /* В массивни эълон килиш */ Double [ , ] c=new Double[n,l]; /* C массивни эълон килиш */ Console.WriteLine(" а11, а12,,, , а1т ларни киритинг= ");

/* aij, bij - ларни экрандан киритиш ва конвертация килиш */ for(i=1; i<n; i++) { for(j=1; j<m; j++)

a[i,j]=Convert.ToDouble(Console.ReadLine());

}

Console.WriteLine("bn, b12 ,, , b1t-ларни киритинг= "); for(i=1; i<m; i++) {

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

for(j=1; j<l; j++)

b[i,j]=Convert.ToDouble(Console.ReadLine());

}

/* Купайтмани х,исоблаш кисми */ for(i=1; i<m; i++) {

for(j=1; j<l; j++) { c[ij]=0; for(k=1; k<n; k++) {

c[i,j]= c[i,j]+ a[i,k]* b[k,j]; }

}

}

/* Купайтмани чоп этиш */ for(i=1; i<n; i++) { Console.WriteLine( ); for(j=1; j<l; j++) {

Console.WriteLine( c[i,j]); }

}

Console.ReadLine(); /* диалог режимида кутиш учун */

}

} /* 3-пр охири */

Бу программани бажаришга бериш учун C# ойнасидаги Debug --> Start Debugging F5 лар кетма кет босилади. Натижада цора ойнада C# да 3-пр Матрицалар купайтмасини хисоблаш

Деган ёзув чицади ва n,m,lларнинг цийматларини циритиш суралади. Кейин эса аи, а12 , , , а1т -ларни киритинг

INTERNATIONAL SCIENTIFIC JOURNAL VOLUME 1 ISSUE 6 UIF-2022: 8.2 | ISSN: 2181-3337

деган хабар чицади. Шунда, А ва сунгра В матрицаларнинг элементлари сатр буйича киритилади.

Натижада экранда купайтма матрицанинг c[i,j] элементлари чоп этилади. 3. Дисперсияни хисоблашга доир масалалар

1) n тажрибаутказилиб, хг,х2, х3, ... хп натижалар олинган. Уларнингуртачасини:

п

х = — ; Xj

пА-i

i=l

ва дисперсиясини

п

п

I i=l

уисоблаш программаларини тузинг.

using System;

/* Асосий программа */ class Urt_Disp{

public static void Main()

{

Console.WriteLine(" C# да 4-пр. Уртача ва дисперсия х,исоблаш " ); int n;

Console.WriteLine(" Киритинг n= " ); n=Convert.ToInt32(Console.ReadLine()); Double s,sr,disp;

Double [ ] x=new Double[n]; /* x массивни эълон килиш */ s=0;

Console.WriteLine(" x1, x2 ,, , , xn ларни киритинг= "); /* Xi - ларни экрандан киритиш ва конвертация килиш */

for(i=1; i<n; i++) {

x[i]=Convert.ToDouble(Console.ReadLine()); s=s+x[i];

}

sr=s/n; /* Уртачаси топилади */ s=0; //Дисперсия х,ис-ди

for(i=1; i<n; i++) {

s=s+Math.Pow((x[i]-sr),2);

}

disp=Math.S qrt(s)/(n-1); Console.WriteLine( );

Console.WriteLine( " Урта арифметик киймати "+sr); Console.WriteLine( "Дисперсияси "+disp);

INTERNATIONAL SCIENTIFIC JOURNAL VOLUME 1 ISSUE 6 UIF-2022: 8.2 | ISSN: 2181-3337

}

} /* 4-пр охири */

Бу программани бажаришга бериш учун C# ойнасидаги Debug --> Start Debugging F5 лар

кетма кет босилади. Натижада цора ойнада

C# да 4-пр. Уртача ва дисперсия хисоблаш

Деган ёзув чицади ва

Киритинг n=

деган хабар чицади. Шундан сунг х1> х2,> , , хп -ларни киритинг деган хабар чицади. Буларни киритиб булгач, экранда Урта арифметик киймати х= Дисперсияси о= цийматлари билан чоп этилади. 4. Итерация усули ёрдамида куйидаги 1пх-х + 1,8 = 0 (1)

Тенглама илдизини [2, 3] оралигида г — 10~4 аницликда топинг. Бунинг учун (1)ни х — 1пх + 1,8 куринишга келтириб олинади. Сунгра

хп+1 — + 1,8

деб, х0 ни ихтиёрий олган %олда щсоблаймиз, бунда п=0,1,2,...Х,исоблашни токи

^n+i — 1 < ^

шарти бажарилмагунча давом эттирилади. Программаси цуйидагича булади: using System;

/* Асосий программа */

class Iterus

{

public static void Main()

{

Console.WriteLine(" C# да 5-пр. Итерация усули "); int k,ki;

Double x0, x1,eps;

Console.WriteLine("БошланFич я^инлашишни киритинг х0 = " ); x0=Convert.ToDouble (Console.ReadLine()); Console.WriteLme("Як;инлашиш хатолигини киритинг e= " ); eps=Convert.ToDouble (Console.ReadLine()); Console.WriteLine("Итерация сонига чегарани киритинг ki= " ); ki=Convert.ToInt32 (Console.ReadLine());

k=-1;

kmet: k++; if(k>ki)goto metl; x1=log(x0)+1,8;

if(Math.Abs(x1-x0)<eps) goto met1; {x0=x1; goto kmet;

INTERNATIONAL SCIENTIFIC JOURNAL VOLUME 1 ISSUE 6 UIF-2022: 8.2 | ISSN: 2181-3337

met1:

Console.WriteLine(" Такр илдиз x1="+x1; " аниклик е= "+eps ); Console.WriteLine(" Итерациялар сони k="+k; );

Console.ReadLine(); /* диалог режимида кутиш учун */ }

} /* 5-пр охири */ МУ^ОКАМА

Бу программани бажаришга бериш учун C# ойнасидаги Debug --> Start Debugging F5 лар кетма кет босилади. Натижада цора ойнада C# да 5-пр. Итерация усули Бошла^ич якинлашишни киритинг х0 = Якинлашиш хатолигини киритинг £= Итерация сонига чегарани киритинг ki= Такр илдиз x1="+x1; " аниклик £= "+eps Итерациялар сони k=" чоп этилади.

5. Оралицни иккига булиш усули ёрдамида куйидаги

X2

cos х — е 2 + х — 1 = 0 тенгламанинг илдизини [1;2] оралицда г = 10-4 аницликда топинг. Программа тузишдан олдин алгоритмни куриб утайлик. Фараз цилайлик, f(x) = 0 тенгламанинг илдизини [a,b] оралицда е аницликда топиш талаб цилинсин. Агар берилган [a,b] оралицда битта ечим борлиги аниц булса, у уолда f(a)f(b) < 0 булиши уам маълум. Оралицни иккига булсак,у уолда изланаётган илдизушбу [a,c] ва [c,b]

оралицлардан бирида ётади, бу ерда с = . Илдизнинг айнан цайси оралицда

эканлигини аницлаш учун f(c) уисобланади ва d = f(a)f(c) ишораси текширилади. Бунда учта уол булиши мумкин:

1-уол. Агар d < 0 булса илдиз [a, c] да ётади. Энди бу оралицни яна иккига буламиз. Шунда оралицлар [a, ва булиб, илдизнинг булардан цайси оралицда эканлиги

эса f(a)f < 0 ёки f f(c) < 0 ларнинг цайси бирида бажарилишига боглиц ва худди шунга ухшаш давом этади.

с+Ь

2-уол. Агар d > 0 булса илдиз [с,Ь] да ётади. Оралицни булиш амалини [с, ——] ва ,Ъ] лар буйича давом этилади. Бу ерда уам худди олдингидек f(.c)f(+^) < 0 ёки

f (-+-) f(b) < 0 шартларидан бирини бажарилиши буйича давом этади. Аммо, уар

иккала уолда уам оралицни булиш жараёни токи булиниш оралицчаси lb — al < е булгунча такрорланаверади. Шарт бажарилиши биланоц илдиз сифатида оралиц чеккасидаги битта циймати олинади.

3-уол. Агар d = 0 булса илдиз с нуцтада ётади, яъни х=с булади. Шуларга асосан ёзилган программа цуйидагича булади:

using System;

/* Асосий программа */

INTERNATIONAL SCIENTIFIC JOURNAL VOLUME 1 ISSUE 6 UIF-2022: 8.2 | ISSN: 2181-3337

class Oral2b

{

Static Double f(Double x)

{

X2

/* cos x — e 2 + x — 1 — 0 */

Double rez=Math.cos(x)- Math.exp(-x*x/2)+x-1; }

public static void Main()

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

{

Console.WriteLine(" C# да 6-пр. Ораликни иккига булиш усули "); Double a,b,eps,d,c;

Console.WriteLme("Оралик;нинг чеккаларини киритинг a,b = " ); a=Convert.ToDouble (Console.ReadLine()); b=Convert.ToDouble (Console.ReadLine()); Console.WriteLine("Якинлашиш хатолигини киритинг e= " ); eps=Convert.ToDouble (Console.ReadLine()); Console.WriteLine( ); met1: c=(a+b)/2; d=f(a)*f(c); if(d<0) { b=c;

if(Math.Abs(b-a)>eps) goto met1;

else goto met2; }

if(d>0) { a=c;

if(Math.Abs(b-a)>eps) goto met1;

else goto met2; }

met2: x=c;

Console.WriteLine(" Такр илдиз x="+x; " аниклик e= "+eps );

Console.ReadLine(); /* диалог режимида кутиш учун */ }

} /* 6-пр охири */

Бу программани бажаришга бериш учун C# ойнасидаги Debug -- > Start Debugging F5 лар

кетма кет босилади. Натижада цора ойнада

C# да 6-пр. Ораликни иккига булиш усули

Ораликнинг чеккаларини киритинг a,b =

Якинлашиш хатолигини киритинг £=

Такр илдиз x="+x; " аниклик £= "+eps

чоп этилади.

6. Ньютон усули билан куйидаги 3х — Мпх -5 — 0 (1)

тенгламанинг илдизини [2; 4] оралигида г — 10~4 аницликда топинг.

INTERNATIONAL SCIENTIFIC JOURNAL VOLUME 1 ISSUE 6 UIF-2022: 8.2 | ISSN: 2181-3337

Бунинг учун (1)ни f(x) — 3x — Minx — 5 — 0 куринишга келтириб олинади. Сунгра уни Тейлор цаторига бирор х0 нуцта атрофида ёйсак, унда

f(x) — f( х0) + (х— x0)f'(x0) — 0 дан агар f'(x0) Ф 0 булса, унда

х —х0 —f( x0)/f'(x0)

келиб чицади. Бундан эса

Хп+! —xn—f{ xn)/f'(xn) (n = 0, 1,... )

реккурент формулага эга буламиз. Агар х0 ни ихтиёрий деб олинса, %олда уисоблашни токи

lxn+1—xnl<£ (n=0, 1,. )

шарти бажарилмагунча давом эттирилади. Программаси цуйидагича булади: using System;

/* Асосий программа */

class IterNus

{

Static Double funk(Double x)

{

/* f(x) — 3x — Mux — 5 — 0 */

Double rez=3*x-4*Math.log(x)- 5;

}

Static Double funkPr(Double x)

{

/* f(x) — 3 — 4/x */

Double rez=3-4/x; }

public static void Main()

{

Console.WriteLine(" C# да 7-пр. Ньютон усули "); int k,ki;

Double x0, x1,eps;

Console.WriteLine("БошланFич якинлашишни киритинг х0 = " ); x0=Convert.ToDouble (Console.ReadLine()); Console.WriteLine("Якинлашиш хатолигини киритинг e= " ); eps=Convert.ToDouble (Console.ReadLine()); Console.WriteLine("Итерация сонига чегарани киритинг ki= " ); ki=Convert.ToInt32 (Console.ReadLine());

k=-1;

kmet: k++; if(k>ki)goto met1; if(funkPr(x0))==0) go to metkon; x 1=x0-funk(x0)/ funkPr(x0); if(Math.Abs(x1-x0)<eps) goto met1; {x0=x1; goto kmet;

INTERNATIONAL SCIENTIFIC JOURNAL VOLUME 1 ISSUE 6 UIF-2022: 8.2 | ISSN: 2181-3337

}

met1:

Console.WriteLine(" Такр илдиз x1="+x1; " аниклик е= "+eps ); Console.WriteLine(" Итерациялар сони k="+k; );

Console.ReadLine(); /* диалог режимида кутиш учун */ }

metkon:

} /* 7-пр охири */

Бу программани бажаришга бериш учун C# ойнасидаги Debug -- > Start Debugging F5 лар кетма кет босилади. Натижада цора ойнада C# да 7-пр. Ньютон усули Бошла^ич якинлашишни киритинг х0 = Якинлашиш хатолигини киритинг £= Итерация сонига чегарани киритинг ki= Такр илдиз x1="+x1; " аниклик £= "+eps Итерациялар сони k=" чоп этилади.

7. Чизикли алгебраик тенгламалар системасини ечишда оддий итерациялар усулини куллаш учун уни каноник куринишга келтириб ечинг.

2х1 — 3х2 + 6х3 + 20х4 = 10 х1 + 2х2 — 15х3 + 3х4 = 17 —8хг —х2 + 10х3 + 19х4 = 10 11х1 — 9х2 — 2х3 — х4 = 6 Бундан диагонал элементларига нисбатан ечиб олсак,

/'х1 = (10 + 3х2 — 6х3 — 20x4)12 х2 = (17 — х1 + 15х3 — 3x4)12 х3 = (10 + 8х1 + х2 — 19х4)/10 х4 = 11х1 + 9х2 + 2х3 — 6 келиб чикади. Энди оддий итерация усулига кура системани ёзиб олсак

'Xik+i = (10 + зХ2к — 6x3k — 20х4к)/2 х2к+1 = (17 — х1к + 15х3к — 3х4к)/2 х3к+1 = (10 + 8х±к + х2к — 19х4к)/10 х4к+г = 11х±к + 9х2к + 2х3к — 6 у х,олда Xik ларга кура xik+1 ларни х,исоблаш мумкин. (i=1,4 ; k=0, 1, ...) Х,исоблашлар токи max[lxik+1 — xkl} < е (k=0, 1,... )

шарти бажарилмагунча давом эттирилади. Программаси цуйидагича булади: using System;

/* Асосий программа */

class IterOdd

{

public static void Main()

{

Console.WriteLine(" C# да 8-пр. ЧАТСни оддий итерация билан ечиш"); int k,ki;

INTERNATIONAL SCIENTIFIC JOURNAL VOLUME 1 ISSUE 6 UIF-2022: 8.2 | ISSN: 2181-3337

Double x10, x1, x20, x2, x30, x3, x40, x4,eps; Console.WriteLine( "Бошлаетич кийматларни киритинг x10, x20, x30, x40 = " ); x10=Convert.ToDouble (Console.ReadLine()); x20=Convert.ToDouble (Console.ReadLine()); x30=Convert.ToDouble (Console.ReadLine()); x40=Convert.ToDouble (Console.ReadLine()); Console.WriteLine("Якинлашиш хатолигини киритинг e= " ); eps=Convert.ToDouble (Console.ReadLine()); Console.WriteLine("Итерация сонига чегарани киритинг ki= " ); ki=Convert.ToInt32 (Console.ReadLine()); k=-1;

kmet: k++; if(k>ki)goto met1; x1=(10-3*x20-6*x3o-20*x40)/2; x2=(17-x 10+15*x30-3*x40)/2; x3=(10+8*x10+x20-19*x40)/10; x4=11*x10+9*x20 +2*x30-6)/10; if(Math.Abs(x1-x10) >eps)

{x10=x1; x20=x2; x30=x3; x40=x4; goto kmet); }

if(Math.Abs(x2-x20) >eps)

{ x10=x1; x20=x2; x30=x3; x40=x4; goto kmet); }

if(Math.Abs(x3-x30) >eps)

{ x10=x1; x20=x2; x30=x3; x40=x4; goto kmet); }

if(Math.Abs(x4-x40) >eps)

{ x10=x1; x20=x2; x30=x3; x40=x4; goto kmet); }

met1:

Console.WriteLine(" Такр илдиз x1="+x1; " x2="+x2; " x3="+x3; " x4="+x4);

Console.WriteLine(" аниклик e= "+eps ); Console.WriteLine(" Итерациялар сони k="+k; );

Console.ReadLine(); /* диалог режимида кутиш учун */ }

} /* 8-пр охири */

Бу программани бажаришга бериш учун C# ойнасидаги Debug --> Start Debugging F5 лар кетма кет босилади. Натижада цора ойнада ХУЛОСА

C# да 8-пр. ЧАТСни оддий итерация билан ечиш Бошла^ич кийматларни киритинг х10,х20,х30,х40 =

INTERNATIONAL SCIENTIFIC JOURNAL VOLUME 1 ISSUE 6 UIF-2022: 8.2 | ISSN: 2181-3337

деган хабар чицади. Шунда, x10, x20, x30, x40 ларучун

lEnter

2Enter

3Enter

4Enter

деб фараз цилсак, унда

Якинлашиш хатолигини киритинг £=

Итерация сонига чегарани киритинг ki=

ларнинг цийматлари киритилса, ундан кейин

аниклик £="...

Итерациялар сони k=...

ва системанинг ечимлари

Такр илдиз x1= ...; x2=...; x3=...; x4=...

куринишларда босилиб чицади.

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

8. Тенгламалар системасини ечиш

Фараз цилайлик, цуйидаги икки номаълумли иккита тенглама системасини ечиш талаб цилинсин:

(а1гх + а±2У = Ъг \a2iX + а,22У = Ь2 Бу ерда а^ ва bi ларнинг цийматлари берилади (i=1,2; j=1,2). Системани Крамер формуласи ёрдамида ечиш учун, асосий детерминант

D = ац* а,22 — 0,21 * а-12 уисобланади ва агар D Ф 0 булсагина ёрдамчи детерминантларни цуйидаги формулалар билан уисобланади:

Dx = b1* а22 — Ь2* аХ2 Dy = а11 * Ь2 — а21 * Системанинг ечимлари эса x = Dx/D ва y=Dy/D

формулалар орцали топилади. Акс уолда, яъни D=0 булганда тенгламалар системаси ечимга эга булмайди. Шунга асосан ёзилган программа цуйидагича булади: using System;

/* Асосий программа */

class Kramer

{

public static void Main()

{

Console.WriteLine(" C# да 8-пр. Тенламалар системасини Крамер усулида ечиш " ); Double x, y, D, Dx, Dy ;

Double [ , ] a=new Double[3,3]; /* А массивни эълон килиш */ Double [ ] b=new Double[3]; /* В массивни эълон килиш */ Console.WriteLine(" а11, а12 , а21, а22 ларни киритинг= "); /* aij - лар диалог режимида экрандан киритиш ва конвертация килиш */ a[1,1]=Convert.ToDouble(Console.ReadLine()); a[1,2]=Convert.ToDouble(Console.ReadLine());

INTERNATIONAL SCIENTIFIC JOURNAL VOLUME 1 ISSUE 6 UIF-2022: 8.2 | ISSN: 2181-3337

a[2,1]=Convert.ToDouble(Console.ReadLine()); a[2,2]=Convert.ToDouble(Console.ReadLine()); Console.WriteLine(" b2 — ларни киритинг= "); b[1]=Convert.ToDouble(Console.ReadLine()); b[2]=Convert.ToDouble(Console.ReadLine());

D=a[1,1]* a[2,2] - a[2,1]*a[1,2]; /* Асосий детерминантни ^исоблаш */ If(D* 0){

Dx=b[1]* a[2,2] - b[2]*a[1,2]; /* Ёрдамчи детерминант */ Dy=a[1,1]*b[2] - a[2,1]*b[1]; /* Ёрдамчи детерминантни */ x= Dx/D; y= Dy/D; /* Система ечимларини х,исоблаш */ Console.WriteLine(" Системанинг ечимлари x= "+x, " y="+y); Console.WriteLine(); } else

Console.WriteLine(" Системанинг ечимлари йук");

}

} /* 8 пр охири */

Бу программани бажаришга бериш учун C# ойнасидаги Debug -- > Start Debugging F5 лар кетма кет босилади. Натижада цора ойнада C# да 4-пр

а11, а12 , а21, а22 — ларни киритинг

деган хабар чицади. Шунда, А матрицани А — (^ ва В векторни В — (^j деб фараз

цилсак, унда А нинг элементлари

lEnter

2Enter

3Enter

4Enter

каби босиб киритилади. Сунгра ойнада b1, b2 — ларни киритинг

деган хабар чиццандан кейин В нинг элементлари

3Enter

7Enter

сингари киритилади. Натижада экранда

C# да 8-пр. Тенламалар системасини Крамер усулида ечиш

Системанинг ечимлари x= l y=1

чицади ва иш якунланади. Агар А — (^ 2) булса, экранда

Системанинг ечимлари йук

деган хабар чицади. 9. Квадрат тенгламани ечиш

Малумки, ах2 + Ьх + с — 0 тенгламани ечиш учун d — b2 ечим ушбулар орвали топилади:

4ас > 0 булганда иккита

=

-b+Tä

=

-b-Jd-

Агар d < 0 булса, у %олда х Е 0

INTERNATIONAL SCIENTIFIC JOURNAL VOLUME 1 ISSUE 6 UIF-2022: 8.2 | ISSN: 2181-3337

Шунга кура унинг программаси цуйидагича булади: using System;

/* Асосий программа */ class kvtye{

public static void Main()

{

Console.WriteLine(" C# да 10-пр. Кв тенгламани ечиш" ); Double a,b,c,d,x1,x2; Console.WriteLine(" Киритинг a,b,c= ");

/* a,b,c- лар диалог реж-да экрандан киритиш ва конвертация килиш */ a=Convert.ToDouble(Console.ReadLine()); b=Convert.ToDouble(Console.ReadLine()); c=Convert.ToDouble(Console.ReadLine()); d=b*b-4*a*c; if(d>=0){

x1=(-b -Math.S qrt(d))/(2*a); x 1=(-b+Math.S qrt(d))/(2*a); Console.WriteLine(); /* буш сатр ташлаш */

Console.WriteLine(" Ечимлар х1,х2= "+x1,x2); }

else Console.WriteLine(" Ечим йук ");

Console.ReadLine(); /* диалог режимида кутиш учун */ }

}

Бу программани бажаришга бериш учун C# ойнасидаги Debug --> Start Debugging F5 лар

кетма кет босилади. Натижада цора ойнада

C# да 10-пр. Кв тенгламани ечиш

Киритинг a,b,c=

чикади. Шунда,

1 Enter

2 Enter

1 Enter босилади. Натижада экранда Ечимлар х1,х2= -1 -1

чицади ва иш якунланади. Хацицатдан уам a,b,c -лар 1,2,1 булганда мана шундай аниц

ечим олинади. Агар a,b,c -лар сифатида 2,2,1 киритилса, экранда

Ечим йук

деган хабар чицади.

10. k натурал сон берилган. Унинг ракамлар сонини хисоблаш

Бунинг учун:

1). у сон киритилади

2)уисобчи олиб, унга 0 бериб цуйилади.

3)берилган сонни 10 га булинади

4) агар булинма 1 дан кичик булса уисобчи чоп этилади ва иш тухтатилади. Акс уолда уисобчини 1 тага оширади ва бошцаришни 3-бандга узатади.

INTERNATIONAL SCIENTIFIC JOURNAL VOLUME 1 ISSUE 6 UIF-2022: 8.2 | ISSN: 2181-3337

Мана шу алгоритм буйича ёзилган программа цуйидагича булади: using System;

/* Асосий программа */

class Natson

{

public static void Main()

{

Console.WriteLine(

" C# да 11-пр. k натурал соннинг ракамлар сонини х,исоблаш "); int n,k; Double l;

Console.WriteLine(" k натурал сонни киритинг k = " ); k=Convert.ToInt32 (Console.ReadLine()); n=0; l=k;

kmet: n++; /* Ракамлар сонини х,исоблаш */ l=l/10.0;

if(l>=1)goto kmet; Console.WriteLine("Pакамлар сони n="+n );

Console.ReadLine(); /* диалог режимида кутиш учун */ }

} /* 11-пр охири */

Бу программани бажаришга бериш учун C# ойнасидаги Debug --> Start Debugging F5 лар кетма кет босилади. Натижада цора ойнада

C# да 12-пр. k натурал соннинг ракамлар сонини х,исоблаш Hатурал сонни киритинг

k =

деган хабар экранга чицади ва керакли бутун сон киритилади. Хисоблаш натижасида

Pакамлар сони n= деб циймати билан чоп этилади.

REFERENCES

1. Шильд.Г.Питер. С#. Учебный курс. (рус тилида), 2004.

2. Павловская Т. А. Программирование на языке высокого уровня. C# . Питер. 2006.

i Надоели баннеры? Вы всегда можете отключить рекламу.