📄 encryptiontemplate.cpp
字号:
// Exercise 21.12: EncryptionTemplate.cpp
// This application uses a function template to encrypt integer
// and string values.
#include <iostream> // required to perform C++ stream I/O
#include <cmath> // required to use the C++ math library functions
#include <string> // required to access string functions
using namespace std; // for accessing C++ Standard Library members
// function main begins program execution
int main()
{
// define variables
int value; // original integer
int encryptedInteger = 0; // encrypted integer
string plainText; // string to be encrypted
int response = 0; // menu selection
int singleDigit; // the current ones digit of value
int returnValue; // value returned by encrypt
// while response does not equal three
while ( response != 3 )
{
// prompt the user for and input menu selection
cout << "\nPlease select an option" << endl;
cout << "1 - Encrypt an integer" << endl;
cout << "2 - Encrypt a string" << endl;
cout << "3 - Exit the application" << endl;
cout << "Enter selection: ";
cin >> response;
// encrypt an integer value
if ( response == 1 )
{
// prompt the user for an integer value
cout << "\nEnter an integer value: ";
cin >> value;
// encrypt value one digit at a time
for ( int i = 0; value > 0; i++ )
{
// get the next digit of value
singleDigit = value % 10;
// encrypt the digit
// shift the returnValue to the correct decimal place
returnValue *= static_cast< int >( pow( 10.0, i ) );
// add return value to encryptedInteger
encryptedInteger += returnValue;
// divide value by 10 to remove encrypted digit
value /= 10;
} // end for
// display the encrypted integer
cout << "\nThe encrypted integer is: "
<< encryptedInteger << endl;
encryptedInteger = 0; // reset encryptedInteger
} // end if
else if ( response == 2 ) // encrypt a string
{
cin.ignore(); // remove newline from cin
// prompt the user for a string
cout << "\nEnter a string: ";
getline( cin, plainText );
// display the encrypted string
cout << "\nThe encrypted string is: ";
// encrypt plainText one character at a time
for ( int i = 0; i < plainText.length(); i++ )
{
} // end for
cout << endl; // insert newline for readability
} // end else if
} // end while
cout << endl; // insert newline for readability
return 0; // indicates that program ended successfully
} // end function main
/**************************************************************************
* (C) Copyright 1992-2005 by Deitel & Associates, Inc. and *
* Pearson Education, Inc. All Rights Reserved. *
* DISCLAIMER: The authors and publisher of this book have used their *
* best efforts in preparing the book. These efforts include the *
* development, research, and testing of the theories and programs *
* to determine their effectiveness. The authors and publisher make *
* no warranty of any kind, expressed or implied, with regard to these *
* programs or to the documentation contained in these books. The authors *
* and publisher shall not be liable in any event for incidental or *
* consequential damages in connection with, or arising out of, the *
* furnishing, performance, or use of these programs. *
**************************************************************************/
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -