Fully automatic Mathspace solver
当前为
// ==UserScript==
// @name Mathspace Ultimate Solver (Fixed)
// @namespace http://tampermonkey.net/
// @version 6.0
// @description Fully automatic Mathspace solver
// @author You
// @match *://*.mathspace.co/*
// @grant none
// @require https://cdnjs.cloudflare.com/ajax/libs/mathjs/11.9.0/math.min.js
// ==/UserScript==
(function() {
'use strict';
function waitForElement(selector, callback) {
const interval = setInterval(() => {
let element = document.querySelector(selector);
if (element) {
clearInterval(interval);
callback(element);
}
}, 500);
}
function getQuestionText() {
let questionElement = document.querySelector('.math-question'); // Ensure this is the correct selector
if (questionElement) {
console.log("Question found:", questionElement.innerText);
return questionElement.innerText.trim();
}
console.log("Question not found.");
return null;
}
function formatMathExpression(expression) {
return expression
.replace(/×/g, '*') // Convert multiplication
.replace(/÷/g, '/') // Convert division
.replace(/\^/g, '**') // Convert exponents
.replace(/([a-zA-Z])(\d+)/g, '$1^$2') // Convert "n4" to "n^4"
.replace(/(\d+)\s*\/\s*(\d+)/g, '($1/$2)'); // Convert fractions
}
function solveMathQuestion(expression) {
try {
let formattedExpression = formatMathExpression(expression);
console.log("Formatted Expression:", formattedExpression);
let answer = math.simplify(formattedExpression).toString();
console.log("Solved Answer:", answer);
return answer;
} catch (error) {
console.error("Error solving the equation:", error);
return "Error";
}
}
function insertAnswer(answer) {
waitForElement('input', (inputField) => { // Wait for input field
inputField.value = answer;
inputField.dispatchEvent(new Event('input', { bubbles: true }));
console.log("Answer inserted:", answer);
alert("Correct Answer: " + answer);
});
}
function processMathspaceQuestion() {
let questionText = getQuestionText();
if (questionText) {
let answer = solveMathQuestion(questionText);
insertAnswer(answer);
}
}
setTimeout(processMathspaceQuestion, 3000);
})();