5.1封装

结对伙伴:朱浩龙.博客:http://www.cnblogs.com/ZHL-Dragon/

这是算法的封装

public class test1 {public static void methodA(int n,double a[],char c[]){//封装的类,传递的参数   n是运算符的个数   a是数字数组   c是符号数组
        
        int i,j;
        if(n==0) //运算个数为0,进行阶乘
        {
            for(i=(int) a[0];i>1;i--)
            {
                System.out.println(i);
                System.out.println(a[0]);
                a[0]=a[0]*(i-1);
            }


        }
        /*下面这部分是对算式进行解析并且进行四则运算*/
        else{
            for(i=0;i<=n;i++)
            {
                if(c[i]=='*')
                {
                    a[i]=a[i]*a[i+1];
                    for(j=i;j<n;j++) 
                    {
                        a[j+1]=a[j+2];
                        c[j]=c[j+1];
                    }
                    i=0;
                    n--;
                
                }
                if(c[i]=='/')
                {
                    a[i]=a[i]/a[i+1];
                    for(j=i;j<n;j++) 
                    {
                        a[j+1]=a[j+2];
                        c[j]=c[j+1];
                    }
                    i=0;
                    n--;
            
                }
            }
            for(i=0;i<=n;i++)
            {
                if(c[i]=='+')
                {
                    a[i]=a[i]+a[i+1];
                    for(j=i;j<n;j++) 
                    {
                        a[j+1]=a[j+2];
                        c[j]=c[j+1];
                    }
                    i=0;
                    n--;
                
                }
                if(c[i]=='-')
                {
                    a[i]=a[i]-a[i+1];
                    for(j=i;j<n;j++) 
                    {
                        a[j+1]=a[j+2];
                        c[j]=c[j+1];
                    }
                    i=0;
                    n--;
                }
            }
        }
    }
}

这是主函数

public class test {
    public static void main(String[] args) {
        int n=2;
        double []a=new double [10];
        a[0]=1;
        a[1]=2;
        a[2]=7;char []c=new char [10];
        c[0]='+';c[1]='*';
        test1 core = new test1();
        core.methodA(n, a, c);
            System.out.println(a[0]);
    }
}

 

转载于:https://www.cnblogs.com/cjj19/p/4469212.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值