uva 10082

//uva 10082

#include<iostream>
#include<string>
using namespace std;
char b[26]={'Q','W','E','R','T','Y','U','I','O','P','A','S','D','F','G','H','J','K','L','Z','X','C','V','B','N','M'};
bool isnum(char a)
{
 if(a>='0'&&a<='9')
  return true;
 return false;
}
bool isletter(char a)
{
 if(a>='A'&&a<='Z')
  return true;
 return false;
}
bool isop(char a)
{
 if(!isnum(a)&&!isletter(a))
  return true;
 return false;
}
void output(string a)
{
 cout<<a<<endl;
}
int main()
{
 string a;
 int i;
 while(getline(cin,a))
 {
  for(i=0;i<a.length();i++)
  {
   if(isnum(a[i]))
   {
    switch(a[i])
    {
    case '1': a[i]='`';
    break;
    case '2': a[i]='1';
    break;
    case '3': a[i]='2';
    break;
    case '4': a[i]='3';
    break;
    case '5': a[i]='4';
    break;
    case '6': a[i]='5';
    break;
    case '7': a[i]='6';
    break;
    case '8': a[i]='7';
    break;
    case '9': a[i]='8';
    break;
    case '0': a[i]='9';
    break;
    }
   }
   if(a[i]==' ')
    continue;
   if(isletter(a[i]))
   {
    int j;
    for(j=0;j<26;j++)
    {
     if(a[i]==b[j])
     {
      a[i]=b[j-1];
      continue;
     }
    }
   }
   if(isop(a[i]))
   {
    switch(a[i])
    {
     case '-': a[i]='0';break;
     case '=': a[i]='-';break;
     case '[': a[i]='P';break;
     case ']': a[i]='[';break;
     case '\\':a[i]=']';break;
     case ';':a[i]='L';break;
     case '\'':a[i]=';';break;
     case ',':a[i]='M';break;
     case '.':a[i]=',';break;
     case '/':a[i]='.';break;
     }
   }
  }
  output(a);
 }
 return 0;
}

你可能感兴趣的:(uva,10082)