Muhammad Al-Xorazmiy nomidagi
Toshkent Axborot Texnologiyalari
Universiteti Kompyuter Injineringi fakulteti
Amaliy ish
Bajardi:Sattorov Samariddin Tekshirdi: Begimov Oybek
19-Variant Topshiriq №1
NxM o’lchamdagi ikki o’lchovli massiv (matritsa) hosil qilinsin va elementlari kiritilsin va matritsa ko’rinishida ekranga chiqarilsin, hosil bo’lgan matritsa elementlaridan variantdagi shartlar bo’yicha bir o’lchovli massiv hosil qilinib ekranga chiqarilsin.
19 (nxm) o’lchamdagi ikki o’lchovli A massiv berilgan, matritsaning har bir satridagi juft elementlari ko’paytmasidan tashkil topgan bir o’lchovli massiv hosil qiling .
Topshiriq №2
Berilgan integral qiymatini to‘g‘ri to‘rtburchaklar, trapetsiyalar va Simpson usullarida hisoblansin. (n=100 qiymatda natija olinsin). Har bir usul bo‘yicha har 10 qadamda n - qiymatda olingan natijalar quyidagi jadvalga to’ldirilib tahlil qilinsin
To‘g‘ri to‘rtburchaklar usuli
#include
#include
using namespace std;
double f (double x){
return (tan(pow(2 - x, 2) / 4));
}
int main(){
int i,n;
double a=0,b=0.785,S=0,I,h,x;
cin>>n;
h=(b-a)/n;
for(i=1;i<=n;i++){
x=a+(i*h)+(h/2);
S+=f(x);
}
if (n%10==0){
cout<cout<cout<}
Trapetsiyalar usuli
#include
#include
using namespace std;
double f (double x){
return (tan(pow(2 - x, 2) / 4));;
}
int main(){
int i,n;
double a=0,b=0.785,S=0,I,h,x;
cin>>n;
h=(b-a)/n;
for(i=1;i<=n;i++){
x=(a+(i-1)*h);
S+=f(x)/2;
}
if (n%10==0){
cout<cout<cout<}
}
Simpson usuli
#include
#include
using namespace std;
double f(double x)
{
return (tan(pow(2 - x, 2) / 4));
}
int main() {
double a, b, n, x, y;
cin >> a >> b >> n;
double I=n+1, I1=0;
for (int N=2; (N<=4)||(fabs(I1-I)>n); N*=2)
{
double h, sum2=0, sum4=0, sum=0;
h=(b-a)/(2*N);
for (int i=1; i<=2*N-1; i+=2)
{
sum4+=f(a+h*i);
sum2+=f(a+h*(i+1));
}
x = sum4 + sum2;
sum=f(a)+4*sum4+2*sum2-f(b);
I=I1;
I1=(h/3)*sum;
y=sum;
}
cout << x << endl;
cout << y << endl;
cout << I1 << endl;
}
Topshiriq №3
Berilgan algebraik va transsendent tenglamalarni yechishda oraliqni teng ikkiga bo‘lish va vatarlar usullaridan foydalanib tenglamaning taqribiy ildizini 0.1, 0.01, 0.001, 0.0001, 0.00001, 0.000001 aniqliklarda hisoblansin. Olingan natijalar quyidagi jadvalga to’ldirilib tahlil qilinsin.
Kesmani teng ikkiga bo’lish
#include
#include
using namespace std;
double f (double x){
return (pow(x, 7) - x * x + 4);
}
int main()
{
double a,b,c,E;
cin>>a>>b>>E;
int k=0;
if(f(a)*f(b)<0){
c=(a+b)/2;
while (abs(f(c))>E){
if(f(a)*f(b)<0){
b=c;
}
else{
a=c;
}
c=(a+b)/2;
k++;
}
cout<
cout<
}
else {
cout<<"Yechimga ega emas";
}
return 0;
}
Vatarlar usuli
#include
#include
using namespace std;
double f(double x)
{
return (pow(x, 7) - x * x + 4);
}
void secant(float x1, float x2, float E)
{
float n=0,xm,x0,c;
if(f(x1)*f(x2)<0){
do{
x0=(x1*f(x2)-x2*f(x1))/(f(x2)-f(x1));
c=f(x1)*f(x0);
x1=x2;
x2=x0;
n++;
if(c==0)
break;
xm=(x1*f(x2)-x2*f(x1))/(f(x2)-f(x1));
}
while (fabs(xm-x0)>=E);
cout<<"Tenglamaning ildizi qiymati="<cout<<"Tenglamaning hisoblashdagi qadamlar
soni="<}
else
cout<<"Bu oraliqda tenglamaning ildizi mavjud emas";
}
int main ()
{
float x1=7.4,x2=7.6,E=0.1;
secant(x1,x2,E);
return 0;
}
Xulosa
Ushbu amaliy ishdan o’zimga kerakli ma’lumotlarni oldim. Integrallarni taqribiy hisoblashni To’rtburchak, Trapetsiya va Simpson usullarini tahlil qildim.Va, yana Berilgan algebraik va transsendent tenglamalarni yechishda Kesmani teng ikkiga bo’lish va Vatarlar usullarini ko’rib chiqdik.Men o’zimga kerakli ma’lumotlarni oldim.
Murabbiyga yangi ma’lumotlar uchun kata rahmat.
SATTOROV SAMARIDDIN 218-20 guruh talabasi
Do'stlaringiz bilan baham: |