Outro dia estavam querendo: function Valida_EAN(VEAN: String): Boolean; //Dica número 1595 de www.deephi.rg3.net. Funciona com EAN8 e EAN13 var Temp1, Temp2: Integer; Temp3: String; begin Temp2:=0; Temp3:='';
for Temp1:=Length(VEAN)-1 downto 1 do //Inverte, retirando o dígito Temp3:=Temp3+VEAN[Temp1]; for Temp1:=1 to Length(Temp3) do //Multiplica as posições impares por 3, fazendo o somatório if Temp1 mod 2 = 0 then Temp2:=Temp2+StrToInt(Temp3[Temp1]) else Temp2:=Temp2+StrToInt(Temp3[Temp1])*3; Temp2:=10-Round(Frac(Temp2/10)*10); //10 menos o resto da divisão Result:=Temp2=StrToInt(Copy(VEAN,Length(VEAN),1)); end; procedure TForm1.Edit1Exit(Sender: TObject); begin if not Valida_EAN(Edit1.Text) then Application.MessageBox(PChar('EAN inválido!'),'Sigma...',64); end; Sávio Cler ICQ 142428832 www.sgm.rg3.net [EMAIL PROTECTED] Sto A. de Pádua - Rio de Janeiro Contato Pessoal: (22)9812-0656 ~ ~ ( @ @ ) -------o0Oo-(_)-oO0o------- Precisando de dicas? www.deephi.hpg.com.br --------------------------- Mais de 30000 downloads ---------ooO---Ooo--------- [As partes desta mensagem que não continham texto foram removidas] -- <<<<< FAVOR REMOVER ESTA PARTE AO RESPONDER ESTA MENSAGEM >>>>> Para ver as mensagens antigas, acesse: http://br.groups.yahoo.com/group/delphi-br/messages Para falar com o moderador, envie um e-mail para: [EMAIL PROTECTED] ou [EMAIL PROTECTED] Links do Yahoo! Grupos <*> Para visitar o site do seu grupo na web, acesse: http://br.groups.yahoo.com/group/delphi-br/ <*> Para sair deste grupo, envie um e-mail para: [EMAIL PROTECTED] <*> O uso que você faz do Yahoo! Grupos está sujeito aos: http://br.yahoo.com/info/utos.html