1 / 20

Selection Programming

Selection Programming. EE 100. Outline. introduction Relational and Logical Operators Flow Control Loops Update Processes. Introduction. Programs commands in MATLAB are executed in sequence.

sona
Télécharger la présentation

Selection Programming

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Selection Programming EE 100

  2. Outline • introduction • Relational and Logical Operators • Flow Control • Loops • Update Processes

  3. Introduction • Programs commands in MATLAB are executed in sequence. • The sequence can be altered using programming structures (control flow -if, switch-, repetition- for, while-). • Decision can be made using relational and logical expressions. (a check if a condition is met or not)

  4. Relational and Logical Operators • For more information: help ops.

  5. Relational and Logical Operators • For relational and logical expressions: Inputs: True is any nonzero number False is 0 (zero) • Outputs: True is 1 (one) False is 0 (zero) • An output array variable assigned to a relational or logical expression is identified as logical.

  6. Relational and Logical Functions

  7. Flow Control • Simple if Statement • The general form of a simple if statement is: if logical expression commands end Example: if d < 50 count = count + 1; disp(d); end

  8. Flow Control • Nested if Statements : general form if logical expression commands if logical expression Commands end end

  9. Flow Control • Example: Nested if Statements if d < 50 count = count + 1; if count > 10 disp(‘count > 10’); end end

  10. General form if logical expression commands else commands end General form if logical expression commands elseif logical expression commands elseif logical expression Commands else Commands end Flow Control- else and elseif Clauses

  11. Flow Control- else and elseif Clauses • Example: If average > 86 disp(‘Excellent’) elseif average > 76 disp(‘Very good’) elseif average > 68 disp(‘Good’) else disp(‘Ya 7aram- accepted’) end

  12. General form: switch expression case test expression 1 commands case {test expression 2, test expression 3} commands ··· otherwise commands end Flow Control- Switch Structure

  13. Example: d = floor(3*rand) + 1 switch d case 1 disp( ’That’’s a 1!’ ); case 2 disp( ’That’’s a 2!’ ); otherwise disp( ’Must be 3!’ ); end Example: d = floor(10*rand); switch d case {2, 4, 6, 8} disp( ’Even’ ); case {1, 3, 5, 7, 9} disp( ’Odd’ ); otherwise disp( ’Zero’ ); end Flow Control- Switch Structure

  14. General form: for index = j:k statements end or for index = j:m:k statements End Floor (last − first)/increment + 1 for i = 1:5 disp(i) end for i = 1:2:5 disp(i) end Loops- for loop

  15. General form while condition statements end Example: count = 0; While count < 5 disp (count) count= count + 1; end Loops- while loop

  16. Loops- while loop - break • Example: count = 0; While count < 5 disp (count) count= count + 1; If count == 4 Break end end

  17. Avoiding loops • In general, loops should be avoided in Matlab, as they can significantly increase the execution time of a program. • The execution time increases as MATLAB allocate memory each time through the loop. • Usually avoid loops by vectorizing.

  18. example: vectorizing tic n = 1:10000000; s = sum( n ); toc elapsed_time = 0.5300 example: loop tic s = 0; for n = 1:10000000 s = s + n; end toc elapsed_time = 23.6840 Avoiding loops

  19. Update Processes • Many problems in science and engineering involve modeling a process where the main variable is updated over a period of time. In many situations, the updated value is a function of the current value.

  20. Thank You

More Related