1. Write a program that calculates and comments on the body mass index (BMI) of the user. The program should ask the user his/her weight and height, and calculate BMI using the formula:
BMI,kg/m2=massheight2
The comments should be made based on the following conditions:
BMI 23 the user has healthy weight.
23 < BMI < 29 The user is overweight.
29 BMI The user is obese.
%This program finds BMI index
mass=input('Enter weight');
height=input('Enter height');
BMI = mass/height^2;
if (BMI <= 23)
disp('healty weight');
elseif (BMI > 23 & BMI < 29)
disp('overweight');
elseif ( BMI = 29)
disp('obese');
end
2. What will be the output of the following MATLAB program?
a =
3
n =
2
a =
8
n =
3
3. Write a MATLAB program that asks the user to enter a number from 1 to 3 and then displays “The number is 1!” if the user enters 1, “The number is 2!” if the user enters 2, and “The number is 3!” if the user enters 3. Use the switch construct.
%This program prints the entered number
num=input('enter 1,2 or 3');
switch num
case 1
disp('The number is 1')
case 2
disp('The number is 2')
case 3
disp('The number is 3')
otherwise
disp( 'illegal enty' )
end
4. Complete the following program that reads in two integers from user and prints either 1, 2 or 3 according to the following rules.
1 if only one of them equals to zero
2 if both of them equals to zero
3 if none of them equals to zero.
num1 = input('enter first number');
num2 = input('enter second number');
if xor(num1, num2)
disp('1')
elseif(num1 == 0 & num2 ==0)
disp('2')
elseif(num1 != 0 & num2 !=0)
disp('3')
end
5. Write a script that calculates the sum of first 30 terms of the following sequence.
1 4 7 10 13 16 19 22 25 ....
%this program calculates series sum
sum=0;
for i=1:3:90
sum = sum +i;
end
disp(sum)
6. Consider the following MATLAB function file:
what the output of that M-file would be?
______
% easy.m , 4/19/2013
for x=1:5;
fprintf('o\n');
end;
7.
function [A,B]=prob(x,y,z)
C = -1*x;
A = 5;
B = 5;
while C<0
if (y<x)&(-z<=x)
A=A+3*abs(x+y);
C=C+A
elseif (x<-y)|(z<10*x)
B=B+3*abs(x-y);
C=C+B
else
C=C+A+B
end
end
______
> [A,B]=prob(2,1,4), [A,B]= prob(1,5,4)
8.
In the file slope.m,
•fill in the missing first line of the file. Read the comment and the body carefully, so that you do this exactly right!
•one missing line of code in the body of the function
______
……………………… % <== fill in
%slope return slope of line passing through two points
%consumes: x1, y1, x2, y2: scalar numbers
%produces: Slope, a scalar number
%Examples:
% > slope(2,2,4,4)
% ans = 1
% > slope(3,1,5,5)
% ans = 2
% > slope(4,1,4,5)
% Error: slope is undefined
% >
denom = x1 - x2;
num = y1 - y2;
if ( ) % <== fill in this line of code
error('slope is undefined');
else
theslope = num/denom;
return;
end
function output = slope(x1,x2,y1,y2)
denom = x1 - x2;
num = y1 - y2;
if ( denom ==0 ) % <== fill in this line of code
error('slope is undefined');
else
theslope = num/denom;
return;
end
9. Create the arrays a and b:
a=73-1020, b=15-4920 (3 pts)
and write the Matlab statements to find (4x2=8 pts):
a) the values of a that are in the range of 5<a≤10.
b) the values of b that are either less than 1 b<1 or greater than or equal to 5 b≥5.
c) the indices of the values of a that are equal to the corresponding values of b.
d) the indices of the values of b that are greater than 6 b>6.
10. Create the arrays m and n:
m=-300258, n=-5-203410 (4 pts)
and find (3x2=6 pts):
a) z = n < ~ m
b) z = m & n
c) z = m|n