SOURCE FILE: tile01.pseudo
#include <fstream>
#include <iostream>
#include <string>
#include <assert.h>
using namespace std;
/* ************************************************************ */
/* GLOBAL CONSTANTS */
/* ************************************************************ */
/* Define the size of the array in this single location */
const int MAXSIDE = 100 ;
/* Declare a special constant for use in a stub */
int REPEATS = 0 ; //
/* ************************************************************ */
/* MAIN PROGRAM */
/* ************************************************************ */
int main ()
{
/* PROTOTYPES - notice how parameters
reflect the required data flow */
bool askPermission () ;
void getParams (string& filename, int& rows, int& columns) ;
void getImage(char buffer[MAXSIDE][MAXSIDE],
string filename, int& height, int& width) ;
void doTileJob(char buffer[MAXSIDE][MAXSIDE],
int rows, int cols, int imgHeight, int imgWidth) ;
/* VARIABLES */
string filename ;
int rows, cols ; // dimensions of the tiling
int imgHeight, imgWidth ; // dimensions of the tile
char buffer [MAXSIDE][MAXSIDE] ; // big square array
bool ok ; // indicates whether user wishes to continue
/* FIND OUT IF THE USER WOULD LIKE TO DO A TILING. DO
THIS BY CALLING FUNCTION: askPermision. SAVE THE
RETURN VALUE IN THE VARIABLE: ok */
while (ok)
{
/* GET THE FILE NAME AND THE TILING DIMENSIONS FROM
THE FROM USER BY CALLING FUNCTION: getParams. */
/* LOAD IMAGE FROM FILE INTO THE "UPPER LEFT CORNER"
OF buffer BY CALLING FUNCTION: getImage. */
/* DO THE TILING FOR THE USER BY CALLING FUNCTION:
doTileJob. */
/* ASK THE USER IF HE WOULD LIKE TO TILE ANOTHER
FILE AND GET THE ANSWER.*/
}
return 0 ;
}
/* ************************************************************ */
/* askPermission */
/* ************************************************************ */
bool askPermission ()
{
/* PUT STUB CODE IN HERE */
/* OUTPUT A MESSAGE (USE A STATEMENT THAT BEGINS WITH cout
<< THE MESSAGE LETS THE USER KNOW THAT THIS FUNCTION
HAS BEEN CALLED. */
/* THEN ADD 1 TO THE GLOBAL VARIABLE: REPEATS (WE'RE GOING
TO DO A LITTLE 'HACK' TO MAKE THE LOOP
IN main JUST RUN A FEW TIMES AND STOP.) */
/* FINALLY, WRITE SOME CODE THAT CAUSES THE FUNCTION TO
RETURN true IF REPEATS <=5, AND OTHERWISE RETURN
false. */
}
/* ************************************************************ */
/* getParams */
/* ************************************************************ */
void getParams (string& filename, int& rows, int& columns)
{
/* PUT STUB CODE IN HERE */
/* JUST WRITE A LINE TO INDICATE THAT
THE FUNCTION getParams IS RUNNING. */
}
/* ************************************************************ */
/* getImage */
/* ************************************************************ */
void getImage(char buffer[MAXSIDE][MAXSIDE], string filename,
int& imgHeight, int& imgWidth)
{
/* PUT STUB CODE IN HERE */
/* JUST WRITE A LINE TO INDICATE THAT
THE FUNCTION getImage IS RUNNING. */
}
/* ************************************************************ */
/* doTileJob */
/* ************************************************************ */
void doTileJob(char buffer[MAXSIDE][MAXSIDE],
int rows, int cols, int imgHeight, int imgWidth)
{
/* PUT STUB CODE IN HERE */
/* JUST WRITE A LINE TO INDICATE THAT
THE FUNCTION doTileJob IS RUNNING. */
}
/* ************************************************************ */
/* ************************************************************ */
/* ************************************************************ */