处理java减少直到某个数字

时间:2016-06-27 12:42:50

标签: javascript java processing

我有一个名为tn的变量。我希望将其增加到50,如果它达到50,我想将其减少到0,如果它达到0,我想再次增加它loop through it

float tn = 0;
  tn += 0.1;

 if(tn >= 50){
   tn -= 0.1;
 }

我已经得到了这个但现在我坚持如何减少0.1直到它达到0并且如果它达到0 如何将其增加回50等等。

5 个答案:

答案 0 :(得分:2)

跟踪您是在变量中上升还是下降。点击端点时更改变量。

例如:

float delta = 0.1f;
float tn = 0f;

// inside your loop:
    tn += delta;
    if (delta > 0 && tn >= 50 || delta < 0 && tn <= 0) {
        delta = -delta
    }

答案 1 :(得分:1)

除了告诉您使用boolean的其他答案之外,您还可以创建一个变量来跟踪要添加的内容,然后将其乘以-1来切换方向:

float value = 0;
float add = .1;

void draw(){

   value += add;
   println(value);

   if(value >= 50 || value <= 0){
      add *= -1;
   }
}

答案 2 :(得分:0)

  boolean goUp = true; 
  float tn = 0;    
  while (true) { 
   if(goUp) {
      tn += 0.1;
      if(tn == 50){
        goUp = false;
      }
   } else {
      tn -= 0.1;
      if(tn == 0){
        goUp = true;
      }
   }
 }

答案 3 :(得分:0)

可以这样做

void myfun(){
float tn = 0;
boolean maxReached = false;

while(true){
    if(!maxReached){
       tn += 0.1;     
    }else{
       tn -= 0.1;
    }
    if(tn>=50){
       maxReached=true;  
    }
    if(tn <= 0) {
      maxReached = false; 
    }
}
}

答案 4 :(得分:0)

你可以这样做

    float tn = 0.0f;
    for (;;) {
        for (; tn < 50; tn += 0.1f) 
            System.out.println("tn + " + tn);
        for (; tn >0; tn -= 0.1f) 
            System.out.println("tn - " + tn);
    }