Author Topic: Рандомность  (Read 3774 times)

0 Members and 2 Guests are viewing this topic.

swprist

  • Зашел в гости
  • *
  • Posts: 9
    • View Profile
Рандомность
« on: September 16, 2015, 08:41:54 AM »
Доброго времени суток, мне нужна ваша помощь.
 Мне нужно научить чудоавтокликер выбирать из текстового файла ,который имеет вид:

1строка
2строка
3строка
- тут пустая строка, но всё же она строка, как я понял.
5строка
6строка
7строка
8строка
9строка


- выбирать с 5 по 9 строку рандомно и копировать в буфер обмена. Расскажите пожалуйста с кодом и пояснением , чтобы я тоже усвоил а не скопировал ваш код. Если это возможно, или другие альтернативы. Спасибо за помощь.

Oraven

  • Супермодератор
  • Герой форума
  • *
  • Posts: 3685
  • Котэ
    • View Profile
Re: Рандомность
« Reply #1 on: September 16, 2015, 10:44:14 AM »
RND - возвращает случайное число из диапазона
TFREAD - читает заданную строку из текстового файла
TOCLIP - отправляет строку в буфер обмена

Code: (clickermann) [Select]
$random = RND(5,9) // получаем рандомное число от 5 до 9 и записываем его в переменную
$stroka = TFREAD("Text.txt", $random) // считываем случайную строку
TOCLIP($stroka) // отправляем строку в буфер обмена

Но все это можно собрать в одну строку без переменных
Code: (clickermann) [Select]
TOCLIP(TFREAD("Text.txt", RND(5,9)))

msgkumisi

  • Освоившийся
  • **
  • Posts: 22
    • View Profile
Re: Рандомность
« Reply #2 on: October 12, 2015, 08:40:39 PM »
практическое применение:

Code: (clickermann) [Select]
$random = rnd(1,5) // получаем рандомное число от 1 до 9 и записываем его в переменную
$stroka = TFREAD("links.txt", $random) // считываем случайную строку
TOCLIP($stroka) // отправляем строку в буфер обмена

waitms(50)
  MOVE(10,10)
waitms(50)
  LDOWN(10,10)
waitms(50) 
  LUP(10,10)
WAITMS(50)
//откриваем новую вкладку
  KEYDOWN (#CTRL)
WAITMS (50)
  KEYDOWN (#T)
WAITMS (50)
  KEYUP (#T)
KEYUP (#CTRL)
//  клик в строке браузера
WAITMS(50)
  MOVE(250,70)
WAITMS(50)
  LCLICK(250,70)
WAITMS(50)
//вставит с буфера
  KEYDOWN (#CTRL)
WAITMS (50)
KEYDOWN (#V)
WAITMS (50)
KEYUP (#V)
KEYUP (#CTRL)

//Нажимаем Enter чтобы перевести строку.
   KEYPRESS(#ENTER)
WAITMS (50)

//если $random=1 сделать
что-то
//если $random=2 сделать
что-то
//если $random=3 сделать
что-то
//если $random=4 сделать
что-то
//если $random=5 сделать
что-то

//закрыт вкладку   
  KEYDOWN (#CTRL)
WAITMS (50)
KEYDOWN (#W)
WAITMS (50)
KEYUP (#W)
KEYUP (#CTRL)
    wait(30)

что писать вместо "что-то"?
« Last Edit: October 12, 2015, 08:42:22 PM by msgkumisi »

Oraven

  • Супермодератор
  • Герой форума
  • *
  • Posts: 3685
  • Котэ
    • View Profile
Re: Рандомность
« Reply #3 on: October 12, 2015, 09:31:12 PM »
Откуда мы можем знать что за "что-то" ты хочешь там сделать.

Если ты про условия то для компактности можно использовать свитч
Code: (clickermann) [Select]
$random = rnd(1,5) // получаем рандомное число от 1 до 9 и записываем его в переменную
$stroka = TFREAD("links.txt", $random) // считываем случайную строку
TOCLIP($stroka) // отправляем строку в буфер обмена

waitms(50)
MOVE(10,10)
waitms(50)
LDOWN(10,10)
waitms(50)
LUP(10,10)
WAITMS(50)
//откриваем новую вкладку
KEYDOWN (#CTRL)
WAITMS (50)
KEYDOWN (#T)
WAITMS (50)
KEYUP (#T)
KEYUP (#CTRL)
//  клик в строке браузера
WAITMS(50)
MOVE(250,70)
WAITMS(50)
LCLICK(250,70)
WAITMS(50)
//вставит с буфера
KEYDOWN (#CTRL)
WAITMS (50)
KEYDOWN (#V)
WAITMS (50)
KEYUP (#V)
KEYUP (#CTRL)

//Нажимаем Enter чтобы перевести строку.
KEYPRESS(#ENTER)
WAITMS (50)

SWITCH($random)
CASE(1)
   //если $random=1 сделать
   
CASE(2)
   //если $random=2 сделать
   
CASE(3)
   //если $random=3 сделать
   
CASE(4)
   //если $random=4 сделать
   
CASE(5)
   //если $random=5 сделать
   
DEFAULT
END_SWITCH

//закрыт вкладку
KEYDOWN (#CTRL)
WAITMS (50)
KEYDOWN (#W)
WAITMS (50)
KEYUP (#W)
KEYUP (#CTRL)
wait(30)

swprist

  • Зашел в гости
  • *
  • Posts: 9
    • View Profile
Re: Рандомность
« Reply #4 on: October 13, 2015, 03:49:48 PM »
Спасибо, я всё понял. У меня возникли следующие проблемы .
 Он пишет мне при запуске - Ошибка интерпретации строки  $stroka = TFREAD("Text.txt", $random)
 С чем я столкнулся?

Oraven

  • Супермодератор
  • Герой форума
  • *
  • Posts: 3685
  • Котэ
    • View Profile
Re: Рандомность
« Reply #5 on: October 13, 2015, 05:58:46 PM »
У меня такая ошибка выскочила только при попытке чтении несуществующей строки.

swprist

  • Зашел в гости
  • *
  • Posts: 9
    • View Profile
Re: Рандомность
« Reply #6 on: October 13, 2015, 09:51:38 PM »
Скажите пожалуйста, а могу ли я эти функции использовать например в активном окне браузера ? Если там есть окно с текстом .