Что нового

Как записать в txt файл все числа от 1 до 10 случайно???

sergeinovilozf

Новичок
Сообщения
51
Репутация
0
Здравствуйте.

С функцией рандом не удаётся это сделать,повторяются числа.
Код:
$i = 0
While $i <= 10 
      $hFile = FileOpen("test.txt", 1)
	  $chislo = Random(0, 10, 1)
	   FileWriteLine($hFile, $chislo)
$i = $i + 1
WEnd

Как проверять их в каждой строке?
Код:
; Читает по 5 символов за каждый шаг цикла, пока не будет достигнут конец файла
While 1
    $sChars = FileRead($hFile, 5)
WEnd
 

Tempo

AutoIT Гуру
Сообщения
616
Репутация
205
Код:
#include <Array.au3>
#include <File.au3>

Local $aRandom[] = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
_ArrayShuffle($aRandom)
_FileWriteFromArray(@ScriptDir & "\Test.txt", $aRandom)
ShellExecute(@ScriptDir & "\Test.txt")
 
Автор
S

sergeinovilozf

Новичок
Сообщения
51
Репутация
0
Tempo, спасибо большое.


Добавлено:
Сообщение автоматически объединено:

А большие диапазоны как?
Код:
#include <Array.au3>
#include <File.au3>

$i = 1
While $i <= 100;
Local $aRandom[] = [$i]
_ArrayShuffle($aRandom)
_FileWriteFromArray(@ScriptDir & "\Test.txt", $aRandom)
$i = $i + 1
WEnd

Функция _ArrayShuffle не доступна на странице.
 

Tempo

AutoIT Гуру
Сообщения
616
Репутация
205
Массивы
Dim / Global / Local / Const
_ArrayShuffle

Код:
#include <Array.au3>
#include <File.au3>

Local $aRandom[10001] = [10000]
For $i = 1 To $aRandom[0]
	$aRandom[$i] = $i
Next
_ArrayShuffle($aRandom)
_FileWriteFromArray(@ScriptDir & "\Test.txt", $aRandom, 1)
ShellExecute(@ScriptDir & "\Test.txt")



Добавлено:
Сообщение автоматически объединено:

sergeinovilozf сказал(а):
Здравствуйте.

С функцией рандом не удаётся это сделать,повторяются числа.
Код:
$i = 0
While $i <= 10 
      $hFile = FileOpen("test.txt", 1)
	  $chislo = Random(0, 10, 1)
	   FileWriteLine($hFile, $chislo)
$i = $i + 1
WEnd

FileOpen
Операторы
For...To...Step...Next
 
Автор
S

sergeinovilozf

Новичок
Сообщения
51
Репутация
0
Спасибо.


Добавлено:
Сообщение автоматически объединено:

Tempo,если не сложно напишите, как понять, где вопросы:

Код:
Local $aRandom[10001] = [10000];  переменная[ ?   ]     = количество элементов в массиве
For $i = 1 To $aRandom[0]; переменная в качестве счётчика $i=Начальное число переменной счётчика(от куда считать 1). "To" конечное число[на сколько увеличивать шаг 1]
    $aRandom[$i] = $i;   ?= ?
Next
_ArrayShuffle($aRandom); перемешать числа
_FileWriteFromArray(@ScriptDir & "\Test.txt", $aRandom, 1); записать в файл
 
Верх