Question
5.3) MATLAB Exercises 1. Extend the factorial function dened above, such that it checks for a positive input argument. 2. Write a function that calculates
5.3) MATLAB Exercises 1. Extend the factorial function dened above, such that it checks for a positive input argument. 2. Write a function that calculates a random walk trajectory based on the iteration xi+1 = xi + , where is a uniformly distributed random variable between -1 and 1. Plot the resulting trajectory. 3. Change the sorting algorithm given above such that it sorts the elements in descending order. Compare the speed of your function with the built-in MATLAB function sort.
4. Approximation of . The area of a circle is given by A = r2 where r is the radius. Assume a circle with r = 0.5 embedded in a unit square. A point in the unit square is dened by p = (x,y) where 0 x,y 1. If we draw ntot times two uniformly distributed random numbers (x,y) and count how often the corresponding points falls into the circle (ncirc), we get an approximation of the circle area by ncirc ntot and by that of the number . Write a function which approximates by the described method. How many draws do you need to get the rst three digits right?
part 2 to 4 missing
My answer part 1)
function y=calculate_factorial(n)
% check whether input argument is negative if (n<0) warning('Input argument must be non-negative'); disp('Ignoring the negative sign'); n=abs(n); end % check whether input argument is zero if n==0 y=1; else % otherwise calculate the factorial y=n; while n>1 n=n-1; y=y*n; % calculate the factorial value end end end
Step by Step Solution
There are 3 Steps involved in it
Step: 1
Get Instant Access to Expert-Tailored Solutions
See step-by-step solutions with expert insights and AI powered tools for academic success
Step: 2
Step: 3
Ace Your Homework with AI
Get the answers you need in no time with our AI-driven, step-by-step assistance
Get Started