Wczytywanie liczb w pętli

Wczytywanie liczb w pętli
Dubliner
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 10
0

witam. czy moze mi ktos odpowiedziec jak uzyc while loop aby w programie mozna bylo wklepac z klawiatury nieskonczona ilosc liczb z przecinkiem a program obliczy srednia? dodam ze program powinien sie zakonczyc kiedy zostanie wklepane 0. Dzieki

bogdans
  • Rejestracja: dni
  • Ostatnio: dni
0

Nie da się wklepać nieskończonej ilości liczb. Dla nieskończonej ilości liczb średnia jest niezdefiniowana.
Spróbuj użyć klasy Scanner.

Dubliner
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 10
0

powiedzmy ze moge wklepac nieskonczona ilosc liczb ktore beda sie dodawaly(np 0.1 11.1 10.3) a po wbiciu 0 program obliczy mi srednia

_13th_Dragon
  • Rejestracja: dni
  • Ostatnio: dni
1

W pętle zliczaj sumę podanych liczb oraz ilość podanych liczb średnią oblicz po pętle.

miszasty93
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 93
0

Jest sposób by przy uzyciu Stream API utowrzyć stream z zesplitowanego Stringa ?

Dubliner
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 10
0

dzieki ale musze zostac przy loop

_13th_Dragon
  • Rejestracja: dni
  • Ostatnio: dni
Tgc
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 179
0
miszasty93 napisał(a):

Jest sposób by przy uzyciu Stream API utowrzyć stream z zesplitowanego Stringa ?

Tak, uzyj Stream.of(x.split(y)).

KA
  • Rejestracja: dni
  • Ostatnio: dni
  • Lokalizacja: Warszawa
  • Postów: 1683
2

@miszasty93 sama średnio to ogarniam, ale:

Kopiuj
import org.apache.commons.lang3.math.NumberUtils;

import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.util.stream.Collectors;
import java.util.stream.Stream;


public class Main {
    public static void main(String[] args) {
        // split przyklad
        Stream.of("1,2,3,4".split(","))
                .filter(NumberUtils::isNumber)
                .mapToInt(Integer::parseInt)
                .average()
                .ifPresent(System.out::println);

        // przyklad jak user potrafi wysłać EOF
        Double avg = new BufferedReader(new InputStreamReader(System.in))
                .lines()
                .collect(Collectors.averagingInt(Integer::parseInt));
        System.out.println(avg);
    }
}
Dubliner
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 10
0

juz napisane.Dzieki za pomoc

Zarejestruj się i dołącz do największej społeczności programistów w Polsce.

Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.