豆芽菜♀ 2022-03-12 00:25 采纳率: 100%
浏览 64
已结题

java算法求和,我的运行结果不对,求解答

我的问题:

img

我写的代码:
public class LanQiaoBei {
int i,p,t,sum=0;
int s[]=new int[40];

public void setP(int p) {
    this.p = p;
}

int pp() {
   for(i=1;i<=p;i++) {    
        if(i%10==0||i%10==1||i%10==2||i%10==9) {                    
            for(t=0;t<p;t++) {
                s[t]=i;
            }                
     
     }
        }
   for(t=0;t<s.length;t++) {
         sum=sum+s[t];
   }
     return sum;

}
public static void main(String[] args){
LanQiaoBei bb=new LanQiaoBei();
bb.setP(40);
bb.pp();
System.out.println(bb);
}
}
我的运行结果:LanQiaoBei@2f92e0f4

img


我想要的结果是问题的和,应该是一个整数。

  • 写回答

3条回答 默认 最新

  • 关注

    (1)你的pp函数逻辑不对,只能判断末尾还有0/1/2/9的数,其他位置的不能判断
    (2)printlen中输出的不应该是bb,应该是bb.pp()
    运行结果:

    img

    代码修改如下:

    package test;
    
    public class LanQiaoBei {
    
        int p;
    
        public void setP(int p) {
            this.p = p;
        }
         
        int pp() {
            int i,j=0,t,sum=0,k=0;
            int s[]=new int[40];
            for(i=1;i<=p;i++) {
                t = i;
                while(t!=0){ //这里判断i中是否包含 0 1 2 9这几个数字中的任意一个
                    int mm = t%10; //逐个取数字的末尾数
                    t/=10; //数字除以10,跟上一句配合使用,假如 t = i = 12; mm=t%10=2,t=t/10=1,下一次循环的时候 mm=t%10=1,这样能得到数字i各个位上的所有数字
                    if(mm==0 || mm==1 || mm==2 || mm==9){
                        s[k++] = i;
                        break;
                    }
                }
            }
           for(t=0;t<k;t++) {
                 sum=sum+s[t];
           }
             return sum;
        }
        public static void main(String[] args){
        LanQiaoBei bb=new LanQiaoBei();
        bb.setP(40);
        //bb.pp();
        System.out.println(bb.pp());
        }
    
    }
    
    
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论 编辑记录
查看更多回答(2条)

报告相同问题?

问题事件

  • 系统已结题 3月20日
  • 已采纳回答 3月12日
  • 创建了问题 3月12日

悬赏问题

  • ¥15 关于#matlab#的问题:在模糊控制器中选出线路信息,在simulink中根据线路信息生成速度时间目标曲线(初速度为20m/s,15秒后减为0的速度时间图像)我想问线路信息是什么
  • ¥15 banner广告展示设置多少时间不怎么会消耗用户价值
  • ¥16 mybatis的代理对象无法通过@Autowired装填
  • ¥15 可见光定位matlab仿真
  • ¥15 arduino 四自由度机械臂
  • ¥15 wordpress 产品图片 GIF 没法显示
  • ¥15 求三国群英传pl国战时间的修改方法
  • ¥15 matlab代码代写,需写出详细代码,代价私
  • ¥15 ROS系统搭建请教(跨境电商用途)
  • ¥15 AIC3204的示例代码有吗,想用AIC3204测量血氧,找不到相关的代码。