Public feed #889571

Something

public text v1 · immutable
Raw Edit
·published 2008-02-03 00:40 UTC
rendered paste body
/**********************************************************
Course: ENCMP 100 Winter Term, 2008
Assignment: 2
Lab Section: Y7
Lab TA: Sarah
Student: Andrew McWhae
CCID: amcwhae
Date: February 4, 2008
Acknowledgements: I received information from Nico Paul about switch statements.
File name: resue.cpp
Description:
This program deciphers a secret code if and only of the code is valid.
**********************************************************/
#include <iostream>
#include <cmath>
using namespace std;

int main( void )
{
	int code = 0, digit1, digit2, digit3, digit4, digit5, sum, day, rendezvous;
	cout << "Please enter the code to break: " << endl;
	cin >> code;

	if (code <= 9999 || code >= 100000)
		cout << "Decoy message: Not a five-digit number." << endl;
	else
	{
		digit5 = code % 10;
		code /= 10;
		digit4 = code % 10;
		code /= 10;
		digit3 = code % 10;
		code /= 10;
		digit2 = code % 10;
		code /= 10;
		digit1 = code % 10;
		code /= 10;

		sum = digit1 + digit2 + digit3 + digit4 + digit5;
		if (sum%2 !=0)
			cout << "Decoy message: Sum is odd." << endl;
		else
		{
			day = ((digit1*digit2)-digit3);
			if (day < 1 || day > 7)
				cout << "Decoy message: Invalid rescue day." << endl;
			if (digit4==digit5)
				cout << "Decoy message: Invalid rendezvous point." << endl;

			else 
			{
				switch ((digit1*digit2)-digit3)
				{
				case 1:
					cout << "Resue on Monday ";
					break;

				case 2:
					cout << "Resue on Tuesday ";
					break;

				case 3:
					cout << "Resue on Wednesday ";
					break;

				case 4:
					cout << "Resue on Thursday ";
					break;

				case 5:
					cout << "Resue on Friday ";
					break;

				case 6:
					cout << "Resue on Saturday ";
					break;

				case 7:
					cout << "Resue on Sunday ";
					break;
				}
				if (digit4 > digit5)
					rendezvous = digit5 + 1;
				else if (digit4 < digit5)
					rendezvous = digit5 - 1;

				switch (rendezvous)
				{
				case '2':
					cout << "at the fountain." << endl;
					break;

				case '7':
					cout << "at the large tree." << endl;
					break;

				case '8':
					cout << "at the church." << endl;
					break;
				}
			}
		}
	}
	return 0;
}