JavaScript (ES8), 158(削除) 158 (削除ここまで) 156 bytes
Expects (a)(b), where both arguments are strings.
a=>b=>" "[R='repeat'](q=(A=a.length)+1&~1+A%2)+` ${"_"[R](b.length)}
${a.padEnd(q)}/${b} = ${(b**(1b**=1/a)).toFixed(A)}
`+(g=p=>q?p+" "[R](q-=2)+`/
`+g(" "+p):"")`\\`
JavaScript (ES8), 158 bytes
Expects (a)(b), where both arguments are strings.
a=>b=>" "[R='repeat'](q=(A=a.length)+1&~1)+` ${"_"[R](b.length)}
${a.padEnd(q)}/${b} = ${(b**(1/a)).toFixed(A)}
`+(g=p=>q?p+" "[R](q-=2)+`/
`+g(" "+p):"")`\\`
JavaScript (ES8), (削除) 158 (削除ここまで) 156 bytes
Expects (a)(b), where both arguments are strings.
a=>b=>" "[R='repeat'](q=(A=a.length)+A%2)+` ${"_"[R](b.length)}
${a.padEnd(q)}/${b} = ${(b**=1/a).toFixed(A)}
`+(g=p=>q?p+" "[R](q-=2)+`/
`+g(" "+p):"")`\\`
JavaScript (ES8), 158 bytes
Expects (a)(b), where both arguments are strings.
a=>b=>" "[R='repeat'](q=(A=a.length)+1&~1)+` ${"_"[R](b.length)}
${a.padEnd(q)}/${b} = ${(b**(1/a)).toFixed(A)}
`+(g=p=>q?p+" "[R](q-=2)+`/
`+g(" "+p):"")`\\`