Yoko
http://forum.yoko.com.ua/

Вот такая вот задача, сам не могу осилить...
http://forum.yoko.com.ua/viewtopic.php?f=20&t=12947
Page 1 of 1

Author:  Kynep [ 2007-12-23 11:10:36 ]
Post subject:  Вот такая вот задача, сам не могу осилить...

Воопщем Уважаемые Знатоки, такая задачка:
Code:
Шард ДРВ, в паке у чара (или в сундуке) лежит допустим 5 кучек руды по 1 штуке, допустим Gold, 2 кучки по 2 штуки, и 3 кучки по 3 штуки. Плюс 5 кучек руды по 1 штуке, допустим Расти, 2 кучки по 2 штуки.

Понятно написал? Внимание вопрос... как их сосчитать, записать в лог в виде: Имя - кол-во? Причем если получится, то желательно из имени убрать цифру количества. Поиск по типу записывает в лог все кучки одного типа, не сумируя их, то есть:
Лежит 5 кучек по одной, в лог пишется:
Code:
a Gold Ore - 1

и так 5 раз. Скажу сразу, пробовал сумировать найденный тип, да он сумирует, но как к нему прибавить кучки другова типа, но той же руды, когда кол-во 2 или 3?
Я понимаю что это бред, зачем мне все это надо... надо братья надо. Жду ваши предложения.

Author:  Grin [ 2007-12-23 12:34:33 ]
Post subject: 

Вот жуть то...
есть тип кучи с 1 оре последующие отличаются на 1
то есть все с водится 2-му циклу первый перебирает цвета руды второй типы.

Можно обойтись 1 циклом, так как вего руд мало то можно сделать 1 масив о цветам руд. Далее пробигаем по всем итемам с проверкой их пренодлежности к руде, дальше за исываем соответствено цвету в масив.

Author:  Kynep [ 2007-12-23 12:52:20 ]
Post subject: 

Grin wrote:
Вот жуть то...


Не говори :D Сам в шоке ))) третий день думаю, уже мозг закипел...
Таксс из твоего совета я понял следующее:
Code:
1)делаем 2 массива, один с типами второй с цветами
2)ищем по типу, если находит запускаем поиск по цвету
3)по цвету нашли, плюсуем к переменной kolvo
4)ищем следующий тип, и так далее

Ок, кол-во нашли... как теперь быть с именами? Создавать третий массив с именами и сопостовлять по цвету? Или как по другому?

Author:  Grin [ 2007-12-23 13:08:56 ]
Post subject: 

типы линейны масивов не надо...
масиыв нужен только для цветов

можешь и масив названий сделать.

Code:
sub OreCount()
   var count = 20
   var sum = 0
   var type = 0
   dim colors[20]
   dim names[20]
   
   for var i = 0 to count-1
      sum = 0
      uo.findtype(-1, colors[i], -1)
      while uo.FindCount()
         type = uo.Hex2Int(uo.GetGraphic('finditem'))
         if (type >= начало) and (type <= конец) then
            sum = sum + uo.GetQuantity('finditem')
         end if
         uo.Ignore('finditem')
         wait(10)
         uo.findtype(-1, colors[i], -1)
      wend
      if sum then
         uo.Print(names[i]+": "+str(sum))
      endif
   next
   
   uo.IgnoreRest()
end sub


ну а можно и подругому...

Author:  Kynep [ 2007-12-23 13:17:20 ]
Post subject: 

Grin wrote:
типы линейны масивов не надо...
масиыв нужен только для цветов

можешь и масив названий сделать.

Code:
sub OreCount()
   var count = 20
   var sum = 0
   var type = 0
   dim colors[20]
   dim names[20]
   
   for var i = 0 to count-1
      sum = 0
      uo.findtype(-1, colors[i], -1)
      while uo.FindCount()
         type = uo.Hex2Int(uo.GetGraphic('finditem'))
         if (type >= начало) and (type <= конец) then
            sum = sum + uo.GetQuantity('finditem')
         end if
         uo.Ignore('finditem')
         wait(10)
         uo.findtype(-1, colors[i], -1)
      wend
      if sum then
         uo.Print(names[i]+": "+str(sum))
      endif
   next
   
   uo.IgnoreRest()
end sub


ну а можно и подругому...


Хех интерестный подход, особенно с проверкой типов :) Спасибо за идею, седня вечерочком буду париться. После полутора лет без инжи, как то тяжело все вспоминать, но потихоньку получается )))

Code:
ну а можно и подругому...


Интерестная фраза... многообещающая :D

Author:  Grin [ 2007-12-23 13:22:52 ]
Post subject: 

тут дело не в знании а в понимании чего надо сделать что бы сосчитать...

Page 1 of 1 All times are UTC+02:00
Powered by phpBB® Forum Software © phpBB Limited
https://www.phpbb.com/