Rezervační systém – Java – Fórum – Programujte.com
 x   TIP: Přetáhni ikonu na hlavní panel pro připnutí webu

Rezervační systém – Java – Fórum – Programujte.comRezervační systém – Java – Fórum – Programujte.com

 

Fishtron
~ Anonymní uživatel
2 příspěvky
8. 3. 2020   #1
-
0
-

Ahoj všem. Potřeboval bych poradit s rezervačním systémem. V jedné metodě mám zvolení sektoru obsluhou. Pokud zvolí obsluha "Ano", program se jí zeptá na počet řad a počet míst. Jak mám ale tyto dvě hodnoty uložit, abych je mohl v další metodě použit v poli?

Moc děkuji za rady 

 public static void sector4() {
        Scanner sc = new Scanner(System.in);
        String volba;
        System.out.println("Chcete využít čtvrý sektor?(ANO/NE)");
        volba = sc.nextLine().toUpperCase();
        switch (volba) {
            case "ANO":
                rada();
                misto();
                sector5();
                break;
            case "NE":
                sector5();
                break;
            default:
                sector4();
        }

    }

Nahlásit jako SPAM
IP: 2a02:8309:a8bf:3e00:1152:a4bf:667c:8627...–
gna
~ Anonymní uživatel
1182 příspěvků
9. 3. 2020   #2
-
0
-

Funkce mohou vracet hodnoty. Dejme tomu, že chceš vracet dva inty, tak je můžeš vrátit třeba jako pole. 

public int[] getRM()
{
    int rada = ...;
    int misto = ...;
    return new int[] { rada, misto };
}
...
int[] rm = getRM();
// rm[0], rm[1]

Místo pole s magickými indexy, jsou samozřejmě lepší složitější objekty s popisnými jmény dat.

A na opakování se používají cykly, ne rekurze. 

String vyuzit;
do {
    vyuzit = sc.nextLine().toUpperCase();
} while (!"ANO".equals(vyuzit) && !"NE".equals(vyuzit));

Stejným stylem pak nebude metoda sector1 volat sector2 a ten sector3 atd, jak to nejspíš máš. 

for (int secnum = 1; secnum < 10; secnum++) {
    String vyuzit;
    do {
        System.out.println("Chcete využít " + secnum + ". sektor?(ANO/NE)");
        vyuzit = sc.nextLine().toUpperCase();
    } while (!"ANO".equals(vyuzit) && !"NE".equals(vyuzit));

    if ("ANO".equals(vyuzit)) {
        System.out.println("Zadej radu:");
        String rada =  sc.nextLine();
        System.out.println("Zadej misto:");
        String misto =  sc.nextLine();
        System.out.println("sektor " + secnum + ", rada " + rada + ", misto " + misto);
    }
}
Nahlásit jako SPAM
IP: 213.211.51.–
Fishtron
~ Anonymní uživatel
2 příspěvky
11. 3. 2020   #3
-
0
-

#2 gna
Děkuju ti, určitě to použiju.

Nahlásit jako SPAM
IP: 2a02:8309:a8bf:3e00:5c7a:2db6:1e96:4035...–
Zjistit počet nových příspěvků

Přidej příspěvek

Toto téma je starší jak čtvrt roku – přidej svůj příspěvek jen tehdy, máš-li k tématu opravdu co říct!

Ano, opravdu chci reagovat → zobrazí formulář pro přidání příspěvku

×Vložení zdrojáku

×Vložení obrázku

Vložit URL obrázku Vybrat obrázek na disku
Vlož URL adresu obrázku:
Klikni a vyber obrázek z počítače:

×Vložení videa

Aktuálně jsou podporována videa ze serverů YouTube, Vimeo a Dailymotion.
×
 
Podporujeme Gravatara.
Zadej URL adresu Avatara (40 x 40 px) nebo emailovou adresu pro použití Gravatara.
Email nikam neukládáme, po získání Gravatara je zahozen.
-
Pravidla pro psaní příspěvků, používej diakritiku. ENTER pro nový odstavec, SHIFT + ENTER pro nový řádek.
Sledovat nové příspěvky (pouze pro přihlášené)
Sleduj vlákno a v případě přidání nového příspěvku o tom budeš vědět mezi prvními.
Reaguješ na příspěvek:

Uživatelé prohlížející si toto vlákno

Uživatelé on-line: 0 registrovaných, 83 hostů

Podobná vlákna

Rezervační systém — založil z_moravec

System() v C++ — založil

System("??????"); — založil dragon124

C++ a system() — založil Ezechiel

Moderátoři diskuze

 

Hostujeme u Českého hostingu       ISSN 1801-1586       ⇡ Nahoru Webtea.cz logo © 20032020 Programujte.com
Zasadilo a pěstuje Webtea.cz, šéfredaktor Lukáš Churý