Overclock.net › Forums › Software, Programming and Coding › Coding and Programming › I don't understand this application behavior
New Posts  All Forums:Forum Nav:

I don't understand this application behavior

post #1 of 9
Thread Starter 
Hello everyone,

So i have this application that has a class called Screen and all it does is print a random number on the console. However if i create two objects of that class and call both objects, they both print the same random number? I don't understand why is this happening. anyone care to explain please?

Here is the code:-
Code:
class Screen
    {
        public Screen()
        {
            Random r = new Random();
            
            Console.WriteLine(r.Next(1, 100));
        }
    }

class Program
    {
        static void Main(string[] args)
        {

            Screen screen1 = new Screen();
            Screen screen2 = new Screen();

            Console.ReadKey();
        }
    }


If i want both objects of the screen class to print two different random numbers, then i have to call the Random class from the main class like so.
Code:
class Screen
    {
        public Screen(int RandomNumber)
        {
            Console.WriteLine(RandomNumber);
        }
    }

class Program
    {
        static void Main(string[] args)
        {
            Random r = new Random();
            
            Screen screen1 = new Screen(r.Next(1, 100));
            Screen screen2 = new Screen(r.Next(1, 100));

            Console.ReadKey();
        }
    }
    
CPUMotherboardGraphicsRAM
Intel 3930K 5040MHz @ 1.48 - 1.53v @ VTT/VCCSA ... Asus rampage extreme IV Gigabyte GTX 970 G1 @ 1580/4050MHz @ 1.325V Corsair Vengeance 64GB (8 x 8GB) DDR3 2400MHz. ... 
Hard DriveHard DriveHard DriveHard Drive
Samsung 850 Pro 256GB Seagate Barracuda ST3000DM001 3TB WD Black 1TB 64Mb Cache  WD Blue 500GB 16mb Cache 
Hard DriveOptical DriveCoolingCooling
WD Black 4TB 64mb Cache LG DVD EK-FB KIT RE4 - Acetal EK-FC970 GTX WF3 Backplate - Black 
CoolingCoolingCoolingCooling
Laing D5 Vario 12V DC Pump (MCP 655)  EK-BAY SPIN Reservoir - Plexi EK-CoolStream RAD XT (240) EK-CoolStream RAD XTX (120) 
CoolingCoolingCoolingCooling
EK-CoolStream XE 120 (Single) 8x Corsair Air SP120 PWM High Performance Edition 3x Corsair Air AF120 High Performance Edition EK-Supremacy EVO CPU Water Block (Nickel Acetal) 
CoolingOSMonitorMonitor
EK-FC970 GTX WF3 - Acetal+Nickel Windows 10 64-bit v1511 build 10586.14 BenQ RL2755HM LG W2261 
MonitorKeyboardPowerCase
Samsung S23C350 Razer BlackWidow Ultimate Cooler Master Silent Pro Gold 1000W Thermaltake Level 10 GT 
Mouse
Razer Lachesis 5600DPI 
  hide details  
Reply
    
CPUMotherboardGraphicsRAM
Intel 3930K 5040MHz @ 1.48 - 1.53v @ VTT/VCCSA ... Asus rampage extreme IV Gigabyte GTX 970 G1 @ 1580/4050MHz @ 1.325V Corsair Vengeance 64GB (8 x 8GB) DDR3 2400MHz. ... 
Hard DriveHard DriveHard DriveHard Drive
Samsung 850 Pro 256GB Seagate Barracuda ST3000DM001 3TB WD Black 1TB 64Mb Cache  WD Blue 500GB 16mb Cache 
Hard DriveOptical DriveCoolingCooling
WD Black 4TB 64mb Cache LG DVD EK-FB KIT RE4 - Acetal EK-FC970 GTX WF3 Backplate - Black 
CoolingCoolingCoolingCooling
Laing D5 Vario 12V DC Pump (MCP 655)  EK-BAY SPIN Reservoir - Plexi EK-CoolStream RAD XT (240) EK-CoolStream RAD XTX (120) 
CoolingCoolingCoolingCooling
EK-CoolStream XE 120 (Single) 8x Corsair Air SP120 PWM High Performance Edition 3x Corsair Air AF120 High Performance Edition EK-Supremacy EVO CPU Water Block (Nickel Acetal) 
CoolingOSMonitorMonitor
EK-FC970 GTX WF3 - Acetal+Nickel Windows 10 64-bit v1511 build 10586.14 BenQ RL2755HM LG W2261 
MonitorKeyboardPowerCase
Samsung S23C350 Razer BlackWidow Ultimate Cooler Master Silent Pro Gold 1000W Thermaltake Level 10 GT 
Mouse
Razer Lachesis 5600DPI 
  hide details  
Reply
post #2 of 9
Java?


EDIT: no... no ReadKey...
Edited by DuckieHo - 4/2/14 at 2:05pm
Once again...
(13 items)
 
  
CPUMotherboardGraphicsRAM
i7 920 [4.28GHz, HT] Asus P6T + Broadcom NetXtreme II VisionTek HD5850 [900/1200] + Galaxy GT240 2x4GB G.Skill Ripjaw X [1632 MHz] 
Hard DriveOSMonitorKeyboard
Intel X25-M 160GB + 3xRAID0 500GB 7200.12 Window 7 Pro 64 Acer H243H + Samsung 226BW XARMOR-U9BL  
PowerCaseMouseMouse Pad
Antec Truepower New 750W Li Lian PC-V2100 [10x120mm fans] Logitech G9 X-Trac Pro 
  hide details  
Reply
Once again...
(13 items)
 
  
CPUMotherboardGraphicsRAM
i7 920 [4.28GHz, HT] Asus P6T + Broadcom NetXtreme II VisionTek HD5850 [900/1200] + Galaxy GT240 2x4GB G.Skill Ripjaw X [1632 MHz] 
Hard DriveOSMonitorKeyboard
Intel X25-M 160GB + 3xRAID0 500GB 7200.12 Window 7 Pro 64 Acer H243H + Samsung 226BW XARMOR-U9BL  
PowerCaseMouseMouse Pad
Antec Truepower New 750W Li Lian PC-V2100 [10x120mm fans] Logitech G9 X-Trac Pro 
  hide details  
Reply
post #3 of 9
Thread Starter 
Quote:
Originally Posted by DuckieHo View Post

Java?


EDIT: no... no ReadKey...

?!! wth.gif

its C# tongue.gif
    
CPUMotherboardGraphicsRAM
Intel 3930K 5040MHz @ 1.48 - 1.53v @ VTT/VCCSA ... Asus rampage extreme IV Gigabyte GTX 970 G1 @ 1580/4050MHz @ 1.325V Corsair Vengeance 64GB (8 x 8GB) DDR3 2400MHz. ... 
Hard DriveHard DriveHard DriveHard Drive
Samsung 850 Pro 256GB Seagate Barracuda ST3000DM001 3TB WD Black 1TB 64Mb Cache  WD Blue 500GB 16mb Cache 
Hard DriveOptical DriveCoolingCooling
WD Black 4TB 64mb Cache LG DVD EK-FB KIT RE4 - Acetal EK-FC970 GTX WF3 Backplate - Black 
CoolingCoolingCoolingCooling
Laing D5 Vario 12V DC Pump (MCP 655)  EK-BAY SPIN Reservoir - Plexi EK-CoolStream RAD XT (240) EK-CoolStream RAD XTX (120) 
CoolingCoolingCoolingCooling
EK-CoolStream XE 120 (Single) 8x Corsair Air SP120 PWM High Performance Edition 3x Corsair Air AF120 High Performance Edition EK-Supremacy EVO CPU Water Block (Nickel Acetal) 
CoolingOSMonitorMonitor
EK-FC970 GTX WF3 - Acetal+Nickel Windows 10 64-bit v1511 build 10586.14 BenQ RL2755HM LG W2261 
MonitorKeyboardPowerCase
Samsung S23C350 Razer BlackWidow Ultimate Cooler Master Silent Pro Gold 1000W Thermaltake Level 10 GT 
Mouse
Razer Lachesis 5600DPI 
  hide details  
Reply
    
CPUMotherboardGraphicsRAM
Intel 3930K 5040MHz @ 1.48 - 1.53v @ VTT/VCCSA ... Asus rampage extreme IV Gigabyte GTX 970 G1 @ 1580/4050MHz @ 1.325V Corsair Vengeance 64GB (8 x 8GB) DDR3 2400MHz. ... 
Hard DriveHard DriveHard DriveHard Drive
Samsung 850 Pro 256GB Seagate Barracuda ST3000DM001 3TB WD Black 1TB 64Mb Cache  WD Blue 500GB 16mb Cache 
Hard DriveOptical DriveCoolingCooling
WD Black 4TB 64mb Cache LG DVD EK-FB KIT RE4 - Acetal EK-FC970 GTX WF3 Backplate - Black 
CoolingCoolingCoolingCooling
Laing D5 Vario 12V DC Pump (MCP 655)  EK-BAY SPIN Reservoir - Plexi EK-CoolStream RAD XT (240) EK-CoolStream RAD XTX (120) 
CoolingCoolingCoolingCooling
EK-CoolStream XE 120 (Single) 8x Corsair Air SP120 PWM High Performance Edition 3x Corsair Air AF120 High Performance Edition EK-Supremacy EVO CPU Water Block (Nickel Acetal) 
CoolingOSMonitorMonitor
EK-FC970 GTX WF3 - Acetal+Nickel Windows 10 64-bit v1511 build 10586.14 BenQ RL2755HM LG W2261 
MonitorKeyboardPowerCase
Samsung S23C350 Razer BlackWidow Ultimate Cooler Master Silent Pro Gold 1000W Thermaltake Level 10 GT 
Mouse
Razer Lachesis 5600DPI 
  hide details  
Reply
post #4 of 9
The execution is so fast that the seed remains the same, either pass your own seed or use the same Random instance as you did.
Haswell
(21 items)
 
  
CPUMotherboardGraphicsRAM
Core i7 4770K @ 4Ghz Gigabyte Z87X-UD5H Sapphire Radeon R9 290 Vapor-X G.Skill RipjawsZ 4x4GB 2400Mhz 
Hard DriveHard DriveHard DriveHard Drive
Crucial M4 126GB Crucial MX100 4x512GB WD Caviar Green EZRX Crucial M500 120GB 
Optical DriveCoolingOSMonitor
Samsung DVD Corsair Hydro H105 Windows 7 Ultimate Acer B276HK 
MonitorMonitorKeyboardPower
Dell P2314H Samsung SA700 Logitech G710+ Seasonic P-660 XP2 
CaseMouseMouse PadAudio
Fractal Design Arc Midi R2 Razer Deathadder 2013 Mionix Sargas 900 Asus Xonar DX/XD 
Audio
Beyerdynamics Custome One Pro White 
  hide details  
Reply
Haswell
(21 items)
 
  
CPUMotherboardGraphicsRAM
Core i7 4770K @ 4Ghz Gigabyte Z87X-UD5H Sapphire Radeon R9 290 Vapor-X G.Skill RipjawsZ 4x4GB 2400Mhz 
Hard DriveHard DriveHard DriveHard Drive
Crucial M4 126GB Crucial MX100 4x512GB WD Caviar Green EZRX Crucial M500 120GB 
Optical DriveCoolingOSMonitor
Samsung DVD Corsair Hydro H105 Windows 7 Ultimate Acer B276HK 
MonitorMonitorKeyboardPower
Dell P2314H Samsung SA700 Logitech G710+ Seasonic P-660 XP2 
CaseMouseMouse PadAudio
Fractal Design Arc Midi R2 Razer Deathadder 2013 Mionix Sargas 900 Asus Xonar DX/XD 
Audio
Beyerdynamics Custome One Pro White 
  hide details  
Reply
post #5 of 9
Quote:
Originally Posted by Jiiks View Post

The execution is so fast that the seed remains the same, either pass your own seed or use the same Random instance as you did.

That's what I possibly thought.... but that would means the seed is not random for each instantiation of the object?

Note that it works in Java. (Currently do not have VS installed to test in C#).
Once again...
(13 items)
 
  
CPUMotherboardGraphicsRAM
i7 920 [4.28GHz, HT] Asus P6T + Broadcom NetXtreme II VisionTek HD5850 [900/1200] + Galaxy GT240 2x4GB G.Skill Ripjaw X [1632 MHz] 
Hard DriveOSMonitorKeyboard
Intel X25-M 160GB + 3xRAID0 500GB 7200.12 Window 7 Pro 64 Acer H243H + Samsung 226BW XARMOR-U9BL  
PowerCaseMouseMouse Pad
Antec Truepower New 750W Li Lian PC-V2100 [10x120mm fans] Logitech G9 X-Trac Pro 
  hide details  
Reply
Once again...
(13 items)
 
  
CPUMotherboardGraphicsRAM
i7 920 [4.28GHz, HT] Asus P6T + Broadcom NetXtreme II VisionTek HD5850 [900/1200] + Galaxy GT240 2x4GB G.Skill Ripjaw X [1632 MHz] 
Hard DriveOSMonitorKeyboard
Intel X25-M 160GB + 3xRAID0 500GB 7200.12 Window 7 Pro 64 Acer H243H + Samsung 226BW XARMOR-U9BL  
PowerCaseMouseMouse Pad
Antec Truepower New 750W Li Lian PC-V2100 [10x120mm fans] Logitech G9 X-Trac Pro 
  hide details  
Reply
post #6 of 9
Quote:
Originally Posted by DuckieHo View Post

That's what I possibly thought.... but that would means the seed is not random for each instantiation of the object?

Note that it works in Java. (Currently do not have VS installed to test in C#).

It used to be the same with Java and was "fixed" in Java 5, seed is not random as it uses system time.
Haswell
(21 items)
 
  
CPUMotherboardGraphicsRAM
Core i7 4770K @ 4Ghz Gigabyte Z87X-UD5H Sapphire Radeon R9 290 Vapor-X G.Skill RipjawsZ 4x4GB 2400Mhz 
Hard DriveHard DriveHard DriveHard Drive
Crucial M4 126GB Crucial MX100 4x512GB WD Caviar Green EZRX Crucial M500 120GB 
Optical DriveCoolingOSMonitor
Samsung DVD Corsair Hydro H105 Windows 7 Ultimate Acer B276HK 
MonitorMonitorKeyboardPower
Dell P2314H Samsung SA700 Logitech G710+ Seasonic P-660 XP2 
CaseMouseMouse PadAudio
Fractal Design Arc Midi R2 Razer Deathadder 2013 Mionix Sargas 900 Asus Xonar DX/XD 
Audio
Beyerdynamics Custome One Pro White 
  hide details  
Reply
Haswell
(21 items)
 
  
CPUMotherboardGraphicsRAM
Core i7 4770K @ 4Ghz Gigabyte Z87X-UD5H Sapphire Radeon R9 290 Vapor-X G.Skill RipjawsZ 4x4GB 2400Mhz 
Hard DriveHard DriveHard DriveHard Drive
Crucial M4 126GB Crucial MX100 4x512GB WD Caviar Green EZRX Crucial M500 120GB 
Optical DriveCoolingOSMonitor
Samsung DVD Corsair Hydro H105 Windows 7 Ultimate Acer B276HK 
MonitorMonitorKeyboardPower
Dell P2314H Samsung SA700 Logitech G710+ Seasonic P-660 XP2 
CaseMouseMouse PadAudio
Fractal Design Arc Midi R2 Razer Deathadder 2013 Mionix Sargas 900 Asus Xonar DX/XD 
Audio
Beyerdynamics Custome One Pro White 
  hide details  
Reply
post #7 of 9
Quote:
Originally Posted by Jiiks View Post

It used to be the same with Java and was "fixed" in Java 5, seed is not random as it uses system time.

You're right... what's the resolution of system time... 100ns? How do Java ensure different seeds then?
Once again...
(13 items)
 
  
CPUMotherboardGraphicsRAM
i7 920 [4.28GHz, HT] Asus P6T + Broadcom NetXtreme II VisionTek HD5850 [900/1200] + Galaxy GT240 2x4GB G.Skill Ripjaw X [1632 MHz] 
Hard DriveOSMonitorKeyboard
Intel X25-M 160GB + 3xRAID0 500GB 7200.12 Window 7 Pro 64 Acer H243H + Samsung 226BW XARMOR-U9BL  
PowerCaseMouseMouse Pad
Antec Truepower New 750W Li Lian PC-V2100 [10x120mm fans] Logitech G9 X-Trac Pro 
  hide details  
Reply
Once again...
(13 items)
 
  
CPUMotherboardGraphicsRAM
i7 920 [4.28GHz, HT] Asus P6T + Broadcom NetXtreme II VisionTek HD5850 [900/1200] + Galaxy GT240 2x4GB G.Skill Ripjaw X [1632 MHz] 
Hard DriveOSMonitorKeyboard
Intel X25-M 160GB + 3xRAID0 500GB 7200.12 Window 7 Pro 64 Acer H243H + Samsung 226BW XARMOR-U9BL  
PowerCaseMouseMouse Pad
Antec Truepower New 750W Li Lian PC-V2100 [10x120mm fans] Logitech G9 X-Trac Pro 
  hide details  
Reply
post #8 of 9
Quote:
Originally Posted by DuckieHo View Post

You're right... what's the resolution of system time... 100ns? How do Java ensure different seeds then?

I believe it's between 10ms and 16ms, here's what java does to make it unlikely to have the same seed http://grepcode.com/file/repository.grepcode.com/java/root/jdk/openjdk/7u40-b43/java/util/Random.java#Random
Haswell
(21 items)
 
  
CPUMotherboardGraphicsRAM
Core i7 4770K @ 4Ghz Gigabyte Z87X-UD5H Sapphire Radeon R9 290 Vapor-X G.Skill RipjawsZ 4x4GB 2400Mhz 
Hard DriveHard DriveHard DriveHard Drive
Crucial M4 126GB Crucial MX100 4x512GB WD Caviar Green EZRX Crucial M500 120GB 
Optical DriveCoolingOSMonitor
Samsung DVD Corsair Hydro H105 Windows 7 Ultimate Acer B276HK 
MonitorMonitorKeyboardPower
Dell P2314H Samsung SA700 Logitech G710+ Seasonic P-660 XP2 
CaseMouseMouse PadAudio
Fractal Design Arc Midi R2 Razer Deathadder 2013 Mionix Sargas 900 Asus Xonar DX/XD 
Audio
Beyerdynamics Custome One Pro White 
  hide details  
Reply
Haswell
(21 items)
 
  
CPUMotherboardGraphicsRAM
Core i7 4770K @ 4Ghz Gigabyte Z87X-UD5H Sapphire Radeon R9 290 Vapor-X G.Skill RipjawsZ 4x4GB 2400Mhz 
Hard DriveHard DriveHard DriveHard Drive
Crucial M4 126GB Crucial MX100 4x512GB WD Caviar Green EZRX Crucial M500 120GB 
Optical DriveCoolingOSMonitor
Samsung DVD Corsair Hydro H105 Windows 7 Ultimate Acer B276HK 
MonitorMonitorKeyboardPower
Dell P2314H Samsung SA700 Logitech G710+ Seasonic P-660 XP2 
CaseMouseMouse PadAudio
Fractal Design Arc Midi R2 Razer Deathadder 2013 Mionix Sargas 900 Asus Xonar DX/XD 
Audio
Beyerdynamics Custome One Pro White 
  hide details  
Reply
post #9 of 9
Thread Starter 
hmm, ok thank you guys. smile.gif
    
CPUMotherboardGraphicsRAM
Intel 3930K 5040MHz @ 1.48 - 1.53v @ VTT/VCCSA ... Asus rampage extreme IV Gigabyte GTX 970 G1 @ 1580/4050MHz @ 1.325V Corsair Vengeance 64GB (8 x 8GB) DDR3 2400MHz. ... 
Hard DriveHard DriveHard DriveHard Drive
Samsung 850 Pro 256GB Seagate Barracuda ST3000DM001 3TB WD Black 1TB 64Mb Cache  WD Blue 500GB 16mb Cache 
Hard DriveOptical DriveCoolingCooling
WD Black 4TB 64mb Cache LG DVD EK-FB KIT RE4 - Acetal EK-FC970 GTX WF3 Backplate - Black 
CoolingCoolingCoolingCooling
Laing D5 Vario 12V DC Pump (MCP 655)  EK-BAY SPIN Reservoir - Plexi EK-CoolStream RAD XT (240) EK-CoolStream RAD XTX (120) 
CoolingCoolingCoolingCooling
EK-CoolStream XE 120 (Single) 8x Corsair Air SP120 PWM High Performance Edition 3x Corsair Air AF120 High Performance Edition EK-Supremacy EVO CPU Water Block (Nickel Acetal) 
CoolingOSMonitorMonitor
EK-FC970 GTX WF3 - Acetal+Nickel Windows 10 64-bit v1511 build 10586.14 BenQ RL2755HM LG W2261 
MonitorKeyboardPowerCase
Samsung S23C350 Razer BlackWidow Ultimate Cooler Master Silent Pro Gold 1000W Thermaltake Level 10 GT 
Mouse
Razer Lachesis 5600DPI 
  hide details  
Reply
    
CPUMotherboardGraphicsRAM
Intel 3930K 5040MHz @ 1.48 - 1.53v @ VTT/VCCSA ... Asus rampage extreme IV Gigabyte GTX 970 G1 @ 1580/4050MHz @ 1.325V Corsair Vengeance 64GB (8 x 8GB) DDR3 2400MHz. ... 
Hard DriveHard DriveHard DriveHard Drive
Samsung 850 Pro 256GB Seagate Barracuda ST3000DM001 3TB WD Black 1TB 64Mb Cache  WD Blue 500GB 16mb Cache 
Hard DriveOptical DriveCoolingCooling
WD Black 4TB 64mb Cache LG DVD EK-FB KIT RE4 - Acetal EK-FC970 GTX WF3 Backplate - Black 
CoolingCoolingCoolingCooling
Laing D5 Vario 12V DC Pump (MCP 655)  EK-BAY SPIN Reservoir - Plexi EK-CoolStream RAD XT (240) EK-CoolStream RAD XTX (120) 
CoolingCoolingCoolingCooling
EK-CoolStream XE 120 (Single) 8x Corsair Air SP120 PWM High Performance Edition 3x Corsair Air AF120 High Performance Edition EK-Supremacy EVO CPU Water Block (Nickel Acetal) 
CoolingOSMonitorMonitor
EK-FC970 GTX WF3 - Acetal+Nickel Windows 10 64-bit v1511 build 10586.14 BenQ RL2755HM LG W2261 
MonitorKeyboardPowerCase
Samsung S23C350 Razer BlackWidow Ultimate Cooler Master Silent Pro Gold 1000W Thermaltake Level 10 GT 
Mouse
Razer Lachesis 5600DPI 
  hide details  
Reply
New Posts  All Forums:Forum Nav:
  Return Home
  Back to Forum: Coding and Programming
Overclock.net › Forums › Software, Programming and Coding › Coding and Programming › I don't understand this application behavior