Hirdetés

Új hozzászólás Aktív témák

  • orc88

    őstag

    Üdv!

    1 hete kezdtem el a Java programozást, egy kisebb problémába ütköztem osztás művelet során.
    A program csak azt írja ki, ahány egésszer van meg ténylegesen. Pl. 8 / 5-nél 1-et ad vissza, nem 1,6-ot, 3/4-nél pedig 0át...

    Közben észrevettem, hogy hiába van float-ra deklarálva a szám változója bekéréskor, már ott sem tudja kezelni a tizedes jegyeket, error-t dob...

    *Bocsi ha kuszán fogalmaztam, gyorsan írtam, ahogy jött :DDD :P *

    A forráskód...
    public class Osszeadas2 {

    /**
    * @param args the command line arguments
    */
    public static void main(String[] args) {
    // TODO code application logic here
    Scanner be = new Scanner(System.in);
    char c;
    System.out.println("Kérek 2 számot");
    float sz1 = be.nextFloat();
    float sz2 = be.nextFloat();
    System.out.println("Mi az üzenet?");
    String msg;
    msg = be.next();

    System.out.println("1. Összeadás");
    System.out.println("2. Kivonás");
    System.out.println("3. Szorzás");
    System.out.println("4. Osztás");
    c = be.next().charAt(0);

    float szam = 0;
    switch (c) {
    case '1': szam = sz1+sz2; break;
    case '2': szam = sz1-sz2; break;
    case '3': szam = sz1*sz2; break;
    case '4': if (sz2 == 0) {
    do {
    System.out.println("Ne legyen a második szám 0!");
    System.out.println("Adj meg egy másik számot!");
    sz2 = be.nextFloat();
    } while (sz2 == 0);
    }
    szam = sz1/sz2; break;
    }
    System.out.println(msg + " " + szam);
    }
    }

    :F :R

    "Life's simple: You make choices and you don't look back."

Új hozzászólás Aktív témák