求各位大佬帮帮忙(站外题两道)
  • 板块学术版
  • 楼主cute_overmind
  • 当前回复3
  • 已保存回复3
  • 发布时间2022/11/4 19:59
  • 上次更新2023/10/27 04:18:43
查看原帖
求各位大佬帮帮忙(站外题两道)
681313
cute_overmind楼主2022/11/4 19:59

题目描述

二战期间,有一个专门的密码小组负责破译密码,传过来的密码是一个包含数字或者英文字母的字符串,破译密码的规则是:

1、如果原来字符是大写字母,则解密密码是该大写字母对应的小写字母;

2、如果原来字符是小写字母,则解密密码是该小写字母对应的大写字母;

3、如果原来字符是数字('1' ~ '9'),则解密密码同样是数字,值为10-原数字;

4、字符串结尾要多加一个数,表示传过来的字符串的长度

同学们快写个程序来帮助密码小组破译密码吧!

【输入格式】

一行,1 个字符串 s。

【输出格式】

一行,根据题意输出。

数据

输入
aZ3b

输出

Az7B4

本人代码

#include <iostream>
#include <string>
#include <cstring>
using namespace std;

int main()
{
    string s;
    cin >> s;
    int i;
    for(i = 0;i < s.size();i++)
    {
    	if ('A' <= s[i] && s[i] <= 'Z')
	    {
	        s[i] += 32;
	        cout << char(s[i]);
	    }
	    else if('a' <= s[i] && s[i] <= 'z')
	    {
            s[i] -= 32;
        	cout << char(s[i]);
	    }
	    else if('1' <= s[i] && s[i] <= '9')
	    	cout << int(10 - (s[i] - '0') + '0');
    }
    cout << i;
    return 0;
}

2022/11/4 19:59
加载中...