Responder

Comparar a diferença entre duas expressões

14 fev 2013, 18:39

Bom dia pessoal

Sou programador e estou desenvolvendo um sistema para calculo de indicadores de desempenho da empresa
Tenho uma situação em que posso ter mais de uma expressão pra formar o mesmo resultado, exemplo:

5*1000000/35030 = 142
5*1000000/42897 = 24
5*1000000/161094 = 31

A soma do divisor destas formulas no fim do mês deve ser basicamente a mesma coisa, formando a seguinte expressão:

5*1000000/239021 = 20

Existe alguma forma de juntar o resultado das três expressões acima e resultar no valor da expressão abaixo?

Re: Comparar a diferença entre duas expressões

16 fev 2013, 01:40

Boa noite,

glfreitas Escreveu:5*1000000/35030 = 142
5*1000000/42897 = 24
5*1000000/161094 = 31

A soma do divisor destas formulas no fim do mês deve ser basicamente a mesma coisa, formando a seguinte expressão:

5*1000000/239021 = 20


Se o numerador for fixo então poderia apenas fazer este numerador dividido pela soma dos denominadores.

Se o numerador for variável então poderia apenas fazer a média dos numeradores dividido pela soma dos denominadores.

Se tiver mais informação a respeito pode-se tentar uma resposta melhor.

Re: Comparar a diferença entre duas expressões

16 fev 2013, 02:09

Complementando, fiz um pequeno programa para ilustrar o que postei:
Código:
# div1.rb
# linguagem: ruby

numeradores = [5*1000000, 5*1000000, 5*1000000]
denominadores = [35030, 42897, 161094]

sn = 0 # soma dos numeradores
sd = 0 # soma dos denominadores
k = 0  # contador de elementos

puts # saltar uma linha

denominadores.each do |d|
  n = numeradores[k]
  d = denominadores[k]
  sn += n
  sd += d
  if d > 0
    puts "#{k+1}o.: #{n} / #{d} = #{n/d}"
  end
  k += 1
end

if sd > 0
  media = sn/k 
    puts "-------------------------------"
    puts "Tot: #{media} / #{sd} = #{media/sd}"
    puts
end

puts "Game over!"


Ao executar esse programa temos a seguinte saída:
saida.png
saida.png (8.36 KiB) Visualizado 2375 vezes
Responder