lecture (5) programming (2) eng. osama talaat 1. announcement m-files are available: download the...
TRANSCRIPT
1Lecture (5)
Programming (2)Eng. Osama Talaat
2 Announcement M-Files are available:
Download the file from the course page www.osamatalaat.com/matlab
Copy it into the current directory
Open it using MATLAB (Open, Double click, ... )
Run !!
3
clear all;
close all;
clc;
% n=input('Please enter the number of cycles: ');
% f=input('Please enter the frequency: ');
% A=input('Please enter the Amplitude: ');
x=[0:0.1:2*pi];
y=sin(x);
plot(x,y)
xlabel('x')
ylabel('sin(x)')
title('Sine Curve')
grid
disp('The amplitude values are: ')
y
disp('Plotting Done Successfully!!')
Clean
Start
4
clear all;
close all;
clc;
n=input('Please enter the number of cycles: ');
% f=input('Please enter the frequency: ');
% A=input('Please enter the Amplitude: ');
x=[0:0.1:2*pi*n];
y=sin(x);
plot(x,y)
xlabel('x')
ylabel('sin(x)')
title('Sine Curve')
grid
disp('The amplitude values are: ')
y
disp('Plotting Done Successfully!!')
No of Cylces
5
clear all;
close all;
clc;
n=input('Please enter the number of cycles: ');
% f=input('Please enter the frequency: ');
A=input('Please enter the Amplitude: ');
x=[0:0.1:2*pi*n];
y=A*sin(x);
plot(x,y)
xlabel('x')
ylabel([num2str(A) 'sin(x)'])
title('Sine Curve')
grid
disp('The amplitude values are: ')
y
disp('Plotting Done Successfully!!')
Amplitude
6
clear all;
close all;
clc;
n=input('Please enter the number of cycles: ');
f=input('Please enter the frequency: ');
A=input('Please enter the Amplitude: ');
x=[0:0.1:2*pi*n/f];
y=A*sin(f*x);
plot(x,y)
xlabel('x')
ylabel([num2str(A) 'sin(' num2str(f) 'x)'])
title('Sine Curve')
grid
disp('The amplitude values are: ')
y
disp('Plotting Done Successfully!!')
Frequency
7
clear all;
close all;
clc;
n=input('Please enter the number of cycles: ');
f=input('Please enter the frequency: ');
A=input('Please enter the Amplitude: ');
x=[0:0.1:2*pi*n/f];
y=A*sin(f*x);
plot(x,y)
xlabel('x')
ylabel([num2str(A) 'sin(' num2str(f) 'x)'])
title('Sine Curve')
grid
disp('The amplitude values are: ')
y
disp('Program Terminated !!')
Done !!
8
clear all;
close all;
clc;
n=input('Please enter the number of cycles: ');
f=input('Please enter the frequency: ');
A=input('Please enter the Amplitude: ');
x=[0:0.1:2*pi*n/f];
y=A*sin(f*x);
plot(x,y)
xlabel('x')
ylabel([num2str(A) 'sin(' num2str(f) 'x)'])
title('Sine Curve')
grid
disp('The amplitude values are: ')
y
disp('Program Terminated !!')
Output
9
clear all;
close all;
clc;
n=input('Please enter the number of cycles: ');
f=input('Please enter the frequency: ');
A=input('Please enter the Amplitude: ');
x=[0:0.1:2*pi*n/f];
y=A*sin(f*x);
plot(x,y)
xlabel('x')
ylabel([num2str(A) 'sin(' num2str(f) 'x)'])
title('Sine Curve')
grid
disp('The amplitude values are: ')
disp(y)
disp('Program Terminated !!')
Output
10 Plot Sine Try n = any negative number:
11
clear all;
close all;
clc;
n=input('Please enter the number of cycles: ');
f=input('Please enter the frequency: ');
A=input('Please enter the Amplitude: ');
if n>0
x=[0:0.1:2*pi*n/f]; y=A*sin(f*x);
plot(x,y)
xlabel('x');
ylabel([num2str(A) 'sin(' num2str(f) 'x)'])
title('Sine Curve'); grid
disp('The amplitude values are: '); disp(y)
end
disp('Program Terminated !!')
12 If Statement
if conditions________________________
______ Commands ________
________________________
end
________________________
______ Commands ________
________________________
13
clear all;
close all;
clc;
n=input('Please enter the number of cycles: ');
f=input('Please enter the frequency: ');
A=input('Please enter the Amplitude: ');
if n>0
x=[0:0.1:2*pi*n/f]; y=A*sin(f*x);
plot(x,y)
xlabel('x');
ylabel([num2str(A) 'sin(' num2str(f) 'x)'])
title('Sine Curve'); grid
disp('The amplitude values are: '); disp(y)
else
disp('The number of cycles must be positive')
end
disp('Program Terminated !!')
Error Msg
14 If Else Statement
if conditions________________________
______ Commands ________
________________________
else
________________________
______ Commands ________
________________________
end
________________________
______ Commands ________
________________________
15
...
if n>0
x=[0:0.1:2*pi*n/f]; y=A*sin(f*x);
plot(x,y); xlabel('x');
ylabel([num2str(A) 'sin(' num2str(f) 'x)'])
title('Sine Curve'); grid
disp('The amplitude values are: '); disp(y)
else
disp('The number of cycles must be positive')
end
......................................................
if n>0
x=[0:0.1:2*pi*n/f]; y=A*sin(f*x);
plot(x,y); xlabel('x');
ylabel([num2str(A) 'sin(' num2str(f) 'x)'])
title('Sine Curve'); grid
disp('The amplitude values are: '); disp(y)
end
if n<=0
disp('The number of cycles must be positive')
end
...
Compare
16
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Designed by: Eng. Osama Talaat %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
clear all; close all; clc;
n=input('Please enter the number of cycles: ');
f=input('Please enter the frequency: ');
A=input('Please enter the Amplitude: ');
if n>0 %Check positive number of cyclesx=[0:0.1:2*pi*n/f]; y=A*sin(f*x);
plot(x,y)
xlabel('x');
ylabel([num2str(A) 'sin(' num2str(f) 'x)'])
title('Sine Curve'); grid
disp('The amplitude values are: '); disp(y)
else
disp('The number of cycles must be positive')
end
disp('Program Terminated !!')
Comments
17
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Designed by: Eng. Osama Talaat %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
clear all; close all; clc;
n=input('Please enter the number of cycles: ');
f=input('Please enter the frequency: ');
A=input('Please enter the Amplitude: ');
if n>0 %Check positive number of cycles
x=[0:0.1:2*pi*n/f]; y=A*sin(f*x);
plot(x,y)
xlabel('x');
ylabel([num2str(A) 'sin(' num2str(f) 'x)'])
title('Sine Curve'); grid
% disp('The amplitude values are: '); disp(y)
else
disp('The number of cycles must be positive')
end
disp('Program Terminated !!')
Comments
18 Password Enter the password.
If the entered password is ‘a13’, display a welcome message ‘Welcome Osama’.
Else, Display an error message ‘Wrong password’.
19
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Designed by: Eng. Osama Talaat %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
clear all; close all; clc;
pass = input('Please enter password: ','s');
if strcmp(pass,'a13')
disp('Welcome Osama')
else
disp('Wrong password')
end
To enter stringTo
compare strings
20 Password Enter the password.
If the entered password is ‘a13’, display a welcome message ‘Welcome Osama’.
If the entered password is ‘com’, display a welcome message ‘Welcome Hamdy’.
If the entered password is ‘t10’, display a welcome message ‘Welcome Mona’.
Else, Display an error message ‘Wrong password’.
21
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Designed by: Eng. Osama Talaat %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
clear all;
close all;
clc;
pass = input('Please enter password: ','s');
if strcmp(pass,'a13')
disp('Welcome Osama')
elseif strcmp(pass,'com')
disp('Welcome Hamdy')
elseif strcmp(pass,'t10')
disp('Welcome Mona')
else
disp('Wrong password')
end
22 If Elseif Statementif conditions 1
______________________________ Commands ________________________________
elseif conditions 2______________________________ Commands ________________________________
elseif conditions 3______________________________ Commands ________________________________
...else
______________________________ Commands ________________________________
end______________________________ Commands ________________________________
23 Switch Case Statementswitch variable
case value 1______ Commands ________
break case value 2
______ Commands ________
break case value 3
______ Commands ________
break . . .otherwise
______ Commands ________
break end______________________________ Commands ________________________________
24
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Designed by: Eng. Osama Talaat %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
clear all;
close all;
clc;
pass = input('Please enter password: ','s');
switch pass
case 'a13'
disp('Welcome Osama')
break
case 'com'
disp('Welcome Hamdy')
break
case 't10'
disp('Welcome Mona')
break
otherwise
disp('Wrong password')
break
end
Another Solution
25
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Designed by: Eng. Osama Talaat %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
clear all;
close all;
clc;
pass = input('Please enter password: ','s');
switch pass
case 'a13'
disp('Welcome Osama')
break
case 'com'
disp('Welcome Hamdy')
break
case 't10'
disp('Welcome Mona')
break
otherwise
error('Wrong password')
break
end
Error Msg
The error message stops execution
26 Length Units Converter Convert the length from meter to several
length units.
Enter the length in meters.
Enter the unit to convert to.
Switch on the unit and upon its values multiply the input length by the conversion factor, and display the output
27
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Designed by: Eng. Osama Talaat %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
clear all; close all; clc;
len = input('Please enter Length in meter: ');
unit = input('Please enter the unit to convert to: ','s');
switch unit
case 'cm'
disp([num2str(len) ' m = ' num2str(len*100) ' cm'])
break
case 'mm'
disp([num2str(len) ' m = ' num2str(len*1000) ' mm'])
break
case 'in'
disp([num2str(len) ' m = ' num2str(len/0.0254) ' in'])
break
otherwise
disp('This unit is not supported')
break
end
Several values
28
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Designed by: Eng. Osama Talaat %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
clear all; close all; clc;
len = input('Please enter Length in meter: ');
unit = input('Please enter the unit to convert to: ','s');
switch unit
case {'cm' 'centimeter'}
disp([num2str(len) ' m = ' num2str(len*100) ' cm'])
break
case {'mm' 'millimeter'}
disp([num2str(len) ' m = ' num2str(len*1000) ' mm'])
break
case {'in' 'inch'}
disp([num2str(len) ' m = ' num2str(len/0.0254) ' in'])
break
otherwise
disp('This unit is not supported')
break
end
29 For Loopclear all; close all; clc;
for k=1:20
disp(rand) %do not display "ans ="
end
________________________________________
for index = vector________________________
__ Commands to repeat __
________________________
end
________________________
______ Commands ________
________________________
30 Calculate the Formula
>> s=0;
>> s=s+1^2/factorial(1);
>> s=s+2^2/factorial(2);
>> s=s+3^2/factorial(3);
>> s=s+4^2/factorial(4);
>> s=s+5^2/factorial(5);
31 Calculate the Formulaclear all; close all; clc;
s=0;
for k=1:5
s=s+k^2/factorial(k);
end
disp(s)
32 Test Yourself !!
Try it using matrices:
33GOOD LUCK
To be continued in the next lecture …