题目大意:
算盘模拟题,从小到大来看,左边珠子向右移动一格为5,右边珠子向左边移动一格+1
由于没0没有特判,WA了一次。
#include <cstdio>
#include <cstring>
using namespace std;
void print(int t) {
if(t / 5 == 0) {
printf("O-|");
}else {
printf("-O|");
}
int tmp = t % 5;
for(int i = 0; i < tmp; i++) {
printf("O");
}
printf("-");
for(int i = tmp+1; i < 5; i++) {
printf("O");
}
printf("\n");
}
int main() {
int num;
while(scanf("%d",&num) != EOF) {
int t;
if(num == 0) {
printf("O-|-OOOO\n");
continue;
}
while(num) {
t = num % 10;
print(t);
num /= 10;
}
}
return 0;
}