首页 > 其他 > 详细

简单密码破解

时间:2015-05-09 19:04:30      阅读:214      评论:0      收藏:0      [点我收藏+]
#include <iostream>
#include <string>
#include <vector>
using namespace std;


int alpha2num(char c)
{
	int num = 0;
	switch(c)
	{
	case '1':
		num = 1;
		break;
	case 'a':
	case 'b':
	case 'c':
		num = 2;
		break;
	case 'd':
	case 'e':
	case 'f':
		num = 3;
		break;
	case 'g':
	case 'h':
	case 'i':
		num = 4;
		break;
	case 'j':
	case 'k':
	case 'l':
		num = 5;
		break;
	case 'm':
	case 'n':
	case 'o':
		num = 6;
		break;
	case 'p':
	case 'q':
	case 'r':
	case 's':
		num = 7;
		break;
	case 't':
	case 'u':
	case 'v':
		num = 8;
		break;
	case 'w':
	case 'x':
	case 'y':
	case 'z':
		num = 9;
		break;
		
	case '0':
		num = 0;
		break;
	default:
		num =0;
		break;
		
	}
	return num;
}
int main()
{
	string str;
	vector<char> vec;
	char ch;
	while(cin>>str)
	{
		for(size_t i = 0; i < str.length(); ++i)
		{
			if(str[i]>= 'a' && str[i] <='z')
			{
				int num = alpha2num(str[i]);
				ch = '0' + num;
				
			}
			else if(str[i] >= 'A' && str[i] <='Z')
			{
				 ch = 'a' +(str[i] - 'A' +1)%26;
			}
			else
			{
				ch = str[i];
			}
			vec.push_back(ch);

		}
		for(size_t i = 0; i < vec.size(); ++i)
		{
			cout<<vec[i];
		}
		cout<<endl;

	}
	return 0;

}

简单密码破解

原文:http://blog.csdn.net/xiaohanstu/article/details/45603495

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!