Nevokaapas viisammat miten tämä tehtäsiin Javalla:
Laiska opettaja tarvitsee ohjelman, joka selvittää eräällä tietotekniikan kurssilla annettujen numeroiden jakautuman ts. kuinka monta nelosta, vitosta, jne. Kurssinumerot syötetään kokonaislukutaulukkoon. Taulukon kooksi määritellään 40 alkiota. Ohjelma tarkistaa, että syötetty numero on välillä 4-10 ja, ettei taulukon kokoa ylitetä. Numeroiden syöttäminen lopetetaan lopetusmerkillä 0 (lue: nolla). Ohjelma kertoo tulosteessa, kuinka monta numeroa taitamaton opettajan on antanut. Numerojakaumassa tähti edustaa aina yhtä numeroa.
Tähden tulostaminen suoritetaan funktion avulla. Funktiolle annetaan tulostettavien tähtien lukumäärä. Tulostulauseella System.out.print("*"); voit tulostaa tähden ilman rivinvaihtoa.
Annoit 20 numeroa.
Numerojakauma:
4: *
5: **
6: ***
7: ***
8: *********
9: ***
10:*
Laiska opettaja tarvitsee ohjelman, joka selvittää eräällä tietotekniikan kurssilla annettujen numeroiden jakautuman ts. kuinka monta nelosta, vitosta, jne. Kurssinumerot syötetään kokonaislukutaulukkoon. Taulukon kooksi määritellään 40 alkiota. Ohjelma tarkistaa, että syötetty numero on välillä 4-10 ja, ettei taulukon kokoa ylitetä. Numeroiden syöttäminen lopetetaan lopetusmerkillä 0 (lue: nolla). Ohjelma kertoo tulosteessa, kuinka monta numeroa taitamaton opettajan on antanut. Numerojakaumassa tähti edustaa aina yhtä numeroa.
Tähden tulostaminen suoritetaan funktion avulla. Funktiolle annetaan tulostettavien tähtien lukumäärä. Tulostulauseella System.out.print("*"); voit tulostaa tähden ilman rivinvaihtoa.
Annoit 20 numeroa.
Numerojakauma:
4: *
5: **
6: ***
7: ***
8: *********
9: ***
10:*
Vastaukset 4
Vanhimmat
Et sitten jaksanut tehdä mitään muuta kuin copy-pasteta tehtävän tänne?! No eihän sitä välttämättä ohjelmointikurssin läpipääsemiseen pitäis muuta tarvitakaan kuin ctrl-c ja ctrl-v. Onneks kuitenkin kerroit että print metodilla voi tulostaa ilman rivinvaihtoa.
Onnea matkaan!
No tällaisen olen saanut aikaan mutta ei ole ihan oikein tehty....
import java.io.*;
class teht2{
public static void main(String[] args) {
int luku = 0, isumma = 0, lkm = 0;
double dsumma, dka;
BufferedReader syotto = new BufferedReader(new InputStreamReader(System.in));
do
{
System.out.println("Syota jokaisen viikonpaivan lampotila ja keskeyta syotto antamalla luku -1.");
try {
String mj = syotto.readLine();
luku = Integer.parseInt(mj);
if (luku != -1)
{
lkm = lkm 1;
isumma = isumma luku;
}
}
catch (IOException poikkeus) {
System.out.println("Virhe syötteen lukemisessa");
}
}while (luku!=-1);
dsumma = isumma;
if (lkm !=0)
{
dka = dsumma / lkm;
System.out.println("Kiitos. Viikon keskilampotila on: " dka);
}
else
System.out.println("Et syottanyt yhtaan lampotilaa!");
}
}
Eikö lämpötila siis saa olla -1, ja eikö tässä ollutkaan kysymys arvosanoista? Millä tavalla arvosanat ja lämpotilat korreloivat? Tietääkö kraak, mitä kysyy?
Eihän tämä vaikea voi olla?
Eli lajittele vaikkapa toiseen taulukkoon ne arvosanat, niin että arv[0] sisältää vaikkapa nelosten lukumäärän, arv[1] viitosten, jne.
Sitten vain ajat for-silmukalla tuon taulukon indeksit läpi, jokaisesta tarkistat montako kyseistä arvosanaa on annettu, ja sen jälkeen vaikkapa toisella for-silmukalla tulostat niin monta asteriskia riville, jonka jälkeen vaihdat rivin??