Programation sur matlab

Résolu/Fermé
Mr. X - 1 déc. 2008 à 19:27
Fee Fay Messages postés 635 Date d'inscription vendredi 17 octobre 2008 Statut Membre Dernière intervention 31 mai 2009 - 2 déc. 2008 à 16:04
Bonjour,
j'ai besoin d'Un coup de main, car moi je suis vraiment un deux de piques en ce que attrait`à la programation.
J'ai un cour dans lequel nous utilisons le programme matlab.

L'exercise est de mettre en ordre croissant une matrice donner.

nous avons un fichier contenant une matrice avec les chiffres : 234 12 17 84 -45 0 102 4423 44 2344 45 64 34 59 -12

et le debut de programme

% Tri de nombres (version devoir)
% 1- Initialisation des variables
dataSource = '6TIN100-20083 TD6 Nombres Recus.m';
dataResult = '6TIN100-20083 TD6 Nombres Traites.m';
dataDir = 'c:\mes documents\MATLAB';
msg = 'Ok';
nop = 0; % Nombre d'opérations
nit = 0; % nombre d'itérations
% 2- Ouverture du fichier de données sources
dataSourceF = fopen(strcat(dataDir, '\', dataSource));
if dataSourceF ~= -1
% 3- Chargement des données
dataTri = fscanf(dataSourceF, '%f')
% 4- Tri des données
nData = size(dataTri,1);
permutL = 1; % Force la condition de while
while permutL == 1 % Fonctionne tant qu'il y a permutation
permutL = 0; %Désactivation de l'indicateur de permutation
nop = nop + 2;
for i=1:nData-1
nit = nit + 1; % Compteur d'itérations
nop = nop +2; % Opérations effectuées à chaque tour
if dataTri(i) > dataTri(i+1)
% Permutation des données
tmp1 = dataTri(i);
dataTri(i) = dataTri(i+1);
dataTri(i+1) = tmp1;
permutL = 1; % Activation de l'indicateur de permutation
nop = nop + 5; % Opérations effectuées si la conditions est vraie
end
end
end
else
% Erreur d'ouverture du fichier source
msg = strcat('Erreur d`ouverture du fichier..:', dataDir, '\', dataSource);
end
dataTri
msg % Afficher le statut
strcat('Nombre d`itération..:', int2str(nit))
strcat('Nombre d`opération..:', int2str(nop))



il nous faut l'optimiser

1 réponse

Fee Fay Messages postés 635 Date d'inscription vendredi 17 octobre 2008 Statut Membre Dernière intervention 31 mai 2009 375
2 déc. 2008 à 16:04
Bonjour
dataTri = sort(DataTri);
Voilà, ton programme est optimisé.
Bonne fin d'après-midi
0