Números Multiplos
PESSOAL, ME AJUDEM
TENHO UM PROGRAMA DE VENDAS ONDE UM PRODUTO É VENDIDO POR METRO QUADRADO
EXEMPLO:
PRODUTO 01
VALOR POR METRO QUADRADO: R$ 7,80
PARA ACHAR O VALOR DO METRO QUADRADO MULTIPLO LARGURA X ALTURA QUE É QUANTIDADE DE METRO QUADRADO
EXEMPLO
LARGURA = 1251 MILIMETROS
ALTURA = 533 MILIMETROS
VALOR ENCONTRATO = 666.783
PARA ACHAR O VALOR EM METRO QUADRADO DIVIDO POR 10.000
666.783 / 10.000 = 66.6783 (ARREDONDO PARA 66.67)
ATÉ AI TUDO BEM.
AGORA E QUE VEM O PROBLEMA
ESSE PRODUTO SO É VENDIDO EM MULTIPLOS DE 5 CENTIMETROS, OU SEJA, O VALOR ENCONTRADO ACIMA (66.67 M2) TERIA QUE SER ARREDONTADO PARA (66.70 M2) QUE É O PRÓXIMO MULTIPLO DE 5.
COMO FAÇO?
EU PRECISO CHECAR SE O VALOR ENCONTRADO É MULTIPLO DE 5, SE NÃO FOR TENHO QUE ARREDONDAR PARA O PRÓXIMO NÚMERO MULTIPLO DE 5 QUE SERIA 66.70.
AJUDEM POR FAVOR
[color=green:c1bb2395f8]Titulo editado conforme previsto nas regras de conduta - Regra 2[/color:c1bb2395f8]
TENHO UM PROGRAMA DE VENDAS ONDE UM PRODUTO É VENDIDO POR METRO QUADRADO
EXEMPLO:
PRODUTO 01
VALOR POR METRO QUADRADO: R$ 7,80
PARA ACHAR O VALOR DO METRO QUADRADO MULTIPLO LARGURA X ALTURA QUE É QUANTIDADE DE METRO QUADRADO
EXEMPLO
LARGURA = 1251 MILIMETROS
ALTURA = 533 MILIMETROS
VALOR ENCONTRATO = 666.783
PARA ACHAR O VALOR EM METRO QUADRADO DIVIDO POR 10.000
666.783 / 10.000 = 66.6783 (ARREDONDO PARA 66.67)
ATÉ AI TUDO BEM.
AGORA E QUE VEM O PROBLEMA
ESSE PRODUTO SO É VENDIDO EM MULTIPLOS DE 5 CENTIMETROS, OU SEJA, O VALOR ENCONTRADO ACIMA (66.67 M2) TERIA QUE SER ARREDONTADO PARA (66.70 M2) QUE É O PRÓXIMO MULTIPLO DE 5.
COMO FAÇO?
EU PRECISO CHECAR SE O VALOR ENCONTRADO É MULTIPLO DE 5, SE NÃO FOR TENHO QUE ARREDONDAR PARA O PRÓXIMO NÚMERO MULTIPLO DE 5 QUE SERIA 66.70.
AJUDEM POR FAVOR
[color=green:c1bb2395f8]Titulo editado conforme previsto nas regras de conduta - Regra 2[/color:c1bb2395f8]
Emerson.silva
Curtidas 0
Respostas
Fabio.hc
08/01/2004
Tente assim:
function TForm1.Multiplo5(valor: double): double; var num1, num2:double; begin num1:=(valor*100)/5; num2:=trunc(num1); if num1 <> num2 then num1:=num1-num2 else num1:=0; if num1<>0 then num1:=(5 - (num1 * 5)); result:=((valor*100) + num1) / 100; end;
GOSTEI 0