Bonjour, j'ai une partie de mon code qui dépend de paramètres lus dans un fichier texte.
La solution à laquelle j'ai pensé est de générer mon code sous forme de chaînes de caractères, puis de faire un eval de tout ça.
Le problème que je rencontre est au niveau des passages à la ligne :
- si je n'essaye pas d'en faire alors je me retrouve avec du code du style:
- si j'essaye d'en faire avec sprintf et '\n', ça ne fait aucun effet.
Code : Sélectionner tout - Visualiser dans une fenêtre à part if isempty(i)i=1;elsei=i+1;
- si j'essaye avec [ ' chaine 1 ' ; ' chaine 2 ' ; ... ] au lieu de strcat, alors ça passe bien à la ligne à la condition que les chaînes aient toutes la meme longueur...
Voici une partie de mon code :
Merci pour vos solutions.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17 if ~isempty(MOTMAX.(numpanne).vit) % Le type i est défini % On génère le code code = [sprintf('i = find(MOTMAX.%s.vit < V,1,''last'');',numpanne),... 'if isempty(i) ',... 'i=1;',... 'else ',... 'i=i+1;',... 'end ',... sprintf('cA = MOTMAX.%s.cA(i); ',numpanne),... sprintf('cB = MOTMAX.%s.cB(i); ',numpanne),... sprintf('cP = MOTMAX.%s.cP(i); ',numpanne),... sprintf('cK = MOTMAX.%s.cK(i); ',numpanne),... 'ETR = cA/(V-cB)^cP + cK; ',... 'ETRMOTMAX = ETR; ']; end % if ~isempty(MOTMAX.(numpanne).vit)
Partager