simpio
: #include "simpio.h"
Function name | Description |
---|---|
getInteger("prompt") |
repeatedly prompts until an integer is typed; returns it |
getReal("prompt") |
repeatedly prompts until a double is typed; returns it |
getLine("prompt") |
repeatedly prompts and reads/returns an entire line of text |
getYesOrNo("prompt") |
repeatedly prompts for a Yes/No answer; return it as a bool |
Note: cin
is the standard C++ method to get input and
these helper library functions use it inside them. cin
has
some issues for easy use in our course:
if (condition) { statement; statement; .. } else { statement; statement; .. } statement; statement; ..Condition must be of type
bool
.
Example:
string fullName = getLine("Student name? "); int age = getInteger("How old are you? "); double gpa = getReal("What's your GPA so far? "); if (getYesOrNo("Destroy the universe?")) { ... }Condition must be of type
bool
. Repeats the statments in the body until condition
is no longer true. Each time, all statements in the body are executed, and then the condition is checked.
Write a program to compute who won the no-confidence motion in the Lok Sabha
Government (votes against the motion)? 325 Opposition (votes for the motion)? 199 Government won!
Code:
/* This program prints the outcome of a no-confidence motion in the parliament. */ #include <iostream> #include "simpio.h" using namespace std; int main() { int government = getInteger("Government (votes against the motion)? "); int opposition = getInteger("Opposition (votes for the motion)? "); if (government > opposition) { cout << "Government won!" << endl; } else { if (opposition > government) { cout << "Opposition won!" << endl; } else { cout << "A tie." << endl; } } return 0; }
if (condition1) { if (condition2) { } } else { if (condition3) { } }For a single statement in the body, do not necessarily need braces
if (condition) statement; else { statement; statement; ... }orif (condition) { statement; statement; ... } else statement;If/Else can be stringed together
if (condition1) { ... } else if (condition2) { ... } else if (condition3) { ... } else { ... }Precedence rules for arithmetic operators: division (/), multiplication (*), add and subtract.
Logical operators
Precedence rules for logical operators: not (!), and (&&), or (||)
Precedence overall: arithmetic > relational > logical
Example
5 * 7 >= 3 + 5 * (7 - 1) && 7 <= 11
true