Mavzu: Massiv elementlarini tartiblashtirish. Matrisa maksimal, minimal elementnlarini aniqlash algoritmi
1-masala. Butun sonlardan iborat n ta son berilgan. Shu sonlarni elementlar miqdori kamayish tartibida chiqarish algoritmi va dasturini tuzing.
Dastur kodi
#include
using namespace std;
int main()
{
int n,t;
cin>>n;
int a[n];
for(int i=0; i cin>>a[i];
for(int i=0; i for(int j=i+1; j if (a[i] {
t=a[i];
a[i]=a[j];
a[j]=t;
}
//swap(a[i], a[j]);
for(int i=0; i cout< cout< cout<Natija
5
23 25 45 57 39
57 45 39 25 23
2-masala. N ta butun sonlardan iborat bir o’lchovli massiv berilga. Shu massiv elementlarini o’sish tartibida saralash dasturini tuzing.
Dastur kodi.
#include
#include
#include
using namespace std;
const int n=7;
int first, last;
//saralash funksiyasi
void quicksort(int *mas, int first, int last)
{
int mid, count;
int f=first, l=last;
mid=mas[(f+l) / 2]; //mos elementni hisoblash
do
{
while (mas[f]while (mas[l]>mid) l--;
if (f<=l) //elementlarni almashtirish
{
count=mas[f];
mas[f]=mas[l];
mas[l]=count;
f++;
l--;
}
} while (fif (firstif (f}
//bosh funksiya
int main()
{
int *A=new int[n];
srand(time(NULL));
cout<<"Massivni kiritish: ";
for (int i=0; i{
A[i]=rand()%10;
cout<}
first=0; last=n-1;
quicksort(A, first, last);
cout<for (int i=0; idelete []A;
}
Mavzu: Matrisalarni ko’paytirish dasturi. Amallar tartibini baholash.
Matritsalarni ko’paytirish formulasi
.
1-masala.
Ikkita matritsa berilgan. Ularning ko’paytmasini toppish algoritmi va dasturini tuzing.
Dastur kodi.
#include
using namespace std;//ulchamlari bir xil bulgan matritsalar uchun
int main()
{
int a[10][10],b[10][10],c[10][10],r,d,i,j,k;
cout<<"satrlar soni=";
cin>>r;
cout<<"ustunlar soni=";
cin>>d;
cout<<"matritsa elementlarini kiriting=\n";
for(i=1;i<=r;i++)
{
for(j=1;j<=d;j++)
{
cin>>a[i][j];
}
}
cout<<"ikkinchi matritsa elementlarini kiriting=\n";
for(i=1;i<=r;i++)
{
for(j=1;j<=d;j++)
cin>>b[i][j];}
for(i=1;i<=r;i++)
{
for(j=1;j<=d;j++)
{
c[i][j]=0;
for(k=1;k<=d;k++)
{
c[i][j]+=a[i][k]*b[k][j];
}
}
}
//natijani chop qilish
for(i=1;i<=r;i++)
{
for(j=1;j<=d;j++)
{
cout<}
cout<<"\n";
}
return 0;
}
Bu algoritm O(n3) murakkablik bilan baholanadi. Chunki, algoritmda 3 ta ichma-ich sikl operatoridan foydalanilgan.
for(i=1;i<=r;i++)
{
for(j=1;j<=d;j++)
{
c[i][j]=0;
for(k=1;k<=d;k++)
{
c[i][j]+=a[i][k]*b[k][j];
}
}
}
Mavzu: Taqribiy integrallash usullari. Zaruriy aniqlikni ta’minlovchi qadamni tanlash.
1-masala. integralni to’g’ri to’rtburchaklar formulasidan foydalanib taqribiy hisoblansin.
.
To’g’ri to’rtburchaklar formulasi. Bu formulani keltirib chiqarish uchun dastlab kesmani nuqtalar bilan n ta teng bo’lakka bo’lamiz.
Buning uchun integrallash kesmasini ta bo’lakka bo’lamiz va hisoblashlar natijalarini keltiramiz:
Bizning misolda bo’lgani uchun, to’g’ri to’rtburchaklar formulasiga asosan, quyidagi natijani hosil qilamiz.
X=0.1; =0.9901
X=0.2; =0.9615
X=0.3; =0.9174
X=0.4; =0.8621
X=1.0 =0.5000
7.5998
.
Dastur kodi
#include
#include
using namespace std;
double funk(double x)
{
return (1.0/(1+x*x));
}
int main()
{
double a,b,S=0, xa;
int n=10;
cout<<"integral chegarasini kiriting"<cin>>a>>b;
xa=a+0.1;
while (xa{
S+=funk(xa);
xa+=0.1;
}
S=S*fabs(b-a)/n;
cout << S;
return 0; }
Mavzu:Algebraik va transsendent tenglamalarni yechishda oraliqni teng ikkiga bo’lish, iterasiya usullari.
Chiziqsiz tenglamalarni ularni qaysi tipga tegishliligiga qarab yechimni analitik, ya’ni formula ko’rinishda aniqlash mumkin. Lekin, ko’pincha chiziqsiz tenglamani analitik yechimlarini formulalar yordamida aniqlash imkoniyati bo’lmaydi. Shuning uchun ixtiyoriy chiziqsiz tenglamani yechishning EHMdan foydalanishga mo’ljallangan sonli-taqribiy usullariga e’tibor kuchayib bormoqda.
Bu usullar jumlasiga quyidagilarni kiritish mumkin:
oraliqni teng ikkiga bo’lish;
oddiy ketma-ketlik (iterasiya);
urinmalar (Nyuton);
vatarlar (xord) va boshqalar
Sanab o’tilgan usullardan oraliqni teng ikkiga bo’lish va vatarlar usuli to’g’ri tanlangan oraliqlarda ko’tilgan natijalarni uzoqroq vaqt sarflab bo’lsa ham aniqlab beradi. Urinmalar va oddiy ketma-ketlik usullari esa mos ravishda to’g’ri tanlangan boshlang’ich qiymat va |(x)|<<1 shartda o’ta tezlik bilan taqribiy yechimni zarur aniqlikda topish imkoniyatini yaratadi.
Do'stlaringiz bilan baham: |