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

515

    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. Riikka Purra leikkasi alimmalta tulodesiililtä 15 %

      Muistaako kukaan Riikka Purran kovaäänisen vaalilupauksen ennen eduskuntavaaleja? https://yle.fi/a/74-20221152 "THL o
      Maailman menoa
      340
      6355
    2. Muistele nainen niitä meidän yhteisiä hetkiä

      Miltä ne tuntui? Enkö aina huokunut välittämistä, kiintymystä. Eikö sinulla aina ollut hyvä olo kanssani? Minulla ainaki
      Ikävä
      48
      3796
    3. Olisitko tältä

      seisomalta valmis seksuaaliseen kanssakäymiseen hänen kanssaan?
      Ikävä
      81
      953
    4. Yllätä mut ja laita viestiä

      Whatsapissa. Uskallatko vielä?
      Ikävä
      52
      870
    5. Huomasin kyllä

      Mitä tästä pitäisi ajatella?
      Ikävä
      56
      826
    6. Miellyttääkö eniten

      Kaivattusi persoona vai ulkonäkö?
      Ikävä
      41
      820
    7. Haluatko sitten

      Rakastella miten paljon?
      Ikävä
      68
      800
    8. Tämä kikka tekee lihapullista entistä maukkaampia - Tämä "ihmeaine" löytyy keittiön kaapista

      Lihapullat ja ruskea kastike on arkiruokien kunkku! Paistatko itse lihapullat pannulla vai uunissa? Näin saat ruoasta v
      Ruoanlaitto
      8
      793
    9. Naiset ei halua kilttejä miehiä

      Näin se vaan on..jos olet ilman tatskoja, et rähjää, sinulla ei ole rikosrekisteriä, olet liian kiltti, et sano pahasti,
      Ikävä
      135
      792
    10. Seiska: Helmi Loukasmäki paljastaa - Näin Danny ja Helmi tapasivat

      Helmi Loukasmäki, 25, ja Ilkka Danny Lipsanen, 83, ovat seurattuja julkkiksia. Mutta tiesitkö, miten he tapasivat? Lue
      Viihde ja kulttuuri
      14
      711
    Aihe