View Code of Problem 11

#include<stdio.h>
#include <string.h>
int main()
{

	int n, k=1;
	while(1){
		scanf("%d", &n);
				getchar();
		if(n == 0)
			break;
	
		printf("Case #%d:\n", k++);
		//
		while(n--){
			int x1=0, x2=0, y1=0, y2=0, z1=0, z2=0;
			char str[2001];
	
			gets(str);

			int len = strlen(str);
			for(int i=0; i<len; ++i){
				if(str[i] == 'X'){
					x1 += (str[i-2] - '0');
					x2 = (str[i+2] - '0');
				}
				if(str[i] == 'Y'){
					y1 += (str[i-2] - '0');
					y2 = (str[i+2] - '0');
				}				
				if(str[i] == 'Z'){
					z1 += (str[i-2] - '0');
					z2 = (str[i+2] - '0');
				}						
			}
			if(x2 == 0 && x1 != 0)
				printf("%d", x1);
			if(x2 != 0 && x1 != 0)
				printf("%d * X ^ %d", x1 * x2, x2-1);
			if(x1 != 0 && y1!= 0 )
				printf(" + ");
			if(y2 == 0 && y1 != 0)
				printf("%d", y1);
			if(y2 != 0 && y1 != 0)
				printf("%d * Y ^ %d", y1 * y2, y2-1);
			if((x1 != 0 && z1!= 0) || (y1 != 0 && z1!= 0) )	
				printf(" + ");
			if(z2 == 0 && z1 != 0)
				printf("%d", z1);
			if(z2 != 0 && z1 != 0)
				printf("%d * Z ^ %d", z1 * z2, z2-1);								
			printf("\n");					
			
		}

	}
	return 0;

		
}

Double click to view unformatted code.


Back to problem 11