Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
Algorithm::CheckDigitsUser0Contributed Perl Algorithm::CheckDigits::M10_005(3)

NAME
       CheckDigits::M10_005 - compute check digits for Deutsche	Post
       Identcode/Leitcode (DE)

SYNOPSIS
	 use Algorithm::CheckDigits;

	 $ic = CheckDigits('identcode_dp');

	 if ($ic->is_valid('21.802 580.906 6'))	{
	       # do something
	 }

	 $cn = $ic->complete('21.802 580.906');
	 # $cn = '21.802 580.9066'

	 $cd = $ic->checkdigit('21.802 580.906 6');
	 # $cd = '6'

	 $bn = $ic->basenumber('21.802 580.906 6');
	 # $bn = '21.802 580.906'

DESCRIPTION
   ALGORITHM
       1.  Beginning left all numbers are weighted alternatively 4 and 9.

       2.  The sum of all products is computed.

       3.  The sum of step 3 ist taken modulo 10.

       4.  The check digit is the difference between 10	and the	number from
	   step	3.

   METHODS
       is_valid($number)
	   Returns true	only if	$number	consists solely	of numbers and the
	   last	digit is a valid check digit according to the algorithm	given
	   above.

	   Returns false otherwise,

       complete($number)
	   The check digit for $number is computed and concatenated to the end
	   of $number.

	   Returns the complete	number with check digit	or '' if $number does
	   not consist solely of digits	and spaces.

       basenumber($number)
	   Returns the basenumber of $number if	$number	has a valid check
	   digit.

	   Return '' otherwise.

       checkdigit($number)
	   Returns the checkdigit of $number if	$number	has a valid check
	   digit.

	   Return '' otherwise.

   EXPORT
       None by default.

AUTHOR
       Mathias Weidner,	"<mamawe@cpan.org>"

SEE ALSO
       perl, CheckDigits, www.pruefziffernberechnung.de.

perl v5.32.0			  2020-08-10Algorithm::CheckDigits::M10_005(3)

NAME | SYNOPSIS | DESCRIPTION | AUTHOR | SEE ALSO

Want to link to this manual page? Use this URL:
<https://www.freebsd.org/cgi/man.cgi?query=Algorithm::CheckDigits::M10_005&sektion=3&manpath=FreeBSD+12.2-RELEASE+and+Ports>

home | help