//Ryan Robateau CSC5 Chapter 8, P. 487, #1
//
/*******************************************************************************
*
* DETERMINE ACCOUNT NUMBER VALIDITY
* _____________________________________________________________________________
* This program prompts the user to enter their account number
* and compares it to each of the values in the array to see if
* it is valid or not.
* _____________________________________________________________________________
******************************************************************************/
#include <iostream>
using namespace std;
int searchlist(int accountnum[], int useraccountnum);
const int SIZE = 18;
int main ()
{
int positionfound;
int useraccountnum; // INPUT - User Account
int accountnum[SIZE] = {5658845, 4520125, 7895122,
8777541, 8451277, 1302850,
8080152, 4562555, 5552012,
5050552, 7825877, 1250255,
1005231, 6545231, 3852085,
7576651, 7881200, 4581002};
cout << "Enter Your Account Number: ";
cin >> useraccountnum;
positionfound = searchlist(accountnum, useraccountnum);
if (positionfound == -1)
cout << endl << "Number invalid";
else
cout << endl << "Number Valid";
return 0;
}
int searchlist(int accountnum[], int useraccountnum)
{
int index = 0;
int position = -1;
bool found = false;
while (index < SIZE && !found)
{
if (accountnum[index]== useraccountnum)
{
found = true;
position = index;
}
index++;
}
return position;
}
Ly9SeWFuIFJvYmF0ZWF1ICAgICAgICAgCQkgIENTQzUgICAgICAJCQkgICBDaGFwdGVyIDgsIFAuIDQ4NywgIzEKLy8KLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKICoKICogREVURVJNSU5FIEFDQ09VTlQgTlVNQkVSIFZBTElESVRZCiAqIF9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCiAqIFRoaXMgcHJvZ3JhbSBwcm9tcHRzIHRoZSB1c2VyIHRvIGVudGVyIHRoZWlyIGFjY291bnQgbnVtYmVyCiAqIGFuZCBjb21wYXJlcyBpdCB0byBlYWNoIG9mIHRoZSB2YWx1ZXMgaW4gdGhlIGFycmF5IHRvIHNlZSBpZgogKiBpdCBpcyB2YWxpZCBvciBub3QuCiAqIF9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCiAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCiAjaW5jbHVkZSA8aW9zdHJlYW0+CiB1c2luZyBuYW1lc3BhY2Ugc3RkOwogCiBpbnQgc2VhcmNobGlzdChpbnQgYWNjb3VudG51bVtdLCBpbnQgdXNlcmFjY291bnRudW0pOwogY29uc3QgaW50IFNJWkUgPSAxODsKIAogaW50IG1haW4gKCkKIHsKIAlpbnQgcG9zaXRpb25mb3VuZDsKIAlpbnQgdXNlcmFjY291bnRudW07CQkvLyBJTlBVVCAtIFVzZXIgQWNjb3VudAogCWludCBhY2NvdW50bnVtW1NJWkVdID0gezU2NTg4NDUsIDQ1MjAxMjUsIDc4OTUxMjIsIAoJCQkJCQkJODc3NzU0MSwgODQ1MTI3NywgMTMwMjg1MCwKCQkJCQkJCTgwODAxNTIsIDQ1NjI1NTUsIDU1NTIwMTIsCgkJCQkJCQk1MDUwNTUyLCA3ODI1ODc3LCAxMjUwMjU1LAoJCQkJCQkJMTAwNTIzMSwgNjU0NTIzMSwgMzg1MjA4NSwKCQkJCQkJCTc1NzY2NTEsIDc4ODEyMDAsIDQ1ODEwMDJ9OwoJY291dCA8PCAiRW50ZXIgWW91ciBBY2NvdW50IE51bWJlcjogIjsKCWNpbiA+PiB1c2VyYWNjb3VudG51bTsKCQoJcG9zaXRpb25mb3VuZCA9IHNlYXJjaGxpc3QoYWNjb3VudG51bSwgdXNlcmFjY291bnRudW0pOwoJaWYgKHBvc2l0aW9uZm91bmQgPT0gLTEpCgkJY291dCA8PCBlbmRsIDw8ICJOdW1iZXIgaW52YWxpZCI7CgllbHNlCgkJY291dCA8PCBlbmRsIDw8ICJOdW1iZXIgVmFsaWQiOwoJcmV0dXJuIDA7CgkKIH0KIGludCBzZWFyY2hsaXN0KGludCBhY2NvdW50bnVtW10sIGludCB1c2VyYWNjb3VudG51bSkKIHsKIAlpbnQgaW5kZXggPSAwOwogCWludCBwb3NpdGlvbiA9IC0xOwogCWJvb2wgZm91bmQgPSBmYWxzZTsKIAkKIAl3aGlsZSAoaW5kZXggPCBTSVpFICYmICFmb3VuZCkKIAl7CiAJCWlmIChhY2NvdW50bnVtW2luZGV4XT09IHVzZXJhY2NvdW50bnVtKQogCQl7CiAJCQlmb3VuZCA9IHRydWU7CiAJCQlwb3NpdGlvbiA9IGluZGV4OwogCQl9CiAJCWluZGV4Kys7CiAJCQogCX0KIAlyZXR1cm4gcG9zaXRpb247CiAJCiB9