Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 77 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
77
Dung lượng
123,71 KB
Nội dung
Bài tập môn phương pháp tính cho sinh viên khoa công nghệ thông tin 1.bảng nội suy ayken và giá trị #include<stdio.h> #include<conio.h> #define max 100 void nhap (float a[max],int n) { int i; for (i=1;i<=n;i++) { printf("a[%d]=",i); scanf("%f",&a[i]); } } void xuat (float a[max],int n) { int i; for (i=1;i<=n;i++) printf("%f",a[i]); } main() { int i,j,n; float x[max],y[max],a[max][max],c; char tl; while (1) { printf("nhap so nguyen duong n="); scanf("%d",&n); printf("\n nhap he so x[i] \n"); nhap (x,n); xuat (x,n); printf("\n nhap he so y[i] \n"); nhap (y,n); xuat (y,n); printf("\n nhap he so c can tinh c="); scanf("%f",&c); for (i=1;i<=n;i++) { a[i][0]=x[i]; a[i][1]=y[i]; printf("%f",a[i][0]); printf("%f",a[i][1]); for (j=2;j<=i;j++) { a[i][j]=(a[j-1][j-1]*(x[i]-c)-a[i][j-1]*(x[j-1]-c))/(x[i]-x[j-1]); printf("%f",a[i][j]); } printf("\n"); } printf("\n vay gia tri can tinh la %.3f",a[n][n]); printf("\n ban co muon tiep tuc khong (c/k)?\n"); tl=getch(); if (tl=='k'||tl=='K') break; } } 2.phương pháp bình phương bé nhất #include<stdio.h> #include<conio.h> #include<math.h> void nhap (float a[10],int n) { int i; for (i=1;i<=n;i++) { printf("a[%d]=",i); scanf("%f",&a[i]); } } void xuat (float a[10],int n) { int i; for (i=1;i<=n;i++) printf("%.3f",a[i]); } void hoanvi (float *a,float *b) { float tmp; tmp=*a; *a=*b; *b=tmp; } void doidong (float a[10][10],int n,int p,int q) { int k; if (p<=n&&q<=n&&p!=q) for (k=1;k<=n+1;k++) hoanvi (&a[p][k],&a[q][k]); } float det (float a[10][10]) { int i,j,k; float m,s=1; for (i=1;i<=3;i++) { if (a[i][i]==0) { for (k=i+1;k<=3;k++) if (a[k][i]!=0) doidong (a,3,i,k); } for (j=i+1;j<=3;j++) { m=-a[j][i]/a[i][i]; for (k=i;k<=3;k++) a[j][k]+=a[i][k]*m; } s*=a[i][i]; } return s; } void giaihephuongtrinh (float b[10][10],float c[10][10],float d[10][10],float e[10][10]) { float p,q,r,l; p=det (b); q=det (c); r=det (d); l=det (e); if (p==0) printf("\n he phuong trinh vo nghiem \n"); else { printf("\n nghiem thu nhat cua he la %.3f",q/p); printf("\n nghiem thu hai cua he la %.3f",r/p); printf("\n nghiem thu ba cua he la %.3f",l/p); printf("\nvay ket qua can tim la:y=%.3f+%.3f*x+%.3f*x*x",q/p,r/p,l/p); } } main() { int n,i; printf("nhap n="); scanf("%d",&n); float x[10],y[10],b[10][10],c[10][10],d[10][10],e[10][10]; float x1=0,xx=0,y1=0,yy=0,xxx=0,xxxx=0,xxy=0,xy=0; nhap (x,n); xuat (x,n); printf("\n"); nhap (y,n); xuat (y,n); for (i=1;i<=n;i++) { x1+=x[i]; y1+=y[i]; xx+=x[i]*x[i]; yy+=y[i]*y[i]; xy+=x[i]*y[i]; xxx+=x[i]*x[i]*x[i]; xxxx+=x[i]*x[i]*x[i]*x[i]; xxy+=x[i]*x[i]*y[i]; } b[1][1]=n; b[1][2]=x1; b[1][3]=xx; b[2][1]=x1; b[2][2]=xx; b[2][3]=xxx; b[3][1]=xx; b[3][2]=xxx; b[3][3]=xxxx; c[1][1]=y1; c[1][2]=x1; c[1][3]=xx; c[2][1]=xy; c[2][2]=xx; c[2][3]=xxx; c[3][1]=xxy; c[3][2]=xxx; c[3][3]=xxxx; d[1][1]=n; d[1][2]=y1; d[1][3]=xx; d[2][1]=x1; d[2][2]=xy; d[2][3]=xxx; d[3][1]=xx; d[3][2]=xxy; d[3][3]=xxxx; e[1][1]=n; e[1][2]=x1; e[1][3]=y1; e[2][1]=x1; e[2][2]=xx; e[2][3]=xy; e[3][1]=xx; e[3][2]=xxx; e[3][3]=xxy; giaihephuongtrinh (b,c,d,e); getch(); } 3.đệ qui quay lui #include<stdio.h> #include<conio.h> #include<math.h> int count; int x[3]; void out (int x[]) { int i; printf("\n%d\t",++count); for ( i = 1; i <= 3; i++ ) printf("%d", x[i] ); } void thu(int i, int x[]) { int j; if (i==1) { for (j=1; j<=5; j++) { x[i]=j; thu(i+1,x); } } if (i==2) { for (j=1;j<=5;j++) { x[i]=j; thu(i+1,x); } } if (i==3) { for (j=1;j<=5;j++) { x[i]=j; out (x); } } } main() { thu (1,x); getch(); } 4.tính định thức ma trận #include<stdio.h> #include<conio.h> #include<math.h> [...]... can tren b="); scanf("%f",&b); printf("\n nhap can tren a="); scanf("%f",&a); printf("\n cac he so yi la:\n"); nhap (y,n); xuat (y,n); printf("\ngia tri cua tich phan la %.3f",tinh (y,n,a,b)); getch (); } 13 .phương pháp bình phương bé nhất #include #include void nhap (float a[10],int n) { int i; for (i=1;i . Bài tập môn phương pháp tính cho sinh viên khoa công nghệ thông tin 1.bảng nội suy ayken và giá trị #include<stdio.h>. can tinh la %.3f",a[n][n]); printf("
ban co muon tiep tuc khong (c/k)?
"); tl=getch(); if (tl=='k'||tl=='K') break; } } 2 .phương pháp bình phương. for(j=1;j<=n;j++) printf(" %d",p[i][j]); } getch(); } 6.giải phương trình bằng phương pháp gauss #include<stdio.h> #include<conio.h> #include<math.h>