Generátor unikátních čísel – .NET – Fórum – Programujte.com
 x   TIP: Přetáhni ikonu na hlavní panel pro připnutí webu

Generátor unikátních čísel – .NET – Fórum – Programujte.comGenerátor unikátních čísel – .NET – Fórum – Programujte.com

 
Hledat
Vybavení pro Laser Game
Spuštěn Filmový magazín
Laser Game Brno
Pergoly a střechy Brno

Kubas1290
Stálý člen
3. 8. 2021   #1
-
0
-

Je nějaký způsob jak vygenerovat čtyři čísla v náhodném pořadí v  intervalu <0;3>?

Mám takové tušení, že by to mělo jít nějak přes jazyk LINQ, bohužel v něm téměř nic neumím, ale mám list hráčů a každému bych chtěl přiřadit unikátní číslici od 0 do 3, nenapsal by mi to prosím někdo? :-))

players[0].pawn = ..

players[1].pawn = ..

players[2].pawn = ..

players[3].pawn = ..

Nahlásit jako SPAM
IP: 62.141.28.–
JerryM0
Super člen
4. 8. 2021   #2
-
0
-

pomocí linq:

https://stackoverflow.com/questions/3253571/how-to-use-linq-to-generate-unique-random-number/10504530

https://stackoverflow.com/questions/4903837/using-linq-to-generate-a-random-size-collection-filled-with-random-numbers

a normálním způsobem:

https://docs.microsoft.com/cs-cz/dotnet/api/system.random?view=net-5.0

https://stackoverflow.com/questions/2706500/how-do-i-generate-a-random-int-number

generování náhodných čísel je jedna z nejtěžších úloh v .NETu vůbec :)  jo jo tak to je

Nahlásit jako SPAM
IP: 2a00:1028:83be:235a:3c0d:85d0:f970:aa72...–
Kubas1290
Stálý člen
4. 8. 2021   #3
-
0
-

Dá se nějak vyřešit chyba typu: System.PlatformNotSupportedException: 'Operation is not supported on this platform.'?

private delegate void deChecking(); 
.
.           
	    deChecking dc = checking;
            IAsyncResult rs =dc.BeginInvoke(null, null);
            while(!rs.IsCompleted)
            {
                Console.WriteLine("cekam na dokonceni ulohy");
                Thread.Sleep(500);
            }
.
.
.
private static void checking()
{}

Asi jsem měl na to založit nové vlákno co?

Nahlásit jako SPAM
IP: 62.141.28.–
Kubas1290
Stálý člen
4. 8. 2021   #4
-
0
-

#3 Kubas129
On už to Microsoft nepodporuje? Asynchronní volání delegáta, konkrétně BeginInvoke EndInvoke metody a, nejsou v prostředí .NET Compact Framework podporována.

https://docs.microsoft.com/cs-cz/dotnet/standard/asynchronous-programming-patterns/calling-synchronous-methods-asynchronously

Se mi tohle zdála jako dobrá vychytávka

Nahlásit jako SPAM
IP: 62.141.28.–
peter
~ Anonymní uživatel
3714 příspěvků
8. 8. 2021   #5
-
0
-

a) Vygenerujes pole 0-3. Nahodne ho promichas.
b) Vygenerujes pole 0-3. Nahodne z nej vyberes hodnotu. A z pole ji odstranis. Atd, dokud je pole prazdne.
Funkce x = random(n) je snad v kazdem jazyku...
 

Nahlásit jako SPAM
IP: 193.84.198.–
Zjistit počet nových příspěvků

Přidej příspěvek

×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, 15 hostů

Podobná vlákna

Generátor čísel — založil Apik

Generator cisel — založil shockwave

 

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