#include<iostream>
#include<cstring>
#include<cstdlib>
using namespace std;
int main(){
  int i,j;
  int p,q,*a,b[10];
  for(;;){
    p=0;
    q=0;
    cin>>p>>q;
    if(p==0&&q==0)
      break;
    a=(int*)malloc(q*sizeof(int));
    memset(a,-1,q*sizeof(int));
    memset(b,-1,sizeof(b));
    for(i=0;p;i++){
      if(*(a+p*10%q)>=0&&b[p*10/q]>=0)
	break;
      *(a+p*10%q)=i;
      b[p*10/q]=i;
      cout<<p*10/q;
      p=p*10%q;
    }
    cout<<endl;
    if(p){
      for(j=0;j<*(a+p*10%q);j++)
	cout<<" ";
      for(;j<i;j++)
	cout<<"^";
      cout<<endl;
    }
    free(a);
  }
  return 0;
}