Java - naplneni pole čísly
Java - naplneni pole čísly
potřeobal bych poradit , nevím si rady jak přes random naplnit pole cisly , pricemz vzdy 2 budou stejna (pexeso)
Re: Java - naplneni pole čísly
Je to sice v Céčku (protože Javu neumím), ale syntaxe vypadá dost podobně, takže bys ty smyčky měl bez problémů rozluštit:
srand() - nastavení seedu aby sekvence nebyla pokaždé stejná
rand() - generování náhodného čísla
balíček - pořadí 0 až 31
karty - 0 až 15
To opakované losování karty není úplně optimální, protože ke konci balíčku může trvat dost dlouho. Ale protože těch karet je jen pár desítek, tak se to dá skousnout, horší by bylo kdyby jich byl milion... Můžeš zkusit vymyslet jak to udělat lépe
Kód: Vybrat vše
/*** zamíchání karet pro pexeso ***/
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
/* zadává se pouze počet dvojic! */
#define POCET_DVOJIC 16
#define POCET_KARET POCET_DVOJIC*2
int main(void)
{
int balicek[POCET_KARET],karta,pocet,i,j;
/*** míchání karet ***/
srand(time(NULL));
for (i=0;i<POCET_KARET;++i)
{
do {
/* vylosování karty */
karta=rand() % POCET_DVOJIC;
/* kontrola kolikrát už ve zpracované části balíčku je */
pocet=0;
for (j=0;j<=i;++j)
if (karta==balicek[j])
++pocet;
} while (pocet>=2);
/* losování se opakuje dokud není počet menší než 2 */
balicek[i]=karta;
}
/*** výpis balíčku ***/
for (i=0;i<POCET_KARET;++i)
{
printf("%d\t%d\n",i,balicek[i]);
}
return 0;
}
srand() - nastavení seedu aby sekvence nebyla pokaždé stejná
rand() - generování náhodného čísla
balíček - pořadí 0 až 31
karty - 0 až 15
To opakované losování karty není úplně optimální, protože ke konci balíčku může trvat dost dlouho. Ale protože těch karet je jen pár desítek, tak se to dá skousnout, horší by bylo kdyby jich byl milion... Můžeš zkusit vymyslet jak to udělat lépe

"Král Lávra má dlouhé oslí uši, král je ušatec!
(pravil K. H. Borovský o cenzuře internetu)
(pravil K. H. Borovský o cenzuře internetu)
- CZechBoY
- Master Level 9.5
- Příspěvky: 8813
- Registrován: srpen 08
- Bydliště: Brno
- Pohlaví:
- Stav:
Offline
- Kontakt:
Re: Java - naplneni pole čísly
v C# 4.0 bych dal to prohledavani pres Parallel.ForEach nebo jednoduse pres Array.IndexOf - ten si s tim uz nejak poradi 

PHP, Nette, MySQL, C#, TypeScript, Python
IntelliJ Idea, Docker, Opera browser, Linux Mint
iPhone XS
Raspberry PI 3 (KODI, Raspbian)
XBox One S, PS 4, nVidia GeForce NOW
IntelliJ Idea, Docker, Opera browser, Linux Mint
iPhone XS
Raspberry PI 3 (KODI, Raspbian)
XBox One S, PS 4, nVidia GeForce NOW
Zpět na “Programování a tvorba webu”
Kdo je online
Uživatelé prohlížející si toto fórum: Žádní registrovaní uživatelé a 5 hostů