Что нового

Действие после каждой n-ой строки массива

WR-e-D

Новичок
Сообщения
53
Репутация
3
Просьба модераторам поправить заголовок если вопрос сформулирован неправильно ...
А именно проблема такова:
Это часть кода:
Код:
#include <file.au3>
Dim $aRecords
If Not _FileReadToArray("targetlist1.txt",$aRecords) Then
   MsgBox(4096,"Error", " Список Целей пуст")
   Exit
EndIf
While 1
		For $x = 1 to $aRecords[0]
Msgbox(0,'Record:' & $x, $aRecords[$x]) ;Действие (для примера)
	Sleep(Random(1700, 2700, 1))
Next
WEnd

Нужно чтоб после каждого допустим 11-ого вывода "Msgbox(0,'Record:' & $x, $aRecords[$x])" ставилась пауза "Sleep(Random(1700, 2700, 1))".

Возможно сказались бессонные ночи, а возможно просто нехватка знаний )
Заранее благодарю за помощь.
 

madmasles

Модератор
Глобальный модератор
Сообщения
7,790
Репутация
2,320
WR-e-D,
Попробуйте так.
Код:
$iStepPause = 11
Dim $aArray[1001] = [1000]
For $i = 1 To $aArray[0]
	$aArray[$i] = Chr(Random(65, 90, 1))
Next

For $i = 1 To $aArray[0]
	If Not Mod($i, $iStepPause) Then
		MsgBox(64, $i, $aArray[$i])
	EndIf
	ConsoleWrite($i & @TAB & $aArray[$i] & @LF)
Next
Используйте для кода тег AutoIt:
 

Medic84

Омега
Команда форума
Администратор
Сообщения
1,583
Репутация
335
Все просто. Создай счетчик. Каждый цикл прибавляй ему по еденице, и как только он станет 11 делай свое действие и обнуляй его. Ну или можно использовать код, который предоставили Выше :smile:

Код:
#include <file.au3>
Dim $aRecords
Global $n = 0

If Not _FileReadToArray("targetlist1.txt",$aRecords) Then
   MsgBox(4096,"Error", " Список Целей пуст")
   Exit
EndIf
While 1
	For $x = 1 to $aRecords[0]
		Msgbox(0,'Record:' & $x, $aRecords[$x]) ;Действие (для примера)
		If $n = 11 Then
			Sleep(Random(1700, 2700, 1))
			$n = 0
		Else
			$n += 1
		EndIf
	Next
WEnd
 
Автор
WR-e-D

WR-e-D

Новичок
Сообщения
53
Репутация
3
Спасибо большое )
2 madmasles сори - впреть буду использовать autoit спойлер )
 
Верх