# Programming Logic and Design

Programming Logic and Design, 6th Edition

Chapter 3

Exercises

1. In Figure 3-10 the process of buying and planting flowers in the spring was shown using the same structures as the generic example in Figure 3-9. Describe some other process with which you are familiar using exactly the same logic.

Student answers will vary widely. They should come up with processes that fit the generic logic shown in Figure 3-9. Some examples could include: making a dentist appointment or registering for a class. Pseudocode for each follows.

if it’s time for your annual teeth cleaning

call the dentist for an appointment tomorrow

while the day and time you want isn’t available

if another time the same day is available

make the appointment at the new time on the same day

else

pick a new day and time

endif

endwhile

endif

if you are taking a class this semester then

register for a class

while the class is full

if another section is available

enroll for the available section

else

select a new class

endif

endwhile

print schedule

endif

1. Each of the flowchart segments in Figure 3-35 is unstructured. Redraw each flowchart segment so that it does the same thing but is structured.

a.

c.

d.

e.

1. Write pseudocode for each example (a through e) in Exercise 2 making sure your pseudocode is structured but accomplishes the same tasks as the flowchart segment.

1. do A

while B is true

do C

do A

endwhile

1. do D

if E is true then

do H

do I

else

do F

if G is true then

do I

endif

endif

1. do k

if L is true then

do P

while Q is true

do P

endwhile

do R

else

do M

do N

if O is true then

do R

endif

endif

1. do S

if T is true then

do Y

if Z is true then

do V

if W is true then

do A

else

do X

endif

else

do A

endif

else

do U

do V

if W is true then

do A

else

do X

endif

endif

1. if B is true then

do G

while H is not true

do I

do G

endwhile

do D

while E is true

do I

do D

endwhile

do F

else

do C

do D

while E is true

do I

do D

endwhile

do F

endif

1. Assume you have created a mechanical arm that can hold a pen. The arm can perform the following tasks:
• Lower the pen to a piece of paper.
• Raise the pen from the paper.
• Move the pen one inch along a straight line. (If the pen is lowered, this action draws a one-inch line from left to right; if the pen is raised, this action just repositions the pen one inch to the right.)
• Turn 90 degrees to the right.
• Draw a circle that is one inch in diameter.

Draw a structured flowchart or write structured pseudocode describing the logic that would cause the arm to draw the following:

1. a one-inch square
2. a two-inch by one-inch rectangle
3. a string of three beads
4. a short word (for example, “cat”).

This solution assumes the above tasks are labeled as follows:

1. Lower the pen to a piece of paper.
2. Raise the pen from the paper.
3. Move the pen one inch along a straight line. (If the pen is lowered, this action draws a one-inch line from the left to right; if the pen is raised, this action just repositions the pen one inch to the right.)
4. Turn 90 degrees to the right.
5. Draw a circle that is one inch in diameter.
1. a one-inch square

Pseudocode:

start

lower the pen to a piece of paper

move one inch along a straight line

turn 90 degrees to the right

move one inch along a straight line

turn 90 degrees to the right

move one inch along a straight line

turn 90 degrees to the right

move one inch along a straight line

raise the pen from the paper

stop

or

start

do A

do C

do D

do C

do D

do C

do D

do C

do B

stop

Flowchart:

 stop

 start

1. a two-inch by one-inch rectangle

Pseudocode:

start

lower the pen to a piece of paper

move one inch along a straight line

move one inch along a straight line

turn 90 degrees to the right

move one inch along a straight line

turn 90 degrees to the right

move one inch along a straight line

move one inch along a straight line

turn 90 degrees to the right

move one inch along a straight line

raise the pen from the paper

stop

or

start

do A

do C

do C

do D

do C

do D

do C

do C

do D

do C

do B

stop

Flowchart:

 stop

 start

1. a string of three beads

Pseudocode:

start

lower the pen to a piece of paper

draw a circle that is one-inch in diameter

raise the pen from the paper

move one inch along a straight line

lower the pen to a piece of paper

draw a circle that is one-inch in diameter

raise the pen from the paper

move one inch along a straight line

lower the pen to a piece of paper

draw a circle that is one-inch in diameter

raise the pen from the paper

stop

or

start

do A

do E

do B

do C

do A

do E

do B

do C

do A

do E

do B

stop

Flowchart:

 start

1. a short word (for example, “cat”)

start

lower the pen to a piece of paper

move one inch along a straight line

raise the pen from the paper

turn 90 degrees right

turn 90 degrees right

move one inch along a straight line

turn 90 degrees right

lower the pen to a piece of paper

move one inch along a straight line

turn 90 degrees right

move one inch along a straight line

raise the pen from the paper

move one inch along a straight line

lower the pen to a piece of paper

move one inch along a straight line

turn 90 degrees right

move one inch along a straight line

turn 90 degrees right

move one inch along a straight line

turn 90 degrees right

move one inch along a straight line

move one inch along a straight line

raise the pen from the paper

turn 90 degrees right

move one inch along a straight line

turn 90 degrees right

lower the pen to a piece of paper

move one inch along a straight line

turn 90 degrees right

turn 90 degrees right

turn 90 degrees right

raise the pen from the paper

move one inch along a straight line

lower the pen to a piece of paper

move one inch along a straight line

move one inch along a straight line

turn 90 degrees right

turn 90 degrees right

raise the pen from the paper

move one inch along a straight line

lower the pen to a piece of paper

turn 90 degrees right

move one inch along a straight line

raise the pen from the paper

stop

or

start

do A

do C

do B

do D

do D

do C

do D

do A

do C

do D

do C

do B

do C

do A

do C

do D

do C

do D

do C

do D

do C

do C

do B

do D

do C

do D

do A

do C

do D

do D

do D

do B

do C

do A

do C

do C

do D

do D

do B

do C

do A

do D

do C

do B

stop

The flowchart will be very similar to parts a-c.

1. Assume you have created a mechanical robot that can perform the following tasks:
• Stand up.
• Sit down.
• Turn left 90 degrees.
• Turn right 90 degrees.
• Take a step.

• Am I touching something?

Place two chairs 20 feet apart, directly facing each other. Draw a structured flowchart or write pseudocode describing the logic that would allow the robot to start from a sitting position in one chair, cross the room, and end up sitting in the other chair.

This solution assumes the above tasks are labeled as follows:

1. Stand up.
2. Sit down.
3. Turn left 90 degrees.
4. Turn right 90 degrees.
5. Take a step.
6. Am I touching something?

Pseudocode:

start

stand up

take a step

while Am I touching something? is not true

take a step

endwhile

turn left 90 degrees

turn left 90 degrees

sit down

stop

or

start

do A

do E

while F is not true

do E

endwhile

do C

do C

do B

stop

Flowchart:

start
do A
do E
while F is not true
do E
endwhile
do D
do C
do C
do D
while F is true
do B
stop

start
(A)stand up
(E)take a step
while (F)Am I touching something? is not true
take a (E)step
end while
turn right 90 degrees (D)
turn left 90 degrees (C)
turn left 90 degrees (C)
turn right 90 degrees (D)
while (F)Am I touching something is true
(B)sit down
stop

3.3^^ (Pseudocode below)

1. Looking up a word in a dictionary can be a complicated process. For example, assume you want to look up “logic.” You might open the dictionary to a random page and see “juice.” You know that word comes alphabetically before “logic,” so you flip forward and see “lamb.” That is still not far enough, so you flip forward and see “monkey.” That means you have gone too far, so now you flip back, and so on. Draw a structured flowchart or write pseudocode that describes the process of looking up a word in a dictionary. Pick a word at random and have a fellow student attempt to carry out your instructions.

Pseudocode:

start

open the dictionary

while word not on page

if word > last word on page

turn the page forward

else

turn the page backward

endif

endwhile

stop

Flowchart:

1. Draw a structured flowchart or write structured pseudocode describing your preparation to go to work or school in the morning. Include at least two decisions and two loops.

Answers will vary. An example solution is shown below.

Flowchart:

Pseudocode:

start

get out of bed

while feeling awake is not true

drink coffee

endwhile

if the outside temperature < 65 is true then

wear sweater

else

wear t-shirt

endif

if you’re feeling hungry is true then

eat breakfast

endif

while you have keys is not true

search for keys

endwhile

drive to work

stop

1. Draw a structured flowchart or write structured pseudocode describing your preparation to go to bed at night. Include at least two decisions and two loops.

Answers will vary. An example solution is shown below.

Flowchart:

Pseudocode:

start

while teeth need brusing

brush teeth

endwhile

if temperature is less than 65 degrees then

wear flannel pajamas

else

wear cotton pajamas

endif

if tomorrow is a school day then

set alarm clock

endif

while thirsty

drink water

endwhile

get in bed

stop

1. Draw a structured flowchart or write structured pseudocode describing how your paycheck is calculated. Include at least two decisions.

Answers will vary. An example solution is shown below.

Flowchart:

Pseudocode:

start

if the employee is full-time is true then

weekly pay = 40 * pay rate

if employee worked overtime is true then

overtime pay = (hours worked – 40) * 1.5 * pay rate

weekly pay = weekly pay + overtime pay

endif

else

weekly pay = hours worked * pay rate

endif

net pay = weekly pay - taxes

stop

1. Draw a structured flowchart or write structured pseudocode describing the steps a retail store employee should follow to process a customer purchase. Include at least two decisions.

Answers will vary. An example solution is shown below.

Flowchart:

Pseudocode:

start

while customer has more items is true

endwhile

if customer has coupon is true

subtract discount from total

endif

display customer total

if customer is paying w/cash is true

accept cash

while customer needs change is true

give change

endwhile

else

swipe credit card

endif

stop

Find the Bugs

1. Your student disk contains files named DEBUG03-01.txt, DEBUG03-02.txt, and DEBUG03-03.txt. Each file starts with some comments that describe the problem. Comments are lines that begin with two slashes (//). Following the comments, each file contains pseudocode that has one or more bugs you must find and correct.

Please see the DEBUG03-01.txt, DEBUG03-02.txt, and DEBUG03-03.txt solution files.

Game Zone

1. Choose a very simple children’s game and describe its logic, using a structured flowchart or pseudocode. For example, you might try to explain Rock, Paper, Scissors; Musical Chairs; Duck, Duck, Goose; the card game War; or the elimination game Eenie, Meenie, Minie, Moe.

Answers will vary. The following is a possible solution for the card game War.

Flowchart:

Pseudocode:

gameOfWar()

ask friend to play the card game War

deal out my hand and your hand

while both players have cards

turn over my card and your card

if my card is equal to your card then

cards stay on table

else

if my card is higher than your card

I collect cards on table

else

you collect all cards on table

endif

endif

endwhile

if my hand is empty is true

you are the winner

else

I am the winner

endif

ask friend to play the card game War

endwhile

return

1. Choose a television game show such as Deal or No Deal or Jeopardy! and describe its rules using a structured flowchart or pseudocode.

Answers will vary. The following is a possible solution for Jeopardy!.

Flowchart:

Pseudocode:

jeopardy()

while questions are available

contestant picks category and dollar amount

while the timer hasn’t run out

contestant earns dollar amount

time runs out

else

contestant loses dollar amount

time decreases

endif

endwhile

endwhile

return

1. Choose a professional sport such as baseball or football and describe the actions in one play period using a structured flowchart or pseudocode.

Answers will vary. The following is a very simple example solution for tennis.

Flowchart:

Pseudocode:

tennis()

player attempts serve

while ball goes over net and is in bounds

opposite player returns ball

endwhile

return

Up for Discussion

1. Find more information about one of the following people and explain why he or she is important to structured programming: Edsger Dijkstra, Corrado Bohm, Giuseppe Jacopini, and Grace Hopper.

Edsger Wybe Dijkstra was a Dutch computer scientist who lived from 1930 to 2002. Among his contributions to computer science are the shortest path-algorithm, also known as Dijkstra's algorithm. He received the Turing Award in 1972. He was also known for his low opinion of the GOTO statement in computer programming, culminating in the 1968 article Go To Statement Considered Harmful . This article was regarded as a major step towards the widespread deprecation of the GOTO statement and its effective replacement by control structures such as the while loop.

Bohm and Jacopini were theorists who showed in 1966 that all logical problems could be handled using only the three control structures sequence, selection, and loop.

Rear Admiral Grace Hopper lived from 1906 to 1992. She was a U.S. Navy officer and computer scientist. She was one of the first programmers of the Harvard Mark I calculator and she developed the first compiler. She often has been quoted as claiming to develop the term "bug" when a moth was found in the Mark I circuitry.

1. Computer programs can contain structures within structures and stacked structures, creating very large programs. Computers also can perform millions of arithmetic calculations in an hour. How can we possibly know the results are correct?

Only by repeatedly testing portions of programs can you have confidence that their results are correct. According to author Harlan Mills, "There is no foolproof way to ever know that you have found the last error in a program. So the best way to acquire confidence that a program has no errors is never to find the first one, no matter how much it is tested and used".

Some people believe that software never breaks, unlike mechanical parts such as bolts, or electronic parts such as transistors. However, there have been many incidents that prove this theory incorrect:

• Therac-25 was a radiation therapy machine. Between 1985 and 1987 at least six patients were given massive overdoses of radiation. These accidents highlighted the dangers of software control of safety-critical systems.
• The British destroyer Sheffield was sunk because the radar system identified an incoming missile as "friendly".
• On February 25, 1991, during the Gulf War, 28 lives were lost when an error that missed 0.000000095 second in precision in every 10th of a second made the Patriot missile fail to intercept a scud missile.
• In 1991, after changing three lines of code in a signaling program which contains millions of lines of code, the local telephone systems in California and along the Eastern seaboard came to a stop.
1. Develop a checklist of rules you can use to help you determine whether a flowchart or pseudocode segment is structured.

• Every structure must have only one entry point and one exit point.
• In a flowchart you should be able to remove structured pieces, replacing them with a place holder, and see that the resulting shell is structured. In a flowchart, no lines should ever cross.
• In pseudocode, every if statement should pair with an endif and every while statement should pair with an endwhile with no intervening endif or endwhile

hihi

## Cite This work.

Assignment Hippo (2021) . Retrive from http://www.assignmenthippo.com/sample-assignment/programming-logic-and-design

"." Assignment Hippo ,2021, http://www.assignmenthippo.com/sample-assignment/programming-logic-and-design

Assignment Hippo (2021) . Available from: http://www.assignmenthippo.com/sample-assignment/programming-logic-and-design

[Accessed 03/12/2021].

Assignment Hippo . ''(Assignment Hippo,2021) http://www.assignmenthippo.com/sample-assignment/programming-logic-and-design accessed 03/12/2021.

Want to order fresh copy of the Sample Template Answers? online or do you need the old solutions for Sample Template, contact our customer support or talk to us to get the answers of it.

#### AssignmentHippo Features

##### On Time Delivery

Our motto is deliver assignment on Time. Our Expert writers deliver quality assignments to the students.

##### Plagiarism Free Work

Get reliable and unique assignments by using our 100% plagiarism-free.

##### 24 X 7 Live Help

Get connected 24*7 with our Live Chat support executives to receive instant solutions for your assignment.

##### Services For All Subjects

Get Help with all the subjects like: Programming, Accounting, Finance, Engineering, Law and Marketing.

##### Best Price Guarantee

Get premium service at a pocket-friendly rate at AssignmentHippo

#### FREE RESOURCES

• Assignment Writing Guide
• Essay Writing Guide
• Dissertation Writing Guide
• Research Paper Writing Guide

#### FREE SAMPLE FILE

• Accounts
• Computer Science
• Economics
• Engineering

#### Client Review

I was struggling so hard to complete my marketing assignment on brand development when I decided to finally reach to the experts of this portal. They certainly deliver perfect consistency and the desired format. The content prepared by the experts of this platform was simply amazing. I definitely owe my grades to them.