Řešení matematických výrazů
K automatickému řešení matematických výrazů je použití Microsoft Math API.
Hlavní přidanou hodnotou je krokové vysvětlení řešení, které pomáhá uživateli pochopit problematiku hlouběji. Na základě kroků řešení jsou generována i vysvětlující videa.
Pro zobrazení řešení úloh vyberte odkaz na test ze seznamu
Jak je to uděláno?
- Vyhledání matematických výrazů v testech
- Zavolání Microsoft Math API
1. Vyhledání matematických výrazů v testech
import markdownit from "markdown-it";
import * as katex from 'markdown-it-katex';
const Markdown = new markdownit({ html: false })
.use(katex.default, {})
//get test content
const content = await text(`${baseUrl}/index.md`);
//parse markdown
const tokens = Markdown.parse(content, {});
// find math tokens
tokens.filter(token => token.type === 'math_block').map(d => d.content)
console.log(`Math tokens found: ${tokens}`)
// helper function
async function text(url) {
const response = await fetch(url);
if (!response.ok) throw new Error(`fetch failed: ${response.status}`);
return await response.text();
}
2. Zavolání Microsoft Math API
async function json(url, data) {
const response = await fetch(url,
{
headers: {
'content-type': 'application/json'
},
method: "POST",
body: JSON.stringify(data)
});
if (!response.ok) throw new Error(`fetch failed: ${response.status}`);
return await response.json();
}
async function solveLatex(latexExpression) {
let result = await json("https://mathsolver.microsoft.com/cameraexp/api/v1/solvelatex", {
latexExpression,
clientInfo: {
mkt: 'cs'
}
});
return result;
}
solveLatex('\\frac{5}{9} - \\frac{5}{9}: 5 =')