Kezdőoldal » Számítástechnika » Programozás » Miért generálja le ugyanazokat...

Miért generálja le ugyanazokat a számokat? (C#, Random)

Figyelt kérdés
Ezt a C# házifeladatot kaptuk a hétvégére : Kérj be 3 véletlenszerű számot,és döntse el a program,hogy melyik a legnagyobb.Mi lehet a probléma ? Kép : [link]

2016. jan. 10. 20:47
 1/7 anonim ***** válasza:
0%

Randomize.

Inicializálni kell használat előtt. Gondolom..

2016. jan. 10. 20:57
Hasznos számodra ez a válasz?
 2/7 Piert ***** válasza:
hozd létre a mainen kívül.
2016. jan. 10. 20:58
Hasznos számodra ez a válasz?
 3/7 anonim ***** válasza:

using System;


class Program

{

static void Main()

{

// 1

// Call method that uses class-level Random

F();

// 2

// Call same method

// The random number sequence still be random

F();

}


static Random _r = new Random();

static void F()

{

// Use class-level Random so that when this

// ... method is called many times, it still has

// ... good Randoms.

int n = _r.Next();

// If this declared a local Random, it would

// ... repeat itself.

Console.WriteLine(n);

}

}

2016. jan. 10. 21:02
Hasznos számodra ez a válasz?
 4/7 anonim ***** válasza:
100%

1. Ezeket a számokat nem bekéred, hanem generálod. A kettő teljesen más dolog.

2. Egy Random kell, fölösleges a három.

2016. jan. 10. 21:05
Hasznos számodra ez a válasz?
 5/7 anonim ***** válasza:
100%

Ne 3x hozd létre ugyan azt a Random objektumot ugyan azzal a seed-el és kérd le ugyan azt az első elemet..


1 Random objektumot hozz létre és annak kérd le az elemeit sorban:


Random rand = new Random();

int szam1 = rand.Next(255);

int szam2 = rand.Next(255);

int szam3 = rand.Next(255);


Amúgy pedig a feladat azt kéri hogy kérd be a felhasználótól a számokat.

2016. jan. 10. 21:07
Hasznos számodra ez a válasz?
 6/7 anonim ***** válasza:
100%
"The default seed value is derived from the system clock and has finite resolution. As a result, different Random objects that are created in close succession by a call to the default constructor will have identical default seed values and, therefore, will produce identical sets of random numbers. This problem can be avoided by using a single Random object to generate all random numbers. You can also work around it by modifying the seed value returned by the system clock and then explicitly providing this new seed value to the Random(Int32) constructor. For more information, see the Random(Int32) constructor."
2016. jan. 10. 21:31
Hasznos számodra ez a válasz?
 7/7 A kérdező kommentje:
Nagyon szépen köszönöm a segítségeteket! (Jó egy barom voltam...)
2016. jan. 11. 01:36

Kapcsolódó kérdések:





Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu

A weboldalon megjelenő anyagok nem minősülnek szerkesztői tartalomnak, előzetes ellenőrzésen nem esnek át, az üzemeltető véleményét nem tükrözik.
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!