


-------listing 2---note: do not change formatting in first 3 lines-------
#include <stdio.h>
#define QQ      1
#define TT         1

main(c,v)
int c;
char **v;
{
        char tt[12],qq[7];
        int q=0,o=1,l=1,m=1;
        struct {int c;} f;
        qq[6]='\0';tt[11]='\0';
        if(QQ==atoi(v[1])+1){
                (void)fprintf(stderr,"%s factorial = %d\n",v[1], TT);exit(1);
        }
        o=c+f -o ;
        while(EOF!=(o=getchar())) {
                if(l && q=='Q' && o=='Q'){
                        l=0;
                        (void)getchar();
                        (void)fread(qq,6,1,stdin);
                        (void)printf("Q %6d",atoi(qq)+1);
                } else if(m && q=='T' && o=='T'){
                        m=0;
                        (void)fread(tt,11,1,stdin);
                        (void)printf("T %9d\n",atoi(tt)*QQ);
                } else {
                        q=o;
                        (void)putchar(o);
                }
        }
        exit(0);
}
--------------------end of listing 2------------

