Description

定义一个字符类Character,只有一个char类型的数据成员。

重载它的+、-、<<和>>运算符,其中+、-的第二个操作数是int类型的整数n。“+”用于返回以当前字符之后的第n个字符为属性值的对象,“-”用于返回当前字符之前的第n个字符为属性值的对象。如样例所示。

Input

第1行N>0表示测试用例个数。

每个测试用包括1个字符(小写英文字母)和1个int类型的整数。

Output

输出有N行,每行输入对应一行输出,每行输出包括对应输入字符之后的第n个字符,以及该字符之前的第n个字符。如样例中第2个用例输入字符是“a”,整数是“1”,那么“a”之后的第1个字符是”b“,"a"之前的第1个字符是”z“;注意:输入的整数可能是负数。

Sample Input

3 a 0 a 1 a -1

Sample Output

a a b z z b

HINT

Append Code

int main()
{
    int cases, data;
    Character ch;
    cin>>cases;
    for (int i = 0; i < cases; i++)
    {
        cin>>ch;
        cin>>data;
        cout<<(ch + data)<<" "<<(ch - data)<<endl;
    }
}
 
 
代码
#include<iostream>
using namespace std;
class Character
{

public:char s;
    Character(char s = 0):s(s) {}
   char operator +(int n)
   {
       int temp = s+n;
       int t;
       if(temp > 'z')
            t = s+(temp - 'z' -1 )%26;
        else if(temp < 'a')
            t = 'z' - (s - temp -1)%26;
        else
            t = temp;
        return t;
   }
    char operator-(int n)
    {
        return (*this)+(-n);
    }
    friend ostream & operator <<(ostream &os,Character &c);
    friend  istream & operator >>(istream &is ,Character &c);
};
ostream & operator <<(ostream &os,Character &c)
{
    os<<c.s;
    return os;
}
istream & operator >>(istream &is ,Character &c)
{
    is>>c.s;
    return is;
}
int main()
{
    int cases, data;
    Character ch;
    cin>>cases;
    for (int i = 0; i < cases; i++)
    {
        cin>>ch;
        cin>>data;
        cout<<(ch + data)<<" "<<(ch - data)<<endl;
    }
}

Problem A: 重载字符的加减法的更多相关文章

  1. 实验12:Problem C: 重载字符的加减法

    Home Web Board ProblemSet Standing Status Statistics   Problem C: 重载字符的加减法 Problem C: 重载字符的加减法 Time ...

  2. Problem G: 沉迷字符的WJJ (LCS)

    Contest - 河南省多校连萌(四) Problem G: 沉迷字符的WJJ Time Limit: 1 Sec  Memory Limit: 128 MBSubmit: 6  Solved: 5 ...

  3. ZOJ 4010 Neighboring Characters(ZOJ Monthly, March 2018 Problem G,字符串匹配)

    题目链接  ZOJ Monthly, March 2018 Problem G 题意  给定一个字符串.现在求一个下标范围$[0, n - 1]$的$01$序列$f$.$f[x] = 1$表示存在一种 ...

  4. hdu 5427 A problem of sorting(字符排序)

    Problem Description There are many people's name and birth in a list.Your task is to print the name ...

  5. Codeforces Round #253 (Div. 2), problem: (B)【字符串匹配】

    简易字符串匹配,题意不难 #include <stdio.h> #include <string.h> #include <math.h> #include < ...

  6. Problem B: 重载函数:max

    Description 编写两个名为max的函数,它们是重载函数 ,用于求两个整数或实数的最大值.它们的原型分别是: int max(int a,int b); double max(double a ...

  7. Poj(1251),Prim字符的最小生成树

    题目链接:http://poj.org/problem?id=1251 字符用%s好了,方便一点. #include <stdio.h> #include <string.h> ...

  8. HDU 2087 剪花布条(字符串匹配,KMP)

    HDU 2087 剪花布条(字符串匹配,KMP) Description 一块花布条,里面有些图案,另有一块直接可用的小饰条,里面也有一些图案.对于给定的花布条和小饰条,计算一下能从花布条中尽可能剪出 ...

  9. HDU 1686 Oulipo / POJ 3461 Oulipo / SCU 2652 Oulipo (字符串匹配,KMP)

    HDU 1686 Oulipo / POJ 3461 Oulipo / SCU 2652 Oulipo (字符串匹配,KMP) Description The French author George ...

随机推荐

  1. python实现简单二分查找

    #!/usr/bin/pythondef binary_search(list, item): low = 0 high = len(list)-1 while low <= high: mid ...

  2. DAY 25多态、反射、异常处理

    一.面向对象与面向过程分析 1.print(len('123')) # 面向过程 #清晰知道操作的功能,但不能明确操作的具体对象,需要传入参数. 2.print('123'.__len__()) # ...

  3. postman(九):postman接口测试脚本集成到jenkins

    本篇的目的是实现使用jenkins远程执行postman接口测试脚本 准备工作:一台linux服务器(可以用虚拟机搭建一个),linux服务器上安装好node.js.newman,部署好jenkins ...

  4. Petrozavodsk Winter Camp, Day 8, 2014, Fine Brochures

    1的个数-块的个数+多减的个数+flag 多减的只会在一个循环末尾出现 #include <bits/stdc++.h> using namespace std; #define rep( ...

  5. 【Java】【14】从后往前每隔n位加逗号(用于货币)

    1,String类型的数据 /** * @param strValue 待处理的数 * @param num 隔的位数 */ public static String separateStr(Stri ...

  6. C++ DWORD 转byte char 数组、指针

    C++ DWORD 转byte char 数组.指针 byte byteData[1024]; // byte数组,示例 DWORD dwData = dwReadBytes; // dword数据, ...

  7. PHP反射学习总结

    反射(Reflection) PHP的反射机制提供了一套反射API,用来访问和使用类.方法.属性.参数和注释等,比如可以通过一个对象知道这个对象所属的类,这个类包含哪些方法,这些方法需要传入什么参数, ...

  8. 探索 | “中医+AI”会诊电力设备故障

    在 AlphaGo 成功挑战围棋世界冠军后,人工智能(AI)“深度学习”家喻户晓.电力企业有机会着眼自身战略,利用落地的 AI 技术和应用聚焦业务流程优化.效率提升以及对全新机遇的发掘.本文针对设备故 ...

  9. Python logging系统

    我们都知道python在2.x之后自带了一个模块import logging. 但是每次都要写log很麻烦,同时我想把info,debug之类的指令通过颜色分离开来. 于是写了一个简单的类似glog的 ...

  10. transform,transtion属性

    transform:变化类型,transtion变化方式