Что нового

Генератор случайного имени

Ramakos

Новичок
Сообщения
1
Репутация
0
Версия AutoIt: 3.3,8.1

Описание:
Здравствуйте пользователи форума!
Подскажите пожалуйста. У меня есть к примеру пять имен: МАша, Даша, Паша, Саша, Миша.
Мне нужно чтобы на экран при нажатие кнопки выводилось 1 случайное имя.

Если с рандомом чисел я разабрался, то со словами у меня проблема. И если не сложно поясните как вообще задается рандом слов!
Заранее спасибо!
 

AZJIO

Меценат
Меценат
Сообщения
2,879
Репутация
1,194
Ramakos
Судя по запросу вам надо в раздел новичков.
Код:
$a=StringSplit('МАша,Даша,Паша,Саша,Миша',',')
MsgBox(0, 'Сообщение', $a[Random(1,5,1)])
 

madmasles

Модератор
Глобальный модератор
Сообщения
7,790
Репутация
2,322
Ramakos,
Как вариант перемешать все имена.
Код:
#include <Array.au3>

$aRand = _RandomSplit('Маша, Даша, Паша, Саша, Миша, Вася, Петя, Коля, Ваня, Катя, Сеня', ',')
If @error Then Exit 13
_ArrayDisplay($aRand)

Func _RandomSplit($s_String, $s_Delim)
	Local $a_Split, $s_Tmp, $i_Count, $s_Str = '|', $i_Rand, $a_Ret[1]

	$a_Split = StringSplit(StringStripWS($s_String, 8), $s_Delim)
	If $a_Split[0] < 2 Then Return SetError(1, 0, -1)
	ReDim $a_Ret[$a_Split[0]]
	While $i_Count < $a_Split[0]
		$i_Rand = Random(0, $a_Split[0] - 1, 1)
		If StringInStr($s_Str, '|' & $i_Rand & '|') Then ContinueLoop
		$s_Str &= $i_Rand & '|'
		$i_Count += 1
		$a_Ret[$i_Rand] = $a_Split[$i_Count]
	WEnd
	Return $a_Ret
EndFunc   ;==>_RandomSplit
 
Верх