web-dev-qa-db-fra.com

Existe-t-il une calculatrice avec la syntaxe LaTeX?

Lorsque j'écris en mathématiques dans LaTeX, j'ai souvent besoin d'effectuer une arithmétique simple sur les nombres de mon source LaTeX, comme 515.1544 + 454 = ???.

En général, je copie-colle le code LaTeX dans Google pour obtenir le résultat, mais je dois tout de même modifier manuellement la syntaxe, par exemple.

\ frac {154,7} {25} - (289 -\frac {1337} {42})

doit être changé pour

154,7/25 - (289 - 1337/42)

Il semble banal d’écrire un programme permettant de faire cela pour les opérations les plus utilisées .. Y at-il une calculatrice qui comprend cette syntaxe?

EDIT: Je sais que cela parfaitement est impossible (à cause du problème d’arrêt). Le faire pour les cas simples dont j'ai besoin est trivial.\frac,\cdot,\sqrt et quelques autres balises feraient l'affaire. Le programme pourrait simplement renvoyer une erreur pour les cas qu'il ne comprend pas.

37
Jørgen Fogh

Le projet LaTeXCalc est conçu pour cela. Il va lire un fichier TeX et faire les calculs. Pour plus d'informations, consultez la page d'accueil à http://latexcalc.sourceforge.net/

13
Loserpenguin15

WolframAlpha peut prendre des entrées sous la forme TeX.

http://blog.wolframalpha.com/2010/09/30/talk-to-wolframalpha-in-tex/

17
ngm

Le paquet calc vous permet de faire des calculs dans le source, mais seulement dans des commandes comme \setcounter et \addtolength. Autant que je sache, ce n'est pas ce que vous voulez.

Si vous utilisez déjà sage , alors le paquet sagetex est vraiment génial (sinon, c'est exagéré). Cela vous permet d’obtenir une sortie joliment formatée d’entrée comme ceci:

The square of
$\begin{pmatrix}
1 & 2 \\
3 & 4
\end{pmatrix}$
is \sage{matrix([[1, 2], [3,4]])^2}.

The prime factorization of the current page number is \sage{factor(\thepage)}
13
Anton Geraschenko

Considérant que LaTeX lui-même est un langage de balisage complet de Turing, je doute fortement que vous puissiez construire quelque chose comme cela qui ne soit pas directement construit dans LaTeX. De plus, LaTeX math matkup lui-même n’a pratiquement aucune signification sémantique, il se contente de décrire l’aspect visuel.

Cela dit, vous pouvez probablement pirater quelque chose qui reconnaît un sous-ensemble non programmable du balisage mathématique LaTeX et crache le résultat de la même manière. Si tout ce qui vous intéresse, ce sont des arithmétiques simples avec des fractions et des entiers (attention aux fractions décimales, car elles peuvent apparaître comme 3{,}141... dans les textes allemands :)), cela ne devrait pas être trop difficile. Mais une fois que vous avez commencé avec les intégrales, les matrices, etc. Je crains que LaTeX manque d’expression pour décrire avec précision vos intentions. Après tout, il s’agit d’un système de préparation de documents qui ne convient donc pas très bien aux systèmes de calcul formel.

Note latérale: Vous pouvez passer à Word qui, dans sa version actuelle, utilise un langage de balisage mathématique suffisamment similaire à LaTeX, tout en restant compatible avec Google, pour des termes plus simples:

Illustration du balisage mathématique dans Microsoft Word http://hypftier.de/dump/Word_math_1.png

Avec le complément gratuit Microsoft Math, vous pouvez même laisser Word calculer les expressions sur place:

Illustration du complément Microsoft Math pour Microsoft Word, calculant une expression http://hypftier.de/dump/Word_math_2.png

5
Joey

Ma calculatrice peut le faire. Pour obtenir la sortie formatée, double-cliquez sur la formule du résultat et appuyez sur ctrl + c pour la copier.

Il peut aussi faire des choses assez avancées (différenciation, intégrales faciles (et pas aussi faciles) ...).

https://calculator-algebra.org/cgi-bin/calculator?request=calculator&mainInput=%5cfrac%7b1%2b2%2b2%2b2%2b2%2%%% % 29

4
Todor Milev

Vous pouvez exécuter une fonction R appelée Sweave sur un fichier (principalement TeX avec certains R) pouvant remplacer les expressions R par leurs résultats en Tex.

Un tutoriel peut être trouvé ici: http://www.scribd.com/doc/6451985/Learning-to-Sweave-in-APA-Style

4
Sam

Vous pouvez simplement le coller dans symbolab qui, en bonus, propose des solutions étape par étape gratuites. De plus, depuis que symbolab utilise mathquill, il formate instantanément votre latex. 

3
Zelnoth

Il existe un moyen de faire ce que vous voulez, mais pas tout à fait comment vous décrivez.

Vous pouvez utiliser le paquetage fp (\ usepackage [options] {fp}), le paquetage à virgule flottante fera tout ce que vous voulez; résoudre des équations, ajouter des divisions et bien d’autres. Malheureusement, il ne lira pas les calculs LaTeX mais vous devrez faire quelque chose d'un peu différent, la documentation est très médiocre, je vais donc donner un exemple ici.

par exemple, si vous voulez faire (2x3)/5, vous devez taper:

\FPmul\p{2}{3}           % \p is the assignment of the operation 2x3
\FPupn\p{\p{} 7 round}   % upn evaluates the assignment \p and rounds to 7dp
\FPdiv\q{\p}{5}          % divides the assigned value p by 5 names result q
\FPupn\q{\q{} 4 round}   % rounds the result to 4 decimal places and evaluates
$\frac{2\times3}{5}=\FPprint\q$  % This will print the result of the calculations in the math.

les commandes FP sont toujours visibles, seul FPprint imprime le résultat qui lui est associé pour que vos documents ne soient pas brouillés, les commandes FP peuvent être placées où vous le souhaitez (pas un verbe) tant qu'elles sont avant le FPprint associé.

3
Anonymous

Il n'y en a pas, car ce n'est généralement pas possible.

Le balisage en mode mathématique LaTeX est un balisage présentationnel et, dans certains cas, il ne fournit pas assez d'informations pour calculer l'expression.

C’est l’une des raisons pour lesquelles le balisage de contenu MathML a été créé et la raison pour laquelle MathML est utilisé dans Mathematica. MathML est en réalité une sorte de deux langues en une:

  • balisage de présentation
  • balisage de contenu

Pour accomplir ce que vous voulez, vous devez disposer de MathML avec une présentation et un balisage de contenu (voir spécification MathML ).

A mon avis, votre meilleur pari est d'utiliser MathML (même s'il est détaillé) et de le convertir en LaTeX si nécessaire. Cela dit, j'aime aussi mieux la syntaxe LaTeX et peut-être avons-nous besoin d'une syntaxe compacte pour MathML (quelque chose de similaire à RelaxNG compact syntax ).

2
Ludwig Weinzierl

Le mode de calcul Emacs accepte les entrées de latex. Je l'utilise quotidiennement. Appuyez sur "d", suivi de "L" pour entrer en mode de saisie latex. Appuyez sur "'" pour ouvrir une invite où vous pouvez coller votre tex.

Quiconque dit que ce n'est pas possible est dans l'erreur.

2
Andy Drew

Pour les calculs avec LaTeX, vous pouvez utiliser un package CalcTeX. Ce paquet comprend les éléments du langage LaTeX et effectue des calculs. Par exemple, votre problème est résolu http://sg.bzip.pl/CalcTeX/examples/frac.tgz .__ ou or. juste s'il vous plaît écrivez

\noindent Pour le calcul, veuillez utiliser les paramètres environnementaux suivants 515,1544 + 454 $ ou \[\ frac {154.7} {25} - (289-\frac {1337} {42.}) \] Ou \Begin {équation} 154,7/25- (289-1337/42.) \End {équation}

Pour plus d'informations, veuillez visiter le site web du projet ou contacter l'auteur de ce projet.

2
user157400

Pour effectuer le calcul au sein de votre LaTeX lui-même, vous pouvez également consulter le paquet pgfmath, qui est plus puissant et plus pratique que le paquet calc. Vous pouvez trouver comment l’utiliser dans la Partie VI du Manuel des paquets TikZ et PGF, que vous trouverez ici (version 2.10 actuellement): http://mirror.unl.edu/ctan/graphics/pgf/base/ doc/generic/pgf/pgfmanual.pdf

1
Amittai Aviram

IIRC Mathematica peut le faire.

1
peak

Il n'y en a pas, car ce n'est généralement pas possible. Mode mathématique LaTeX le balisage est un balisage de présentation et, dans certains cas, il le fait pas assez d'informations pour calculer l'expression.

Tu as raison. LaTeX en tant que tel ne fournit pas assez d'informations pour effectuer des calculs. En outre, il ne représente aucune information permettant de le faire. Mais personne n’empêche d’écrire au format LaTeX un texte qui contient une telle information . C’est un chemin difficile, car vous devez créer un système de règles superposées sur le contenu du texte au format Latex qui doit contenir reconnaissable par votre interprète. Et ensuite convaincre l'utilisateur qu'il est nécessaire d'apprendre, etc. etc. La méthode la plus simple pour créer une calculatrice logique et intuitive d'expressions mathématiques. Et l'expression est déjà possible de convertir le latex. C'est presque comme ce que tu as dit. Ceci est mis en œuvre dans le programme que j'ai indiqué. AnEasyCalc permet de taper une expression lorsque vous tapez le texte du plan dans n’importe quel éditeur de texte. Il vérifie, calcule et génère une chaîne LateX par ses propres moyens. C'est un travail très facile et rapide. Essayez juste et vous verrez ça. 

1
Igor

Ce n’est pas exactement ce que vous demandez, mais c’est un package Nice Que vous pouvez inclure dans un document LaTeX pour effectuer toutes sortes d’opérations, y compris l’arithmétique, le calcul et même des vecteurs et matrices:

Le nom du paquet est "calculatrice"

http://mirror.unl.edu/ctan/macros/latex/contrib/calculator/calculator.pdf

0
Herman Jaramillo

<> essayez le programme AnEasyCalc. Cela permet d’obtenir la formule du latex très facilement: http://steamandwater.od.ua/AnEasyCalc/ :)

0
Igor