Что нового

[Данные, строки] Перемешивание символов строки в случайном порядке

ahjkcfout7

Знающий
Сообщения
26
Репутация
6
AutoIt: 3.
Версия: 4.1

Категория: Строки,

Описание: Перемешивает все символы в данной строке. Появилась необходимость произвести такую манипуляцию, искал на форуме и в справочнике, подобных решений к сожалению не нашел. Может кому-то и пригодится.

Код/Пример:
Код:
#include <array.au3>
$string = "ну как-то так получилось"
$array_symbols=StringSplit($string,"")
$a=gen_number(1,UBound($array_symbols)-1)
$string_new=""
For $i=1 To UBound($array_symbols)-1
$string_new &=$array_symbols[$a[$i]]
Next
ConsoleWrite($string_new)

Func gen_number($first, $last)
   Local $a=$first
   Local $b=$last
   Local $randarray[1]
   For $i=0 To $b-$a
	  _ArrayAdd($randarray,$a)
	  $a+=1
   Next
   Local $a=$first
   Local  $number_rand[1]
   While True
	  $i=1
	  $rand=Random($a,$b,1)
	  _ArraySearch($number_rand,$rand)
	  If @error Then _ArrayAdd($number_rand,$rand)
	  If UBound($number_rand)=UBound($randarray) Then ExitLoop
   WEnd
   Return($number_rand)
EndFunc

История версий:
1.0

Источник: autoit-script.ru
Автор(ы): ahjkcfout7
 
Верх