Search This Blog

Friday, 14 June 2013

Lots of functions using c++

#include <iostream.h>

typedef int Bool;
const Bool TRUE = 1;
const Bool FALSE = 0;

Bool even (int);
Bool odd (int);
int readPosNum();
void testOneNum();
void panic();

void main () {
  int i;
  char c;
  Bool more = TRUE;

  while (cin && more) {
    testOneNum();
    cout << "More? [y = Yes, anything else No]: ";
    cin >> c;
    if (cin) more = (c == 'y');
  }
}

void testOneNum () {
  int i;

  i = readPosNum();
  if (even(i)) cout << "The number " << i << " is even." << endl;
  else cout << "The number " << i << " is odd." << endl;
}

int readPosNum () {
  int j;

  cout << "Enter a number >= 0: ";
  cin >> j;
  while (cin && j < 0) {
    cout << "Unacceptable, reenter: ";
    cin >> j;
  }
  if (cin) return(j);
  else panic();
}

Bool even (int i) {
  if (i == 0) return(TRUE);
  else return(odd(i-1));
}

Bool odd (int i) {
  if (i == 0) return(FALSE);
  else return(even(i-1));
}

void panic() {
  cout << "Disaster! Exiting ..." << endl;
  exit(-1);
}

No comments:

Post a Comment