定義一個字符類Character,只有一個char類型的數據成員。
重載它的+、-、<<和>>運算符,其中+、-的第二個操作數是int類型的整數n。“+”用於返回以當前字符之後的第n個字符為屬性值的對象,“-”用於返回當前字符之前的第n個字符為屬性值的對象。如樣例所示。
第1行N>0表示測試用例個數。
每個測試用包括1個字符(小寫英文字母)和1個int類型的整數。
輸出有N行,每行輸入對應一行輸出,每行輸出包括對應輸入字符之後的第n個字符,以及該字符之前的第n個字符。如樣例中第2個用例輸入字符是“a”,整數是“1”,那麼“a”之後的第1個字符是”b“,"a"之前的第1個字符是”z“;注意:輸入的整數可能是負數。
한국어<
中文
فارسی
English
ไทย
All Copyright Reserved 2010-2011 SDUSTOJ TEAM
GPL2.0 2003-2011 HUSTOJ Project TEAM
Anything about the Problems, Please Contact Admin:admin
#include<iostream>
using namespace std;
class Character{
public:
char c;
friend istream& operator >> (istream&,Character&);
friend char operator + (Character&, int);
friend char operator - (Character&, int);
};
istream& operator >> (istream& is,Character& c){
is>>c.c;
return is;
}
char operator + (Character& c, int o2){
return (c.c + o2 % 26 - 'a' + 26 ) % 26 + 'a';
}
char operator - (Character& c, int o2){
return (c.c - o2 % 26 - 'a' + 26 ) % 26 + 'a';
}
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;
}
}