Te falla por esto:
Al extraer un carácter de un string, estás extrayendo el número ascii de ese carácter. Los valores ascii de los dígitos son del 48 al 57 inclusive. Es decir n=48 si st[0]='0'. Además de esto, tu código solo te deja usar números del 0 al 9 ya que solo extraes un carácter.
Yo de ti haría esto:
Código C++:
Ver original#include <iostream>
#include <string>
using namespace std;
int main ()
{
int nums[3];
while (cin>>nums[0]>>nums[1]>>nums[2])
{
cout<<nums[0]*nums[1]<<" ";
cout<<nums[0]*nums[2]<<endl;
}
return 0;
}