计算机技术论坛

 找回密码
 立即注册

QQ登录

只需一步,快速开始

  • 欢迎访问 计算机技术论坛-电脑迷与初学者的家园!由于论坛管理严格,新注册会员可能遇到各种问题,无法解决的请发邮件 admin@jsjbbs.cn
查看: 4596|回复: 8

高手们给解决一下下

[复制链接]
发表于 2009-3-21 16:04:41 | 显示全部楼层 |阅读模式
import ds_java.Stack2;//这是一个堆栈,由于太多在这里就没有具体发上。
public class Chen
{
String pstr1;
    public Chen()
    {
    }
int value(String ps)//求表达式的值的方法
{
  pstr1=ps;
  Stack2 s2=new Stack2();
  char ch;
  int i=0,x,y,z=0;
  while(i<pstr1.length())
  {
   ch=pstr1.charAt(i);
   if(ch>='0'&&ch<='9')
   {
    z=0;
    while(ch!=' ')
    {
     z=z*10+Integer.parseInt(ch+" ");
     i++;
     ch=pstr1.charAt(i);
    }
    s2.push(z);
   }
   else
   {
    y=s2.pop();
    x=s2.pop();
    switch(ch)
    {
     case '+': z=x+y;break;
     case '-': z=x-y;break;
     case '*': z=x*y;break;
     case '/': z=x/y;break;
    }
    s2.push(z);
   }
   
  }
  return(s2.pop());
}

public static void main(String[] args)
{
Chen c=new Chen();
String pstr="25779";
char[] ch1={'+','-','*','/'};
for(int i=0;i<4;i++)
for(int j=0;j<4;j++)
for(int m=0;m<4;m++)
for(int n=0;n<4;n++)
{
  pstr+=ch1[i];
  pstr+=ch1[j];
  pstr+=ch1[m];
  pstr+=ch1[n];
     Integer nub=new Integer(c.value(pstr));
     int nub1=nub.intValue();
  
  if(nub1==24)//出错的地方:数字到字符的转换异常!
      System.out.println(ch1[i]+ch1[j]+ch1[m]+ch1[n]);
  else
             System.out.println( "这样的表达式不存在!");
   
  }

  }
}
程序的意思很明显的。请高手指点一下下啊。
发表于 2009-3-21 16:06:08 | 显示全部楼层
import ds_java.Stack2;//这是一个堆栈,由于太多在这里就没有具体发上。
public class Chen
{
String pstr1;
    public Chen()
    {
    }
int value(String ps)//求表达式的值的方法
{
  pstr1=ps; ...
guaiguaihu2009 发表于 2009-3-21 16:04

数据结构啊!
刚学啊,帮不到什么忙啊!
linbinlove 该用户已被删除
发表于 2009-4-1 13:00:02 | 显示全部楼层
我们还没有学到这里,暂时帮不到什么忙呀,不好意思呀!:)
彳亍de孑孓 该用户已被删除
发表于 2009-4-1 17:03:27 | 显示全部楼层
import ds_java.Stack2;//这是一个堆栈,由于太多在这里就没有具体发上。
分号是中文的,应该转成英文的

z=z*10+Integer.parseInt(ch+" ");
类型 Integer 中的方法 parseInt(String, int)对于参数(char, int)不适用
彳亍de孑孓 该用户已被删除
发表于 2009-4-1 17:04:47 | 显示全部楼层
Integer nub=new Integer(c.value(pstr));

value的值应该是int类型的
发表于 2009-4-6 14:54:55 | 显示全部楼层
这个是JAVA吗?
发表于 2009-4-15 12:19:53 | 显示全部楼层
不知道是什么! 我也想知道
ldd2133 该用户已被删除
发表于 2009-4-23 17:55:45 | 显示全部楼层
4个太阳的都不会啊
彳亍de孑孓 该用户已被删除
发表于 2009-4-23 23:11:33 | 显示全部楼层
4个太阳的都不会啊
ldd2133 发表于 2009-4-23 17:55
不是已经弄给他了?!!!
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

无图版|手机版|计算机技术论坛 JSJBBS.CN @ 2008-2024 ( 鲁ICP备17021708号 )

技术支持 : 北京康盛新创科技有限责任公司

快速回复 返回顶部 返回列表