public static boolean alg_A8(int[] blz, int[] number) {
        // Ausnahmen Sachkonto
        if (number[2] == 9) {
            return alg_51(blz, number);
        }
        // Variante 1
        int sum = addProducts(number, 3, 8, new int[]{7, 6, 5, 4, 3, 2}, false);
        int crc = 11 - sum % 11;
        if (crc > 9) crc = 0;
        if (number[9] == crc) {
            return true;
        }

        // Variante 2
        sum = addProducts(number, 3, 8, new int[]{1, 2, 1, 2, 1, 2}, true);
        crc = (10 - sum % 10) % 10;
        return number[9] == crc;
    }
public static boolean alg_A8 ( int [ ] blz , int [ ] number ) { if ( number [ 2 ] == 9 ) { return alg_51 ( blz , number ) ; } int sum = addProducts ( number , 3 , 8 , new int [ ] { 7 , 6 , 5 , 4 , 3 , 2 } , false ) ; int crc = 11 - sum % 11 ; if ( crc > 9 ) crc = 0 ; if ( number [ 9 ] == crc ) { return true ; } sum = addProducts ( number , 3 , 8 , new int [ ] { 1 , 2 , 1 , 2 , 1 , 2 } , true ) ; crc = ( 10 - sum % 10 ) % 10 ; return number [ 9 ] == crc ; }
@author AN