Вы находитесь на странице: 1из 15

Chapter 11:

Menu-Driven Programs

Starting Out with Programming Logic & Design

Second Edition

by Tony Gaddis

Copyright 2010 Pearson Education, Inc. Publishing as Pearson Addison-Wesley

Chapter Topics
11.1
11.2
11.3
11.4

Introduction to Menu-Driven Programs


Modularizing a Menu-Driven Program
Using a Loop to Repeat the Menu
Multiple-Level Menus

Copyright 2010 Pearson Education, Inc. Publishing as Pearson Addison-Wesley

11-2

11.1 Introduction to Menu-Driven Programs


A menu is a list of operations that are displayed
by a program, in which a user can select which
operations to perform
Figure 11-1 A menu

Copyright 2010 Pearson Education, Inc. Publishing as Pearson Addison-Wesley

11-3

11.1 Introduction to Menu-Driven Programs


A decision structure can be used to perform
menu selections
This can be accomplished through a case structure,
series of nested if-then-else statements
A case structure is easier to follow the flow
A case structure will provide a case for each option
in the menu, in addition to a default case

Copyright 2010 Pearson Education, Inc. Publishing as Pearson Addison-Wesley

11-4

11.1 Introduction to Menu-Driven Programs


Figure 11-2 Flowchart for Program 111

Copyright 2010 Pearson Education, Inc. Publishing as Pearson Addison-Wesley

11-5

11.1 Introduction to Menu-Driven Programs


Validating the menu selection can be done before
the case is processed, allowing for no need for
a default
Display Enter your selection
Input menuSelection
//validation
While menuSelection < 1 OR menuSelection >3
Display That is an invalid selection. Enter 1, 2 or 3
Input menuSelection
End While
Copyright 2010 Pearson Education, Inc. Publishing as Pearson Addison-Wesley

11-6

11.2 Modularizing a Menu-Driven Program


Since a menu-driven program is capable of
performing many tasks, it should be put into
modules
A module should be written for each case that
could be processed
The options would simply call modules
Allows for a clear flow of the program

Copyright 2010 Pearson Education, Inc. Publishing as Pearson Addison-Wesley

11-7

11.2 Modularizing a Menu-Driven Program


Figure 11-5 Flowchart for the main
module in Program 11-3

Copyright 2010 Pearson Education, Inc. Publishing as Pearson Addison-Wesley

11-8

11.3 Using a Loop to Repeat the Menu


Most menu-driven programs use a loop to
repeatedly display the menu after a task is
performed
This allows the user of the program to run another
option without restarting the program
The menu can also contain on option for ending
the program
Display 1.
Display 2.
Display 3.
Display 4.

Copyright 2010 Pearson Education, Inc. Publishing as Pearson Addison-Wesley

Convert inches to centimeters.


Convert feet to meters.
Convert miles to kilometers.
End the program.

11-9

11.3 Using a Loop to Repeat the Menu


Figure 11-7 Flowchart for the
mainmodule in Program 11-5

Copyright 2010 Pearson Education, Inc. Publishing as Pearson Addison-Wesley

11-10

11.4 Multiple-Level Menus


A multiple-level menu has a main menu and one
or more submenus
Some complex programs require more than one
menu
A programmer should consider breaking up long
menus into multiple menus
This is essentially nested case structures

Copyright 2010 Pearson Education, Inc. Publishing as Pearson Addison-Wesley

11-11

11.4 Multiple-Level Menus


Instead of this type of long menu
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.

Process a sale
Process a return
Add a record to the inventory file
Search for a record in the inventory file
Modify a record in the inventory file
Delete a record in the inventory file
Print an inventory list report
Print a list of inventory items by cost
Print a list of inventory items by age
Print a list of inventory items by retail value

Copyright 2010 Pearson Education, Inc. Publishing as Pearson Addison-Wesley

11-12

11.4 Multiple-Level Menus


Convert to multiple menus such as
1.
2.
3.
4.

Main Menu
Process a Sale or a Return
Update the Inventory File
Print an Inventory Report
Exit the Program

Sales and Returns Menu


5. Process a Sale
6. Process a Return
7. Go Back to the Main Menu
Copyright 2010 Pearson Education, Inc. Publishing as Pearson Addison-Wesley

11-13

11.4 Multiple-Level Menus


More menus
1.
2.
3.
4.
5.

Update Inventory File Menu


Add a Record
Search for a Record
Modify a Record
Delete a Record
Go Back to the Main Menu

Copyright 2010 Pearson Education, Inc. Publishing as Pearson Addison-Wesley

11-14

11.4 Multiple-Level Menus


More menus
1.
2.
3.
4.
5.

Inventory Report Menu


Print an inventory list report
Print a list of inventory items by cost
Print a list of inventory items by age
Print a list of inventory items by retail value
Go Back to the Main Menu

Copyright 2010 Pearson Education, Inc. Publishing as Pearson Addison-Wesley

11-15

Вам также может понравиться