Java – zadání libovolného počtu čísel – Java – Fórum – Programujte.com
 x   TIP: Přetáhni ikonu na hlavní panel pro připnutí webu

Java – zadání libovolného počtu čísel – Java – Fórum – Programujte.comJava – zadání libovolného počtu čísel – Java – Fórum – Programujte.com

 

Míša
~ Anonymní uživatel
106 příspěvků
18. 6. 2015   #1
-
0
-

Ahoj,

ve škole jsme dostali ze dne na den naprogramovat program, ve kterém se musí načíst (případně i vypsat) jednotlivá čísla, které někdo zadá. To znamená, že do TextFieldu bude uživatel zadávat čísla (po jednom), které pak vždy "odešle" stiskem tlačítka a takhle bude pokračovat dokud bude chtít zadávat čísla. To znamená že se mi asi po každém kliknutí bude muset číslo někam v programu uložit.

Nebyl by někdo tak hodný a nedokázal mi s tímto začátkem programu pomoci?

Moc děkuji:)

Nahlásit jako SPAM
IP: 213.226.245.–
Míša
~ Anonymní uživatel
106 příspěvků
18. 6. 2015   #2
-
0
-

Možná by šlo použít i nějaký cyklus který po stisknutí tlačítka vypíše číslo (napíše za něj čárku a mezeru) a čeká na další zápis. Co myslíte?:)

Nahlásit jako SPAM
IP: 213.226.245.–
KIIV
~ Moderátor
+43
God of flame
18. 6. 2015   #3
-
0
-

Melo by jit pouzit nejaky list cisel... ten by mohl jit i primo predat k vypisu pomoci metody .toString() nebo v dalsim cyklu vypsat

Nahlásit jako SPAM
IP: 94.113.93.–
Program vždy dělá to co naprogramujete, ne to co chcete...
Míša
~ Anonymní uživatel
106 příspěvků
18. 6. 2015   #4
-
0
-

Upřímně vůbec nevím jak to myslíte. Jsem programátorka začátečník a jsem ráda když napíšu dobře nějaký ten cyklus. O tomhle umím spíš jen přemýšlet, ale jak to napsat nevím... Myslíte že třeba pole na to vůbec potřebovat nebudu a vystačím se jen s těmi cykly?

Nahlásit jako SPAM
IP: 213.226.245.–
KIIV
~ Moderátor
+43
God of flame
18. 6. 2015   #5
-
0
-

no jestli se to ma nekde i zobrazovat, tak bude stacit nejake memo nebo dalsi input box, kam se to pokazde pripoji - s tlacitkem ani cyklus nebude potreba.. samotne mackani tlacitka vykonava akci pokazdy, kdyz chce neco vlozit

(automaticky si totiz vetsinou myslim, ze jde o konzolovy projekt.. u okna je to holt neco trosku jineho)

Nahlásit jako SPAM
IP: 94.113.93.–
Program vždy dělá to co naprogramujete, ne to co chcete...
Míša
~ Anonymní uživatel
106 příspěvků
18. 6. 2015   #6
-
0
-

Program má za účel ze všech zadaných čísel (počet není pevně stanovený) vypsat nejmenší liché a největší sudé číslo. Právě jsem pogooglila něco čemu se říká ArrayList což vypadá velice zajímavě ale zacházet s tím rozhodně zatím neumím. S čísly ale pak budu muset dále pracovat, takže musí mít každé číslo vlastní proměnnou že? To také nevím jak bych měla udělat...

Nahlásit jako SPAM
IP: 213.226.245.–
KIIV
~ Moderátor
+43
God of flame
18. 6. 2015   #7
-
0
-

a jestli mas jen vypsat nejmensi liche a nejvetsi sude se da delat prubezne... na to se to nemusi ani nikde ukladat (pokud nemusis nekde vypsat i vsechny cisla)

Nahlásit jako SPAM
IP: 94.113.93.–
Program vždy dělá to co naprogramujete, ne to co chcete...
Míša
~ Anonymní uživatel
106 příspěvků
18. 6. 2015   #8
-
0
-

Ne ne, vypsat je nemusím ale počítala jsem s tím že je nejprve seřadím a pak přes podmínky vyberu nejmenší liché a největší sudé... ale dělat to průběžně mi přijde daleko složitější... nebo ne?

Nahlásit jako SPAM
IP: 213.226.245.–
KIIV
~ Moderátor
+43
God of flame
18. 6. 2015   #9
-
0
-

slozitejsi cast je tam to ukladani a pripadne serazeni... ale na nejmensi a nejvetsi cislo opravdu nepotrebujes radit ani ukladat vsechny cisla...

musis mit akorat zjistit jestli je sude/liche a podle toho srovnat s prubeznym maximem/minimem

Nahlásit jako SPAM
IP: 94.113.93.–
Program vždy dělá to co naprogramujete, ne to co chcete...
Míša
~ Anonymní uživatel
106 příspěvků
18. 6. 2015   #10
-
0
-

Myslite tedy že bych si vystačila jen s podmínkami? Nebo zas tak jednoduché to nebude?

Nahlásit jako SPAM
IP: 213.226.245.–
Flowy0
Věrný člen
18. 6. 2015   #11
-
0
-

   

List<Integer> list = new ArrayList<>();

vlozenie cisla:
list.add(5);

zoradenie:
Collections.sort(list);

iteracia:
for (Integer value: list) {}

maximum, minimum:
Integer max = Collections.max(list);
Integer min = Collections.min(list);
Nahlásit jako SPAM
IP: 91.127.51.–
https://github.com/Flowy
sleepy
~ Anonymní uživatel
422 příspěvků
3. 7. 2015   #12
-
0
-

#10 Míša
Ako ti vravi KIIV:
 

class MinMaxNumber {
	private int min = Integer.MAX_VALUE; // toto musi byt na zaciatku max
	private int max = Integer.MIN_VALUE; // toto musi byt na zaciatku min

	public void addNumber(int number) {
		if ((1 - number % 2) % 2 == 0) { // vyhnutie sa pouzitiu Math.abs
			min = Math.min(min, number);
		}
		if (number % 2 == 0) {
			max = Math.max(max, number);
		}
	}

	public int getMaxEvenNumber() {
		return max;
	}

	public int getMinOddNumber() {
		return min;
	}
}

// niekde kde mas objekt butonu
private MinMaxNumber minmax = new MinMaxNumber();

//v handleri:
int number =  ... // nacitas cislo
minmax.addNumber(number)

// niekde kde zobrazujes
minmax.getMinEvenNumber();
minmax.getMaxOddNumber();

ak sa ti to podari este nastavit ze min zacina ako parne (sude, even) cislo max zacina ako neparne (liche, odd) cislo, tak mozes overit ci je to co mas na vystupe korektny vysledok. Cize ak max zostane (odd) tak zrejme v nebolo zadane ziadne parne cislo inak by bolo max, to iste pre min.

Nahlásit jako SPAM
IP: 158.195.201.–
sleepy
~ Anonymní uživatel
422 příspěvků
3. 7. 2015   #13
-
0
-

Btw. zoradenie pola je O(n log(n)) taketo prehladavanie je so zlozitostou O(n).

Nahlásit jako SPAM
IP: 158.195.201.–
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, 4 hosté

Moderátoři diskuze

 

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