Borrar filtros
Borrar filtros

How to get the 1×1 cell array?

3 visualizaciones (últimos 30 días)
Smithy
Smithy el 3 de En. de 2023
Editada: Stephen23 el 3 de En. de 2023
hello, everybody
I would like to get the 1×1 cell array of {'m, -10, -15, L -4.7, 0 c 0, 0'}.
some values are caluclated from the variables.
I tried with str = {'m, offset+pos, offset+neg, L -neg+0.3, 0 c 0, 0'}.
However, the answer is {'m, offset+pos, offset+neg, L -neg+0.3, 0 c 0, 0'}.
it is just string and no calculation of variables.
I also tried with str = {"m", offset+pos, offset+neg, "L" -neg+0.3, 0 "c" 0, 0};
There is calculation of variables, However, it is 1×9 cell array.
How to get the 1×1 cell array of {'m, -10, -15, L -4.7, 0 c 0, 0'}?
offset = -20;
pos = 10;
neg = 5;
% str = {'m, offset+pos, offset+neg, L -neg+0.3, 0 c 0, 0'}; % just string and no calculation of variables
% str = {"m", offset+pos, offset+neg, "L" -neg+0.3, 0 "c" 0, 0}; % it is 1×9 cell array
% output I want is : 1×1 cell array of {'m, -10, -15, L -4.7, 0 c 0, 0'}
% str = {'m, -10, -15, L -4.7, 0 c 0, 0'};
  1 comentario
Stephen23
Stephen23 el 3 de En. de 2023
Editada: Stephen23 el 3 de En. de 2023
The best approach is to either use SPRINTF, just as Voss shows here:
or the new overloaded STRING operators, e.g.:
offset = -20;
pos = 10;
neg = 5;
str = "m, "+(offset+pos)+","+(offset+neg)+" L "+(-neg+0.3)+", 0 c 0, 0"
str = "m, -10,-15 L -4.7, 0 c 0, 0"

Iniciar sesión para comentar.

Respuesta aceptada

KSSV
KSSV el 3 de En. de 2023
offset = -20;
pos = 10;
neg = 5;
str = {['m, ', num2str(offset+pos),',', num2str(offset+neg), ' L ', num2str(-neg+0.3),',', '0 c 0, 0']}; % just string and no calculation of variables
str
str = 1×1 cell array
{'m, -10,-15 L -4.7,0 c 0, 0'}
  1 comentario
Smithy
Smithy el 3 de En. de 2023
Wow.. Thank you very much~!!! It works really well. I really really appreciate with it.

Iniciar sesión para comentar.

Más respuestas (1)

Voss
Voss el 3 de En. de 2023
offset = -20;
pos = 10;
neg = 5;
str = {sprintf('m, %g, %g, L -%g, 0 c 0, 0',offset+pos,offset+neg,neg-0.3)}
str = 1×1 cell array
{'m, -10, -15, L -4.7, 0 c 0, 0'}
  1 comentario
Smithy
Smithy el 3 de En. de 2023
Thank you very much. It works well. Wonderful.

Iniciar sesión para comentar.

Categorías

Más información sobre Logical en Help Center y File Exchange.

Etiquetas

Productos


Versión

R2022a

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by