Hadanie cisiel – Java – Fórum – Programujte.com
 x   TIP: Přetáhni ikonu na hlavní panel pro připnutí webu
Reklama
Reklama

Hadanie cisiel – Java – Fórum – Programujte.comHadanie cisiel – Java – Fórum – Programujte.com

 

Hledá se programátor! Plat 1 800 € + bonusy (firma Boxmol.com)
Iva
~ Anonymní uživatel
4 příspěvky
22. 11. 2012   #1
-
0
-

Ahojte, mali sme vytvoriť program na hádanie čísiel kde PC si myslí číslo a ja hádam. A taktiež aj  naopak. Ja si myslím a PC háda. To druhé neviem urobiť. Poraďte...Diky

public static void main(String[] args) {
        // Hadanie cisiel s PC
        int pocitac;
        int pouzivatel;
        int pokusy = 0;
        int maxPokusov = 5;
        pocitac = (int) (1+Math.random()*10);
       
        Scanner vstup = new Scanner (System.in); 
        do {
            System.out.println ("Zadaj tvoj tip: ");
            pouzivatel = vstup.nextInt();
            pokusy++;
            if (pocitac < pouzivatel) {
                System.out.println ("Daj menšie číslo"); }
            if (pocitac > pouzivatel) {
                System.out.println ("Daj väčšie číslo"); }
        }while (pocitac!=pouzivatel&&pokusy<maxPokusov);
        if (pocitac==pouzivatel) {
            System.out.println ("VYHRAL SI !!!");
        } else {
            System.out.println ("NEVYHRAL SI");
            }
        }
       
    }

Nahlásit jako SPAM
IP: 80.242.44.–
Reklama
Reklama
sleepy0
Stálý člen
22. 11. 2012   #2
-
0
-

Sak pouzi metodu stredou, najvhodnejsie je to hladat na nejakom intervale, napr. {0...1000}. Ty si myslis cislo a pocitac hada a vzdy povies ci je mensie alebo vacsie. Asi takto:
 

public void hadajCislo(int min, int max){
	int cislo=0, pocetHadani=0, vmr=2;
	int MAXHadani = 5;
	Scanner sc = new Scanner(System.in);
	do{
		pocetHadani++;
		cislo = (min+max)/2;
		System.out.println("Je tebou myslene cislo: "+cislo);
		String c=null;
		do{
			System.out.println("Zadaj 1 ak je hladane cislo vacsie, -1 ak je mensie, 0 ak som uhadol");
			c = sc.next();
		}while(!c.matches("-?[1,0]"));
			vmr = Integer.valueOf(c);
		if(vmr==0){
			System.out.println("Vyhral som");
			continue;
		}
		else if(vmr == -1){
			max = cislo;
		}
		else{
			min = cislo;
		}
	
	}while(vmr!=0 && pocetHadani < MAXHadani);
}

Uprav to uz podla svojho.

Nahlásit jako SPAM
IP: 158.195.195.–
sakal910
Stálý člen
23. 11. 2012   #3
-
0
-

#1 Iva
Jednoduše si zadáš číslo které si myslíš, a pak v cyklu budeš generovat náhodné čísla a jen měnit intervaly toho náhodného čísla(když první pokus bude větší než to číslo, zmeníš interval třeba na <0, prvniHadaneCislo) )... takže v podstatě to samé co máš akorát na místo vstupu dáš generovat to náhodné číslo (pomocí třídy Random) a v podmínkách je-li menší/větší budeš měnit intervaly ... nic na tom nehledej :) zkus si to nejprve sama vytvořit a když nebudeš vědět jak, tak ti tady hodím zdroják :)

Nahlásit jako SPAM
IP: 31.222.8.–
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, 31 hostů

Podobná vlákna

Spočítanie čísiel — založil street punk

Spočítanie čísiel — založil Robo

Vytváranie čísiel — založil ArcaneBeam13

Java random čisiel — založil Noro

Moderátoři diskuze

 

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