ch5 Flashcards
ch5 checkpoint 5.1 What will the following program segments display? A) x = 2; y = x++; cout << x << y;
A) 32
B) x = 2;
y = ++x;
Cout«_space;x «_space;y;
33
C) x = 2;
y = 4;
cout«_space;x++«–y;
C) 23
D) x = 2;
y = 2 * x++;
cout «_space;x «_space;y;
D) 34
E) x = 99; if (x++ < 100) cout "It is true!\n"; else cout << "It is false!\n";
E) It is true!
F) x = 0; if (++x) cout << "It is true!\n"; else cout << "It is false!\n";
F) It is true!
5.2 Write an input validation loop that asks the user to enter a number in the range of
10 through 25.
5.2 int number;
cout «_space;“Enter a number in the range 10 through 25: “;
cin»_space; number;
while (number < 10 || number > 25)
{
cout «_space;“Error! The number must be in the range “
«_space;“of 10 through 25. Enter a valid number: “;
cin»_space; number;
}
5.3 Write an input validation loop that asks the user to enter ‘Y’ , ‘y’ , ‘N’ , or ‘n’ .
5.3 char letter; cout << "Enter Y for yes or N for no: "; cin >> letter; while (letter != 'Y' && letter != 'y' && letter != 'N' && letter != 'n') { cout << "Error! Enter either Y or N: "; cin >> letter; }
5.4 Write an input validation loop that asks the user to enter “Yes” or “No” .
5.4 string input; cout << "Enter Yes or No: "; cin >> input; while ( (input != "Yes") && (input != "No") ) { cout << "Error! Enter either Yes or No: "; cin >> input; }
5.5 What will the following program segments display? A) int count = 10; do { cout << "Hello World\n"; count++; } while (count < 1);
5.5 A) Hello World
B) int v = 10;
do
cout «_space;v «_space;end1;
while (v < 5);
B) 10
C) int count = 0, number = 0, limit = 4; do { number += 2; count++; } while (count < limit); cout << number << " " << count << endl;
C)
8 4
5.6 Name the three expressions that appear inside the parentheses in the for loop’s
header.
5.6 Initialization, test, and update.
5.7 You want to write a for loop that displays I love to program 50 times. Assume
that you will use a counter variable named count.
A) What initialization expression will you use?
B) What test expression will you use?
C) What update expression will you use?
D) Write the loop.
5.7
A) int count = 1;
B) count
5.8 What will the following program segments display?
A) for (int count = 0; count
5.8 A) 0246810 B) -5-4-3-2-101234 C) 5 8 11 14 17
5.9 Write a for loop that displays your name 10 times.
5.9 for (int count = 1; count «_space;“Chris Coder\n”;
5.10 Write a for loop that displays all of the odd numbers, 1 through 49.
5.10 for (int count = 1; count «_space;count «_space;endl;
5.11 Write a for loop that displays every fifth number, zero through 100.
5.11 for (int count = 0; count «_space;count «_space;endl;
5.12 Write a for loop that repeats seven times, asking the user to enter a number. The
loop should also calculate the sum of the numbers entered.
5.12 int number, total = 0; for (int count = 0; count < 7; count++) { cout << "Enter a number: "; cin >> number; total += number; }
5.13 In the following program segment, which variable is the counter variable and which is the accumulator? int a, x, y = 0; for (x = 0; x > a; y += a; } cout
5.13 The variable x is the counter variable. The variable y is the accumulator.
5.14 Why should you be careful when choosing a sentinel value?
5.14 You must be sure to choose a sentinel value that could not be mistaken as a member of the
data list.
5.15 How would you modify Program 5-13 so any negative value is a sentinel?
5.15 Change the while loop to read:
while (points >= 0)
5.16 What is an output file? What is an input file?
5.16 An output file is a file that data is written to. An input file is a file that data is read from.
5.17 What three steps must be taken when a file is used by a program?
- 17 1. Open the file
- Process the file
- Close the file
5.18 What is the difference between a text file and a binary file?
5.18 A text file contains data that has been encoded as text, using a scheme such ASCII or
Unicode. Even if the file contains numbers, those numbers are stored in the file as a
series of characters. As a result, the file may be opened and viewed in a text editor
such as Notepad. A binary file contains data that has not been converted to text. As a
consequence, you cannot view the contents of a binary file with a text editor.
5.19 What is the difference between sequential access and random access?
5.19 When you work with a sequential access file, you access data from the beginning of the file
to the end of the file. When you work with a random access file, you can jump directly to
any piece of data in the file without reading the data that comes before it.
5.20 What type of file stream object do you create if you want to write data to a file?
5.20 ofstream
5.21 What type of file stream object do you create if you want to read data from a file?
5.21 ifstream
5.22 Write a short program that uses a for loop to write the numbers 1 through 10 to
a file.
5.22 ofstream outputFile(“num.txt”);
for (int num = 1; num «_space;num «_space;endl;
outputFile.close();
5.23 Write a short program that opens the file created by the program you wrote for
Checkpoint 5.22, reads all of the numbers from the file, and displays them.
5.23 ifstream inputFile("num.txt"); int num; while (inputFile >> num) cout << num << endl; inputFile.close();
5.24 The following code has an error. Can you correct it? // Find the error and correct it. ofstream outputFile; string filename = "Test.txt"; outputFile.open(filename);
5.24 ofstream outputFile;
string filename = “Test.txt”;
outputFile.open(filename.c_str());
Short Answer
1. Why should you indent the statements in the body of a loop?
- By indenting the statements, you make them stand out from the surrounding code. This
helps you to identify at a glance the statements that are conditionally executed by a loop.
- Describe the difference between pretest loops and posttest loops.
- The main difference bt pretest loops and posttest loops is one in which the block is to be repeated until the specified condition is no longer true, and the condition is tested before the block is executed and a posttest loop is one in which the block is to be repeated until the specified condition is no longer true, and the condition is tested after the block is executed.
- Why are the statements in the body of a loop called conditionally executed
statements?
- Because they are only executed when a condition is true.
- What is the difference between the while loop and the do-while loop?
- Difference bt the while loop and the do-while loop is in while loop condition is checked at the starting of the loop, if it is true code is the loop is executed and this process is repeated till the condition becomes false and in the do-while loop the checking of condition is done at the end of the loop. so even if the condition is false, inside the loop is executed at least once
- Which loop should you use in situations where you wish the loop to repeat until the
test expression is false, and the loop should not execute if the test expression is false to
begin with?
- The while loop.
- Which loop should you use in situations where you wish the loop to repeat until the
test expression is false, but the loop should execute at least one time?
- the do-while loop is to repeat until the test expression is false, but the loop should execute at least one time
- Which loop should you use when you know the number of required iterations?
- The for loop.