Expanding a function in Matlab
10 visualizaciones (últimos 30 días)
Mostrar comentarios más antiguos
Teoman Selcuk
el 14 de Nov. de 2021
Comentada: John D'Errico
el 14 de Nov. de 2021
I ma trying to writea code that expands the function (a + b).^2 into the expected output. Instead it gives the Output below. How would i be able to get to the Expected Output?
>> a = 'a';
>> b= 'b';
>> func = multip = (a + b).^2
Expected Output:
a^2+2ab+b^2
Output:
7414875
0 comentarios
Respuesta aceptada
DGM
el 14 de Nov. de 2021
Using symbolic tools:
syms a b
f = expand((a+b)^2)
Your approach would ostensibly return a number because you're treating characters as numbers.
double('a')
double('b')
(97+98)^2
As to why exactly that number is different than what you got, I have no idea. The code you posted shouldn't do anything but throw an error.
1 comentario
John D'Errico
el 14 de Nov. de 2021
I assume you are saying that what would throw an error is the line with func. Of course that is invalid MATLAB syntax.
a = 'a';
b = 'b';
func = multip = (a + b).^2
I note that
sqrt(7414875)
ans =
2723.02680853494
is not even an exact integer, but it is also far too large to be the sum of two standard ascii equivalents. So I have no immediate idea what was actually stored in those variables.
Más respuestas (0)
Ver también
Categorías
Más información sobre Logical en Help Center y File Exchange.
Productos
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!