diff --git a/reed_solomon.py b/reed_solomon.py index 1ae2c592576b3348a33ee01042f6c1744198e0e9..297a1e70118204dc4cce8d5b66a086ea149f15d3 100644 --- a/reed_solomon.py +++ b/reed_solomon.py @@ -1,8 +1,25 @@ # Created on 09/12/2021 from polynome import * +from itertools import combinations def get_possibilities(l: list): - pass + + # Transforme the list in list of tupples with their indexes + for x, _ in enumerate(l): + l[x] = (x, l[x]) + + # ! la valeur 20 est hardcodée. Paramètre de fonction ?? + + l_fixe = l[20:] # Liste contenant aucune erreur + l_posi = l[:20] # Liste contenant des erreurs, + + p = list(combinations(l_posi, 2)) + + for x, y in enumerate(p): + p[x] = list(y) + p[x].extend(l_fixe) + + return p def lagrange_compute(l: list) -> polynome: pass @@ -14,4 +31,4 @@ def check_nb_error(l: list, p: polynome) -> int: if (item % p.prime_mod) != (p.evaluate(_) % p.prime_mod): print(f"{item} != p.evaluate({_}) = {p.evaluate(_)}") nbr_error += 1 - return nbr_error + return nbr_error \ No newline at end of file