Kirjautuminen

Haku

Tehtävät

Keskustelu: Ohjelmointikysymykset: Java: Merkin laskeminen merkkijonosta

Behemot [16.12.2013 10:36:44]

#

Pitäisi antaa syötteenä merkkijono(string) esim. aapeli ja sitten syötteenä annetaan vaikka 'a'(char) nyt ohjelman pitäisi tulostaa, että merkkijonossa on 2 a kirjainta

Homman saan toimimaan jos annan merkkijonon ja merkin vakiona.

The Alchemist [16.12.2013 11:51:12]

#

No, lisäät vain koodiisi kovakoodattujen sijoitusten tilalle syötteen lukemisen. Postaushistoriastasi näkee, että sinulle on jo annettu ihan riittävästi esimerkkejä siitä, miten syötevirtaa luetaan.

Behemot [16.12.2013 12:29:03]

#

public static int palauttaa(char merkki, String teksti)
  {
      int määrä = 0;
       for (int i = 0; i < teksti.length(); i++)
       {
          if (teksti.charAt(i) == merkki)
          {
           määrä++;
          }
       }
      return(määrä);
  }

  public static void main(String args[])
  {
   Scanner lukija = new Scanner (System.in);
    //System.out.println("määrä = " + palauttaa('u', "kukkuluuruu");
     System.out.print("Anna merkkijono: ");
     String merkkijono = lukija.nextLine();
     System.out.print("Anna merkki: ");
     String s = lukija.nextLine();
     System.out.println("määrä = " + palauttaa (s, merkkijono));
     System.out.println();
  }
}

Niin tässä tämä yritys :(

Mod. lisäsi kooditagit!

vesikuusi [16.12.2013 14:33:27]

#

palauttaa ottaa ensimmäisenä parametrinaan char-tyyppisen arvon, annat sille tuossa kutsussa Stringin.

System.out.println("määrä = " + palauttaa (s, merkkijono));
//                                         ^

omcesa [05.01.2014 16:15:33]

#

Muuta 'palauttaa'-metodin eka parametri String-tyyppiseksi.

Triton [05.01.2014 20:34:29]

#

Pelkkä stringiksi muuttaminen ei riitä, sillä vertailuun pitää käyttää equals-metodia.

Grez [05.01.2014 21:36:21]

#

Itse kyllä harkitisin sellaista että laittaa kutsuun s.charAt(0) ja laittaisin urputuksen tuohon merkin kysymiseen mikäli tulee muuta pituutta kuin 1 merkki.

Vastaus

Aihe on jo aika vanha, joten et voi enää vastata siihen.

Tietoa sivustosta