//Diego Martinez CSC5 Chapter 8, P.487, #1
/*******************************************************************************
* DISPLAY CHARGE ACCOUNT VALIDATION
* ______________________________________________________________________________
* This program allows the user to enter a charge account number and checks
* whether the number exists in a predefined list of valid account numbers using
* a linear search. The program then displays a message indicating whether the
* entered account number is valid or invalid.
*
* Computation is based on the Formula:
* accounts[i] = accountNumber
*______________________________________________________________________________
* INPUT
* accountNumber : Charge account number entered by the user
*
* OUTPUT
* Message stating whether the account number is VALID or INVALID
*******************************************************************************/
#include <iostream>
using namespace std;
int main()
{
// Array of valid charge accounts
int accounts[18] = {
5658845, 4520125, 7895122, 8777541, 8451277, 1302850,
8080152, 4562555, 5552012, 5050552, 7825877, 1250255,
1005231, 6545231, 3852085, 7576651, 7881200, 4581002
};
int accountNumber;
bool found = false;
//Ask user for account number
cout << "Enter a charge account number: ";
cin >> accountNumber;
// Linear search
for (int i = 0; i < 18; i++)
{
if (accounts[i] == accountNumber)
{
found = true;
}
}
// Display result
if (found)
{
cout << "The account number is VALID." << endl;
}
else {
cout << "The account number is INVALID." << endl;
}
return 0;
}
Ly9EaWVnbyBNYXJ0aW5legkJCQkJQ1NDNQkJCQkgICAgQ2hhcHRlciA4LCBQLjQ4NywgIzEKLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKKiAgRElTUExBWSBDSEFSR0UgQUNDT1VOVCBWQUxJREFUSU9OIAoqIF9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwoqIFRoaXMgcHJvZ3JhbSBhbGxvd3MgdGhlIHVzZXIgdG8gZW50ZXIgYSBjaGFyZ2UgYWNjb3VudCBudW1iZXIgYW5kIGNoZWNrcyAKKiB3aGV0aGVyIHRoZSBudW1iZXIgZXhpc3RzIGluIGEgcHJlZGVmaW5lZCBsaXN0IG9mIHZhbGlkIGFjY291bnQgbnVtYmVycyB1c2luZyAKKiBhIGxpbmVhciBzZWFyY2guIFRoZSBwcm9ncmFtIHRoZW4gZGlzcGxheXMgYSBtZXNzYWdlIGluZGljYXRpbmcgd2hldGhlciB0aGUgCiogZW50ZXJlZCBhY2NvdW50IG51bWJlciBpcyB2YWxpZCBvciBpbnZhbGlkLgoqIAoqIENvbXB1dGF0aW9uIGlzIGJhc2VkIG9uIHRoZSBGb3JtdWxhOgoqCWFjY291bnRzW2ldID0gYWNjb3VudE51bWJlcgoqX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCiogSU5QVVQKKglhY2NvdW50TnVtYmVyIDogQ2hhcmdlIGFjY291bnQgbnVtYmVyIGVudGVyZWQgYnkgdGhlIHVzZXIKKiAKKiBPVVRQVVQKKglNZXNzYWdlIHN0YXRpbmcgd2hldGhlciB0aGUgYWNjb3VudCBudW1iZXIgaXMgVkFMSUQgb3IgSU5WQUxJRAoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLwojaW5jbHVkZSA8aW9zdHJlYW0+CnVzaW5nIG5hbWVzcGFjZSBzdGQ7CgppbnQgbWFpbigpCnsKCS8vIEFycmF5IG9mIHZhbGlkIGNoYXJnZSBhY2NvdW50cwoJaW50IGFjY291bnRzWzE4XSA9IHsKCQk1NjU4ODQ1LCA0NTIwMTI1LCA3ODk1MTIyLCA4Nzc3NTQxLCA4NDUxMjc3LCAxMzAyODUwLAoJCTgwODAxNTIsIDQ1NjI1NTUsIDU1NTIwMTIsIDUwNTA1NTIsIDc4MjU4NzcsIDEyNTAyNTUsCgkJMTAwNTIzMSwgNjU0NTIzMSwgMzg1MjA4NSwgNzU3NjY1MSwgNzg4MTIwMCwgNDU4MTAwMgoJfTsKCQoJaW50IGFjY291bnROdW1iZXI7Cglib29sIGZvdW5kID0gZmFsc2U7CgkKCS8vQXNrIHVzZXIgZm9yIGFjY291bnQgbnVtYmVyCgljb3V0IDw8ICJFbnRlciBhIGNoYXJnZSBhY2NvdW50IG51bWJlcjogIjsKCWNpbiA+PiBhY2NvdW50TnVtYmVyOwoJCgkvLyBMaW5lYXIgc2VhcmNoIAoJZm9yIChpbnQgaSA9IDA7IGkgPCAxODsgaSsrKQoJewoJCWlmIChhY2NvdW50c1tpXSA9PSBhY2NvdW50TnVtYmVyKQoJCXsKCQkJZm91bmQgPSB0cnVlOwoJfQp9CgovLyBEaXNwbGF5IHJlc3VsdAppZiAoZm91bmQpCnsgCgljb3V0IDw8ICJUaGUgYWNjb3VudCBudW1iZXIgaXMgVkFMSUQuIiA8PCBlbmRsOwp9CmVsc2UgewoJY291dCA8PCAiVGhlIGFjY291bnQgbnVtYmVyIGlzIElOVkFMSUQuIiA8PCBlbmRsOwp9CnJldHVybiAwOwp9