PHP: <?php $f_name = "file.txt"; $arr = file($f_name); shuffle($arr); $source = implode('', $arr); file_put_contents($f_name, $source); ?>
Ок, C#: Random random = new Random(); int[] sourceArray = new int[] {0, 1, 2, 3, 4, 5, 6}; int[] randomArray = sourceArray.OrderBy(i => random.Next()).ToArray(); Похоже в этом треде будет перемешивание массива на всех ЯП...
[Python] import random random.shuffle(array) [JS] Array.prototype.shuffle = function() { for (var i = this.length - 1; i > 0; i--) { var num = Math.floor(Math.random() * (i + 1)); var d = this[num]; this[num] = this; this = d; } return this; } [Pascal] type mas=array[1..100]of integer; function shuffle(a:mas,n:integer):mas; var b,c1,c2:integer; begin randomize; for i:=1 to n do //чем больше конечное значение цикла, тем более "перемешанней" будет массив begin c1:=random(n)+1; c2:=random(n)+1; b:=a[c1]; a[c1]:=a[c2]; a[c2]:=b; end; shuffle:=a; end; [delphi] procedure FillArray(var A:array of Integer); var I, S, R: Integer; begin randomize; for i:=0 to High(A) do A:=i; for i:=High(A) downto 0 do begin R:=Random(I); S:=A[R];A[R]:=A;A:=S; end; end; procedure TForm1.Button1Click(Sender: TObject); var mas,t:array[0..1000] of Integer; i,a,b:integer; begin memo1.Clear; for i:=0 to 1000 do mas:=1000+i; for i:=0 to 1000 do mas:=i; FillArray(t);//массив перемешенных индексов for i:=0 to 1000 do begin //меняет i-ое на t a:=mas; b:=mas[t]; mas:=b; mas[t]:=a; end; for i:=0 to 1000 do memo1.Lines.add(inttostr(mas)); end;