#include <iostream> // cin, cout, <<, >>
#include <string> // string
using namespace std;
int main()
{
const int NUMBER_OF_CITIES = 6;
const int MILEAGE_CHART[NUMBER_OF_CITIES][NUMBER_OF_CITIES]
= { { 0, 97, 90, 268, 262, 130 }, // Daytona Beach
{ 97, 0, 74, 337, 144, 128 }, // Gainesville
{ 90, 74, 0, 354, 174, 201 }, // Jacksonville
{ 268, 337, 354, 0, 475, 269 }, // Miami
{ 262, 144, 174, 475, 0, 238 }, // Tallahassee
{ 130, 128, 201, 269, 238, 0 } }; // Tampa
const string CITY_MENU
= "To determine the mileage between two cities,\n"
"please enter the numbers of 2 cities from this menu:\n\n"
" 0 for Daytona Beach, 1 for Gainesville\n"
" 2 for Jacksonville, 3 for Miami\n"
" 4 for Tallahassee, 5 for Tampa\n\n"
"--> ";
cout << CITY_MENU;
int city1, city2;
cin >> city1 >> city2;
int mileage = MILEAGE_CHART[city1][city2];
cout << "\nThe mileage between those 2 cities is "
<< mileage << " miles.\n";
}
-------- Sample run: To determine the mileage between two cities, please enter the numbers of 2 cities from this menu: 0 for Daytona Beach, 1 for Gainesville 2 for Jacksonville, 3 for Miami 4 for Tallahassee, 5 for Tampa --> 2 5 The mileage between those 2 cities is 201 miles. |
#include "Table.h"
void print(ostream& out, const Table& aTable)
{
for (int row = 0; row < aTable.size(); row++)
{
for (int col = 0; col < aTable[row].size(); col++)
out << aTable[row][col] << '\t';
out << endl;
}
}
|
#include <fstream> // ifstream
#include <cassert> // assert()
using namespace std;
void fill(const string& fileName, Table& aTable)
{
ifstream in(fileName.data()); // open stream to file
assert(in.is_open()); // verify
int rows, // variables
cols; // for dimensions
in >> rows >> cols; // read dimensions
Table locTable(rows, TableRow(cols)); // construct a local
// rows x cols table
for (int r = 0; r < rows; r++) // for each row
for (int c = 0; c < cols; c++) // input cols values
in >> locTable[r][c]; // into row
// assign locTable to aTable
aTable = locTable; // so it has correct
// dimensions
in.close(); // close stream
}
|
void load(const string& fileName, Table& aTable)
{
ifstream in(fileName.data()); // open stream to file
assert(in.is_open()); // verify
Table locTable; // an empty local table
double aValue; // input variable
char separator; // to test for '\n'
for (;;) // loop:
{
TableRow aRow; // start with an empty row
for (;;) // loop:
{
separator = in.peek(); // peek at the next char
if (separator == '\n') break; // if at end of row, exit
in >> aValue; // read a value
if (in.eof()) return; // if eof, quit
aRow.push_back(aValue); // append value to row
} // end loop
in.get(separator); // consume the newline
locTable.push_back(aRow); // append row to table
} // end loop
aTable = locTable; // assign locTable to aTable
in.close(); // close stream
}
|
#include "CartesianSystem.h"
#include <cmath> // sin(), cos(), ...
using namespace std;
// functions to be plotted
double f(double x);
double g(double x);
int main()
{
cout << "This program graphs two functions\n"
<< " (currently y = x*cos(x) and y = x)."
<< "\n\nEnter the first and last X values: ";
double xFirst, xLast;
cin >> xFirst >> xLast;
cout << "\nEnter the first and last Y values: ";
double yFirst, yLast;
cin >> yFirst >> yLast;
CartesianSystem grid(xFirst, yFirst, xLast, yLast);
grid.setPenWidth(3);
grid.drawFunction(g, BLUE);
grid.drawFunction(f, RED);
}
double f(double x) { return x * cos(x); }
double g(double x) { return x; }
--------------------- Sample run: This program graphs two functions... (currently y = x*cos(x) and y = x.) Please enter the minimum and maximum x values: -8 8 Please enter the minimum and maximum y values: -7 7 |
#include "CartesianSystem.h"
#include <cmath> // sin(), cos()
using namespace std;
// functions to be plotted
double f(double x);
double g(double x);
int main()
{
CartesianSystem grid;
grid.setPenWidth(3);
grid.drawRectangle(-1, -1, 1, 1, PURPLE, FRAME);
grid.drawCircle(0, 0, 1, GREEN, FRAME);
grid.drawFunction(g, BLUE);
grid.drawFunction(f, RED);
grid.waitForMouseClick();
grid.clear(YELLOW);
grid.setPenWidth(3);
grid.drawFunction(g, DKGREEN);
grid.drawFunction(f, BLUE);
grid.waitForMouseClick();
grid.clear(BLACK);
grid.drawAxis(YELLOW, 3);
grid.drawFunction(g, AQUA);
grid.drawFunction(f, RED);
}
double f(double x) { return x * cos(x); }
double g(double x) { return x; }
|
void plotPoint(double x, double y, // CartesianSystem coords,
int column, int row, // window (pixel) coords.
CartesianSystem& cs) // where to plot
{
ostringstream sout; // 1. build stringstream
sout << setprecision(DEFAULT_PRECISION) // containing the
<< '(' << x << ',' << y << ") : [" // info we want to
<< column << ',' << row << ']'; // display
cs.drawString(x, y, sout.str()); // 2. display it
}
|