Show Posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.


Messages - Кликермен

Pages: 1 ... 5 6 [7] 8
91
если не ошибаюсь, PXLREPLACE

92
Вот была интересная задача.
В уме быстро посчитать сумму всех чисел от 1 до 100 включительно.

Догадался сразу как делать. А вы? Без интернета само собой.
Я недавно  искал  инфу по нетривиальному программированию( такое определение кликера на главной) и наткнулся на Эйлера, как он во 2 классе  открыл, что первый+предпоследний член = последнему
Quote
у эйлера было нетравиальное мышление. будучи учеником младших классов, он быстро выполнял все задания и досаждал учителю разными вопросами. как-то учитель решил дать ему задание, которое надо, по его мнению, решать весь урок. задание такое: найти сумму всех чисел от 1 до 100. эйлер справился с заданием за 5 минут, заодно переоткрыл формулу суммы арифметической прогрессии. 1+99=100, 2+98=100, 3+97=100 ...49+51=100, т. е. 49 раз по 100 и еще 100+50, итого 5050. ученик с травиальным мышлением суммировал бы на прямую 1+2=3, 3+3=6, 6+4=10 и т. д. всего 100 операций сложения, если на каждую затрачивать 25с, то нахождение всей суммы займет 41мин.
Вот тогда я понял, что абсолютно  не помню  школьную математику.
Винт, вот решение(из головы, я его недавно повторно вывел, когда писал  для кликера алгоритм)
[spoiler](1+100)*100/2=5050[/spoiler]

93
Задача 2, посложнее

Если перечислить все натуральные числа меньше 10, кратные 3 или 5, мы получим 3, 5, 6 и 9. Сумма этих чисел равна 23.
Необходимо найти сумму всех натуральных чисел до 1000, кратных 3 или 5.

94
Решение задачи №1

Пока решал - освоил  азы обработки строк)) раньше вообще  не хотелось изучать их. задача решена идеально, в начале нужно выбрать диапазон чисел.  на  1000 - уходит  примерно минута на обработку.
Code: (clickermann) [Select]
$_ms1=$_ms
FOR($a=0,$a<1000) // повторяем 3 раза
   for($i=1, $i<$a+1)
      if (strpos($a/$i, ".")=0)
         $light=$light+1
         if   (($light=3)|($light>3))
            $i=$a+1
         end_if
      end_if
   END_CYC
   if (($light<3)&($a>1))
      arrpush($arr, $a)
   end_if
   $light=0
END_CYC
FOR($a=0,$a<ARRSIZE($arr)) // повторяем 3 раза
   FOR($p=1,$p<(strlen($arr[$a])))
      if ($m=0)
         $m=$arr[$a]
      end_if
      $m=STRCONCAT(strcut($m,2,strlen($m)-1), strcut($m,1,1))
      while  (strpos($m,"0")=1)
         $m=STRCONCAT(strcut($m,2,strlen($m)-1))
      end_cyc
      FOR($l=0,$l<ARRSIZE($arr))
         if ($m=$arr[$l])
            $yes=$yes+1
            $l=ARRSIZE($arr)
         end_if
      END_CYC
      if ($yes=(strlen($m)-1))
         print("простоЕ!" , $arr[$a])
         $summa=$summa+1
      end_if
   END_CYC
   if (strlen($arr[$a])<2)
      print("простоЕ!" , $arr[$a])
      $summa=$summa+1
   end_if
   $yes=0
   $m=0
END_CYC
print("Затрачено ", ($_ms-$_ms1)/1000, " секунд, сумма:", $summa)
halt


95
Наткнулся на сайт, с  задачами для программистов.  около 500 различных головоломок,   без привязки к конкретному языку  программирования. очень понравилось. Хочу поделиться, только он на испанском :D
[spoiler]projecteuler.net
Шучу, на английском)[/spoiler]
Буду дублировать интересные задачи, с моей реализацией(или без, если не додумаюсь). Подключайтесь, очень много реально интересного. 

Задача №1(там она 35, ну да ладно)

Число 197 -  круговое простое , потому что все круговые перестановки цифр: 197, 971, и 719, образуют только простые числа.
Есть тринадцать таких простых чисел меньше 100: 2, 3, 5, 7, 11, 13, 17, 31, 37, 71, 73, 79, и 97.
Сколько  всего круговых простых чисел   до миллиона?

96
Биржа труда / Re: Сколько будет стоить
« on: February 04, 2016, 10:43:56 PM »
вот так работает у меня этот скрипт


в самом конце измени диапазоны поиска красных кнопок под себя(там поиск 3 пикселей - 1 - верхняя область зарядок, 2 - нижняя, самый последний - листание вперед),   исправь самый последний пиксель, чтобы находил зеленую стрелку после всех манипуляций. также кнопка попросить у меня не находилась, я закомментировал,  и прописал жесткую ссылку(тоже подправь у себя). ну и сделай скрин кнопки закрыть.  у тебя не работает, потому что на двух страницах разных -разные кнопки закрыть.   ты вырезал где звездочки, а надо еще вырезать, где зеленые кнопки. ну, в целом все))

Code: (clickermann) [Select]

//========ВСТАВИТЬ КАПЧу В ОКНО======================

// Переыыыделанный скрипт на капчу для ВК
SUB(paste) //========== Вставить ===============================================    ///Paste
   GETSCREEN
   IF_PICTURE_IN (0,0, $_xmax,$_ymax, "kodsuda.bmp", -1, 100) //Код Сюда
      WAITMS (50)
      lclick($_return1, $_return2)
      KEYDOWN (#CTRL) // Ctrl+V
      WAITMS (50)
      KEYDOWN (#V)
      WAITMS (50)
      KEYUP (#V)
      WAITMS (50)
      KEYUP (#CTRL)
      WAITMS (50)
      KEYDOWN (#ENTER)
      WAITMS (50)
      KEYUP (#ENTER)
      WAITMS (50)
   END_IF
END_SUB
//========ВСТАВИТЬ КАПЧу В ОКНО======================



//=============РАСПОЗНАЕМ КАПЧУ==================

SUB(capcha)////// Капча       ////
   repeat:                                                                          ///Capcha
   GETSCREEN      //Делаем скрин
   IF_PICTURE_IN (0,0, $_xmax,$_ymax, "key1.bmp", -1, 100) //ищем значок AGC
      lclick($_return1+50, $_return2+90)       //тык в распознать
      WAITMS(100)
      GETSCREEN
      IF_PICTURE_IN (0,0,$_xmax,$_ymax, "key1.bmp")
         $AGC_x = $_return1+25            //навели на поле с индикатором по Х
         $AGC_y = $_return2+56      //Навели на поле с индикатором по Y
         LOGWRITE("AGClient X=", $_return1, ", Y=", $_return2)
      END_IF
     
      $pic=0
      WHILE($pic=0)
         GETSCREEN
         IF (PXL($AGC_x, $AGC_y)=65535) // жёлтый
            WAITMS(300)
         END_IF
         IF (PXL($AGC_x, $AGC_y)=65280) // зелёный
            WAITMS(100)
            $pic=1 // выходим из цикла
         END_IF
         IF (PXL($AGC_x, $AGC_y)=255) // красный
            LOGWRITE("Не распознали")
            HINTPOPUP("Не распознали")
            $pic=2
         END_IF
      END_CYC
     
      IF($pic=2) // если не распознали отправляем повторно
         GOTO(repeat)
      END_IF
      paste()
      WAITMS(300)
   END_IF
END_SUB
//=============РАСПОЗНАЕМ КАПЧУ==================


//===========тыкаемся в спиоск друзей до последнего человека=====================

sub(Chelovechki)
   $konec=2
   WAIT(1)
   ///Chelovechki
   while($konec!0)          //
      GETSCREEN
      IF_PIXEL_IN(588,396, 994,656, 25087)  //Ищем звездочку
         LCLICK($_return1, $_return2)
         while ($pop=0)
            WAITMS(3000)
            //            GETSCREEN
            LCLICK(803,485)
            //            IF_PICTURE_IN (0,0, $_xmax,$_ymax, "Otpravit.bmp", -1, 100)     //находим отправить и тыкаемся в нее
            //               LCLICK($_return1, $_return2)
            $pop = 1
            $konec=0
            //         END_IF
         end_cyc
         $pop=0
      else
         IF_PICTURE_IN (427,546,1095,693, "close.bmp", -1, 100)
            LCLICK($_return1, $_return2)
            $konec=0
            $zv=0
         END_IF
      END_IF
      IF_PICTURE_IN (522,208, 960,485, "kodsuda.bmp", -1, 100)
         capcha()
      END_IF
   END_CYC
   WAITMS(3000)
END_SUB
//===========тыкаемся в спиоск друзей до последнего человека=====================

//============Ищем зеленые кнопки=======================
sub(green)
   getscreen
   if   (arrsize($var) = 0)
      scanpicture($var, 0,0, $_xmax,$_ymax, "green.bmp")     //ищем зеленые кнопки
   end_if
   while ((arrsize($var) > 0)|($zv=1))
      if ($zv=0)
         $y = arrpop($var)
         $x = arrpop($var)
         $zv=1
      end_if
      lclick($x,$y)//на кнопку
     
      ///////Проверка последнего человека, если нет то тыкаемся в просилки///
      Chelovechki()
   END_CYC
   undefine($var)
   LCLICK(880,700)
   print("пууух")
END_SUB


//====тут ищем красную кнопку для вызова попрошайки где будет в дальнейшем зеленые кнопки===================
//==============написал недавно и пока не придумал как и куда ее воткнуть=======================

//sub(perelist)   //ищем красную кнопку
getscreen                                                                         ///Perelist
if ($upred=0)
   if_pixel_in(0, 0, 947,497, 131176)
      lclick($_return1, $_return2)
      wait(1)
      $upred=1
      green()
   end_if
else
   if ($upred2=0)
      if_pixel_in(800,497,$_xmax,$_ymax, 131176)
         lclick($_return1, $_return2)
         wait(1)
         $upred2=1
         green()
      end_if
   else
      if_pixel_in( 0, 0, $_xmax, $_ymax, 1516513)
         lclick($_return1, $_return2)
         wait(1)
         $upred2=0
         $upred=0
      end_if   // конец условия
   end_if
end_if
//END_SUB
//=============================================
//=============================================

97
Общие вопросы / Re: не воспроизводит wav.
« on: February 04, 2016, 03:54:10 PM »
если это весь скрипт, добавь перед гетскрином задержку, как сказал оравен

98
Биржа труда / Re: Сколько будет стоить
« on: February 04, 2016, 03:43:49 PM »
подредактируй, походу у тебя цвет не ищет. измени цвета пикселей. я их менял под себя.

99
Общие вопросы / Re: не воспроизводит wav.
« on: February 04, 2016, 03:20:35 PM »
наверное у тебя звуки отключены/файл битый/ты забыл запустить скрипт

100
Биржа труда / Re: Сколько будет стоить
« on: February 04, 2016, 08:03:10 AM »
запусти)

Code: (clickermann) [Select]


//========ВСТАВИТЬ КАПЧу В ОКНО======================

// Переыыыделанный скрипт на капчу для ВК
SUB(paste) //========== Вставить ===============================================    ///Paste
   GETSCREEN
   IF_PICTURE_IN (0,0, $_xmax,$_ymax, "kodsuda.bmp", -1, 100) //Код Сюда
      WAITMS (50)
      lclick($_return1, $_return2)
      KEYDOWN (#CTRL) // Ctrl+V
      WAITMS (50)
      KEYDOWN (#V)
      WAITMS (50)
      KEYUP (#V)
      WAITMS (50)
      KEYUP (#CTRL)
      WAITMS (50)
      KEYDOWN (#ENTER)
      WAITMS (50)
      KEYUP (#ENTER)
      WAITMS (50)
   END_IF
END_SUB
//========ВСТАВИТЬ КАПЧу В ОКНО======================



//=============РАСПОЗНАЕМ КАПЧУ==================

SUB(capcha)////// Капча       ////
   repeat:                                                                          ///Capcha
   GETSCREEN      //Делаем скрин
   IF_PICTURE_IN (0,0, $_xmax,$_ymax, "key1.bmp", -1, 100) //ищем значок AGC
      lclick($_return1+50, $_return2+90)       //тык в распознать
      WAITMS(100)
      GETSCREEN
      IF_PICTURE_IN (0,0,$_xmax,$_ymax, "key1.bmp")
         $AGC_x = $_return1+25            //навели на поле с индикатором по Х
         $AGC_y = $_return2+56      //Навели на поле с индикатором по Y
         LOGWRITE("AGClient X=", $_return1, ", Y=", $_return2)
      END_IF
     
      $pic=0
      WHILE($pic=0)
         GETSCREEN
         IF (PXL($AGC_x, $AGC_y)=65535) // жёлтый
            WAITMS(300)
         END_IF
         IF (PXL($AGC_x, $AGC_y)=65280) // зелёный
            WAITMS(100)
            $pic=1 // выходим из цикла
         END_IF
         IF (PXL($AGC_x, $AGC_y)=255) // красный
            LOGWRITE("Не распознали")
            HINTPOPUP("Не распознали")
            $pic=2
         END_IF
      END_CYC
     
      IF($pic=2) // если не распознали отправляем повторно
         GOTO(repeat)
      END_IF
      paste()
      WAITMS(300)
   END_IF
END_SUB
//=============РАСПОЗНАЕМ КАПЧУ==================


//===========тыкаемся в спиоск друзей до последнего человека=====================

sub(Chelovechki)
   $konec=2
   WAIT(1)
   ///Chelovechki
   while($konec!0)          //
      GETSCREEN
      IF_PIXEL_IN(588,396, 994,656, 25087)  //Ищем звездочку
         LCLICK($_return1, $_return2)
         while ($pop=0)
            WAITMS(3000)
            GETSCREEN
            LCLICK(803,485)
            IF_PICTURE_IN (0,0, $_xmax,$_ymax, "Otpravit.bmp", -1, 100)     //находим отправить и тыкаемся в нее
               LCLICK($_return1, $_return2)
               $pop = 1
               $konec=0
            END_IF
         end_cyc
         $pop=0
      else
         IF_PICTURE_IN (427,546,1095,693, "close.bmp", -1, 100)
            LCLICK($_return1, $_return2)
            $konec=0
            $zv=0
         END_IF
      END_IF
      IF_PICTURE_IN (522,208, 960,485, "kodsuda.bmp", -1, 100)
         capcha()
      END_IF
   END_CYC
   WAITMS(3000)
END_SUB
//===========тыкаемся в спиоск друзей до последнего человека=====================

//============Ищем зеленые кнопки=======================
sub(green)
   getscreen
   if   (arrsize($var) = 0)
      scanpicture($var, 0,0, $_xmax,$_ymax, "green.bmp")     //ищем зеленые кнопки
   end_if
   while (arrsize($var) > 0)
      if ($zv=0)
         $y = arrpop($var)
         $x = arrpop($var)
         $zv=1
      end_if
      lclick($x,$y)//на кнопку
     
      ///////Проверка последнего человека, если нет то тыкаемся в просилки///
      Chelovechki()
   END_CYC
   undefine($var)
END_SUB


//====тут ищем красную кнопку для вызова попрошайки где будет в дальнейшем зеленые кнопки===================
//==============написал недавно и пока не придумал как и куда ее воткнуть=======================

//sub(perelist)   //ищем красную кнопку
getscreen                                                                         ///Perelist
if ($upred=0)
   if_pixel_in( 0, 0, 947,497, 131176)
      lclick($_return1, $_return2)
      wait(1)
      $upred=1
      green()
   end_if
else
   if ($upred2=0)
      if_pixel_in(947,497,$_xmax,$_ymax, 131176)
         lclick($_return1, $_return2)
         wait(1)
         $upred2=1
         green()
      end_if
   else
      if_pixel_in( 0, 0, $_xmax, $_ymax, 1516513)
         lclick($_return1, $_return2)
         wait(1)
         $upred2=0
         $upred=0
      end_if   // конец условия
   end_if
end_if
//END_SUB
//=============================================
//=============================================

101
Биржа труда / Re: Сколько будет стоить
« on: February 04, 2016, 07:28:37 AM »
Code: (clickermann) [Select]


//========ВСТАВИТЬ КАПЧу В ОКНО======================

// Переыыыделанный скрипт на капчу для ВК
SUB(paste) //========== Вставить ===============================================    ///Paste
   GETSCREEN
   IF_PICTURE_IN (0,0, $_xmax,$_ymax, "kodsuda.bmp", -1, 100) //Код Сюда
      WAITMS (50)
      lclick($_return1, $_return2)
      KEYDOWN (#CTRL) // Ctrl+V
      WAITMS (50)
      KEYDOWN (#V)
      WAITMS (50)
      KEYUP (#V)
      WAITMS (50)
      KEYUP (#CTRL)
      WAITMS (50)
      KEYDOWN (#ENTER)
      WAITMS (50)
      KEYUP (#ENTER)
      WAITMS (50)
   END_IF
END_SUB
//========ВСТАВИТЬ КАПЧу В ОКНО======================



//=============РАСПОЗНАЕМ КАПЧУ==================

SUB(capcha)////// Капча       ////
   repeat:                                                                          ///Capcha
   GETSCREEN      //Делаем скрин
   IF_PICTURE_IN (0,0, $_xmax,$_ymax, "key1.bmp", -1, 100) //ищем значок AGC
      lclick($_return1+50, $_return2+90)       //тык в распознать
      WAITMS(100)
      GETSCREEN
      IF_PICTURE_IN (0,0,$_xmax,$_ymax, "key1.bmp")
         $AGC_x = $_return1+25            //навели на поле с индикатором по Х
         $AGC_y = $_return2+56      //Навели на поле с индикатором по Y
         LOGWRITE("AGClient X=", $_return1, ", Y=", $_return2)
      END_IF
     
      $pic=0
      WHILE($pic=0)
         GETSCREEN
         IF (PXL($AGC_x, $AGC_y)=65535) // жёлтый
            WAITMS(300)
         END_IF
         IF (PXL($AGC_x, $AGC_y)=65280) // зелёный
            WAITMS(100)
            $pic=1 // выходим из цикла
         END_IF
         IF (PXL($AGC_x, $AGC_y)=255) // красный
            LOGWRITE("Не распознали")
            HINTPOPUP("Не распознали")
            $pic=2
         END_IF
      END_CYC
     
      IF($pic=2) // если не распознали отправляем повторно
         GOTO(repeat)
      END_IF
      paste()
      WAITMS(300)
   END_IF
END_SUB
//=============РАСПОЗНАЕМ КАПЧУ==================


//===========тыкаемся в спиоск друзей до последнего человека=====================

sub(Chelovechki)
   $konec=0                                                                          ///Chelovechki
   while($konec<4)          //если последний встречался 4 раза подряд то выход
      GETSCREEN
      IF_PICTURE_IN (468,356, 784,510, "lostpeople.bmp", -1, 100)
         $konec=$konec+1
         IF_PICTURE_IN (427,546,1095,693, "close.bmp", -1, 100)
            LCLICK($_return1, $_return2)
         END_IF
      else
         IF_PIXEL_IN(588,396, 994,656, 25087)  //Ищем звездочку
            $konec=0
            wait(1)
            LCLICK($_return1, $_return2)
            WAITMS(500)
         END_IF
         //=======Окно отправки попрошаек==================================
         $pop = 0
         WHILE($pop = 0)
            GETSCREEN
            IF_PICTURE_IN (0,0, $_xmax,$_ymax, "tormoz.bmp", -1, 100)   //если окно тормозит
               wait(1)
            else
               IF_PICTURE_IN (518,364, 1093,619, "Otpravit.bmp", -1, 100)     //находим отправить и тыкаемся в нее
                  LCLICK($_return1, $_return2)
                  $pop = 1
               END_IF
               GETSCREEN
               IF_PICTURE_IN (522,208, 960,485, "kodsuda.bmp", -1, 100)
                  capcha()
               END_IF
            END_IF
         END_CYC
      END_IF
   END_CYC
   //goto start
END_SUB
//===========тыкаемся в спиоск друзей до последнего человека=====================

//============Ищем зеленые кнопки=======================
sub(green)
   getscreen
   scanpicture($var, 0,0, $_xmax,$_ymax, "green.bmp")     //ищем зеленые кнопки
   while (arrsize($var) > 0)
      $y = arrpop($var)
      $x = arrpop($var)
     
      lclick($x,$y)//на кнопку
     
      ///////Проверка последнего человека, если нет то тыкаемся в просилки///
      Chelovechki()
   END_CYC
   undefine($var)
END_SUB


//====тут ищем красную кнопку для вызова попрошайки где будет в дальнейшем зеленые кнопки===================
//==============написал недавно и пока не придумал как и куда ее воткнуть=======================

//sub(perelist)   //ищем красную кнопку
getscreen                                                                         ///Perelist
if ($upred=0)
   if_pixel_in( 0, 0, 947,497, 131176)
      lclick($_return1, $_return2)
      wait(1)
      $upred=1
      green()
   end_if
else
   if ($upred2=0)
      if_pixel_in(947,497,$_xmax,$_ymax, 131176)
         lclick($_return1, $_return2)
         wait(1)
         $upred2=1
         green()
      end_if
   else
      if_pixel_in( 0, 0, $_xmax, $_ymax, 1516513)
         lclick($_return1, $_return2)
         wait(1)
         $upred2=0
         $upred=0
      end_if   // конец условия
   end_if
end_if
//END_SUB
//=============================================
//=============================================

В твоем коде - если последний человек встречался 4 раза подряд.. что это такое?))  можно же проще. кликаем попросить - вылезает поле с друзьями. жмем каждого, они постепенно уходят. как уйдет последний, выходим.

Насчет предметов для зарядки- я повесил флаги. кликнули сверху - флаг1 обозвали,  потом сделали всЕ, вернулись, пошли на второй флаг. два флага  закрашены - кликаем новую стр, обнуляем флаги)

102
Биржа труда / Re: Сколько будет стоить
« on: February 04, 2016, 07:04:14 AM »
Code: (clickermann) [Select]
getscreen                                                                         ///Perelist
   if_pixel_in( 0, 0, 947,336, 1516513) // если находим  в верхней части экрана зеленую кнопку листания, то жмем и уходим в грин
      lclick($_return1, $_return2)
      wait(1)
      green()
   else
      if_pixel_in( 947,336,$_xmax,$_ymax, 1516513)//иначе смотрим нижнюю часть экрана
         lclick($_return1, $_return2)
         wait(1)
         green()
      else
         if_pixel_in( 0, 0, $_xmax, $_ymax, 2661665, 7405146)//если пусто все, нет зеленых кнопок, ищем другие цвета кликаем и ничего не делаем
            lclick($_return1, $_return2)
            wait(1)
         end_if   // конец условия
      end_if
   end_if

у меня он тыкал монотонно на следующую страницу. я закомментировал код, глянь - это то что ты планировал, или нет?))кстати, ты грин неправильно сделал, я скорректировал)

103
Биржа труда / Re: Сколько будет стоить
« on: February 04, 2016, 06:54:38 AM »
[spoiler][/spoiler]
 вот  игра. зарядки, предметы. у меня платье есть, осталось теперь выпросить оставшиеся предметы, верно? нажимаю на предмет под кнопкой зарядить,  затем- попросить и прошу людей. или я неправильно понимаю задачу?)

104
Биржа труда / Re: Сколько будет стоить
« on: February 04, 2016, 06:45:22 AM »
Кстати, ты в курсе, что зарядки можно не искать?  сверху есть фильтр - собранные, 4/5, заряженные

105
Биржа труда / Re: Сколько будет стоить
« on: February 04, 2016, 06:38:50 AM »
ну как минимум она не сшита  :P нужно довести до ума все подпрограммы и потом сделать главную программу запуска ) отдельно подпрограммы вроде работают ( по крайней мере на момент написания самой подпрограммы работали )
ниже скрин того что нужно просить у других людей, если есть игра в вк, то открой игру, открой сундук справа ( коллекции) запусти саб(перелист) он покажет что именно нужно
нажать на каждый недостающий элемент коллекции,  просить, пока не кончатся люди в списке, закрывать окно, кликать на следующую зеленую кнопку. как пройду все предметы, закрываю коллекцию,  иду на следующий обмен, верно?

Pages: 1 ... 5 6 [7] 8