Chia sẻ kiến thức
Bạn có muốn phản ứng với tin nhắn này? Vui lòng đăng ký diễn đàn trong một vài cú nhấp chuột hoặc đăng nhập để tiếp tục.

Tổng hợp đề thi THỰC HÀNH Lập Trình Căn Bản và code bài giải

Go down

Tổng hợp đề thi THỰC HÀNH Lập Trình Căn Bản và code bài giải Empty Tổng hợp đề thi THỰC HÀNH Lập Trình Căn Bản và code bài giải

Bài gửi  Admin Mon Nov 19, 2012 9:20 am

Đề thi cuối kì 1 2012-2013[cô Phan Phương Lan-nhóm 1 đề 1]:
[You must be registered and logged in to see this image.]
Code bài giải:
Code:
#include<stdio.h>
#include<conio.h>

struct dathuc{
   int heso;
   int somu;
};

void Nhap(dathuc a[],int n){
   int valid;
   for(int i=n-1;i>=0;i--){
      printf("\n%d.\n",n-i);
      printf("Nhap he so: ");scanf("%d",&a[i].heso);
      valid=0;
      while(valid==0){
         printf("Nhap so mu: ");scanf("%d",&a[i].somu);
         if(i==n-1) break;
         if(a[i].somu < a[i+1].somu) valid=1;
         else printf("So mu phai nho hon so mu truoc do. Vui long nhap lai!\n");
      }      
   }
}
void In(dathuc a[], int n){
   int i=n-1;
   while(i>=0){
      if(i==0){
         printf("%dx^%d",a[i].heso,a[i].somu);
         break;
      }
      printf("%dx^%d+",a[i].heso,a[i].somu);
      i--;
   }
}
float pow(float x,int k){
   if(k==0) return 1;
   if(k==1) return x;
   else return x*pow(x,k-1);
}
float Tong(dathuc a[], int n, float x){
   float S=0;
   for(int i=n-1;i>=0;i--){
      S=S+a[i].heso*pow(x,a[i].somu);
      if(i==0){
         return S;
         break;
      }
   }
}
float Tong_daoham(dathuc a[], int n, float x){
   float S=0;
   for(int i=n-1;i>=0;i--){
      S=S+a[i].heso*a[i].somu*pow(x,a[i-1].somu);
      //truong hop a[0] co so mu la 1 thi dao ham la a[0].heso * 1 = a[0].heso
      if(i==1 && a[i-1].somu==1){
         S=S+a[i-1].heso;
         return S;
      }
      //truong hop a[0] co so mu la 0 thi dao ham la a[0].heso * 0 = 0
      if(i==1 && a[i-1].somu==0){
         return S;
      }
      if(i==0){
         return S;
      }
   }
}
int main(){
   int n;
   printf("\nNhap so luong phan tu: ");
   scanf("%d",&n);
   dathuc a[n];
   Nhap(a,n);
   printf("\nDa thuc:");
   In(a,n);
   float x;
   printf("\nNhap x:");
   scanf("%f",&x);
   float tong=Tong(a,n,x);
   printf("\nTong S=%.2f",tong);
   float tong1=Tong_daoham(a,n,x);
   printf("\nTong dao ham cua da thuc tren la S=%.2f",tong1);
   getch();
   return 0;
}
Admin
Admin
Admin

Tổng số bài gửi : 218
Reputation : 22
Join date : 17/11/2012
Age : 32

https://elcit.forumvi.com

Về Đầu Trang Go down

Về Đầu Trang

- Similar topics

 
Permissions in this forum:
Bạn không có quyền trả lời bài viết