Elikkä miten saisin tehtyä tällasen? Osaisko joku neuvoa jonku verran?
Montako riviä haluat tehdä> 1 (1-8)
Syötä 1. ottelun lopputulos (1X2)> 1
Syötä 2. ottelun lopputulos (1X2)> 1
Syötä 3. ottelun lopputulos (1X2)> 2
Syötä 4. ottelun lopputulos (1X2)> 2
Syötä 5. ottelun lopputulos (1X2)> X
Syötä 6. ottelun lopputulos (1X2)> 1
Syötä 7. ottelun lopputulos (1X2)> X
Syötä 8. ottelun lopputulos (1X2)> X
Tässä nyt mitä oon tehny mutta ei oikeen luonnistu:
import java.io.*;
class Ohjelma.java {
public static void main ( String [] argv ) throws IOException {
BufferedReader stdin = new BufferedReader (new InputStreamReader (System.in));
// ONGELMA!!
System.out.println ("Montako riviä haluat tehdä")
String mjono [ ];
mjono = new String [8];
System.out.println ("Syötä 1. ottelun lopputulos");
mjono[0] = stdin.readLine();
System.out.println ("Syötä 2. ottelun lopputulos");
mjono[1] = stdin.readLine();
System.out.println ("Syötä 3. ottelun lopputulos");
mjono[2] = stdin.readLine();
System.out.println ("Syötä 4. ottelun lopputulos");
mjono[3] = stdin.readLine();
System.out.println ("Syötä 5. ottelun lopputulos");
mjono[4] = stdin.readLine();
System.out.println ("Syötä 6. ottelun lopputulos");
mjono[5] = stdin.readLine();
System.out.println ("Syötä 7. ottelun lopputulos");
mjono[6] = stdin.readLine();
System.out.println ("Syötä 8. ottelun lopputulos");
mjono[7] = stdin.readLine();
System.out.println (mjono [0]);
System.out.println (mjono [1]);
System.out.println (mjono [2]);
System.out.println (mjono [3]);
System.out.println (mjono [4]);
System.out.println (mjono [5]);
System.out.println (mjono [6]);
System.out.println (mjono [7]);
}// main päättyy
}// class päättyy
Montako riviä haluat tehdä> 1 (1-8)
Syötä 1. ottelun lopputulos (1X2)> 1
Syötä 2. ottelun lopputulos (1X2)> 1
Syötä 3. ottelun lopputulos (1X2)> 2
Syötä 4. ottelun lopputulos (1X2)> 2
Syötä 5. ottelun lopputulos (1X2)> X
Syötä 6. ottelun lopputulos (1X2)> 1
Syötä 7. ottelun lopputulos (1X2)> X
Syötä 8. ottelun lopputulos (1X2)> X
Tässä nyt mitä oon tehny mutta ei oikeen luonnistu:
import java.io.*;
class Ohjelma.java {
public static void main ( String [] argv ) throws IOException {
BufferedReader stdin = new BufferedReader (new InputStreamReader (System.in));
// ONGELMA!!
System.out.println ("Montako riviä haluat tehdä")
String mjono [ ];
mjono = new String [8];
System.out.println ("Syötä 1. ottelun lopputulos");
mjono[0] = stdin.readLine();
System.out.println ("Syötä 2. ottelun lopputulos");
mjono[1] = stdin.readLine();
System.out.println ("Syötä 3. ottelun lopputulos");
mjono[2] = stdin.readLine();
System.out.println ("Syötä 4. ottelun lopputulos");
mjono[3] = stdin.readLine();
System.out.println ("Syötä 5. ottelun lopputulos");
mjono[4] = stdin.readLine();
System.out.println ("Syötä 6. ottelun lopputulos");
mjono[5] = stdin.readLine();
System.out.println ("Syötä 7. ottelun lopputulos");
mjono[6] = stdin.readLine();
System.out.println ("Syötä 8. ottelun lopputulos");
mjono[7] = stdin.readLine();
System.out.println (mjono [0]);
System.out.println (mjono [1]);
System.out.println (mjono [2]);
System.out.println (mjono [3]);
System.out.println (mjono [4]);
System.out.println (mjono [5]);
System.out.println (mjono [6]);
System.out.println (mjono [7]);
}// main päättyy
}// class päättyy
Vastaukset 14
Vanhimmat
// ONGELMA!!
System.out.println ("Montako riviä haluat tehdä");
int rivit = Integer.parseString(stdin.readLine().trim());
for (int i = 0; i < rivit; i )
{
System.out.println ("Syötä " i "ottelun lopputulos");
mjono[i] = stdin.readLine();
}
for (int i = 0; i < rivit; i )
{
System.out.println (mjono [i]);
}
Laitoin koodin näin mutta pukkaa erroria:
Jos joku ois niin ystävällinen taas että kertois että näkyykö tossa jtn pahaa virhettä ku ite en nää :/
import java.io.*;
class Testi {
public static void main ( String [] argv ) throws IOException {
BufferedReader stdin = new BufferedReader (new InputStreamReader (System.in));
// ONGELMA!!
System.out.println ("Montako riviä haluat tehdä");
int rivit = Integer.parseString(stdin.readLine().trim());
for (int i = 0; i < rivit; i )
{
System.out.println ("Syötä " i "ottelun lopputulos");
mjono[i] = stdin.readLine();
}
for (int i = 0; i < rivit; i )
{
System.out.println (mjono [i]);
}
String mjono [ ];
mjono = new String [8];
System.out.println ("Syötä 1. ottelun lopputulos");
mjono[0] = stdin.readLine();
System.out.println ("Syötä 2. ottelun lopputulos");
mjono[1] = stdin.readLine();
System.out.println ("Syötä 3. ottelun lopputulos");
mjono[2] = stdin.readLine();
System.out.println ("Syötä 4. ottelun lopputulos");
mjono[3] = stdin.readLine();
System.out.println ("Syötä 5. ottelun lopputulos");
mjono[4] = stdin.readLine();
System.out.println ("Syötä 6. ottelun lopputulos");
mjono[5] = stdin.readLine();
System.out.println ("Syötä 7. ottelun lopputulos");
mjono[6] = stdin.readLine();
System.out.println ("Syötä 8. ottelun lopputulos");
mjono[7] = stdin.readLine();
System.out.println (mjono [0]);
System.out.println (mjono [1]);
System.out.println (mjono [2]);
System.out.println (mjono [3]);
System.out.println (mjono [4]);
System.out.println (mjono [5]);
System.out.println (mjono [6]);
System.out.println (mjono [7]);
}// main päättyy
}// class päättyy
java on just siitä hassu kieli, ettei siinä voi vaan arpoa noiden rivien paikkaa ja toivoa että toimii. Siinä pitää käyttää tiettyä logiikkaa.
import java.io.*;
class Testi {
public static void main ( String [] argv ) throws IOException {
BufferedReader stdin = new BufferedReader (new InputStreamReader (System.in));
System.out.println ("Montako riviä haluat tehdä");
int rivit = Integer.parseString(stdin.readLine().trim());
String[] mjono = new String[rivit];
for (int i = 0; i < rivit; i )
{
System.out.println ("Syötä " i "ottelun lopputulos");
mjono[i] = stdin.readLine();
}
for (int i = 0; i < rivit; i )
{
System.out.println (mjono [i]);
}
}// main päättyy
}// class päättyy
Okei.. käytätkö jtn ohjelmaa noiden tekemiseen vai notepad dos? ku vieläki anto errorin tuohon kohtaan.. :/ ihme hommaa..
Integer.parseString(stdin.readLine().trim());
Integer.parseInt(stdin.readLine().trim());
se on siitä hyvä sovelluskehitin, että se kertoo automaagisesti mikä on pielessä eikä tartte itse arvailla.
Jos virheilmoitus ei suoraan kerro, niin voi ajaa sovellusta debug-tilassa rivi kerrallaan ja nähdä missä homma kusee
pistätkö urlia?
http://www.eclipse.org/downloads/
eipä tuo ohjelman pätkä ala toimiin vaikka mitä tekee ://
Kuten ylempänä mainitiin parseInt on oikea versio...
import java.io.*;
class Testi {
public static void main ( String [] argv ) throws IOException {
BufferedReader stdin = new BufferedReader (new InputStreamReader (System.in));
System.out.println ("Montako riviä haluat tehdä ?");
int rivit = Integer.parseInt(stdin.readLine().trim());
String[] mjono = new String[rivit];
for (int i = 0; i < rivit;)
{
System.out.println ("Syötä " (i 1) " ottelun lopputulos");
mjono[i] = stdin.readLine().trim();
if (mjono[i].equals("1") || mjono[i].equals("x") || mjono[i].equals("2")) {
// seuraava tulos...
i ;
} else {
System.err.println("Syötä 1,X tai 2.");
}
}
for (int i = 0; i < rivit; i )
{
System.out.println (mjono [i]);
}
}// main päättyy
}// class päättyy
java on niin lapsellisen helppo kieli että ei voi kuin ihmetellä miksi ihmiset jotka ei sitä osaa hakeutuu alalle missä sitä joutuu opetella
Joo no anteeksi kovasti kun en osaa.. Toinen pyytää apua ja toinen tulee sitten vaan morkaamaan että kannattaisiko vaihtaa alaa.. joo no en ole kyseisellä alalla enkä varmaan koskaan tule olemaankaan.. mutta kiinnostaisi opetella kuitenkin jonkin verran.. Kiitoskia kaikille muille joista on ollut apua..
Elikkä onglma jatkuu yhä vaikkakin koodi toimii eli kyseinen koodi valitsee vain montako kohdetta käyttäjä haluaa pelata ei rivien määrää.. Rivit ja kohteet ovat eri asia.. Rivimäärälle ei ole annettuna minkäänlaista rajaa..
Montako riviä haluat tehdä>
Syötä 1. ottelun lopputulos (1X2)> 1
Syötä 2. ottelun lopputulos (1X2)> 1
Syötä 3. ottelun lopputulos (1X2)> 2
Syötä 4. ottelun lopputulos (1X2)> 2
Syötä 5. ottelun lopputulos (1X2)> X
Syötä 6. ottelun lopputulos (1X2)> 1
Syötä 7. ottelun lopputulos (1X2)> X
Syötä 8. ottelun lopputulos (1X2)> X
eli esimerkiksi jos haluaisin tehdä viisi riviä ohjelma menisi näin:
Montako riviä haluat tehdä> 5
Syötä 1. ottelun lopputulos (1X2)> 1
Syötä 2. ottelun lopputulos (1X2)> 1
Syötä 3. ottelun lopputulos (1X2)> 2
Syötä 4. ottelun lopputulos (1X2)> 2
Syötä 5. ottelun lopputulos (1X2)> X
Syötä 6. ottelun lopputulos (1X2)> 1
Syötä 7. ottelun lopputulos (1X2)> X
Syötä 8. ottelun lopputulos (1X2)> X
Syötä 1. ottelun lopputulos (1X2)> 1
Syötä 2. ottelun lopputulos (1X2)> 1
Syötä 3. ottelun lopputulos (1X2)> 2
Syötä 4. ottelun lopputulos (1X2)> 2
Syötä 5. ottelun lopputulos (1X2)> X
Syötä 6. ottelun lopputulos (1X2)> 1
Syötä 7. ottelun lopputulos (1X2)> X
Syötä 8. ottelun lopputulos (1X2)> X
Syötä 1. ottelun lopputulos (1X2)> 1
Syötä 2. ottelun lopputulos (1X2)> 1
Syötä 3. ottelun lopputulos (1X2)> 2
Syötä 4. ottelun lopputulos (1X2)> 2
Syötä 5. ottelun lopputulos (1X2)> X
Syötä 6. ottelun lopputulos (1X2)> 1
Syötä 7. ottelun lopputulos (1X2)> X
Syötä 8. ottelun lopputulos (1X2)> X
Syötä 1. ottelun lopputulos (1X2)> 1
Syötä 2. ottelun lopputulos (1X2)> 1
Syötä 3. ottelun lopputulos (1X2)> 2
Syötä 4. ottelun lopputulos (1X2)> 2
Syötä 5. ottelun lopputulos (1X2)> X
Syötä 6. ottelun lopputulos (1X2)> 1
Syötä 7. ottelun lopputulos (1X2)> X
Syötä 8. ottelun lopputulos (1X2)> X
Syötä 1. ottelun lopputulos (1X2)> 1
Syötä 2. ottelun lopputulos (1X2)> 1
Syötä 3. ottelun lopputulos (1X2)> 2
Syötä 4. ottelun lopputulos (1X2)> 2
Syötä 5. ottelun lopputulos (1X2)> X
Syötä 6. ottelun lopputulos (1X2)> 1
Syötä 7. ottelun lopputulos (1X2)> X
Syötä 8. ottelun lopputulos (1X2)> X
Alla koodia:
import java.io.*;
class Testi {
public static void main ( String [] argv ) throws IOException {
BufferedReader stdin = new BufferedReader (new InputStreamReader (System.in));
System.out.println ("Montako riviä haluat tehdä ?");
int rivit = Integer.parseInt(stdin.readLine().trim());
String[] mjono = new String[rivit];
for (int i = 0; i < rivit;)
{
System.out.println ("Syötä " (i 1) " ottelun lopputulos");
mjono[i] = stdin.readLine().trim();
if (mjono[i].equals("1") || mjono[i].equals("x") || mjono[i].equals("2")) {
// seuraava tulos...
i ;
} else {
System.err.println("Syötä 1,X tai 2.");
}
}
for (int i = 0; i < rivit; i )
{
System.out.println (mjono [i]);
}
}// main päättyy
}// class päättyy
Koodia on hiukan muunneltu, mutta mites nyt saisin tuosta sellaisen että saan syötettyä esimerkiksi 2riviä? nyt on mahdollista syöttää vain 1rivi..
import java.io.*;
class Testi {
public static void main ( String [] argv ) throws IOException {
BufferedReader stdin = new BufferedReader (new InputStreamReader
(System.in));
System.out.println ("Montako riviä haluat tehdä ?");
int rivit = Integer.parseInt(stdin.readLine().trim());
String[] mjono = new String[8];
for (int i = 0; i < 8; i )
{
System.out.println ("Syötä " (i 1) " ottelun lopputulos (1X2)");
mjono[i] = stdin.readLine().trim();
if (mjono[i].equals("1") || mjono[i].equals("x") || mjono[i].equals("2")) {
// seuraava tulos...
} else {
}
}
for (int j = 0; j < 8; j )
{
System.out.println (mjono [j]);
}
}// main päättyy
}// class päättyy