Direk srand fonksiyonundan bahsedeyim o zaman. Zaten shuffle hakkında bilginiz var sanıyorum.
srand işlevi ile seed değeri değiştirse bile random işlevi her defasında srand ile değiştirilmiş seed değeri kullanılıyor ve yine bir zincir halinde aynı sayılar elde ediliyor.
Her çalışmada farklı bir zincir elde etmek için ise her çalıştırmada srand fonksiyonunun seedine random bir sayı veriyoruz.