Assignment #3

Due: Wed, June 16

Objective

This assignment will involve further practice with control structures, including repetition statements (loops).

Task

Write the following programs, each in a separate file. Filenames should be: (Note that the filenames are all lowercase)

Exercise 1

Filename: sum.cpp

Prompt the user and let them enter two integers (we'll call them x and y, for the purposes of this writeup). Compute and print the sum of the ingeters in the range x through y (including the endpoints). Output should look like the sample runs below, and print the addition details from the smallest to the largest number.

(Note: The user input will not necessarily have the lowest number first -- see Sample Run 2. You must take this into account).

Sample Runs

(user input is underlined, to distinguish it from output)

Sample Run 1

  Input two integers: 10 20

  Sum of values from 10 through 20 is:
  10 + 11 + 12 + 13 + 14 + 15 + 16 + 17 + 18 + 19 + 20
  = 165

Sample run 2

  Input two integers: 9 -4

  Sum of values from -4 through 9 is:
  -4 + -3 + -2 + -1 + 0 + 1 + 2 + 3 + 4 + 5 + 6 + 7 + 8 + 9
  = 35

Sample run 3

  Input two integers: 7 7

  Sum of values from 7 through 7 is:
  7
  = 7

Exercise 2

Filename: numbers.cpp

Write a program that will allow the user to enter a set of integers (as many as they want), then prints out a summary of information, as follows:

Sample Runs

(user input is underlined, to distinguish it from output)

Sample Run 1

  Input integer (0 to stop): 12
  Input integer (0 to stop): 4
  Input integer (0 to stop): -1
  Input integer (0 to stop): -5
  Input integer (0 to stop): 18
  Input integer (0 to stop): 0

  # of positives = 3
  # of negatives = 2
  Sum = 28
  Average = 5.60

Sample Run 2

  Input integer (0 to stop): 4
  Input integer (0 to stop): 8
  Input integer (0 to stop): 24
  Input integer (0 to stop): 94
  Input integer (0 to stop): -1
  Input integer (0 to stop): 43
  Input integer (0 to stop): 13
  Input integer (0 to stop): 0

  # of positives = 6
  # of negatives = 1
  Sum = 185
  Average = 26.43

Exercise 3

Filename: pennies.cpp

This is programming challenge #7 from chapter 5

Write a program that calculates how much a person would earn over a period of time if his or her salary is one penny the first day, two pennies the second day, and continues to double each day. The program should proceed as follows:

Sample Runs

(user input is underlined, to distinguish it from output)

Sample Run 1

Please enter the number of days worked: -1
Invalid number of days.  Try again
Please enter the number of days worked: 0
Invalid number of days.  Try again
Please enter the number of days worked: 5

Day                     Amount Earned
-------------------------------------------
1                       $ 0.01
2                       $ 0.02
3                       $ 0.04
4                       $ 0.08
5                       $ 0.16

Total earnings: $ 0.31

Sample Run 2

Please enter the number of days worked: 18

Day                     Amount Earned
-------------------------------------------
1                       $ 0.01
2                       $ 0.02
3                       $ 0.04
4                       $ 0.08
5                       $ 0.16
6                       $ 0.32
7                       $ 0.64
8                       $ 1.28
9                       $ 2.56
10                      $ 5.12
11                      $ 10.24
12                      $ 20.48
13                      $ 40.96
14                      $ 81.92
15                      $ 163.84
16                      $ 327.68
17                      $ 655.36
18                      $ 1310.72

Total earnings: $ 2621.43

Requirements for all programs


Submitting:

Submit only your source code files through the web submission page. This will consist of the following files:

  sum.cpp
  numbers.cpp
  pennies.cpp