C++实现将简单密码译回原文的方法

本文实例讲述了C++实现将简单密码译回原文的方法。分享给大家供大家参考,具体如下:

/*
* 作 者: 刘同宾
* 完成日期:2012 年 11 月 28 日
* 版 本 号:v1.0
* 输入描述:
* 问题描述: 有一行电文,已按下面规律译成密码:
* A-->Z a-->z
* B-->Y b-->y
* C-->X c-->x
* 即第一个字母变成第26个字母,第i个字母变成第(26-i+1)个字母,非字母字符不变
*  要求将密码译回原文。
* 程序输出:
* 问题分析:略
* 算法设计:略
*/
#include<iostream>
using namespace std;
int main()
{
    int j,n;
    char ch[80];
    cout<<"input cipher code:";
    gets(ch);
    cout<<"cipher code:"<<ch<<endl;
    j=0;
    while(ch[j]!='\0')
    {
        if((ch[j]>='A')&&(ch[j]<='Z'))
        {
            ch[j]=155-ch[j];
        }
        else if((ch[j]>='a')&&(ch[j]<='z'))
        {
            ch[j]=219-ch[j];
        }
        else
        {
            ch[j]=ch[j];
        }
        j++;
    }
    n=j;
    cout<<"original text:";
    for(j=0;j<n;j++)
    {
        cout<<ch[j];
    }
    cout<<endl;
    return 0;
}

运行效果截图如下:

希望本文所述对大家C++程序设计有所帮助。

(0)

相关推荐

  • C++全密码生成的实现代码

    这里所谓的"全密码"指的是指定字符串中所有可能出现的密码.以字符串"0123456789"为例,可能出现的2位密码会有100个,即L^N个.(L代表字符串的长度,N代表要生成密码的位数). 第一种方法:递归.这个比较容易理解,每分解出一个字符,设成新串,然后靠到上一个串上即可.代码如下: void CpasswordCreateDlg::CreatePass1(CString inStr,int m,CString outStr) { if (m==0) { fp.

  • C++实现将简单密码译回原文的方法

    本文实例讲述了C++实现将简单密码译回原文的方法.分享给大家供大家参考,具体如下: /* * 作 者: 刘同宾 * 完成日期:2012 年 11 月 28 日 * 版 本 号:v1.0 * 输入描述: * 问题描述: 有一行电文,已按下面规律译成密码: * A-->Z a-->z * B-->Y b-->y * C-->X c-->x * 即第一个字母变成第26个字母,第i个字母变成第(26-i+1)个字母,非字母字符不变 * 要求将密码译回原文. * 程序输出: *

  • Java基于Socket实现简单的多线程回显服务器功能示例

    本文实例讲述了Java基于Socket实现简单的多线程回显服务器功能.分享给大家供大家参考,具体如下: 需要两个类,一个是EchoServer,代表服务器.另外一个是EchoServerClient,代表客户端.代码如下: package interview; import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.io.PrintWriter

  • Java实现简单密码加密功能

    本文实例为大家分享了Java实现简单密码加密案例,供大家参考,具体内容如下 需求: 首先将一组数据倒序,然后将每位数字都加上5,再用和除以10的余数代替该数字, 最后将第一位和最后一位数字交换. 请任意给定一个小于8位的整数, 然后,把加密后的结果在控制台打印出来. 分析: 1.数据小于8位数 2.数据倒序 3.每位数字都加上5,再用和除以10的余数代替该数字 4.最后将第一位和最后一位数字交换 5.打印输出 代码实现: public class Encrypt{ public static v

  • 误删除$ORACLE_HOME/dbs下的参数文件、密码文件快速重建的方法

    误删除$ORACLE_HOME/dbs下的参数文件.密码文件如何快速重建呢?其实方法很简单的,下面小编给大家分享下实现代码,具体内容如下: [oracle@11g dbs]$ pwd /home/oracle/app/oracle/product/11.2.0/dbhome_1/dbs [oracle@11g dbs]$ ll total 24 -rw-rw----. 1 oracle oinstall 1544 Mar 11 13:46 hc_orcl.dat -rw-r--r--. 1 or

  • JS实现至少包含字母、大小写数字、字符的密码等级的两种方法

    本文实例讲述了JS实现至少包含字母.大小写数字.字符的密码等级的两种方法.分享给大家供大家参考.具体如下: 前言 密码,如果设置的太简单,很容易就被攻破,所以很多网站将密码设置的要求设置的挺严格,一般是字母.数字.字符3选2,区分大小写.对于设置得太简单的密码,予以错误提示.或者予以密码等级(低中高)显示,让用户设置高级密码.那如何利用JS实现呢? 实现代码如下: function passwordLevel(password) { var Modes = 0; for (i = 0; i <

  • MySQL数据库误操作后快速回滚的方法

    基本上每个跟数据库打交道的程序员(当然也可能是你同事)都会碰一个问题,MySQL误操作后如何快速回滚?比如,delete一张表,忘加限制条件,整张表没了.假如这还是线上环境核心业务数据,那这事就闹大了.误操作后,能快速回滚数据是非常重要的. binlog2sql快速回滚 首先,确认你的MySQL server开启了binlog,设置了以下参数: [mysqld] server-id = 1 log_bin = /var/log/mysql/mysql-bin.log max_binlog_siz

  • PHP简单实现DES加密解密的方法

    本文实例讲述了PHP简单实现DES加密解密的方法.分享给大家供大家参考,具体如下: des加密: function des_encrypt($str, $key) { $block = mcrypt_get_block_size('des', 'ecb'); $pad = $block - (strlen($str) % $block); $str .= str_repeat(chr($pad), $pad); return mcrypt_encrypt(MCRYPT_DES, $key, $s

  • 修改MySQL的默认密码的四种小方法

    对于windows平台来说安装完MySQL数据库后,系统就已经默认生成了许可表和账户,你不需要像在Unix平台上那样执行 mysql_install_db脚本来生成帐户和相应权限许可表.但是如果不是用MSI格式来安装MySQL的话,就需要在安装完以后,手动给root帐户添加新密码,因为默认情况下的root没有开启密码保护功能,如果不重新赋予root帐户密码,那么许多非本机的连接将无法成功. 方法1:用SET PASSWORD命令,具体更新密码步骤如下: c:>mysql -u root mysq

  • php简单备份与还原MySql的方法

    本文实例讲述了php简单备份与还原MySql的方法.分享给大家供大家参考,具体如下: 一.备份: <?php header ( "content-Type: text/html; charset=utf-8" ); //备份数据库 $host="localhost"; $user="root";//数据库账号 $password="123456";//数据库密码 $dbname="test";//数据

  • Python简单生成8位随机密码的方法

    本文实例讲述了Python简单生成8位随机密码的方法.分享给大家供大家参考,具体如下: #!/usr/bin/env python # -*- coding: utf-8 -*- import random import string #第一种方法 seed = "1234567890abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ!@#$%^&*()_+=-" sa = [] for i in range(8): sa.

随机推荐