北京理工計算機 上機複試2002年A

一、  某人有8角的郵票5張,1元的郵票4張,1元8角的郵票6張,用這些郵票中的一張或若干張能夠獲得多少中不一樣的郵資?ios

 1 #include<iostream>
 2 using namespace std;
 3 
 4 int found(double x,double p[]){
 5 for(int i=0;i<300;i++)
 6     if(p[i]==x)
 7         return 1;
 8 return 0;
 9 }
10 int insert(double x,double p[]){
11     for(int i=0;i<300;i++)
12         if(p[i]==0){
13             p[i]=x;
14             return i+1;
15         }
16 return 0;
17 }
18 
19 int main(){
20     double p[300]={0};
21     int sum=0;
22     for(int i=0;i<6;i++)
23         for(int j=0;j<5;j++)
24             for(int k=0;k<7;k++){
25                 double x=0.8*i+1*j+1.8*k;
26                 if(!found(x,p))
27                     insert(x,p);
28             }
29             for(int z=0;z<300;z++){
30             
31                 if(p[z]==0){
32                 cout<<z<<endl;
33                 return 0;
34                 }
35             }
36 return 0;
37 }//main
2002A_01.cpp

二、  輸入n值,使用遞歸函數,求楊輝三角形中各個位置上的值,按照以下形式打印輸出圖形。例如:當n=6時。ide

      1函數

     1 1spa

    1 2 1code

   1 3 3 1blog

  1 4 6 4 1遞歸

1 5 10 10 5 1ci

 

 1 #include<iostream>
 2 using namespace std;
 3 
 4 int trangle(int m,int n){    
 5     if(m>0&&n==1)return 1;
 6     else if(m>1&&n>1) return trangle(m-1,n-1)+trangle(m-1,n);
 7     else return 0;
 8 }
 9 
10 int main(){
11     int n;
12     cout<<"please input a num"<<endl;
13     cin>>n;
14     for(int i=0;i<=n;i++){
15         for(int j=0;j<=n;j++){
16             int x=trangle(i,j);
17             if(x>0)cout<<" "<<x<<" ";
18             else cout<<" ";
19         }
20         cout<<endl;
21     }
22 
23 return 0;
24 }//main
2002A_02.cpp
相關文章
相關標籤/搜索