Ok! J'ai fait les modifications mais il n'apprécie pas la deuxième condition de la boucle For et ce qu'il y a dedans 
Et en plus j'avais oublié un bouton pour lancer le calcul. Le Code ça donne:
{Unit (nom :memoriser) de la Form de la première form (nom:memo)}
public
{ Déclarations publiques }
Memoire:array of Real;
end;
var Memo: TMemo;
var n:Integer;
implementation
uses result;
{$R *.dfm}
procedure TMemo.FormCreate(Sender: TObject);
begin
n:=0;
SetLength(Memoire, n);
MemoEd.Clear;
end;
procedure TMemo.MemoButClick(Sender: TObject);
begin
inc(n);
SetLength(Memoire, n);
Memoire[n-1]:=StrToInt(MemoEd.Text);
MemoEd.Clear;
end;
procedure TMemo.FermerButClick(Sender: TObject);
begin
close;
end;
procedure TMemo.CalculerClick(Sender: TObject);
begin
Resultat.show;
end;
{Unit (nom :result) de la Form de la segonde Form (nom:resultat)}
var Resultat: TResultat;
implementation
uses Memoriser;
{$R *.dfm}
procedure TResultat.FormCreate(Sender: TObject);
var i,total:Integer;
begin
Total:=0;
For i=0 to Length(Memoire)-1 do
begin
Inc( Total, Memoire[i] );
end;
Resultat.Text:=IntToStr(Total);
end;
procedure TResultat.FermerClick(Sender: TObject);
begin
Close;
end;
Je sais que je ne suis pas doué, mais la j'ai juste fais un copier coller. J'ai essayer en déclarant n dans public et donc la boucle devient For i=0 to n-1 do, mais c'est pareil.
PS: Quel est l'avantage de déclarer ses tableaux ou certaines variables dans public 