Hirdetés

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

  • Drizzt
    nagyúr

    Hölgyek/Urak!

    Programozás vizsgára készülök, az egyik feladatnál megakadtam.

    Csv file-ból kellett adatokat beolvasni ArrayListbe, aztán mindenféle metódusokat gyártani rá. A csv file-ban gyümölcsök nevei (pl. alma, körte, stb) és hozzájuk tartozó adatok vannak, többek között a kalória.

    A feladat az, hogy a metódus kérje be a felhasználótól a gyümölcs nevét és a mennyiséget, és ez alapján mondja meg, hogy az adott mennyiségű gyümölcs hány kalóriát tartalmaz.

    Megcsináltam a metódust, azt szeretném elérni, hogy ha a felhasználó rossz nevet ír be (ami nem szerepel az ArrayListben), akkor addig kérje, amíg jót nem ad (jelen állás szerint ha rossz nevet ír be a felhasználó, leáll a program).

    Itt a kód:
    public static void kaloriaKiir(ArrayList<Gyumolcs> ertekek, File f) {
            Scanner scan = new Scanner(System.in, "ISO-8859-2");
            System.out.println("Kérem a gyümölcs nevét: ");
            String nev = scan.nextLine();
            if (gyum.toString().contains(nev)) {
                System.out.println("Kérem a mennyiséget grammban: ");
                int menny = scan.nextInt();
                for (Gyumolcs gyum : ertekek) {
                    if (nev.equals(gyum.Megnevezes)) {
                        System.out.println(menny + " gramm " + gyum.Megnevezes + " " + gyum.kcal / 100 * menny + " gramm kalóriát tartalmaz.");
                    }
                }
            } else {
                System.out.println("Nem megfelelő név!");
            }
        }

    Van valami ötletetek?

    Bulizhatz rekurzioval: az utolso else agban meghivhatod a kaloriaKiirt megegyszer.
    Bulizhatsz do-while ciklussal: do... while (beolvasott szo nem gyumolcs).

    Amugy van sok furcsasag a kododban. Lehet csak a tableten nem latom, de mi szukseged van a File f parameterre? Mi a gyum, honnan jon az extended for loop elott. Van egy static String gyumod az osztalyban valamilyen ertekkel?

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