6.5k views
0 votes
Complete function PrintPopcornTime(), with int parameter bagOunces, and void return type. If bagOunces is less than 3, print "Too small". If greater than 10, print "Too large". Otherwise, compute and print 6 * bagOunces followed by " seconds". End with a newline. Example output for ounces = 7:42 seconds#include void PrintPopcornTime(int bagOunces) {}int main(void) {int userOunces;scanf("%d", &userOunces);PrintPopcornTime(userOunces);return 0;}2. Write a function PrintShampooInstructions(), with int parameter numCycles, and void return type. If numCycles is less than 1, print "Too few.". If more than 4, print "Too many.". Else, print "N: Lather and rinse." numCycles times, where N is the cycle number, followed by "Done.". End with a newline. Example output with input 2:1: Lather and rinse.2: Lather and rinse.Done. Hint: Declare and use a loop variable.#include /* Your solution goes here */int main(void) {int userCycles;scanf("%d", &userCycles);PrintShampooInstructions(userCycles);return 0;}

1 Answer

4 votes

Answer:

Function 1:

#include <stdio.h> //for using input output functions

// start of the function PrintPopcornTime body having integer variable //bagOunces as parameter

void PrintPopcornTime(int bagOunces){

if (bagOunces < 3){ //if value of bagOunces is less than 3

printf("Too small"); //displays Too small message in output

printf("\\"); } //prints a new line

//the following else if part will execute when the above IF condition evaluates to //false and the value of bagOunces is greater than 10

else if (bagOunces > 10){

printf("Too large"); //displays the message: Too large in output

printf("\\"); //prints a new line }

/*the following else part will execute when the above If and else if conditions evaluate to false and the value of bagOunces is neither less than 3 nor greater than 10 */

else {

/* The following three commented statements can be used to store the value of bagOunces * 6 into result variable and then print statement to print the value of result. The other option is to use one print statement printf("%d",bagOunces * 6) instead */

//int result;

//result = bagOunces * 6;

//printf("%d",result);

printf("%d",bagOunces * 6); /multiplies value of bagOunces to 6

printf(" seconds");

// seconds is followed with the value of bagOunces * 6

printf("\\"); }} //prints a new line

int main(){ //start of main() function body

int userOunces; //declares integer variable userOunces

scanf("%d", &userOunces); //reads input value of userOunces

PrintPopcornTime(userOunces);

//calls PrintPopcornTime function passing the value in userOunces

return 0; }

Step-by-step explanation:

Function 2:

#include <stdio.h> //header file to use input output functions

// start of the function PrintShampooInstructions body having integer variable numCycles as parameter

void PrintShampooInstructions(int numCycles){

if(numCycles < 1){

//if conditions checks value of numCycles is less than 1 or not

printf("Too few."); //prints Too few in output if the above condition is true

printf("\\"); } //prints a new line

//else if part is executed when the if condition is false and else if checks //value of numCycles is greater than 4 or not

else if(numCycles > 4){

//prints Too many in output if the above condition is true

printf("Too many.");

printf("\\"); } //prints a new line

//else part is executed when the if and else if conditions are false

else{

//prints "N: Lather and rinse." numCycles times, where N is the cycle //number, followed by Done

for(int N = 1; N <= numCycles; N++){

printf("%d",N);

printf(": Lather and rinse. \\");}

printf("Done.");

printf("\\");} }

int main() //start of the main() function body

{ int userCycles; //declares integer variable userCycles

scanf("%d", &userCycles); //reads the input value into userCycles

PrintShampooInstructions(userCycles);

//calls PrintShampooInstructions function passing the value in userCycles

return 0;}

I will explain the for loop used in PrintShampooInstructions() function. The loop has a variableN which is initialized to 1. The loop checks if the value of N is less than or equal to the value of numCycles. Lets say the value of numCycles = 2. So the condition evaluates to true as N<numCycles which means 1<2. So the program control enters the body of loop. The loop body has following statements. printf("%d",N); prints the value of N followed by

printf(": Lather and rinse. \\"); which is followed by printf("Done.");

So at first iteration:

printf("%d",N); prints 1 as the value of N is 1

printf(": Lather and rinse. \\"); prints : Lather and rinse and prints a new line \\.

As a whole this line is printed on the screen:

1: Lather and rinse.

Then the value of N is incremented by 1. So N becomes 2 i.e. N = 2.

Now at second iteration:

The loop checks if the value of N is less than or equal to the value of numCycles. We know that the value of numCycles = 2. So the condition evaluates to true as N<numCycles which means 2=2. So the program control enters the body of loop.

printf("Done."); prints Done after the above two lines.

printf("%d",N); prints 2 as the value of N is 2

printf(": Lather and rinse. \\"); prints : Lather and rinse and prints a new line \\.

As a whole this line is printed on the screen:

2: Lather and rinse.

Then the value of N is incremented by 1. So N becomes 2 i.e. N = 3.

The loop again checks if the value of N is less than or equal to the value of numCycles. We know that the value of numCycles = 2. So the condition evaluates to false as N<numCycles which means 3>2. So the loop breaks.

Now the next statement is:

printf("Done."); which prints Done on the screen.

So as a whole the following output is displayed on the screen:

1: Lather and rinse.

2: Lather and rinse.

Done.

The programs along with their outputs are attached.

Complete function PrintPopcornTime(), with int parameter bagOunces, and void return-example-1
Complete function PrintPopcornTime(), with int parameter bagOunces, and void return-example-2
User Hedi
by
5.0k points