c# random brojevi

C, C++, Java, PHP, Ruby...

Moderator/ica: Moderatori/ce

Pravila foruma
U naslovu teme unutar uglatih zagrada navesti o kojem jeziku je riječ. Primjer: [Java]
Odgovori
bajro17
Postovi: 91
Pridružen/a: 08 lip 2011, 15:47
Spol: M
OS: Linux Backtrack 5 KDE
Lokacija: BIH, Tomislavgrad

c# random brojevi

Post Postao/la bajro17 »

zanima me mogu li ikako izvesti da nemam nikako istih brojeva u c# tek malo vjezbam pa mi treba pomoc, znaci zelim da mi izbaci 35 brojeva a da ni jedan nije isti
Nele
Postovi: 248
Pridružen/a: 07 lip 2009, 12:55
Spol: M

Re: c# random brojevi

Post Postao/la Nele »

Možda ima elegantnije rješenje. Ideja je da se generiše broj i doda u hash set. Ako broj već postoji u hash setu onda se generiše novi kojeg nema u hash-u. Hash set ako se dobro sjećam vrši provjeru u konstantnom vremenu tj. O(1).

Kod: Označi sve

using System;
using System.Collections.Generic;

public class Test
{
   public static void Main()
   {
      
       Random nasumicno = new Random();
       int broj = 0;
   
            HashSet<int> provjera = new HashSet<int>();

   
       for (int i = 0; i < 35; i++)
            {
           broj = nasumicno.Next(0, 100); 

                while (provjera.Contains(broj)) {
                    broj = nasumicno.Next(0, 100);
              }
           
            provjera.Add(broj);
            Console.WriteLine(broj);
            }

   }
}
bajro17
Postovi: 91
Pridružen/a: 08 lip 2011, 15:47
Spol: M
OS: Linux Backtrack 5 KDE
Lokacija: BIH, Tomislavgrad

Re: c# random brojevi

Post Postao/la bajro17 »

hvala ti mnogo dobio si zahvalu nista ipak bez linux zajednice :)
bajro17
Postovi: 91
Pridružen/a: 08 lip 2011, 15:47
Spol: M
OS: Linux Backtrack 5 KDE
Lokacija: BIH, Tomislavgrad

Re: c# random brojevi

Post Postao/la bajro17 »

zanima me jel ikako moguce da kad se ispisuju brojevi u text boxu da ne izadju svi odjednom vec da ima pauza od nekoliko sekundi
Nele
Postovi: 248
Pridružen/a: 07 lip 2009, 12:55
Spol: M

Re: c# random brojevi

Post Postao/la Nele »

Svakih 5 sekundi ispiše broj u text boxu.
Koristio sam metodu Task.Delay(brojMilisekundi);

Možeš dodati i dugme za zaustavljanje.

Projekat je napisan u Visual Studio 2013 Express:
https://copy.com/tkHt3Iiyh8Bv
Odgovori