# 1 write a function whose job is to output some sequence of quot interesting quot 39 5346979

1. Write a function whose job is to output some sequence of “interesting” #&#39;s. The numbers should be separated from one another somehow so they don&#39;t all run together. This function may need to call another function, where the second function determines whether a number is interesting or not.

A. void outputA( unsigned lo, unsigned hi );

The args designate the range [lo, hi]. If lo > hi, then that designates the empty range (no numbers), in which case outputA returns without outputting any numbers. Otherwise, outputA outputs all the numbers in the range that are interesting.

For this problem (A), let&#39;s say all numbers are interesting, so we&#39;ll output all the numbers in the range.

For example, if main says

outputA( 5, 10 );

then outputA will output

5 6 7 8 9 10

For another example, if main says

outputA( 10, 5 );

then outputA won&#39;t output any numbers at all.

B. void outputB( unsigned lo, unsigned hi );

Same idea, but this time only even #&#39;s are interesting.

For example, if main says

outputB( 5, 10 );

then outputB will output

6 8 10

C. void outputC( unsigned lo, unsigned hi );

Same idea for odd #&#39;s, but this time you need to have outputC call another function, odd, that returns whether a given number is odd:

bool odd( unsigned n );

odd&#39;s job is to return whether n is odd.

For example,

odd( 1234 )

returns false because 1234 isn&#39;t an odd number.

outputC&#39;s job is to take each number in the range [lo, hi], pass it to odd to see whether it&#39;s odd, and to use this return value to determine whether to output that number or not.

For example, if main says

outputC( 5, 10 );

then outputC will call odd 6 times and output

5 7 9

(Of course, testing whether a number is odd is so simple that in a serious program we might decide to have outputC test just test for oddness without calling another function, but for this question I want you to actually write and use the odd function.)

D.         void outputD( unsigned lo, unsigned hi );

Same idea for prime numbers. You&#39;ll write and call a function prime:

bool prime( unsigned n ); // return whether n is a prime #

As you probably know, a prime number is a number greater than 1 that has no (positive) factors besides 1 and itself. The first 4 prime numbers are 2, 3, 5, 7.

Pseudocode for a decent way to test for primeness:

//         is n a prime number?

if n is less than 2, then no, it&#39;s not prime, we&#39;re done

for fac = 2, 3, 4, 5, 6, 7, … indefinitely{

if fac

if n is divisible by fac, then no, n is not prime, we&#39;re done

}

(If you know another correct way to check for primeness, feel free to use it instead.)

For example, if main says

outputD( 11, 30 )

then outputD will call prime a total of 20 times, and end up outputting 6 #:

11 13 17 19 23 29

E.         void outputE( unsigned lo, unsigned howMany );

This function also relies on the prime function mentioned above, but outputD&#39;s job is to start at lo and to find and output howMany prime numbers.

For example, if main says

outputE( 30, 5 );

then outputE will output

31 37 41 43 47

F.         void outputF( unsignedhi );

outputF&#39;s job is to output each square number up to hi.

For instance, if main says

outputF( 83 );

then outputF will output

0 1 4 9 16 25 36 49 64 81