Presentation is loading. Please wait.

Presentation is loading. Please wait.

Problem Solving with the Sequential Logic Structure Lesson 5 McManusCOP10061.

Similar presentations


Presentation on theme: "Problem Solving with the Sequential Logic Structure Lesson 5 McManusCOP10061."— Presentation transcript:

1 Problem Solving with the Sequential Logic Structure Lesson 5 McManusCOP10061

2 Overview Algorithm Instructions Sequential Logic Structure Solution Development McManusCOP10062

3 Flowchart Symbols Terminal –Starts, Stops, Ends Input/Output –Input data, Output information Assign –Apply values to variables Process –Execute instructions McManusCOP10063 Terminal Input/ Output Assign Process

4 Sequential Logic Structure The oldest logic structure The most used logic structure The easiest structure to understand Is one statement after another statement, after another statement, after another statement, etc. McManusCOP10064

5 Examples Enter Name Enter Address Enter City Enter State Enter Zip Enter Hours Enter Wage Pay = Hours * Wage Print Name Print Address Print City Print State Print Zip Print Pay McManusCOP10065

6 Let’s work a problem… McManusCOP10066

7 The Problem… Sadie invests $5,000 in a savings account that yields 5% (.05) annual interest. Assuming that all interest is left on deposit along with the original deposited amount –What will be the equation to calculate the amount that will be in the account at the end of 10 years? –How much will the interest be at the end of the 10 years? McManusCOP10067

8 The Solution First: Research banking algorithms –We wind up with Two Equations: First…the Tough one –Amount = Principal * ((1 + Interest Rate) ^ Time) »Principal – amount to be invested »Interest Rate – yearly percentage rate »Time – investment period in years »Amount – principal + interest earned Next…the Easy one –Interest = Amount – Principal »Interest – the actual amount of Interest McManusCOP10068

9 Structure Chart of Solution McManusCOP10069 Calculate Savings Get input Calculate Print Amount Print Interest Calculate Interest Calculate Amount Print

10 Pseudocode Solution Get Principal Amount Get Yearly Interest Rate Get Time Intervals Calculate Amount of Principal + Interest – Amount = Principal * ((1 + Rate) ^ Time) Calculate Amount of Interest –Interest = Amount - Principal Print Amount of Ending Principal + Interest Print Amount of Interest McManusCOP100610

11 Coding the Problem In Visual Basic Note: Up to this point it didn’t matter what language we use… McManusCOP100611

12 Data Dictionary Variable NameData TypeModuleDefined DomainScope PrincipalDecimalGetInput Calculate 0 < n < 1 millionGlobal InterestRateDoubleGetInput Calculate 0 < n < 1 to 14+ digits Global TimeShortGetInput Calculate 0 < n < 32,767Global AmountSingleCalculate PrintResult 0 < n < 1 millionGlobal InterestSingleCalculate PrintResult 0 < n < 1 millionGlobal McManusCOP100612

13 VB Solution – Declare Variables ' Input Values by User Dim Principal As Decimal Dim InterestRate As Double Dim Time As Short ' Output Values Dim Amount As Single Dim Interest As Single McManusCOP100613 Internal Documentation taking the form of Comments

14 VB Solution – Get Input Private Sub cmdGetInput_Click() Principal = CDec(InputBox("In Dollar amount " & _ “ (5000)", "Please Enter Principal Amount")) InterestRate = CDbl(InputBox(" Ex. 5% " & _ “ would be entered as.05", "Please " & _ “ Enter Annual Interest Rate")) Time = CShort(InputBox("An Integer " & _ “ with no decimals", "Please Enter Length " & _ “ of Time in Years")) End Sub McManusCOP100614

15 VB Solution – Calculate Result Private Sub cmdCalculate_Click() ' Calculates Principal + Interest over time Amount = Principal * ((1 + InterestRate) ^ Time) ' Calculates amount of total Interest at end of ' time period Interest = Amount - Principal End Sub McManusCOP100615

16 VB Solution – Produce Output Private Sub cmdPrintResult_Click() lstOutput.Items.Add(" The Amount of Principal + " & _ “Interest Paid on") lstOutput.Items.Add(" the Principal Amount of " & _ VB6.Format(Principal, "Currency") & " for ") lstOutput.Items.Add(Time & " years is") lstOutput.Items.Add(" " & _ VB6.Format(Amount, "Currency")) lstOutput.Items.Add(" and the Amount of Interest is") lstOutput.Items.Add(" " & _ VB6.Format(Interest, "Currency")) End Sub McManusCOP100616

17 VB Solution – the Form McManusCOP100617

18 Getting the Input McManusCOP100618 1 st step 2 nd step 3 rd step

19 Calculating the Solution McManusCOP100619

20 McManusCOP100620

21 Internal Documentation –Takes the form of comments within the program –Helped by using Mnemonic terms Creates self-documenting code External Documentation –Takes the form of User Manuals Help Screens System Documentation McManusCOP100621

22 Testing the Solution Input Variables to be tested –Principal any numeric value greater than 0 –InterestRate any numeric value greater than 0 and less than 1 –Time any integer greater than 0 Note: We didn’t do any Error checking in this problem. McManusCOP100622

23 Testing the Solution Output Variables –Would expect to see the Amount a positive number greater than the Principal amount –Would expect to see the Interest greater than zero. Why are these statements important? McManusCOP100623

24 Summary Analyze the problem –Being able to restate the problem is one indicator that you understand the problem Develop the structure chart Develop the algorithms Develop the data dictionary Develop the code Test the solution McManusCOP100624

25 Next? McManusCOP100625


Download ppt "Problem Solving with the Sequential Logic Structure Lesson 5 McManusCOP10061."

Similar presentations


Ads by Google