axyd icon

Lab 8, part 1

axyd | PRO | 05/10/16 10:11:56 PM UTC | 0 ⭐ | 657 👁️ | Never ⏰ | []
C++ |

1.87 KB

|

None

|

0 👍

/

0 👎

// This program is a driver that tests a function comparing the 
// contents of two int arrays. 
#include <iostream>
#include <vector>
using namespace std;
// Function Prototype 
bool testPIN(vector <int>, vector <int>, const int);
 
int main()
{
    const int NUM_DIGITS = 7; // Number of digits in a PIN 
 
    vector <int> pin1 = { 2, 4, 1, 8, 7, 9, 0 };
    vector <int> pin2 = { 2, 4, 6, 8, 7, 9, 0 };
    vector <int> pin3 = { 1, 2, 3, 4, 5, 6, 7 };
 
    /*
    int pin1[NUM_DIGITS] = { 2, 4, 1, 8, 7, 9, 0 }; // Base set of values. 
    int pin2[NUM_DIGITS] = { 2, 4, 6, 8, 7, 9, 0 }; // Only 1 element is 
    // different from pin1. 
    int pin3[NUM_DIGITS] = { 1, 2, 3, 4, 5, 6, 7 }; // All elements are 
    // different from pin1. 
    */
 
    if (testPIN(pin1, pin2, NUM_DIGITS))
        cout << "ERROR: pin1 and pin2 report to be the same.\n";
    else
        cout << "SUCCESS: pin1 and pin2 are different.\n";
 
    if (testPIN(pin1, pin3, NUM_DIGITS))
        cout << "ERROR: pin1 and pin3 report to be the same.\n";
    else
        cout << "SUCCESS: pin1 and pin3 are different.\n";
 
    if (testPIN(pin1, pin1, NUM_DIGITS))
        cout << "SUCCESS: pin1 and pin1 report to be the same.\n";
    else
        cout << "ERROR: pin1 and pin1 report to be different.\n";
 
    system("pause");
    return 0;
}
 
//****************************************************************** 
// The following function accepts two int arrays. The arrays are * 
// compared. If they contain the same values, true is returned. * 
// If they contain different values, false is returned. * 
//****************************************************************** 
bool testPIN(vector <int> custPIN, vector <int> databasePIN, const int size)
{
    for (int index = 0; index < size; index++)
    {
        if (custPIN[index] != databasePIN[index])
            return false; // We've found two different values. 
    }
    return true; // If we make it this far, the values are the same. 
}

Comments