Salut
j'essaye d'écrire une fonction pour calculer le résidu qudratique d'une courbe elliptique, elle fonctionne mais pas comme je veut
tel que je veux seulement afficher les nombre entier pas réel
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
function  ResiduQuadratic
p = input('P =  ');
for x = 0:1:p
      z = sqrt(mod(x^3+x+4, p)); 
      if isinteger(z)
       disp(z);
      else fprintf('pas de solution');
      end
end
end
je comme cette exemple
> y := sqrt( (x&^3 + x + 4) mod 19);
Yielded these results:

> x :=0;
y := 2 --> y = +2 (mod 19) = 2 or 17 (mod 19)
> x :=1;
y := 6^1/2 --> no solution
> x:=2;
y := 141/2 --> no solution
> x :=3;
y := 15^1/2 --> no solution
> x :=4;
y := 15^1/2 --> no solution
> x :=5;
y := 1 --> y = +1 (mod 19) = 1 or 18 (mod 19)
> x :=6;
y := 17^1/2 --> no solution
> x :=7;
y := 23^1/2 --> no solution
> x :=8;
y := 11^1/2 --> no solution
> x :=9;
y := 1 --> y = +1 (mod 19) = 1 or 18 (mod 19)
> x :=10;
y := 7^1/2 --> no solution
> x :=11;
y := 4 --> y = +4(mod 19) = 4 or 15(mod 19)
> x :=12;
y := 15^1/2 --> no solution
> x :=13;
y := 10^1/2 --> no solution
> x :=14;
y := 7^1/2 --> no solution
> x :=15;
y := 23^1/2 --> no solution
> x :=16;
y := 2 31/2 --> no solution
> x :=17;
y := 13/2 --> no solution
> x :=18;
y := 21/2 --> no solution
> x :=19;
y := 2 --> y = +2 (mod 19) = 2 or 17 (mod 19)
x = Inf:
y = Inf

The points of this curve are:
(0, 2), (0, 17), (5, 1), (5, 18), (9, 1), (9, 18), (11, 4), (11, 15), (19, 2), (19, 17) and
(Inf, Inf)