Objective 3.01 Apply Procedures to Develop Flowcharts and Pseudocode (3%) COMPUTER PROGRAMMING I SUMMER 2011 Objectives 3.01 and 3.02 COMPUTER PROGRAMMING I SUMMER 2011 Objective/Essential Standard Essential Standard 3.00Apply Programming Logic Indicator 3.01 Apply procedures to develop flow-charts and pseudocode. (3%) Teacher Notes This PowerPoint was developed with examples from Visual Basic 2010 and C#. Any coding samples will be provided in both languages as supported. Only show the slides the correspond to the language you are teaching. Flowcharts Flowcharts help the programmer begin to plan the programming project. They provide a visual representation of how the data should flow. They describe the inputs, processes and outputs of the program that are needed to successfully complete the project. Flowchart Symbols There are many flowchart programs, however you can also use Microsoft Word to create a flowchart – or just a piece of paper and a pencil. To create the flowchart, there are different symbols that represent the various parts. We will only use a few of these symbols. Use lines with arrows to indicate data flow direction. Flowchart Symbols Start/Stop Input/Output Start should always be the first shape, with a Stop at the end of the flow chart. This shape is used to show raw materials used for ‘ingredients’ and to show the finished product. Processes Start should be used to show processes/procedures, eg. ‘Bake Cake’ Decisions Start should be used to show where the flowchart can divide into two options. Used for Start & Stop Start Input Used for inputs – raw materials Examples: Cake Ingredients Plastic, metal Process A Input Used for all processes Examples: Bake cake Review music choices Build wheels Process B Output Stop Used for outputs – finished product Examples: Finished cake Car door Used for Start & Stop Start Used for inputs – raw materials Examples: Cake Ingredients Plastic, metal Input True (yes) Process A If Process A Used for all processes Examples: Bake cake Review music choices Build wheels False (no) Used for decision making - Questions Process B Process C Output Stop Used for outputs – finished product Examples: Finished cake Car door Used for Start & Stop Start Used for inputs – raw materials Examples: Cake Ingredients Plastic, metal Input DOWHILE Question (T or F) True (yes) Process A False (no) NO PROCESSES ALLOWED HERE!!!! Exit only Used for decision making - Questions Process B ENDDO Stop Used to show where loop stops – required. Using Microsoft Word to Create a Flowchart Open Microsoft Word. Under Insert choose Shapes Look down the list until you see Flowchart. Hoover your mouse over a shape, you will see a popup telling you what that shape is used for. Using Microsoft Word to Create a Flowchart Select and draw the shapes needed for your program logic. Once you draw a shape you can right click and select Add Text to enter information into your symbol. Join your symbols using arrows indicating program data flow. Pseudocode The text in your flowchart symbols is your pseudocode. Pseudocode is a mix of English language and code that represents what you want your program to do. It helps you determine how you want the program to work as well as what variables and methods/functions you will want to include. Developing pseudocode will help you work through your logic, reducing the number of errors and potential re-writes you will have to do. Pseudocode Example Proceed down Main Street for two miles Turn left on Ocean Drive, Proceed on Ocean Drive for three blocks, to the fork. IF left turn at fork is blocked THEN Take a right turn at the fork onto Eagle Street… ELSE At the fork, take Swan Street to the left. Proceed two blocks. House is second on the left. (246 Swan Street.) ENDIF Example Start Proceed down hall Turn left at first intersecting hallway IF hungry THEN Turn right into the cafeteria ELSE Continue to classroom ENDIf Proceed down hall Turn left at first intersecting hallway Hungry? Turn right into cafeteria Continue to classroom Stop Objective 3.02 Understand Algorithms (3%) COMPUTER PROGRAMMING I SUMMER 2011 Objective/Essential Standard Essential Standard 3.00Apply Programming Logic Indicator 3.02 Understand Algorithms (3%) Algorithm An algorithm is a list of steps to solve a problem. In programming, it will be a list of steps used to successfully accomplishment your programming task. Your algorithm is not only going to tell your program what to do but how to do it. Algorithm Example – Going Home The Walk Algorithm 1. Leave classroom 2. Turn right out of school building 3. Walk 1.2 miles 4. Turn right on street 5. Go to 4th house The Bus Algorithm 1. 2. 3. Go to the bus area Get in right bus Go to house Algorithms Both algorithms, and others that accomplish the same task (of getting you home). There are advantages and disadvantages associated with each option. You have to consider each option and its advantages/disadvantages before you choose the algorithm you want to continue developing into your program. Conclusion This PowerPoint provided an overview of creating flowcharts. Next step is to practice with sample programs the skilled students have learned! The Unpacked Content will provide some sample programs.