#include <iostream> #include <conio. h> // getch using namespace std; void shuffle { int tmpa, tmpb; int random; srand(time ; while (size > 0) } int main { const int SIZE = 20; int arr = ; for (int j=0;j < SIZE;j++) shuffle ; for (int f=0;f < SIZE;f++) getch ; return EXIT_SUCCESS; } Merhaba, şyle kısa bir doküman niteliğinde bir şey paylaşıyım. Kod c++ ile yazılmıştır. Shuffle fonksiyonu namı diğer fisher yates karıştırma algoritması olarak geçer, merak edenler için wiki: http://en. wikipedia. org/wiki/FisherYates_shuffle Peki ne yapar bu kod? Çalışma mantığı nedir? Mesela rakamlardan oluşan bir dizimiz var bu kod ile rakamları karıştırabiliriz. Ya da rakamlardan oluşan bir dizi oluşturmak istiyoruz ama bütün rakamlardan en fazla 1 tane olacak. Bu problemin çzümü için şyle bir algoritma oluşturabiliriz. Ben diziye 1 den x'e kadar değerler atıyım sonra bu diziyi karıştırayım al sana bütün rakamlardan bir tane karışık dizi. Algoritma diziden rastgele bir rakam seçer bunla başka bir rakamın yerini değiştirir bu şekilde tüm dizi karışmış olur. Umarım anlamışsınızdır :)