arredondamento bematech

Transcrição

arredondamento bematech
Se você não conseguir visualizar esta mensagem, acesse este link
PARTNERS.BEMATECH.COM.BR
Flash TIP - Edição 144
CONHEÇA
Arredondamento/Truncamento nos ECFs Bematech
CADASTRE-SE
Caro Partner e Desenvolvedor Bematech,
EDIÇÕES ANTERIORES
Nesta edição de nosso Bematech Flash Tip, vamos discutir um assunto que os desenvolvedores de
automação comercial tem muitas dúvidas, o arredondamento e o truncamento, suas diferenças e
quais impressoras são utilizadas.
Serão apresentadas algumas regras matemáticas de como deve ser feito o arredondamento e o
truncamento nos ECFs da Bematech, lembrando que em todos os ECFs são aplicados a mesma
regra, lembrando que somente na impressora MP 4000 TH FI que faz o arredondamento, e nas
demais impressoras é realizado por padrão o truncamento.
As regras de arredondamento aplicam-se aos algarismos decimais situados na posição seguinte ao
número de algarismos decimais que se queira transformar, ou seja, se tivermos um número de 3
algarismos decimais e quisermos arredondar para 2, aplicar-se-ão estas regras de arredondamento:
•
•
•
Se o algarismo decimal seguinte for menor que 5, o anterior não se modifica.
Se o algarismo decimal seguinte for maior que 5, o anterior incrementa-se em uma
unidade.
Se o algarismo decimal seguinte for igual a 5, deve-se verificar o anterior, se ele for par
não se modifica, se ele for ímpar incrementa-se uma unidade.
O Arredondando a 2 algarismos decimais deveremos ter em atenção o terceiro decimal. Assim,
conforme as regras anteriores:
•
•
•
•
O
O
O
O
número
número
número
número
12,652
12,658
12,865
12,875
seria
seria
seria
seria
arredondado
arredondado
arredondado
arredondado
para
para
para
para
12,65
12,66
12,86
12,88
Então se o número final for maior que 5 (cinco) ele soma 1 (assim aumentando o resultado e
deixando o número inteiro sem muitos números) se for 5 deve-se verificar o anterior se for par não
CATÁLOGO DE SOFTWARE
SUPORTE E RECURSOS
ENTRE EM CONTATO
CANAIS DE SUPORTE
DOWNLOADS
TREINAMENTO EM VÍDEO
ACESSO EXCLUSIVO
PARCEIROS
PARTNER STORE
PAINEL DE GESTÃO
modifica, se for ímpar incrementa-se um. Veja na pratica:
EXTRATO DE PONTOS
Primeiramente, escolhe-se a casa decimal em que se quer fazer a aproximação e depois segue-se as
seguintes regras:
FÓRUM
Primeira regra: Se o último algarismo a ser conservado for seguido de um algarismo inferior a
cinco: Basta apenas retirar os algarismos após o algarismo que queremos conservar. Exemplo:
Como é o arredondamento para deixar o número 58,93497 com apenas duas casas depois da
vírgula?
Segunda regra: Se o último algarismo a ser conservado for seguido de um algarismo superior a
cinco : Aumenta-se uma unidade a este último algarismo e retira-se os posteriores. Exemplo: Como
deixar apenas duas casas depois da vírgula no número 93,58746?
Terceira regra: Se o último algarismo a ser conservado for seguido de um algarismo igual a cinco ,
devemos seguir o seguinte procedimento:
- (a) Se o algarismo a ser conservado for ímpar, soma-se uma unidade ao algarismo a ser
conservado e retira-se os posteriores. Exemplo: Como deixar o número 667,4756 com duas casas
após a vírgula?
- (b) Se o algarismo a ser conservado for par e ao algarismo 5 subsequente seguir-se pelo menos
um algarismo diferente de zero, soma-se uma unidade ao algarismo a ser conservado e retira-se os
posteriores. Exemplo: Como deixar o número 667,4856 com duas casa depois da vírgula?
-(c) Se o algarismo a ser conservado for par e ao algarismo 5 subsequente seguir-se somente
algarismos zero , não haverá modificação, somente retira-se os algarismos posteriores. Exemplo:
Como deixar o número 667,4850 com duas casa depois da vírgula?
Cabe ressaltar finalmente, que não se deve fazer arredondamentos sucessivos (ex.: 27,2462 passa a
27,2 e não para 27,25 e depois para 27,3). Caso se faça necessário um novo arredondamento é
recomendado o retorno aos dados originais.
Esse processo acima se refere ao arredondamento que somente na impressora MP 4000 TH FI que
funciona essa equivalência. Agora vamos ver um pouco sobre o truncamento que se encaixa em
todos os modelos da Bematech, pois esse processo já sai de fábrica dessa forma.
O truncamento é a ação de truncar um determinado valor, aplicado principalmente em suas casas
decimais. Ele ocorre quando ignoramos os valores de um determinado cálculo que possua uma
quantidade maior de casas decimais do que a quantidade determinada para trabalho, por exemplo:
Digamos que a multiplicação da quantidade pelo valor unitário do item resulte em um número com
cinco casas decimais, sendo que sua apresentação final deve possuir apenas duas casas decimais:
Quantidade
7,987
5,589
X
X
X
V. Unitário
5,98
6,48
=
=
=
Resultado
47,76226
36,21672
Truncado
47,76
36,21
Se esse último algarismo for maior que 5 incrementamos o algarismo da anterior em uma unidade.
Por exemplo veja o número 3,541834197, se realizar o truncamento na com 3 casas decimais depois
da vírgula teremos 3,541. Se realizarmos o arredondamento com o mesmo número de casas termos
3,542. Isso pois o dígito seguinte ao 1 é 8 maior que 5, portanto incrementamos em 1 unidade o
dígito 1. Fica fácil de ver que o truncamento tem erro maior. Pois erro máximo do truncamento está
na ordem de 9. 10^-(n+1) onde n é número de casas decimais do truncamento e erro do
arredondamento na ordem de 5. 10^-(n+1).
Para realizar impressões com o arredondamento ou o truncamento, você deve visualizar a função
Bematech_FI_VendeItemArredondamentoMFD que vende o item com arredondamento ou
truncamento. Para essa função, Imagine que há duas alíquotas com o valor 12% cadastradas na
impressora. A primeira cadastrada na posição 01 como ICMS e a outra na posição 05 como ISS. Se
você informar o valor 1200 ou 12,00 no parâmetro "alíquota" a função irá imprimir o item usando a
alíquota 01 de ICMS. A função lê as alíquotas da impressora e usa o índice da primeira ocorrência.
Para usar a alíquota de ISS você deverá passar o índice 05 e não o valor 1200 ou 12,00. Se você
não tiver duas alíquotas com o mesmo valor cadastradas na impressora use sempre o valor no
parâmetro alíquota. O cupom fiscal deve estar aberto.
Veja os Exemplo a seguir:
//Exemplo em Visual Basic
iRetorno = Bematech_FI_VendeItemArredondamentoMFD("123", "Caneta", "1200", "UN", "1,000",
"0,250", "00,00", "00,00", true)
// Exemplo em Delphi
cCodigo := 123;
cDescricao := Caneta;
cAliquota := 1200;
cUnidade := UN;
cQtde := 1,000;
cValor := ,250;
cValorDesc := 0,00;
cValorAcre := 0,00;
iRetorno := Bematech_FI_VendeItemArredondamentoMFD( pchar( cCodigo ), pchar( cDescricao ),
pchar( cAliquota ), pchar( cUnidade ), pchar( cQtde ), pchar( cValor ), pchar( cValorDesc ), pchar(
cValorAcre ), true );
Caso tenha dúvidas, entre em contato conosco através de nossos canais de atendimento.
Forte abraço e boas implementações!
Equipe BSP – Bematech MAIS Software Partners
Bematech S/A
Para garantir que nossos comunicados cheguem em sua caixa de entrada,
adicione o e-mail [email protected] ao seu catálogo de endereços.
A Bematech respeita a sua privacidade e é contra spam na rede.
Se você não deseja mais receber nossos e-mails, cancele sua inscrição aqui.
"Esta mensagem é endereçada exclusivamente ao seu destinatário e poderá conter informações confidenciais. O uso
não autorizado de tais informações é proibido e estará sujeita a penalidade cabível.
This message is intended exclusively for its addressee and may contain information that is confidential.
Unauthorized use of such information is prohibited and subject to applicable penalties".

Documentos relacionados

UM NOVO ALGORITMO PARA ARREDONDAMENTO DE

UM NOVO ALGORITMO PARA ARREDONDAMENTO DE Este tipo de arredondamento, chamado muitas vezes de aritmético, acarretará um erro sistemático, pois estará sempre adicionando um valor ao resultado (NIST, 2008). Por exemplo, se esse valor arredo...

Leia mais