Author Topic: Посоветуйте с алгоритмом  (Read 5036 times)

0 Members and 1 Guest are viewing this topic.

Offline blackmask

  • Newbie
  • *
  • Posts: 34
  • Karma: +0/-0
Посоветуйте с алгоритмом
« on: October 06, 2008, 14:22:38 »
Опыта у меня мало. Может подскажате алгоритм или натолкнете на мысль  
Задача такая. Есть элементы у которых есть единицы измерения (Ом, В, Вт, Гн и т.д.)
Нужно производить поиск элементов по единицам измерения. Но они могут еще отражать степень т.е (кОм, МОм, кВ, мВ).
Как объяснить проге, что кОм это больше, чем Ом или мВ меньше, чем В.
Причем заранее не известно какие будут единицы измерения и с какими степенями они будут использоваться.
Пока не могу придумать.
« Last Edit: October 06, 2008, 14:24:04 by blackmask »

Offline Splurov

  • Newbie
  • *
  • Posts: 47
  • Karma: +0/-0
    • http://mkln.ru/
Посоветуйте с алгоритмом
« Reply #1 on: October 06, 2008, 14:39:42 »
Если не известно какие будут ед. измерения и какие будут степени, значит нужно все предусмотреть?
В упрощенном случае что-то типа (псевдокод):
Code: [Select]
baseUnit = 'Ом'
unit = 'кОм'
order = {'м','','к','М'}
wasMiddle = false
for (i in order) {
    if (unit!=baseUnit and substr(unit, 0, 1)==order[i]) {
        if (wasMiddle) {
            // больше
        }
        else {
            // меньше
        }
    }
    elseif (order[i]=='') {
        wasMiddle = true
    }
}
« Last Edit: October 06, 2008, 14:40:47 by Splurov »

Offline blackmask

  • Newbie
  • *
  • Posts: 34
  • Karma: +0/-0
Посоветуйте с алгоритмом
« Reply #2 on: October 06, 2008, 16:49:45 »
ну да, спасибо. мысль пошла уже