char
type and values when we also have string
type and values? Efficiency (out of scope for this course).
while (condition) { statement; statement; .. } statement; statement; ..Draw flowchart on what happens in what order for the while statement. Show that if and while are very similar, except that while has a back-edge in the flow chart. Highlight that if the condition is false, then the loop body does not execute even once.
Example: prompt the user for numbers until the user types -1, then output the sum of numbers:
Enter a number: 10
Enter a number: 20
Enter a number: 30
Enter a number: -1
Sum is: 60
Program:
#include <iostream> #include "simpio.h" using namespace std; int main() { int sum = 0; int num = getInteger("Enter a number: "); while (num != -1) { sum += num; num = getInteger("Enter a number: "); } cout << "Sum is " << sum << endl; return 0; }
How is the condition formed? It can be any boolean value which can be formed by a constant (show a while(false) and a while(true) loop) or a variable or an expression. Expressions must be bool-valued and can involve arithmetic, relational and logical operators.
Exercise: write a program that allows you to sum at most 10 numbers at a time.
for (int i = 0; i < count; i++) { statement; statement; ... }Repeats the statements in the body
count
times.
i = 0
is the initializer and is run once before the loop starts
i > count
is the condition that is checked before entering the loop at every repitition/iteration (including the first entry).
i++
is run each time the code gets to the end of the 'body'
for (int i = 0; i < 3; i++) { cout << "I love COL100" << endl; }