% Ce programme produit, pour plusieurs tailles différentes,
% plusieurs matrices aléatoires de cette taille, puis calcule
% la moyenne de toutes leur valeurs de conditonnement, et
% produit un graphe du résultat

clear all  %éliminer tout variable à date

% voici quelques constantes, qu'on initialise au début pour
% faciliter les changements et modifications
dimmax = 28;  %taille maximum des matrices qu'on considère
icmax = 25 ;  %nombre d'itérations à chaque taille
idx = 1; %voir la fin 

for dim=3:5:dimmax    %de 3 à dimmax par 5 :  3, 8, 13, ...
    accumAcond = 0.0 ;  %variable qui contiendra la somme
    for ic=1:icmax
        %créer une matrice aléatoire de taille nxn :
        rmat = randn([dim, dim ]);  
        Acond = cond(rmat, 1)  ;  
        accumAcond =accumAcond+Acond ;  
    end;
    % donc la moyenne : somme/nombre d'itérations (icmax)
    moyAcond = accumAcond/icmax 

    % préparer les valeurs x, y pour le graphe
    x(idx) = dim ;
    y(idx) = moyAcond; 

    idx=idx+1;  %avancer l'indexe
end;

plot(x,y,'ks-')




