web-dev-qa-db-ja.com

LaTeX構文を備えた計算機はありますか?

LaTeXで数学を書くとき、LaTeXソースの数値に対して単純な算術を実行する必要があります。たとえば、515.1544 + 454 = ???

通常、LaTeXコードをコピーしてGoogleに貼り付けて結果を取得しますが、構文を手動で変更する必要があります。

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

に変更する必要があります

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

最も一般的に使用される操作のためにこれを行うプログラムを書くのは簡単なようです。この構文を理解する計算機はありますか?

編集:私はこれを行うことを知っている---(完全に(停止する問題のため)不可能です。私が必要とする単純なケースのためにそれを行うことは簡単です。\frac、\ cdot、\ sqrt、および他のいくつかのタグでうまくいきます。プログラムは、理解できない場合にエラーを返すだけです。

40
Jørgen Fogh

LaTeXCalcプロジェクトは、まさにそれを行うように設計されています。 TeXファイルを読み取り、計算を実行します。詳細については、 http://latexcalc.sourceforge.net/ のホームページをご覧ください。

15
Loserpenguin15

WolframAlphaはTeX形式で入力を受け取ることができます。

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

20
ngm

calc package を使用すると、ソースで一部の計算を実行できますが、\setcounter\addtolengthなどのコマンド内でのみ実行できます。私が知る限り、これはあなたが望むものではありません。

すでに sage を使用している場合、 sagetex パッケージは非常に素晴らしいです(そうでない場合はやりすぎです)。次のように、入力から適切にフォーマットされた出力を取得できます。

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

Andyが言うように、答えはyesです。ほとんどのラテックス処方を理解できる計算機があります:Emacs。

次の手順を試してください(Vanilla emacsを想定):

  1. Emacsを開く
  2. .texファイルを開きます(または、ラテックスモードを有効にします)
  3. 2つの$$の間のどこかにポイントを配置します式(または行列)の開始/終了環境内。
  4. 計算を最大限に高める埋め込みモードを使用する

したがって、上記の式のポイントを使用して:

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

C-x * dを押して、下の行の式をduplicateし、すでにcalcのラテックスバリアントをアクティブにしているcalc-embeddedモードに入ります。あなたのために。バッファは次のようになります。

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

$\frac{-37651}{150}$`

分数は可能な限り既に変換されていることに注意してください。同じことをもう一度(C-x * d)行い、c fを押して分数を浮動小数点数に変換すると、次のバッファーが生成されます。

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

$\frac{-37651}{150}$

$-251.006666667$

C-x * dを使用して数式を複製し、中間値を取得するために埋め込みモードに入りましたが、重複を避けて現在の数式の埋め込みモードを開始するC-x * eもあります。

興味があるなら、 Emacs Calc-Embedded Mode の情報ページをご覧ください。そして一般的に Gnu Emaca Calculator のヘルプと素晴らしいインタラクティブな tutorial を組み合わせて使用​​します。

6
Markus1189

LaTeX自体がチューリング完全なマークアップ言語であることを考えると、LaTeXに直接組み込まれていないこのようなものを構築できることを強く疑います。さらに、LaTeX数学matkup自体にはセマンティックな意味がほとんどなく、視覚的な外観を説明するだけです。

そうは言っても、プログラミングできないLaTeX数学マークアップのサブセットを認識し、同じ方法で結果を吐き出すものを一緒にハックできます。興味のあることは、分数と整数を使用した単純な算術だけです(ただし、ドイツ語のテキストでは3{,}141...として表示される可能性があるため、小数の分数には注意してください)。しかし、積分や行列などから始めると、LaTeXには意図を正確に記述する表現力が欠けているのではないかと心配しています。結局、これは文書作成システムであり、コンピューター代数システムへの入力としてはあまり適していません。

サイドノート:現在のバージョンでは、十分にLaTeXに似た数学マークアップ言語を備えたWordに切り替えることができます。 LaTeXマークアップ)、それでも簡単な用語でGoogleフレンドリー:

Illustration of math markup in Microsoft Word

無料のMicrosoft Mathアドインを使用すると、Wordで式をその場で計算することもできます。

Illustration of the Microsoft Math add-in for Microsoft Word, calculating an expression

5
Joey

R式をTexでの結果に置き換えることができる(ほとんどがTeXと一部のRを含む)ファイルでSweaveというR関数を実行できます。

チュートリアルはここにあります: http://www.scribd.com/doc/6451985/Learning-to-Sweave-in-APA-Style

5
Sam

私の計算機はそれを行うことができます。フォーマットされた出力を取得するには、結果の数式をダブルクリックし、ctrl + cを押してコピーします。

それはかなり高度なこともできます(微分、簡単な積分(そしてそれほど簡単ではありません)...)。

https://calculator-algebra.org/cgi-bin/calculator?request=calculator&mainInput=%5cfrac%7b1%2b2%7d%7b3%7d%3b%0ad%2fdx%28arctan%20%282x%2b3 %29%29

4
Todor Milev

これを symbolab に貼り付けるだけで、ボーナスとして段階的なソリューションを無料で利用できます。また、symbolabはmathquillを使用するため、ラテックスを即座にフォーマットします。

3
Zelnoth

説明する方法ではなく、望むことを行う方法があります。

Fpパッケージ(\ usepackage [options] {fp})を使用できます。浮動小数点パッケージは必要な処理を行います。方程式の解法、除算の追加など。残念ながら、LaTeXの数学は読みませんが、代わりに少し違うことをしなければなりません。ドキュメントは非常に貧弱なので、ここで例を挙げます。

たとえば、(2x3)/ 5を実行する場合は、次のように入力します。

\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.

FPコマンドは常に非表示です。FPprintのみが関連する結果を印刷するため、ドキュメントが乱雑になることはありません。FP動詞ではない)関連付けられたFPprintの前にある限り。

3
Anonymous

一般に不可能なので、何もありません。

LaTeX数学モードマークアップはプレゼンテーションマークアップであり、式を計算するのに十分な情報を提供しない場合があります。

これがMathMLコンテンツマークアップが作成された理由の1つであり、MathMLがMathematicaで使用されている理由でもあります。 MathMLは実際には2つの言語を1つにまとめたものです。

  • プレゼンテーションマークアップ
  • コンテンツマークアップ

後は、プレゼンテーションとコンテンツマークアップを組み合わせたMathMLが必要になります( MathML仕様 を参照)。

私の意見では、MathMLを(冗長であっても)使用し、必要に応じてLaTeXに変換することが最善の策です。とはいえ、私はLaTeX構文も最適であり、おそらく必要なのはMathMLのコンパクトな構文です(精神的には RelaxNGコンパクトな構文 と似ています)。

2

Emacs calc-modeはlatex-inputを受け入れます。毎日使っています。 「d」を押してから「L」を押して、ラテックス入力モードに入ります。 「 '」を押してプロンプトを開き、Texを貼り付けることができます。

それは不可能だと言っている人は誰でも間違っています。

2
Andy Drew

LaTeXでの計算には、CalcTeXパッケージを使用できます。このパッケージは、LaTeX言語の要素を理解し、計算を行います。たとえば、問題は http://sg.bzip.pl/CalcTeX/examples/frac.tgz で利用可能です。

\ noindent次の環境を使用してください$ 515.1544 + 454 $または\ [\ frac {154.7} {25}-(289-\frac {1337} {42。})\]または\ begin {equation} 154.7/25-( 289-1337/42。)\ end {equation}

詳細については、プロジェクトのWebサイトにアクセスするか、このプロジェクトの著者に連絡してください。

2
user157400

LaTeX自体で計算を実行するには、calcパッケージよりも強力で便利なpgfmathパッケージを調べることもできます。 TikZおよびPGFパッケージマニュアルのパートVIから使用方法を確認できます。このマニュアルはここ(バージョン2.10)にあります。 http://mirror.unl.edu/ctan/graphics/pgf/ base/doc/generic/pgf/pgfmanual.pdf

1
Amittai Aviram

IIRC Mathematicaでできます。

1
peak

一般的に不可能なので、何もありません。 LaTeX数学モードマークアップはプレゼンテーションマークアップであり、式を計算するのに十分な情報を提供しない場合があります。

あなたが正しいです。 LaTeXはそのままでは、計算を行うのに十分な情報を提供しません。さらに、それを行うための情報を表しません。しかし、そのような情報を含むテキストをLaTeX形式で書くことを妨げる人はいません。インタープリターが認識できる、ラテックス形式のテキストのコンテンツに含める必要があるルールのシステムを構築する必要があるため、難しいパスです。そして、ユーザーに、学ぶことなどが必要であることを納得させます...数式の論理的で直感的な計算機を作成する最も簡単な方法。そして、ラテックスを変換する式はすでに可能です。それはあなたが言ったことにほとんど似ています。これは、私が指摘したプログラムに実装されています。 AnEasyCalcを使用すると、テキストエディターでプレーンテキストを入力するときに式を入力できます。その後、LateX文字列を独自にチェック、計算、生成します。その非常に簡単で迅速な作業。試してみてください。

1
Igor

これはまさにあなたが求めているものではありませんが、算術、微積分、さらにはベクトルや行列を含むあらゆる種類の操作を行うためにLaTeXドキュメントに含めることができる素敵なパッケージです:

パッケージ名は「計算機」です

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

0

<> AnEasyCalcプログラムを試してください。ラテックスの処方を非常に簡単に取得できます。 http://steamandwater.od.ua/AnEasyCalc/ :)

0
Igor