I'm not sure how to best approach this type of problem. It seems reasonable that there's going to be use of exponents, scientific notation. But I'm not familiar with doing this type of problem.
I would be grateful to see worked solutions to these so that I could apply the method in future.
Here's the problem

Since an integer $m$ has $\lfloor \log_{10}(m) \rfloor + 1$ digits, when $m = ab$ the formula is simply $$\lfloor \log_{10}(a) + \log_{10}(b) \rfloor + 1$$
For the second question, I don't think there's a general way to solve it. You could start by multiplying the first digits and adding digits until the first three are fixed. As an example, by taking the first pair: $$\begin{align*} 34 \times 36 &= \color{green}{12}24\\ 342 \times 365 &= \color{green}{12}4830\\ 3429 \times 3659 &= \color{green}{125}46711\\ 34297 \times 36598 &= \color{green}{12552}01606\\ 342973 \times 365989 &= \color{green}{125524}345297\\ &\hspace{0.57em}\vdots \end{align*}$$
The actual result is $1255246429631375257630154145266670$. Intuitively, this "converges" to the actual result because at each step, the error is decreasing (and eventually will be zero), so the left hand-side digits are increasing in accuracy. You would have to prove this rigorously though.
An interesting exercise would be to determine how many digits you have to take to be guaranteed to get the first $n$ digits of the product correct.