Apua java-ohjelmointiin!
Toivottavasti täällä olisi joku javaa osaava. Miten saan nämä speksit toimimaan? En tajua miten saan nuo negatiiviset luvut pois keskiarvosta.
"Kirjoita ohjelma, joka lukee käyttäjältä kokonaislukuja kunnes käyttäjä syöttää luvun 0. Tämän jälkeen ohjelma tulostaa syötteessä esiintyneiden positiivisten (eli nollaa suurempien lukujen) keskiarvon.
Mikäli ohjelmassa ei syötetä yhtäkään positiivista lukua, ohjelman tulee tulostaa "keskiarvon laskeminen ei ole mahdollista"."
Kommentit (23)
opiskelukavereilta varmaan saat apuja
while input >< 0
{
if input > 0 summa = summa + input
lukum = lukum + 1
}
ka = summa/lukum
If summa = 0, print " N/A" else print ka
Ymmärtämisen vaikeus on osatun soveltamisessa.
https://www.cs.helsinki.fi/u/wikla/Ohjelmointi/Sisalto/2/LoVaTo.html
import java.io.*;
import java.util.*;
public class Main {
public static void main(String []args) {
try {
Main a = new Main();
a.readValues();
}
catch(Exception ex) {
System.out.println(ex);
}
}
public void readValues() throws IOException {
BufferedReader bin = new BufferedReader(new InputStreamReader(System.in));
ArrayList numbers = new ArrayList();
System.out.println("Kirjoita positiivinen kokonaisluku ja paina Enter. Syötä 0 ja Enter kun haluat lopettaa.");
while(true) {
String s = bin.readLine();
if( s != null && s.equals("0") ) {
break;
}
int value = Integer.parseInt(s);
if( value > 0 ) {
numbers.add(value);
}
}
bin.close();
double sum = 0;
for(int i = 0; i < numbers.size(); i++) {
sum += numbers.get(i);
}
if( numbers.size() > 0 ) {
System.out.println("Positiivisten lukujen keskiarvo on " + sum/numbers.size());
}
else {
System.out.println("Keskiarvon laskeminen ei ole mahdollista");
}
}
}
Vierailija kirjoitti:
Tee itse omat kotitehtäväsi.
Ihmettelen aina näissä keskusteluissa näitä kommentteja. Eikö ap juuri yritä tehdä tehtävää itse? Ei ole tyhmää pyytää apua jos ei osaa. Sinä ilmeisesti et osaa auttaa.
Vierailija kirjoitti:
Vierailija kirjoitti:
Tee itse omat kotitehtäväsi.
Ihmettelen aina näissä keskusteluissa näitä kommentteja. Eikö ap juuri yritä tehdä tehtävää itse? Ei ole tyhmää pyytää apua jos ei osaa. Sinä ilmeisesti et osaa auttaa.
Et tiedä mistään mitään. Ole hiljaa.
Vierailija kirjoitti:
Vierailija kirjoitti:
Tee itse omat kotitehtäväsi.
Ihmettelen aina näissä keskusteluissa näitä kommentteja. Eikö ap juuri yritä tehdä tehtävää itse? Ei ole tyhmää pyytää apua jos ei osaa. Sinä ilmeisesti et osaa auttaa.
Veikkaan että tämä foorumi ei ole otollisin paikka saada suopeita vastauksia ap:n esittämään pähkinään. Valtaosa ihmisistä täällä ei ole himokäpistelijöitä.
Kiitos teille jotka yrititte auttaa. Te olette vain liian hyviä, itse teen vasta alkeita niin en osaa noin monimutkaisia. Olen tähän asti päässyt, mutta keskiarvoon tulee nyt kaikki luvut mukaan. Varmaan täytyisi saada summa muotoiltua niin että se laskee vain positiiviset luvut mutta en osaa. Ap
public static void main(String[] args) {
Scanner lukija = new Scanner(System.in);
int summa = 0;
int maara = 0;
while (true) {
int luku = Integer.valueOf(lukija.nextLine());
summa = summa + luku;
maara = maara + 1;
if (luku != 0) {
continue;
} else if (summa < 0) {
System.out.println("Keskiarvon laskeminen ei ole mahdollista");
} else if (summa > 0) {
System.out.println((double) summa / maara);
} else if (luku == 0) {
break;
}
}
}
}
Vierailija kirjoitti:
Vierailija kirjoitti:
Tee itse omat kotitehtäväsi.
Ihmettelen aina näissä keskusteluissa näitä kommentteja. Eikö ap juuri yritä tehdä tehtävää itse? Ei ole tyhmää pyytää apua jos ei osaa. Sinä ilmeisesti et osaa auttaa.
Voi se ollakin tyhmää. Jos joku kysyy juristilta vapaa-aikana apua siksi kun itse ei osaa, niin se ei ole korrektia. Työkseen koodaavilla ei välttämättä ole intoa ratkoa jonkun koulutehtäviä.
Jos et osaa noin alkeellista asiaa tehdä, älykkyytesi ei riitä ohjelmointiin. Kokeile vaikka McDonaldsin kassatyöntekijän hommaa?
Vierailija kirjoitti:
while input >< 0
{
if input > 0 summa = summa + input
lukum = lukum + 1
}
ka = summa/lukum
If summa = 0, print " N/A" else print ka
En ole javaa koodannut, mutta jos ymmärsin, mitä tuossa oli, niin näyttää järkevältä.
Vierailija kirjoitti:
Jos et osaa noin alkeellista asiaa tehdä, älykkyytesi ei riitä ohjelmointiin. Kokeile vaikka McDonaldsin kassatyöntekijän hommaa?
Toivottavasti tunnet itsesi hyvin älykkääksi ja muiden yläpuolella olevaksi ihmiseksi. Ainakin ulospäin vaikutat sellaiselta! Olet myös äärettömän ystävällinen.
Olen pahoillani että erehdyin kysymään apua täältä. Toivottavasti teillä ilkeilijöillä on nyt hyvä mieli. Muutkin kuin työkseen koodaavat osaavat koodata. Olen itsekin vastannut tällä palstalla ammattiini liittyviin kysymyksiin joten en ajatellut että olisi ollut väärin kysyä. No tiedänpä tulevaisuudessa etten häiritse palstailuanne typerillä kysymyksillä.
Niin ja teen nettikurssia jossa ei siis ole mitään ryhmää, ajattelin omaksi ilokseni opetella jotain uutta. Ap
Vierailija kirjoitti:
Vierailija kirjoitti:
Jos et osaa noin alkeellista asiaa tehdä, älykkyytesi ei riitä ohjelmointiin. Kokeile vaikka McDonaldsin kassatyöntekijän hommaa?
Toivottavasti tunnet itsesi hyvin älykkääksi ja muiden yläpuolella olevaksi ihmiseksi. Ainakin ulospäin vaikutat sellaiselta! Olet myös äärettömän ystävällinen.
Olen pahoillani että erehdyin kysymään apua täältä. Toivottavasti teillä ilkeilijöillä on nyt hyvä mieli. Muutkin kuin työkseen koodaavat osaavat koodata. Olen itsekin vastannut tällä palstalla ammattiini liittyviin kysymyksiin joten en ajatellut että olisi ollut väärin kysyä. No tiedänpä tulevaisuudessa etten häiritse palstailuanne typerillä kysymyksillä.
Niin ja teen nettikurssia jossa ei siis ole mitään ryhmää, ajattelin omaksi ilokseni opetella jotain uutta. Ap
Tosiasioiden tunnustaminen on kaiken viisauden alku. - Paasikivi
Vierailija kirjoitti:
Vierailija kirjoitti:
Jos et osaa noin alkeellista asiaa tehdä, älykkyytesi ei riitä ohjelmointiin. Kokeile vaikka McDonaldsin kassatyöntekijän hommaa?
Toivottavasti tunnet itsesi hyvin älykkääksi ja muiden yläpuolella olevaksi ihmiseksi. Ainakin ulospäin vaikutat sellaiselta! Olet myös äärettömän ystävällinen.
Olen pahoillani että erehdyin kysymään apua täältä. Toivottavasti teillä ilkeilijöillä on nyt hyvä mieli. Muutkin kuin työkseen koodaavat osaavat koodata. Olen itsekin vastannut tällä palstalla ammattiini liittyviin kysymyksiin joten en ajatellut että olisi ollut väärin kysyä. No tiedänpä tulevaisuudessa etten häiritse palstailuanne typerillä kysymyksillä.
Niin ja teen nettikurssia jossa ei siis ole mitään ryhmää, ajattelin omaksi ilokseni opetella jotain uutta. Ap
kannattaa mennä opiskelemaan jonnekkin kunnon oppilaitokseen. Vauvapalstan opeilla ei tule koodariksi.
Vierailija kirjoitti:
Vierailija kirjoitti:
Vierailija kirjoitti:
Vierailija kirjoitti:
Tee itse omat kotitehtäväsi.
Ihmettelen aina näissä keskusteluissa näitä kommentteja. Eikö ap juuri yritä tehdä tehtävää itse? Ei ole tyhmää pyytää apua jos ei osaa. Sinä ilmeisesti et osaa auttaa.
Veikkaan että tämä foorumi ei ole otollisin paikka saada suopeita vastauksia ap:n esittämään pähkinään. Valtaosa ihmisistä täällä ei ole himokäpistelijöitä.
Joo, enimmäkseen täällä on aggressioitaan purkamassa luonnevikaisia naisia. Tuommoinen kysymys kannattaisi esittää palstalla, jolla on paljon nuoria miehiä. Heistä monet ovat täysin hurahtaneita noihin juttuihin.
mutta mielellään soisi sen olevan tasavertaisten foorumi, jossa kaikki antavat toisilleen. Ei ole reilua että joku teettää tehtävänsä muilla.
Vierailija kirjoitti:
Kiitos teille jotka yrititte auttaa. Te olette vain liian hyviä, itse teen vasta alkeita niin en osaa noin monimutkaisia. Olen tähän asti päässyt, mutta keskiarvoon tulee nyt kaikki luvut mukaan. Varmaan täytyisi saada summa muotoiltua niin että se laskee vain positiiviset luvut mutta en osaa. Ap
public static void main(String[] args) {
Scanner lukija = new Scanner(System.in);
int summa = 0;
int maara = 0;
while (true) {
int luku = Integer.valueOf(lukija.nextLine());
summa = summa + luku;
maara = maara + 1;if (luku != 0) {
continue;} else if (summa < 0) {
System.out.println("Keskiarvon laskeminen ei ole mahdollista");
} else if (summa > 0) {
System.out.println((double) summa / maara);} else if (luku == 0) {
break;}
}
}
}
Lisää ehtolause, joka lisää muuttujan summaan vain jos se on positiivinen.
import java.util.Scanner;
public class Keskiarvo {
public static void main(String[] args) {
Scanner lukija = new Scanner(System.in);
int summa = 0;
int maara = 0;
while (true) {
int luku = Integer.parseInt(lukija.nextLine());
if (luku > 0) {
summa = summa + luku;
maara = maara + 1;
} else if (luku == 0) {
if (summa < 0) {
System.out.println("Keskiarvon laskeminen ei ole mahdollista");
} else if (summa > 0) {
System.out.println((double) summa / maara);
}
break;
}
}
}
}
Vierailija kirjoitti:
Vierailija kirjoitti:
Vierailija kirjoitti:
Tee itse omat kotitehtäväsi.
Ihmettelen aina näissä keskusteluissa näitä kommentteja. Eikö ap juuri yritä tehdä tehtävää itse? Ei ole tyhmää pyytää apua jos ei osaa. Sinä ilmeisesti et osaa auttaa.
Voi se ollakin tyhmää. Jos joku kysyy juristilta vapaa-aikana apua siksi kun itse ei osaa, niin se ei ole korrektia. Työkseen koodaavilla ei välttämättä ole intoa ratkoa jonkun koulutehtäviä.
No se voi tehdä sen sellaisena koodihirviönä että kaikki näkee ettei tuota ole tehty perustietotaidolla.
Tee itse omat kotitehtäväsi.