Two basic MATLAB problems help
显示 更早的评论
Hi, I'm a student studying engineering and I have my first exam tomorrow on MatLab. I'm going through some practice problems and ran into two that I don't understand, I posted them below and was wondering if anyone could help me out! Thanks
6) Assume that the function *diff* does not exist. Write your own expression(s) to accomplish the same thing for a vector.
7) Find expressions that will evaluate the function f of two variables x and y:
f(x,y) = 3*x - y
where x ranges from 1 to 2 and y ranges from 1 to 5.
3 个评论
For 6, build an numerical example, e.g. with a vector
x = [4, 1, 7, 9]
if you understand what DIFF does, it is easy to emulate it with a simple loop (hint: it doesn't start on the first element).
For 7, you can certainly build two nested loops over elements of x and y and build an array of solutions, but you could also consider an approach where X and Y are appropriate arrays of values of x and y, and perform the evaluation of f in one matrix equation. Look at the doc of MESHGRID to understand this comment.
Walter Roberson
2013-9-27
编辑:Walter Roberson
2013-9-27
#6, diff() can be done without any loop.
#7 can be done without any loop and without any meshgrid (or ndgrid. or repmat)
回答(2 个)
Image Analyst
2013-9-27
1 个投票
Hint: type out vec(1:end-1) and vec(2:end) and see what that shows.
Jan
2013-9-27
0 个投票
#7: When x ranges from 1 to 2 only, you can write down the equation for x=1 and x=2 manually. If you define y=1:5, the work is done already.
类别
在 帮助中心 和 File Exchange 中查找有关 MATLAB 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!