ljren_t(立志):8/(3-(8/3)) =3/2啊

解决方案 »

  1.   

    dbcontrols(泰山):
    这是多少,你看清楚点.
           8
    ---------------
            8
      3-  -----
            3 
      

  2.   

    ljren_t(立志)的答案正确,加分!
      

  3.   

    I want you will to leave and to home dohomework in the sun,bibi
      

  4.   

    真的很难编吗?//VC++下编译
    #include<iostream.h>
    char h[4]={'/','-','*','+'};
    int n[4];
    union Tr0{
    char t;
    int i;
    } a[7];
    int flag;
    double countme1(void);
    double countme2(void);
    double countme3(void);
    double countme4(void);
    double countme5(void);void printme1(void);
    void printme2(void);
    void printme3(void);
    void printme4(void);
    void printme5(void);int main(void)
    {while (1)
    {
    flag=0;
    cout<<"Please Input 4 Numbers:\n";
    cin>>n[0]>>n[1]>>n[2]>>n[3];
    /////
    for(int i0=0;i0<4;i0++)
    {a[0].t=h[i0];
      for(int i1=0;i1<4;i1++)
       {a[1].t=h[i1];
         for(int i2=0;i2<4;i2++)
     {a[2].t=h[i2];
           for(int i3=0;i3<4;i3++)
       {a[3].i=n[i3];
             for(int i4=0;i4<4;i4++)
     if(i4!=i3)
    {a[4].i=n[i4];
                   for(int i5=0;i5<4;i5++)
           if(i5!=i4&&i5!=i3)
       {a[5].i=n[i5];
                        for(int i6=0;i6<4;i6++)
      if(i6!=i5&&i6!=i4&&i6!=i3)
      {a[6].i=n[i6];                      if(countme1()==24)
     { printme1();}                      if(countme2()==24)
     { printme2();}                      if(countme3()==24)
     { printme3();}                      if(countme4()==24)
     { printme4();}                      if(countme5()==24)
     { printme5();}
      }
       }
     }
       }
     }
      }
    }
    /////////////////////
    if (!flag) cout<<"It can not 24 !!!"<<endl;
    else cout<<"Sum is :"<<flag<<endl;
    /////////////////////
    }return 0;
    }double countme1(void)
    {
    double tmp1=0.0,tmp2=0.0,tmp=0.0; switch(a[1].t)
    {
    case '+':
    tmp1=a[3].i+a[4].i; break;
    case '-':
    tmp1=a[3].i-a[4].i; break;
    case '*':
    tmp1=a[3].i*a[4].i; break;
    case '/':
    if(a[4].i!=0) {tmp1=(double)a[3].i/(double)a[4].i; break;}
    }
    switch(a[2].t)
    {
    case '+':
    tmp2=a[5].i+a[6].i; break;
    case '-':
    tmp2=a[5].i-a[6].i; break;
    case '*':
    tmp2=a[5].i*a[6].i; break;
    case '/':
    if(a[6].i!=0) {tmp2=(double)a[5].i/(double)a[6].i; break;}
    }
    switch(a[0].t)
    {
    case '+':
    tmp=tmp1+tmp2;break;
    case '-':
    tmp=tmp1-tmp2;break;
    case '*':
    tmp=tmp1*tmp2;break;
    case '/':
    if(tmp2!=0) {tmp=(double)tmp1/(double)tmp2; break;}
    }
    return tmp;
    }double countme2(void)
    {
    double tmp=0.0; switch(a[2].t)
    {
    case '+':
    tmp=a[3].i+a[4].i; break;
    case '-':
    tmp=a[3].i-a[4].i; break;
    case '*':
    tmp=a[3].i*a[4].i; break;
    case '/':
    if(a[4].i!=0) {tmp=(double)a[3].i/(double)a[4].i; break;}
    }
    switch(a[1].t)
    {
    case '+':
    tmp=tmp+a[5].i; break;
    case '-':
    tmp=tmp-a[5].i; break;
    case '*':
    tmp=tmp*a[5].i; break;
    case '/':
    if(a[5].i!=0) {tmp=(double)tmp/(double)a[5].i; break;}
    }
    switch(a[0].t)
    {
    case '+':
    tmp=tmp+a[6].i;break;
    case '-':
    tmp=tmp-a[6].i;break;
    case '*':
    tmp=tmp*a[6].i;break;
    case '/':
    if(a[6].i!=0) {tmp=(double)tmp/(double)a[6].i; break;}
    }
    return tmp;
    }double countme3(void)
    {
    double tmp=0.0; switch(a[2].t)
    {
    case '+':
    tmp=a[3].i+a[4].i; break;
    case '*':
    tmp=a[3].i*a[4].i; break;
    case '-':
    tmp=a[3].i-a[4].i; break;
    case '/':
    if(a[4].i!=0) {tmp=(double)a[3].i/(double)a[4].i; break;}
    }
    switch(a[1].t)
    {
    case '+':
    tmp=a[5].i+tmp; break;
    case '-':
    tmp=a[5].i-tmp; break;
    case '*':
    tmp=a[5].i*tmp; break;
    case '/':
    if(tmp!=0) {tmp=(double)a[5].i/(double)tmp; break;}
    }
    switch(a[0].t)
    {
    case '+':
    tmp=tmp+a[6].i;break;
    case '-':
    tmp=tmp-a[6].i;break;
    case '*':
    tmp=tmp*a[6].i;break;
    case '/':
    if(a[6].i!=0) {tmp=(double)tmp/(double)a[6].i; break;}
    }
    return tmp;
    }double countme4(void)
    {
    double tmp=0.0; switch(a[2].t)
    {
    case '+':
    tmp=a[3].i+a[4].i; break;
    case '-':
    tmp=a[3].i-a[4].i; break;
    case '*':
    tmp=a[3].i*a[4].i; break;
    case '/':
    if(a[4].i!=0) {tmp=(double)a[3].i/(double)a[4].i; break;}
    }
    switch(a[1].t)
    {
    case '+':
    tmp=a[5].i+tmp; break;
    case '-':
    tmp=a[5].i-tmp; break;
    case '*':
    tmp=a[5].i*tmp; break;
    case '/':
    if(tmp!=0) {tmp=(double)a[5].i/(double)tmp; break;}
    }
    switch(a[0].t)
    {
    case '+':
    tmp=a[6].i+tmp;break;
    case '-':
    tmp=a[6].i-tmp;break;
    case '*':
    tmp=a[6].i*tmp;break;
    case '/':
    if(tmp!=0) {tmp=(double)a[6].i/(double)tmp; break;}
    }
    return tmp;
    }double countme5(void)
    {
    double tmp=0.0; switch(a[2].t)
    {
    case '+':
    tmp=a[3].i+a[4].i; break;
    case '-':
    tmp=a[3].i-a[4].i; break;
    case '*':
    tmp=a[3].i*a[4].i; break;
    case '/':
    if(a[4].i!=0) {tmp=(double)a[3].i/(double)a[4].i; break;}
    }
    switch(a[1].t)
    {
    case '+':
    tmp=tmp+a[5].i; break;
    case '-':
    tmp=tmp-a[5].i; break;
    case '*':
    tmp=tmp*a[5].i; break;
    case '/':
    if(a[5].i!=0) {tmp=(double)tmp/(double)a[5].i; break;} }
    switch(a[0].t)
    {
    case '+':
    tmp=a[6].i+tmp;break;
    case '-':
    tmp=a[6].i-tmp;break;
    case '*':
    tmp=a[6].i*tmp;break;
    case '/':
    if(tmp!=0) {tmp=(double)a[6].i/(double)tmp; break;}
    }
    return tmp;
    }void printme1(void)
    {
    flag++;
    cout<<"   "<<"("<<a[3].i<<a[1].t<<a[4].i<<")"<<a[0].t<<"("<<a[5].i<<a[2].t<<a[6].i<<")";
    cout<<"    .............1\n";
    }void printme2(void)
    {
    flag++;
    cout<<"   "<<"(("<<a[3].i<<a[2].t<<a[4].i<<")"<<a[1].t<<a[5].i<<")"<<a[0].t<<a[6].i;
    cout<<"    .............2\n";
    }void printme3(void)
    {
    flag++;
    cout<<"   "<<"("<<a[5].i<<a[1].t<<"("<<a[3].i<<a[2].t<<a[4].i<<"))"<<a[0].t<<a[6].i;
    cout<<"    .............3\n";
    }void printme4(void)
    {
    flag++;
    cout<<"   "<<a[6].i<<a[0].t<<"("<<a[5].i<<a[1].t<<"("<<a[3].i<<a[2].t<<a[4].i<<"))";
    cout<<"    .............4\n";
    }void printme5(void)
    {
    flag++;
    cout<<"   "<<a[6].i<<a[0].t<<"(("<<a[3].i<<a[2].t<<a[4].i<<")"<<a[1].t<<a[5].i<<")";
    cout<<"    .............5\n";
    }
      

  5.   

    修正一下:
    //VC++下编译
    #include<iostream.h>
    #include<math.h>
    char h[4]={'/','-','*','+'};
    int n[4];
    union Tr0{
    char t;
    int i;
    } a[7];
    int flag;
    double countme1(void);
    double countme2(void);
    double countme3(void);
    double countme4(void);
    double countme5(void);void printme1(void);
    void printme2(void);
    void printme3(void);
    void printme4(void);
    void printme5(void);int main(void)
    {while (1)
    {
    flag=0;
    cout<<"Please Input 4 Numbers:\n";
    cin>>n[0]>>n[1]>>n[2]>>n[3];
    /////
    for(int i0=0;i0<4;i0++)
    {a[0].t=h[i0];
      for(int i1=0;i1<4;i1++)
       {a[1].t=h[i1];
         for(int i2=0;i2<4;i2++)
     {a[2].t=h[i2];
           for(int i3=0;i3<4;i3++)
       {a[3].i=n[i3];
             for(int i4=0;i4<4;i4++)
     if(i4!=i3)
    {a[4].i=n[i4];
                   for(int i5=0;i5<4;i5++)
           if(i5!=i4&&i5!=i3)
       {a[5].i=n[i5];
                        for(int i6=0;i6<4;i6++)
      if(i6!=i5&&i6!=i4&&i6!=i3)
      {a[6].i=n[i6];                      if(fabs(countme1()-24)<0.000001)
     { printme1();}                      if(fabs(countme2()-24)<0.000001)
     { printme2();}                      if(fabs(countme3()-24)<0.000001)
     { printme3();}                      if(fabs(countme4()-24)<0.000001)
     { printme4();}                      if(fabs(countme5()-24)<0.000001)
     { printme5();}
      }
       }
     }
       }
     }
      }
    }
    /////////////////////
    if (!flag) cout<<"It can not 24 !!!"<<endl;
    else cout<<"Sum is :"<<flag<<endl;
    /////////////////////
    }return 0;
    }double countme1(void)
    {
    double tmp1=0.0,tmp2=0.0,tmp=0.0; switch(a[1].t)
    {
    case '+':
    tmp1=a[3].i+a[4].i; break;
    case '-':
    tmp1=a[3].i-a[4].i; break;
    case '*':
    tmp1=a[3].i*a[4].i; break;
    case '/':
    if(a[4].i!=0) {tmp1=(double)a[3].i/(double)a[4].i; break;}
    }
    switch(a[2].t)
    {
    case '+':
    tmp2=a[5].i+a[6].i; break;
    case '-':
    tmp2=a[5].i-a[6].i; break;
    case '*':
    tmp2=a[5].i*a[6].i; break;
    case '/':
    if(a[6].i!=0) {tmp2=(double)a[5].i/(double)a[6].i; break;}
    }
    switch(a[0].t)
    {
    case '+':
    tmp=tmp1+tmp2;break;
    case '-':
    tmp=tmp1-tmp2;break;
    case '*':
    tmp=tmp1*tmp2;break;
    case '/':
    if(tmp2!=0) {tmp=(double)tmp1/(double)tmp2; break;}
    }
    return tmp;
    }double countme2(void)
    {
    double tmp=0.0; switch(a[2].t)
    {
    case '+':
    tmp=a[3].i+a[4].i; break;
    case '-':
    tmp=a[3].i-a[4].i; break;
    case '*':
    tmp=a[3].i*a[4].i; break;
    case '/':
    if(a[4].i!=0) {tmp=(double)a[3].i/(double)a[4].i; break;}
    }
    switch(a[1].t)
    {
    case '+':
    tmp=tmp+a[5].i; break;
    case '-':
    tmp=tmp-a[5].i; break;
    case '*':
    tmp=tmp*a[5].i; break;
    case '/':
    if(a[5].i!=0) {tmp=(double)tmp/(double)a[5].i; break;}
    }
    switch(a[0].t)
    {
    case '+':
    tmp=tmp+a[6].i;break;
    case '-':
    tmp=tmp-a[6].i;break;
    case '*':
    tmp=tmp*a[6].i;break;
    case '/':
    if(a[6].i!=0) {tmp=(double)tmp/(double)a[6].i; break;}
    }
    return tmp;
    }double countme3(void)
    {
    double tmp=0.0; switch(a[2].t)
    {
    case '+':
    tmp=a[3].i+a[4].i; break;
    case '*':
    tmp=a[3].i*a[4].i; break;
    case '-':
    tmp=a[3].i-a[4].i; break;
    case '/':
    if(a[4].i!=0) {tmp=(double)a[3].i/(double)a[4].i; break;}
    }
    switch(a[1].t)
    {
    case '+':
    tmp=a[5].i+tmp; break;
    case '-':
    tmp=a[5].i-tmp; break;
    case '*':
    tmp=a[5].i*tmp; break;
    case '/':
    if(tmp!=0) {tmp=(double)a[5].i/(double)tmp; break;}
    }
    switch(a[0].t)
    {
    case '+':
    tmp=tmp+a[6].i;break;
    case '-':
    tmp=tmp-a[6].i;break;
    case '*':
    tmp=tmp*a[6].i;break;
    case '/':
    if(a[6].i!=0) {tmp=(double)tmp/(double)a[6].i; break;}
    }
    return tmp;
    }double countme4(void)
    {
    double tmp=0.0; switch(a[2].t)
    {
    case '+':
    tmp=a[3].i+a[4].i; break;
    case '-':
    tmp=a[3].i-a[4].i; break;
    case '*':
    tmp=a[3].i*a[4].i; break;
    case '/':
    if(a[4].i!=0) {tmp=(double)a[3].i/(double)a[4].i; break;}
    }
    switch(a[1].t)
    {
    case '+':
    tmp=a[5].i+tmp; break;
    case '-':
    tmp=a[5].i-tmp; break;
    case '*':
    tmp=a[5].i*tmp; break;
    case '/':
    if(tmp!=0) {tmp=(double)a[5].i/(double)tmp; break;}
    }
    switch(a[0].t)
    {
    case '+':
    tmp=a[6].i+tmp;break;
    case '-':
    tmp=a[6].i-tmp;break;
    case '*':
    tmp=a[6].i*tmp;break;
    case '/':
    if(tmp!=0) {tmp=(double)a[6].i/(double)tmp; break;}
    }
    return tmp;
    }double countme5(void)
    {
    double tmp=0.0; switch(a[2].t)
    {
    case '+':
    tmp=a[3].i+a[4].i; break;
    case '-':
    tmp=a[3].i-a[4].i; break;
    case '*':
    tmp=a[3].i*a[4].i; break;
    case '/':
    if(a[4].i!=0) {tmp=(double)a[3].i/(double)a[4].i; break;}
    }
    switch(a[1].t)
    {
    case '+':
    tmp=tmp+a[5].i; break;
    case '-':
    tmp=tmp-a[5].i; break;
    case '*':
    tmp=tmp*a[5].i; break;
    case '/':
    if(a[5].i!=0) {tmp=(double)tmp/(double)a[5].i; break;} }
    switch(a[0].t)
    {
    case '+':
    tmp=a[6].i+tmp;break;
    case '-':
    tmp=a[6].i-tmp;break;
    case '*':
    tmp=a[6].i*tmp;break;
    case '/':
    if(tmp!=0) {tmp=(double)a[6].i/(double)tmp; break;}
    }
    return tmp;
    }void printme1(void)
    {
    flag++;
    cout<<"   "<<"("<<a[3].i<<a[1].t<<a[4].i<<")"<<a[0].t<<"("<<a[5].i<<a[2].t<<a[6].i<<")";
    cout<<"    .............1\n";
    }void printme2(void)
    {
    flag++;
    cout<<"   "<<"(("<<a[3].i<<a[2].t<<a[4].i<<")"<<a[1].t<<a[5].i<<")"<<a[0].t<<a[6].i;
    cout<<"    .............2\n";
    }void printme3(void)
    {
    flag++;
    cout<<"   "<<"("<<a[5].i<<a[1].t<<"("<<a[3].i<<a[2].t<<a[4].i<<"))"<<a[0].t<<a[6].i;
    cout<<"    .............3\n";
    }void printme4(void)
    {
    flag++;
    cout<<"   "<<a[6].i<<a[0].t<<"("<<a[5].i<<a[1].t<<"("<<a[3].i<<a[2].t<<a[4].i<<"))";
    cout<<"    .............4\n";
    }void printme5(void)
    {
    flag++;
    cout<<"   "<<a[6].i<<a[0].t<<"(("<<a[3].i<<a[2].t<<a[4].i<<")"<<a[1].t<<a[5].i<<")";
    cout<<"    .............5\n";
    }
      

  6.   

    N个数计算步骤一共N-1步(每步都是2个数之间的运算),每步有(n-1)*(n-2)种可能的组合
    排列组合一共[(N-1)*(N-2)]*[(n-2)*(n-3)]。。[2*1]种可能
    因为是4则运算所以再乘上4^(N-1)
    n=4时一共196中可能
    用穷举法应该可行的
      

  7.   

    这里是VB地方 VC++ 怎么也来了