将tape中的'o'变换成1,' '变换成0,'.'不用管,得到的二进制整数就是对应的字符ASCII码。
以下是我的代码:
#include<iostream>
#include<string>
#include<cstdio>
using namespace std;
int main()
{
/*
freopen("data.in","r",stdin);
freopen("data.out","w",stdout);
//*/
string tape;
getline(cin,tape);
while(getline(cin,tape) && tape!="___________")
{
char ch(0);
for(int i=tape.size()-2,j=1;i>=2;i--)
{
if(tape[i]=='.')
continue;
if(tape[i]=='o')
{
ch+=j;
j*=2;
}
else if(tape[i]==' ')
j*=2;
}
cout<<ch;
}
return 0;
}
posted on 2011-04-07 12:55
lee1r 阅读(304)
评论(0) 编辑 收藏 引用 所属分类:
题目分类:字符串处理