# Schleife in bestimmten schritten



## Schatti (23. September 2003)

Hi wie kann in java eine schleife erstellen,

die den anfangswert 0 hat und den endwert 7 hat und die werte dazwischen sollen immer um 0,1 steigen?


----------



## Dario Linsky (23. September 2003)

Hi,

versuchs mal damit:

```
for(float f = 0.0; f < 7.0; f += 0.1) {
  // Schleifenkörper
}
```

Gruss, Dario


----------



## Schatti (23. September 2003)

Bei mir kommt follgender Fehler

genauigkeitsverlust möglich, Gefunden: double; Benötigt: float

follgendes hab ich eingegeben?

  for(float f = 0.0; f < 7.0; f += 0.1)
  System.out.println(f);
  }

und wenn ich anstelle von float double schreibe, dann zaehlt er mir nicht

0,1
0,2
0,3
0,4
0,5
0,6
0,7
0,8
0,9
1,0
1,1

sondern 1.4000000000000001 usw.


----------



## Dario Linsky (23. September 2003)

Dann versuch's mal damit:


```
import java.text.*;
// ...
DecimalFormat df = new DecimalFormat("#,#0.0");
for(float f = 0.0F; f < 7.0F; f += 0.1F) {
    System.out.println(df.format(f));
}
```


----------



## Schatti (23. September 2003)

bei mir gibt er dann aber nichts aus

so siehts bei mir aus

```
package shadow;
import java.text.*;
public class Test {
  public Test() {
  DecimalFormat df = new DecimalFormat("#,#0.0");
  for(float f = 0.0F; f < 7.0F; f += 0.1F) {
  System.out.println(df.format(f));
}

  }
  public static void main(String[] args) {
    Test test1 = new Test();
  }

}
```


----------



## Schatti (23. September 2003)

sorry, dass ich dich vielleicht nerve, aber ich brauche das für die schule :-(


----------



## Schatti (23. September 2003)

habs nun selber hinbekommen 

  for (double i=(0.1); i <7.0; i=i+0.1)
  System.out.println(Math.rint(i*100.0)/100.0);
  }


----------



## Thomas Darimont (26. September 2003)

Servus!

...und noch einer:


```
public static void main(String[] args) {
		BigDecimal bd1 = new BigDecimal("0.1");

		BigDecimal bd2 = new BigDecimal("7.0");
		BigDecimal bd3 = new BigDecimal("0.0");
				
		for (; bd3.compareTo(bd2) <= 0; bd3 = bd3.add(bd1)) {
			System.out.println(bd3.toString());
		}
	}
```

Gruß Tom


----------

