apuva

mikä mättää

Mikähän tässä ohjelmassa on vikana?

import java.io.*;
public class Tulostus2
{
   public static void main(String[] args)
   {
      String gender;
      int ika;
      BufferedReader in = new BufferedReader(new InputStreamReader(System.in));
      try
      {
         System.out.print("Oletko mies vai nainen (m/n)?");
         String gender = in.readLine();  
         System.out.print("Anna ikäsi: ");
         ika = Integer.parseInt(in.readLine());
         switch(gender)
         {
            case m:
              {
               if(ika >= o && ika = 56 && = 0 && = 56 &&

5

511

    Vastaukset

    Anonyymi (Kirjaudu / Rekisteröidy)
    5000
    • Nimimerkki

      Ihan kuin mulla olis ollut joskus ekalla Java-kurssilla sama tehtävä... Vai onko joku muu kysynyt tuosta tehtävästä aiemminkin?

      Kysyessä kannattais varmaan ensin vähän selittää mitä haluaisi ohjelman tekevän ja millainen ongelma sen kanssa on tullut. "Mikähän tässä ohjelmassa on vikana?" on aika kehno kysymys, harva jaksaa käydä kovin tarkkaan koodia läpi, ilman vinkkiä mitä pitäisi etsiä.

      Tuosta vois kuitenkin olla apua;
      http://java.sun.com/docs/books/tutorial/java/nutsandbolts/switch.html

      String ei ole alkeistyyppi vaan ihan olio.

      Vinkkinä vois antaa semmoisenkin, että tulosta poikkeus näkyviin pelkän virheilmoituksen sijaan.

      System.out.println("Ohjelmassa tapahtunut virhe: " e);

      • Piru_

        "String ei ole alkeistyyppi vaan ihan olio. "

        Niinhän se onkin. Ihan oikein sitä on silti tuossa käytetty.

        Hyvä tapa ois kuitenkin alustaa ne muuttujat

        String gender = null;
        int ika = 0;

        Nyt se gender-muuttuja on jo olemassa, niin ei kande luoda sisemmässä lohkossa uutta saman nimistä muuttujaa. Ei varmaan ole tarkoitus, että on kaksi saman nimistä eri lohkoissa voimassa olevaa muuttujaa

        ei siis näin

        "
        String gender = "male";

        if(blaablaa)
        {
        String gender = in.jotainjotain...
        }
        "
        vaan

        "
        String gender = "male";

        if(blaablaa)
        {
        gender = in.jotainjotain...
        }
        "

        tossa ekassa iffissä on O-kirjain eikä nolla

        if(ika >= o && ika


      • Nimimerkki
        Piru_ kirjoitti:

        "String ei ole alkeistyyppi vaan ihan olio. "

        Niinhän se onkin. Ihan oikein sitä on silti tuossa käytetty.

        Hyvä tapa ois kuitenkin alustaa ne muuttujat

        String gender = null;
        int ika = 0;

        Nyt se gender-muuttuja on jo olemassa, niin ei kande luoda sisemmässä lohkossa uutta saman nimistä muuttujaa. Ei varmaan ole tarkoitus, että on kaksi saman nimistä eri lohkoissa voimassa olevaa muuttujaa

        ei siis näin

        "
        String gender = "male";

        if(blaablaa)
        {
        String gender = in.jotainjotain...
        }
        "
        vaan

        "
        String gender = "male";

        if(blaablaa)
        {
        gender = in.jotainjotain...
        }
        "

        tossa ekassa iffissä on O-kirjain eikä nolla

        if(ika >= o && ika

        "A switch works with the byte, short, char, and int primitive data types. It also works with enumerated types (discussed in Classes and Inheritance) and a few special classes that "wrap" certain primitive types: Character, Byte, Short, and Integer (discussed in Simple Data Objects )."

        Eli String ei pelaa suoraan switchissä.


    • I.Proqatlis

      Tuossa yllä jo mainittujen lisäksi esiintyy kahdesti seuraava virheellinen iffi:

      else if(ika >= 56 &&

    • Mikä mättää

      Paljon kiitoksia ja halaus viitseliäille auttajille. Onnistuin korjaamaan kaikki virheeni.

    Ketjusta on poistettu 0 sääntöjenvastaista viestiä.

    Luetuimmat keskustelut

    1. Puoluebarometri: Marinin hallituksella 7 parasta mittaustulosta

      Orpon hallitusta pitää huonona 2/3 kansalaisista, joka on aika hyvin linjassa hallituspuolueiden yhteenlasketun kannatuk
      Maailman menoa
      74
      4066
    2. Pride-rautu korvaamaan kirjolohi

      Kekkosen saatanan tunari meni muuttamaan aikoinaan sateenkaariväen kalan nimen. Unkarin vallankumouksen innoittamana n
      Maailman menoa
      21
      2187
    3. Purran aikaisemmat kannattajat siirtyneet Lindtmanin leiriin

      Melkoinen muutos on käynnissä Suomen politiikan kentällä. Tulevista häviäjistä on hirmuinen kiire päästä ajoissa voittaj
      Maailman menoa
      13
      1928
    4. Olen parasta a-luokkaa

      Kerron nyt teille, että olen äärimmäisen utelias, ja iitserakas ihminen. Teen paljon aloituksia itseäni koskien ja tunge
      Sinkut
      36
      1294
    5. 27
      1229
    6. Se mua jotenkin harmittaa

      Et ko sulla ollu näin paljon selvästi mielenpäällä ollut kaikkea, kysymyksiä, neuvoteltavia asioita ja huolenaiheita, et
      Suhteet
      11
      1033
    7. Shakki ja matti

      Toivoisin, että olisit läsnä ja tukena arjessani. Et edes tietäisi, että se olen minä tässä ja täällä vain. Olisi asioit
      Ikävä
      72
      871
    8. Oot tosi epätavallinen

      ja erikoinen nainen. Tykästyä ikihyviksi sun kaltaiseen naiseen, mitä tästä pitäis edes ajatella.
      Ikävä
      43
      869
    9. Tuntuu että sulla on uusi ihastus

      Toivottavasti vain harhailen.
      Ikävä
      40
      751
    10. Peuran liikenne ajovaloissa

      Haittaako se jos bussit on romuja ja käyttökiellossa? https://www.ilkkapohjalainen.fi/avi-loysi-kahdeksan-puutetta-kaup
      Ähtäri
      27
      735
    Aihe