#include<stdio.h> #include<string.h> int main() { int n,count=0; while (scanf("%d",&n)!=EOF) { if (n == 0)break; count++; printf("Case #%d:\n", count); getchar(); while (n--) { char s[2000]; int a[3] = { 0 }; int b[3] = { 0 }; gets(s); int len = strlen(s); for (int i = 0; i < len; i++) { if (s[i] == 'X') { a[0] += s[i - 2] - 48; b[0] = s[i + 2] - 48; } if (s[i] == 'Y') { a[1] += s[i - 2] - 48; b[1] = s[i + 2] - 48; } if (s[i] == 'Z') { a[2] += s[i - 2] - 48; b[2] = s[i + 2] - 48; } } if (b[0] == 0 && a[0] != 0) printf("%d", a[0]); if (b[0] != 0 && a[0] != 0) printf("%d * X ^ %d", a[0] * b[0], b[0] - 1); if (a[0] != 0 && a[1] != 0) printf(" + "); if (b[1] == 0 && a[1] != 0) printf("%d", a[1]); if (b[1] != 0 && a[1] != 0) printf("%d * Y ^ %d", a[1] * b[1], b[1] - 1); if ((a[0] != 0 && a[2] != 0)||(a[1]!=0&& a[2] != 0)) printf(" + "); if (b[2] == 0 && a[2] != 0) printf("%d", a[2]); if (b[2] != 0 && a[2] != 0) printf("%d * Z ^ %d", a[2] * b[2], b[2] - 1); printf("\n"); } } return 0; } |
Double click to view unformatted code.