dividing defined variable by named variable
12 次查看(过去 30 天)
显示 更早的评论
everytime i try to divide a defined variable by a calculated variable, it only outputs one number multiple times. What syntax am i missing?
d=1:.2:3;
a=sqrt((d.^2)*(3^2));
Y=d./a
1 个评论
Stephen23
2022-9-28
编辑:Stephen23
2022-9-28
" it only outputs one number multiple times."
Because that is the correct result for your code, which is equivalent to d./(3*d)
"What syntax am i missing?"
Because you did not state the expected output nor what you are trying to achieve, we cannot guess the syntax that is required to achieve an unstated goal.
回答(2 个)
Image Analyst
2022-9-28
Well yeah. Just look at the numbers:
d = 1 : 0.2 : 3
a = sqrt((d.^2)*(3^2))
Y = d ./ a
They all look right to me. Exactly what output numbers did you expect? Tell me which element of Y it got wrong and should be a different number.
3 个评论
Image Analyst
2022-9-28
You can define "a" differently then, like perhaps add noise
d = 1 : 0.2 : 3
a = sqrt((d.^2)*(3^2)) + rand(size(d))
Y = d ./ a
Walter Roberson
2022-9-28
a=sqrt((d.^2)*(3^2))
3^2 is 9 so inside the sqrt() you have 9*d^2. sqrt() of that is sqrt(9)*sqrt(d^2). For positive d that is 3*d
Y = d ./ a
So you have d divided by 3*d. For non-zero d that is going to be 1/3 no matter what the positive value of d is. For negative d you would get -1/3. For 0 you get nan.
0 个评论
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Logical 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!