cs102 introduction to computer programming chapter 5 looping

51
CS102 Introduction to Computer Programming Chapter 5 Looping

Upload: pamela-chase

Post on 18-Jan-2018

230 views

Category:

Documents


0 download

DESCRIPTION

Increment and Decrement Operators Increment means increase by one (Num = Num + 1) = = (Num +=1) = = (Num++) Decrement means decrease by one (Num = Num - 1) = = (Num -=1) = = (Num--) ++ and-- are unary operators Prefix modeincrement/decrement is done first Postfix modeincrement/decrement is done last Operand must be an lvalue Concept - ++ and -- are operators that add and subtract one from their operands.

TRANSCRIPT

Page 1: CS102 Introduction to Computer Programming Chapter 5 Looping

CS102Introduction to Computer

Programming

Chapter 5 Looping

Page 2: CS102 Introduction to Computer Programming Chapter 5 Looping

Chapter 5 Topics• The Increment and

Decrement Operators• Introduction to Loops• The while Loop• Counters• Letting the User Control a

Loop• Keeping a Running Total

• Sentinels• The do-while Loop• The for Loop• Deciding Which Loop to Use• Nested Loops• Breaking Out of a Loop• The continue Statement• Using Loops for Input

Validation

Page 3: CS102 Introduction to Computer Programming Chapter 5 Looping

Increment and Decrement Operators• Increment means increase by one

(Num = Num + 1) = = (Num +=1) = = (Num++)• Decrement means decrease by one

(Num = Num - 1) = = (Num -=1) = = (Num--)• ++ and-- are unary operators

Prefix mode increment/decrement is done firstPostfix mode increment/decrement is done last

• Operand must be an lvalue

Concept - ++ and -- are operators that add and subtract one from their operands.

Page 4: CS102 Introduction to Computer Programming Chapter 5 Looping

Program 5-1// This program demonstrates the increment and

decrement operators.#include <iostream>using namespace std;int main(){

int BigVal = 10, SmallVal = 1; 

cout << "BigVal is " << BigVal << " and SmallVal is " << SmallVal << endl;SmallVal++;BigVal--;

cout << "BigVal is " << BigVal << " and SmallVal is " << SmallVal << endl;++SmallVal;--BigVal;cout << "BigVal is " << BigVal << " and SmallVal is " << SmallVal << endl;return 0;

}Program Output BigVal is 10 and SmallVal is 1BigVal is 9 and SmallVal is 2BigVal is 8 and SmallVal is 3

Page 5: CS102 Introduction to Computer Programming Chapter 5 Looping

Program 5-2#include <iostream>using namespace std;int main(){

int BigVal = 10, SmallVal = 1;cout << "BigVal starts as " << BigVal;cout << " and SmallVal starts as " << SmallVal << endl;cout << "BigVal--: " << BigVal-- << endl;cout << "SmallVal++: " << SmallVal++ << endl;cout << "Now BigVal is: " << BigVal << endl;cout << "Now SmallVal is: " << SmallVal << endl;cout << "--BigVal: " << --BigVal << endl;cout << "++SmallVal: " << ++SmallVal << endl;return 0;

}

Program Output BigVal starts as 10 and SmallVal

starts as 1BigVal--: 10SmallVal++: 1Now BigVal is: 9Now SmallVal is: 2--BigVal: 8++SmallVal: 3

Note the difference between Postfix andPre fix

Page 6: CS102 Introduction to Computer Programming Chapter 5 Looping

E. x = 99;if(x++ < 100) cout <<"it is true";else cout <<"it is false";

F. x = 1;if(-- x) cout <<"it is true";else cout <<"it is false";

Sample ++ -- operationsA. x = 2;

y = x++;cout << x <<“,”<< y;

B. x = 2;y = ++ x; cout << x <<“,”<< y;

C. x = 2;y = 4;cout << x++ <<“,”;cout << --y;

D. x = 2;y = 2 * x++;cout << x <<“,”<< y;

3, 2

3 ,3

2 ,3

3 ,4

Page 7: CS102 Introduction to Computer Programming Chapter 5 Looping

Loops• A loop is a control structure which can

cause a statement or group of statements to repeatwhile pre-test loop (may never execute)do-while post-test loop (always execute

once)for pre-test loop (may never execute)

Concept - A loop is a part of a program that can repeat

Page 8: CS102 Introduction to Computer Programming Chapter 5 Looping

The while Loop• The expression is tested for true or false

– if true, the statements are executed and the test is made again

– if false, the loop is exited

while (expression) statement; statement body

while (number != 99){

cin >>number;cout << number;

}

while (number != 99)cin >>number;

or

Page 9: CS102 Introduction to Computer Programming Chapter 5 Looping

while statement flow chart

while(expression)

Statementbody

Yes

No

Page 10: CS102 Introduction to Computer Programming Chapter 5 Looping

while Is a Pre-test Loop• A pre-test loop executes zero or more times

– make sure you have a mechanism for terminating the loop.

Concept - A pre-test loop evaluates its test-expression before each iteration

int x = 0;while (x>10)

{cout <<"hello";}

Executes zero times

int x = 0;while (x<10)

{cout <<"hello";}

This is an infinite loop

Page 11: CS102 Introduction to Computer Programming Chapter 5 Looping

Program 5-3// This program demonstrates a simple while

loop.#include <iostream>using namespace std;int main(){

int Number = 0; 

cout << "This program will let you enter number after\n";cout << "number. Enter 99 when you want to quit the ";cout << "program.\n";while (Number != 99)

cin >> Number;return 0;

}

Program Output This program will let you enter number

after number. Enter 99 when you want to quit the program.

1 [Enter] 2 [Enter]30 [Enter]75 [Enter]99 [Enter]

Page 12: CS102 Introduction to Computer Programming Chapter 5 Looping

Terminating a LoopA loop that does not have a way of stopping is called

an infinite loopint Test = 0;while (Test < 10) cout << “Hello\n”;

A null statement is also an infinite loop, but it does nothing forever:while (Test < 10);

Page 13: CS102 Introduction to Computer Programming Chapter 5 Looping

Programming Style and the while Loop

• If there is only one statement repeated by the loop, it should appear on the line after the while statement and be indented one additional level

• If the loop repeats a block, the block should begin on the line after the while statement and each line inside the braces should be indented

Page 14: CS102 Introduction to Computer Programming Chapter 5 Looping

Counters• A counter controls the number of iterations that a

loop is executed– Make sure the counter is properly initialized– Be careful where the counter increments or decrements.

int num = 0;while (num++ <10){

cout <<num;}

Concept - a Counter is a variable that regularly increments or decrements each time a loop iterates

What will the output look like

12345678910

Page 15: CS102 Introduction to Computer Programming Chapter 5 Looping

Program 5-4// This program displays the numbers 1 through 10

and // their squares.#include <iostream>using namespace std;int main(){

int Num = 1;cout << "Number Number Squared\n";cout << "-------------------------\n";while (Num <= 10){

cout << Num << "\t\t" << (Num * Num) << endl;

Num++;}return 0;

}

Program Output Number Number Squared-------------------------

1 12 43 94 165 256 367 498 649 8110 100

The increment in this while loop is in the statement body

Page 16: CS102 Introduction to Computer Programming Chapter 5 Looping

Program 5-5// This program displays the numbers 1

through 10 and // their squares. #include <iostream>using namespace std;int main(){

int Num = 0; 

cout << "Number Number Squared\n";cout << "-------------------------\n";while (Num++ < 10)

cout << Num << "\t\t" << (Num * Num) << endl;return 0;

}

Program Output Number Number Squared-------------------------

1 12 43 94 165 256 367 498 649 8110 100

The increment in this while loop is in the conditional expression

Page 17: CS102 Introduction to Computer Programming Chapter 5 Looping

Concept - Loops can be designed to repeat until the user enters a particular value.

Letting the User Control a Loop• Be careful !!

– Range check all inputs• Be sure that data conforms to the specification

– Reasonableness check all counters• Check for abnormally large counters and loop

controls– Give the user and your program a way out

• provide a mechanism for terminating the loop if an error is encountered

Page 18: CS102 Introduction to Computer Programming Chapter 5 Looping

Program 5-6/* This program averages a set of test scores

for multiple students. It lets the user decide how many. */

#include <iostream>using namespace std;int main(){

int NumStudents, Count = 0; 

cout << "This program will give you the average of three\n";cout << "test scores per student.\n";cout << "How many students do you have test scores for? ";cin >> NumStudents;cout << "Enter the scores for each of the students.\n";cout << fixed << precision(2);

while (Count++ < NumStudents){int Score1, Score2, Score3;float Average;cout << "\nStudent " << Count << ": ";cin >> Score1 >> Score2 >> Score3;Average = (Score1 + Score2 + Score3) / 3.0;cout << "The average is " << Average << ".\n";}return 0;

}

If the user enters too large a number there is no way to change it

Page 19: CS102 Introduction to Computer Programming Chapter 5 Looping

Program Output with Example Input

This program will give you the average of three test scores per student.How many students do you have test scores for? 3 [Enter]Enter the scores for each of the students.

Student 1: 75 80 82 [Enter]The average is 79.

Student 2: 85 85 90 [Enter]The average is 86.67.

 Student 3: 60 75 88 [Enter]The average is 74.33.

Page 20: CS102 Introduction to Computer Programming Chapter 5 Looping

Keeping a Running Total• Define a variable outside the while loop to

accumulate the running total• Initialize the variable, usually to zero• Allow the while loop to add to the running total

each iteration.• Be careful with how you use the running total

when you exit the loop– divide by zero– over flows and underflows

Concept - A running total is a sum of numbers that accumulates with each iteration.

Page 21: CS102 Introduction to Computer Programming Chapter 5 Looping

Program 5-7/* This program takes daily sales figures over a period of time and calculates their total. */

#include <iostream>using namespace std;int main(){int Days, Count = 0;float Total = 0.0;cout << "For how many days do you have sales figures? ";cin >> Days;while (Count++ < Days){ float Sales; cout << "Enter the sales for day " ;

cout << Count << ": "; cin >> Sales; Total += Sales;}

cout << precision(2) << fixed << showpoint;cout << "The total sales are $" << Total << endl;reuturn 0;

}

Program Output For how many days do you have sales figures? 5 [Enter]Enter the sales for day 1: 489.32 [Enter]Enter the sales for day 2: 421.65 [Enter]Enter the sales for day 3: 497.89 [Enter]Enter the sales for day 4: 532.37 [Enter]Enter the sales for day 5: 506.92 [Enter]The total sales are $2448.15

Page 22: CS102 Introduction to Computer Programming Chapter 5 Looping

Sentinels• Provides a mechanism for terminating a loop

after an unspecified number of iterations• A sentinel should be a value that would not

normally be part of the input list– ie, a negative value for test scores– must be the same data type

Concept - A sentinel is a special value that marks the end of a list of values.

Page 23: CS102 Introduction to Computer Programming Chapter 5 Looping

Sample Program• This program calculates the average score for each

student• It incorporates:

– user controlled loops• user inputs the number of students

– counters• counts the number of scores entered

– sentinels• checks for no more scores

Page 24: CS102 Introduction to Computer Programming Chapter 5 Looping

Program 5-8/* This program calculates the total

number of points a soccer team has earned over a series of games. The user enters a series of point values, then -1 when finished. */

#include <iostream>using namespace std;int main(){

int Count = 0, Points = 0, Total = 0;cout << "Enter the number of points your team has earned\n";cout << "so far in the season, then enter -1 when finished.\n";

while (Points != -1){ Count++; cout << "Enter the points

for game " ; cout << Count << ": "; cin >> Points; if (Points != -1)

Total += Points;}cout << "The total points are

" << Total << endl;}return 0;

}

Page 25: CS102 Introduction to Computer Programming Chapter 5 Looping

Program Output with Example Input

Enter the number of points your team has earned so far in the season, then enter -1 when you are finished.Enter the points for game 1: 7 [Enter]Enter the points for game 2: 9 [Enter]Enter the points for game 3: 4 [Enter]Enter the points for game 4: 6 [Enter]Enter the Points for game 5: 8 [Enter]Enter the points for game 6: -1 [Enter]The total points are 34

Page 26: CS102 Introduction to Computer Programming Chapter 5 Looping

The do-while Loop• An upside down while loop

– must be terminated with a semicolon after the closing parenthesis of the test-expression

• The statement block executes at least once– The expression is tested at the end of each

iteration• Perfect for controlling menu selections

Page 27: CS102 Introduction to Computer Programming Chapter 5 Looping

do while Statement Flow Chart

while(expression)

Statementbody

Yes

No

Page 28: CS102 Introduction to Computer Programming Chapter 5 Looping

Program 5-9/* This program demonstrates the use of a do-

while loop*/#include <iostream>using namespace std;int main(){

int Score1, Score2, Score3;float Average;char Again;do{

cout << "Enter 3 scores and I will average them: ";cin >> Score1 >> Score2 >> Score3;Average = (Score1 + Score2 +

Score3) / 3.0;cout << "The average is " <<

Average << ".\n";

Program Output Enter 3 scores and I will average them:

80 90 70 [Enter]The average is 80.Do you want to average another set?

(Y/N) y [Enter]Enter 3 scores and I will average them:

60 75 88 [Enter]The average is 74.333336.

Do you want to average another set? (Y/N) n [Enter]

cout << "Do you want to average another set? (Y/N) ";

cin >> Again;} while (Again == 'Y' || Again == 'y');return 0;

}

Page 29: CS102 Introduction to Computer Programming Chapter 5 Looping

Program 5-10/* This program displays all of the numbers in

a file.*/

#include <iostream>#include <fstream>using namespace std;

int main(){

int numbers;ifstream inputFile;

inputFile.open(“numbers.txt”);if (!inputFile)cout << “Error opening file.\n”;

else{inputFile >> number;while (!inputFile.eof() ){cout << number << endl;inputFile >> number;}inputFile.close()}return 0;

}

Page 30: CS102 Introduction to Computer Programming Chapter 5 Looping

Program 5-12/* This program displays a menu and asks the

user to make a selection. A switch statement determines which item the user has chosen. A do-while loop repeats the program until the user selects item 4 from the menu.*/

#include <iostream>using namespace std;int main(){

int Choice, Months;float Charges;cout.setf(ios::fixed | ios::showpoint);cout.precision(2);do{

cout << "\n\t\tHealth Club Membership Menu\n\n";

cout << "1. Standard Adult Membership\n";cout << "2. Child Membership\n";cout << "3. Senior Citizen Membership\n";cout << "4. Quit the Program\n\n";cout << "Enter your choice: ";cin >> Choice;if (Choice != 4){ cout << "For how many months? "; cin >> Months;}

Page 31: CS102 Introduction to Computer Programming Chapter 5 Looping

Program continuesswitch (Choice){ case 1: Charges = Months * 40.00; cout << "The total charges are $"; cout << Charges << endl; break; case 2: Charges = Months * 20.00; cout << "The total charges are $"; cout << Charges << endl; break;

case 3: Charges = Months * 30.00; cout << "The total charges are $"; cout << Charges << endl; break;

case 4: cout << "Thanks for using this ";

cout << "program.\n"; break; default: cout << "The valid choices

are 1-4. "; cout << "Try again.\n"; } #end of switch } while (Choice != 4);return 0;}

Page 32: CS102 Introduction to Computer Programming Chapter 5 Looping

Program Output with Example Input

Health Club Membership Menu 1. Standard Adult Membership2. Child Membership3. Senior Citizen Membership4. Quit the ProgramEnter your choice: 1 [Enter]For how many months 12 [Enter]The total charges are $480.00  Health Club Membership Menu 1. Standard Adult Membership2. Child Membership3. Senior Citizen Membership4. Quit the ProgramEnter your choice: 4 [Enter]Thanks for using this program.

Page 33: CS102 Introduction to Computer Programming Chapter 5 Looping

The for Loop• for (initialization; test; update)

{Place as many statements here as needed;

}

initialization

updateStatementstestYes

No

Page 34: CS102 Introduction to Computer Programming Chapter 5 Looping

Program 5-13/* This program displays the numbers 1

through 10 and their squares.*/ #include <iostream>using namespace std;int main(){

int Num; 

cout << "Number Number Squared\n";cout << "-------------------------\n";

 for (Num = 1; Num <= 10; Num++){

cout << Num << '\t\t' ;cout<< (Num * Num) << endl;

}return 0;

}

Program OutputNumber Number Squared-------------------------

1 12 43 94 165 256 367 498 649 8110 100

Page 35: CS102 Introduction to Computer Programming Chapter 5 Looping

Parts of the for loop• Initialization (an assignment statement)

– sets up the counter with a starting value– only done once

• Test (a relational expression)– Tests the counter against a specified condition

• Update (an assignment statement)– changes the counter by the specified amount

• Statements (any valid C++ Statement)– statements executed only if the test results in a true condition.

Page 36: CS102 Introduction to Computer Programming Chapter 5 Looping

Examples

cin >> savings;for(;savings<1e7;)

{cout <<"I still need to work";cin >> deposit;savings += deposit;}

Adds deposits to your initial savings account until you have at least a million dollars

Prints Happy birthday as many times as you are years old

Prints the numbers 1 thru 9 but skips 7

cin >> age;for (num=age; num>0; num--)

cout <<"Happy Birthday";

for (num=1; num< 10; num++){

if (num== 7)continue;

cout <<"\nThe count is " <<num;}

Page 37: CS102 Introduction to Computer Programming Chapter 5 Looping

Program 5-14// This program takes daily sales figures for one

week and calculates their total.*/#include <iostream>using namespace std;int main(){

const int Days = 7;int Count;float Total;for (Count = 1, Total = 0.0; Count <= Days; Count++){

float Sales;cout << "Enter the sales for day ";

cout << Count << ": ";cin >> Sales;Total += Sales;

}

cout << precision(2) << fixed << showpoint;cout << "The total

sales are $" << Total << endl;` return 0;}

Program Output Enter the sales for day 1: 489.32 [Enter]Enter the sales for day 2: 421.65 [Enter]Enter the sales for day 3: 497.89 [Enter]Enter the sales for day 4: 532.37 [Enter]Enter the sales for day 5: 506.92 [Enter]Enter the sales for day 6: 489.01 [Enter]Enter the sales for day 7: 476.55 [Enter]The total sales are $3413.71

Defines and initializes a running total

Page 38: CS102 Introduction to Computer Programming Chapter 5 Looping

Omitting the for Loop’s Expressions

for (int num =1; Num <= 10; Num++) cout << Num << “\t\t” << (Num * Num) << endl;

Orint Num = 1;for ( ;; ){ if (Num <= 10)

cout << Num << “\t\t” << (Num * Num) << endl;elsebreak;Num++;

}

Page 39: CS102 Introduction to Computer Programming Chapter 5 Looping

Complex for Loops• Initializing multiple variables;

– Any number of variables can be initialized– assignment statements are separated by a ,

• Logical and relational test conditions– as long as the expression results in true or false

• Updating multiple variables– Same as for initializing variables

• Variables can be declared within the for loop– limits their scope to the for loop

Page 40: CS102 Introduction to Computer Programming Chapter 5 Looping

Deciding Which Loop to Use• while loops are useful when you might not want the

loop to execute at all– while you are home answer the phone

• do-while loops are useful when the loop must execute at least one time– let the phone ring until it is answered

• for loops are useful when you know the number of times the loop must execute– let the phone ring 5 times then hang up

Page 41: CS102 Introduction to Computer Programming Chapter 5 Looping

Nested Loops• An inner loop goes through all of its

iterations for each iteration of an outer loop• Inner loops complete their iterations faster

than outer loops• To get the total number of iterations of a

nested loop multiply the number of iterations of all the loops

Page 42: CS102 Introduction to Computer Programming Chapter 5 Looping

Program 5-15// This program averages test scores. It

asks the user for the number of students and the number of test scores per student.*/

#include <iostream>using namespace std;int main(){

int NumStudents, NumTests, Total;float Average;

 cout << "This program averages test scores.\n";cout << "For how many students do you have scores? ";cin >> NumStudents;cout << "How many test scores does each student have? ";cin >> NumTests;

for (int student = 1; student <= NumStudents; student ++){Total = 0;for (int test = 1; test <= NumTests; test ++){int Score;cout << "Enter score " << test << " for ";cout << "student " << student << ": ";cin >> Score;Total += Score;}Average = Total / NumTests;cout << "The average score for student " << student;cout << " is " << Average << ".\n\n";}return 0;

}

Outer for loop

Inner for loop

Page 43: CS102 Introduction to Computer Programming Chapter 5 Looping

Program Output with Example Input

This program averages test scores.For how many students do you have scores? 2 [Enter]How many test scores does each student have? 3 [Enter]Enter score 1 for student 1: 84 [Enter]Enter score 2 for student 1: 79 [Enter]Enter score 3 for student 1: 97 [Enter]The average for student 1 is 86.

 Enter score 1 for student 2: 92 [Enter]Enter score 2 for student 2: 88 [Enter]Enter score 3 for student 2: 94 [Enter]The average for student 2 is 91.

Page 44: CS102 Introduction to Computer Programming Chapter 5 Looping

Breaking Out of a Loop• Used to prematurely terminate the execution

of a while, do-while or for loop– Same statement used in the switch statement

• When the break statement is encountered the program jumps the the next statemetn following the loop.

• Gives the user an opportunity to terminate an infinite loop

Concept - The break statement causes a loop to terminate early

Page 45: CS102 Introduction to Computer Programming Chapter 5 Looping

Program 5-16// This program raises the user's number

to the powers of 0 through 10.*/ #include <iostream>#include <math.h>  using namespace std;int main(){

int Value;char Choice;

 cout << "Enter a number: ";cin >> Value;cout << "This program will raise " <<

Value;

cout << " to the powers of 0 through 10.\n";for (int Count = 0; Count < 10; Count++){cout << Value << " raised to the power of ";cout << Count << " is " << pow(Value, Count);cout << "\nEnter Q to quit or any other key ";cout << "to continue. ";cin >> Choice;if (Choice == 'Q' || Choice == 'q')break;}return 0;

}

Allows the loop to be prematurely terminated

Page 46: CS102 Introduction to Computer Programming Chapter 5 Looping

Program Output

Enter a number: 2 [Enter]This program will raise 2 to the powers of 0 through 10.2 raised to the power of 0 is 1Enter Q to quit or any other key tocontinue. C [Enter]2 raised to the power of 1 is 2Enter Q to quit or any other key to continue. C [Enter]2 raised to the power of 2 is 4Enter Q to quit or any other key to continue. Q [Enter]

Page 47: CS102 Introduction to Computer Programming Chapter 5 Looping

The continue Statement• Any statements that follow the continue are

ignored– Execution goes to test portion of the while and

do-while and to the update part of the for loop• Can be used to

– handle special cases – exclude invalid input from affecting the

execution of the loop

Concept - The continue statement causes a loop to stop its current iteration and begin the next one.

Page 48: CS102 Introduction to Computer Programming Chapter 5 Looping

Program 5-17// This program calculates the charges for video rentals. Every third video is

free.*/#include <iostream>#include <iomanip>using namespace std;int main(){

int VideoCount = 1, NumVideos;float Total = 0.0;char Current;cout << "How many videos are being rented? ";cin >> NumVideos;

do{ if ((VideoCount % 3) == 0) { cout << "Video #" << VideoCount << " is free!\n";continue; }cout << "Is video #" << VideoCount;

cout << " a current release? (Y/N)"; cin >> Current; if (Current == 'Y' || Current == 'y')Total += 3.50; elseTotal += 2.50; } while (VideoCount++ < NumVideos);cout << precision(2) << fixed;cout << "The total is $" << Total;return 0;

}Program Output

How many Videos are being rented? 6 [Enter]Is video #1 a current release? y [Enter]Is video #2 a current release? n [Enter]Video #3 is free!Is video #4 a current release? n [Enter]Is video #5 a current release? y [Enter]Video #6 is free!The total is $12.00

Skips this iteration

Page 49: CS102 Introduction to Computer Programming Chapter 5 Looping

Program Output with Example Input

Program Output How many Videos are being rented? 6 [Enter]Is video #1 a current release? y [Enter]Is video #2 a current release? n [Enter]Video #3 is free!Is video #4 a current release? n [Enter]Is video #5 a current release? y [Enter]Video #6 is free!The total is $12.00

Page 50: CS102 Introduction to Computer Programming Chapter 5 Looping

Using Loops for Input Validation• A loop can let the user re-enter data as

many times as necessary until the values are in range.– Particularly useful if the program must have

valid input in order to continue– Be sure to let the user know what valid data is

Concept - A loop can be used to create input routines that repeat until acceptable data is entered.

Page 51: CS102 Introduction to Computer Programming Chapter 5 Looping

Program 5-18/* This program calculates the number of

soccer teams that a youth league may create from the number of available players. Input validation I demonstrated with do-while loops.*/

#include <iostream>using namespace std; int main(){

int Players, Max, NumTeams, LeftOver;  do

{ cout << "What is the maximum number of players per team? ";cin >> Max;if (Max < 9 || Max > 15){ cout << "You should have at least 9 but no\n"; cout << "more than 15 per team.\n";}

} while (Max < 9 || Max > 15);  do

{cout << "How many players are available? ";cin >> Players;if (Players < 0) cout << "Please enter a positive number.\n";} while (Players < 0);NumTeams = Players / Max;LeftOver = Players % Max;cout << "There will be " << NumTeams << " teams with\n";cout << LeftOver << " players left over.\n";return 0;

}