<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="de">
	<id>https://wiki.letto.at/wiki/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Ckral</id>
	<title>Letto-Wiki - Benutzerbeiträge [de]</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.letto.at/wiki/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Ckral"/>
	<link rel="alternate" type="text/html" href="https://wiki.letto.at/wiki/index.php/Spezial:Beitr%C3%A4ge/Ckral"/>
	<updated>2026-04-27T20:00:10Z</updated>
	<subtitle>Benutzerbeiträge</subtitle>
	<generator>MediaWiki 1.42.1</generator>
	<entry>
		<id>https://wiki.letto.at/wiki/index.php?title=Eingabe_von_Resultaten_in_LeTTo&amp;diff=3512</id>
		<title>Eingabe von Resultaten in LeTTo</title>
		<link rel="alternate" type="text/html" href="https://wiki.letto.at/wiki/index.php?title=Eingabe_von_Resultaten_in_LeTTo&amp;diff=3512"/>
		<updated>2024-09-02T08:35:20Z</updated>

		<summary type="html">&lt;p&gt;Ckral: Einfache Hochkomma &amp;#039; entfernt wo nicht zwingend erforderlich&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Allgemeine Hinweise ==&lt;br /&gt;
&lt;br /&gt;
* Das Dezimaltrennzeichen ist der Punkt (&amp;lt;code&amp;gt;.&amp;lt;/code&amp;gt;), nicht der Beistrich &lt;br /&gt;
* Zwischen Zahlenwert und Einheit kann ein Leerzeichen eingefügt werden (muss aber nicht)&lt;br /&gt;
* Nach einem Minuszeichen &amp;lt;code&amp;gt;-&amp;lt;/code&amp;gt; bei der Eingabe einer negativen Größe darf nie ein Leerzeichen auftreten&lt;br /&gt;
* Nach einem &amp;lt;code&amp;gt;e&amp;lt;/code&amp;gt; oder &amp;lt;code&amp;gt;E&amp;lt;/code&amp;gt; bei der Eingabe einer Gleitkommazahl darf ebenfalls nie ein Leerzeichen auftreten&lt;br /&gt;
&lt;br /&gt;
== Reelle physikalische Größen ==&lt;br /&gt;
&lt;br /&gt;
Reelle Einheiten bestehen immer aus einem Zahlenwert und einer [[Einheit]]. Nachfolgend werden exemplarisch die wichtigsten physikalischen Größen zusammengefasst. LeTTo-Eingaben sind in &amp;lt;code&amp;gt;Schreibmaschinenschrift&amp;lt;/code&amp;gt; angegeben. Die Groß- und Kleinschreibung von Einheiten muss genau eingehalten werden. &lt;br /&gt;
&lt;br /&gt;
Als &amp;lt;b&amp;gt;einfache Regel&amp;lt;/b&amp;gt; gilt, dass alle Einheiten unter einfache Hochkomma gesetzt werden. Das funktioniert immer. Das einfache Hochkomma &#039; findet man mit &amp;lt;code&amp;gt;SHIFT + #&amp;lt;/code&amp;gt;. Für einfache Einheiten, die ohne die Operatoren &amp;lt;code&amp;gt;*&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;/&amp;lt;/code&amp;gt; und &amp;lt;code&amp;gt;^&amp;lt;/code&amp;gt; auskommen, dürfen die beiden Hochkomma auch weggelassen werden.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;code&amp;gt;250V&amp;lt;/code&amp;gt; für eine Spannung von 250 V&lt;br /&gt;
* &amp;lt;code&amp;gt;220kOhm&amp;lt;/code&amp;gt; oder &amp;lt;code&amp;gt;220E3Ohm&amp;lt;/code&amp;gt; oder &amp;lt;code&amp;gt;220e3Ohm&amp;lt;/code&amp;gt; für einen Widerstand von 220&amp;amp;nbsp;k&amp;amp;Omega; = 220&amp;amp;middot;10&amp;lt;sup&amp;gt;3&amp;lt;/sup&amp;gt;&amp;amp;nbsp;&amp;amp;Omega;&lt;br /&gt;
* &amp;lt;code&amp;gt;4.7MOhm&amp;lt;/code&amp;gt; oder &amp;lt;code&amp;gt;4.7E6Ohm&amp;lt;/code&amp;gt; für einen Widerstand von 4,7&amp;amp;nbsp;M&amp;amp;Omega; = 4,7&amp;amp;middot;10&amp;lt;sup&amp;gt;6&amp;lt;/sup&amp;gt;&amp;amp;nbsp;&amp;amp;Omega;&lt;br /&gt;
* &amp;lt;code&amp;gt;2.5mA&amp;lt;/code&amp;gt; oder &amp;lt;code&amp;gt;2.5E-3A&amp;lt;/code&amp;gt; für einen Strom von 2,5&amp;amp;nbsp;mA = 2,5&amp;amp;middot;10&amp;lt;sup&amp;gt;-3&amp;lt;/sup&amp;gt;&amp;amp;nbsp;A&lt;br /&gt;
* &amp;lt;code&amp;gt;2.2uF&amp;lt;/code&amp;gt; oder &amp;lt;code&amp;gt;2.2E-6F&amp;lt;/code&amp;gt; für eine Kapazität von 2,2&amp;amp;nbsp;&amp;amp;mu;F = 2,2&amp;amp;middot;10&amp;lt;sup&amp;gt;-6&amp;lt;/sup&amp;gt;&amp;amp;nbsp;F&lt;br /&gt;
* &amp;lt;code&amp;gt;4.7nF&amp;lt;/code&amp;gt; oder &amp;lt;code&amp;gt;4.7E-9F&amp;lt;/code&amp;gt; für eine Kapazität von 4,7&amp;amp;nbsp;nF = 4,7&amp;amp;middot;10&amp;lt;sup&amp;gt;-9&amp;lt;/sup&amp;gt;&amp;amp;nbsp;F&lt;br /&gt;
* &amp;lt;code&amp;gt;6.8pF&amp;lt;/code&amp;gt; oder &amp;lt;code&amp;gt;6.8E-12F&amp;lt;/code&amp;gt; für eine Kapazität von 6,8&amp;amp;nbsp;pF = 6,8&amp;amp;middot;10&amp;lt;sup&amp;gt;-12&amp;lt;/sup&amp;gt;&amp;amp;nbsp;F&lt;br /&gt;
* &amp;lt;code&amp;gt;50mH&amp;lt;/code&amp;gt; oder &amp;lt;code&amp;gt;50E-3H&amp;lt;/code&amp;gt; für eine Induktivität von 50&amp;amp;nbsp;mH = 50&amp;amp;middot;10&amp;lt;sup&amp;gt;-3&amp;lt;/sup&amp;gt;&amp;amp;nbsp;H&lt;br /&gt;
* &amp;lt;code&amp;gt;45Ah&amp;lt;/code&amp;gt; für eine Ladung von 45&amp;amp;nbsp;Ah&lt;br /&gt;
* &amp;lt;code&amp;gt;500var&amp;lt;/code&amp;gt; für eine Blindleistung von 500&amp;amp;nbsp;var&lt;br /&gt;
* &amp;lt;code&amp;gt;250MVA&amp;lt;/code&amp;gt; für eine Scheinleistung von 250&amp;amp;nbsp;MVA&lt;br /&gt;
* &amp;lt;code&amp;gt;4.8kW&amp;lt;/code&amp;gt; für eine Leistung bzw. Wirkleistung von 4,8&amp;amp;nbsp;kW&lt;br /&gt;
* &amp;lt;code&amp;gt;1kWh&amp;lt;/code&amp;gt; eine Einergie von 1&amp;amp;nbsp;kWh = 3,6&amp;amp;middot;10&amp;lt;sup&amp;gt;6&amp;lt;/sup&amp;gt;&amp;amp;nbsp;J&lt;br /&gt;
* &amp;lt;code&amp;gt;8.1mm2&amp;lt;/code&amp;gt; oder &amp;lt;code&amp;gt;8.1mm^2&amp;lt;/code&amp;gt; für eine Fläche von 8.1&amp;amp;nbsp;mm&amp;lt;sup&amp;gt;2&amp;lt;/sup&amp;gt;&lt;br /&gt;
* &amp;lt;code&amp;gt;27cm3&amp;lt;/code&amp;gt; oder &amp;lt;code&amp;gt;27cm^3&amp;lt;/code&amp;gt; für ein Volumen von 27&amp;amp;nbsp;cm&amp;lt;sup&amp;gt;3&amp;lt;/sup&amp;gt;&lt;br /&gt;
* &amp;lt;code&amp;gt;3.9A/mm2&amp;lt;/code&amp;gt; oder &amp;lt;code&amp;gt;3.9A/mm^2&amp;lt;/code&amp;gt; für eine Stromdichte von 3,9&amp;amp;nbsp;A/mm&amp;lt;sup&amp;gt;2&amp;lt;/sup&amp;gt;&lt;br /&gt;
* &amp;lt;code&amp;gt;290kA/m&amp;lt;/code&amp;gt; oder &amp;lt;code&amp;gt;290A/mm&amp;lt;/code&amp;gt; für eine magnetische Feldstärke von 290&amp;amp;nbsp;kA/m&lt;br /&gt;
* &amp;lt;code&amp;gt;0.97T&amp;lt;/code&amp;gt; oder &amp;lt;code&amp;gt;0.97Vs/m2&amp;lt;/code&amp;gt; oder &amp;lt;code&amp;gt;0.97Vs/m^2&amp;lt;/code&amp;gt; für eine magnetische Flussdichte von 0,97&amp;amp;nbsp;T = 0,97&amp;amp;nbsp;Vs/m&amp;lt;sup&amp;gt;2&amp;lt;/sup&amp;gt;&lt;br /&gt;
* &amp;lt;code&amp;gt;628.32uVs/Am&amp;lt;/code&amp;gt; oder &amp;lt;code&amp;gt;628.32E-6H/m&amp;lt;/code&amp;gt; für eine Permeabilität von 628,32&amp;amp;nbsp;&amp;amp;mu;Vs/Am = 628,32&amp;amp;middot;10&amp;lt;sup&amp;gt;-6&amp;lt;/sup&amp;gt;&amp;amp;nbsp;H/m&lt;br /&gt;
* &amp;lt;code&amp;gt;80km/h&amp;lt;/code&amp;gt; für eine Geschwindigkeit von 80&amp;amp;nbsp;km/h&lt;br /&gt;
* &amp;lt;code&amp;gt;12.2°&amp;lt;/code&amp;gt; für einen Winkel von 12,2&amp;lt;sup&amp;gt;&amp;amp;omicron;&amp;lt;/sup&amp;gt; (Grad)&lt;br /&gt;
* &amp;lt;code&amp;gt;3.14159&amp;lt;/code&amp;gt; für eine Winkel von 3,14159 rad (Radiant). &#039;&#039;&#039;Wichtig:&#039;&#039;&#039; die Einheit rad ist keine gültige Einheit in LeTTo und darf daher nicht angegeben werden; Winkel in Radiant werden ohne Einheit eingegeben&lt;br /&gt;
* &amp;lt;code&amp;gt;3000Upm&amp;lt;/code&amp;gt; oder &amp;lt;code&amp;gt;3000min-1&amp;lt;/code&amp;gt; oder &amp;lt;code&amp;gt;3000&#039;1/min&#039;&amp;lt;/code&amp;gt; für eine Drehzahl von 3000&amp;amp;nbsp;Upm = 50&amp;amp;nbsp;s&amp;lt;sup&amp;gt;-1&amp;lt;/sup&amp;gt; &lt;br /&gt;
* &amp;lt;code&amp;gt;190.2s-1 oder 190.2&#039;1/s&#039;&amp;lt;/code&amp;gt; für eine Winkelgeschwindigkeit von 190,2&amp;amp;nbsp;rad/s&lt;br /&gt;
* &amp;lt;code&amp;gt;-2.82Nm&amp;lt;/code&amp;gt; für ein Drehmoment von -2,82&amp;amp;nbsp;Nm&lt;br /&gt;
* &amp;lt;code&amp;gt;0.12kgm2&amp;lt;/code&amp;gt; oder &amp;lt;code&amp;gt;0.12kg1m2&amp;lt;/code&amp;gt; oder &amp;lt;code&amp;gt;0.12kg*m^2&amp;lt;/code&amp;gt;für ein Massenträgheitsmoment von 0,12&amp;amp;nbsp;kg&amp;amp;middot;m&amp;lt;sup&amp;gt;2&amp;lt;/sup&amp;gt;&lt;br /&gt;
* &amp;lt;code&amp;gt;2h-1&amp;lt;/code&amp;gt; oder &amp;lt;code&amp;gt;2&#039;1/h&#039;&amp;lt;/code&amp;gt; für den Kehrwert in Stunden von 2&amp;amp;nbsp;h&amp;lt;sup&amp;gt;-1&amp;lt;/sup&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Komplexe physikalische Größen ==&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;code&amp;gt;20.2V arg-12.2°&amp;lt;/code&amp;gt; oder &amp;lt;code&amp;gt;20.2 arg-12.2°V&amp;lt;/code&amp;gt; für die komplexe Spannung von 20,2&amp;amp;nbsp;V&amp;amp;ang;-12.2&amp;lt;sup&amp;gt;&amp;amp;omicron;&amp;lt;/sup&amp;gt;&lt;br /&gt;
* &amp;lt;code&amp;gt;1.1Ohm arg-30.2°&amp;lt;/code&amp;gt; oder &amp;lt;code&amp;gt;1.1 arg-30.2°Ohm&amp;lt;/code&amp;gt; für die komplexe Impedanz von 1,1&amp;amp;nbsp;Ohm&amp;amp;ang;-30.2&amp;lt;sup&amp;gt;&amp;amp;omicron;&amp;lt;/sup&amp;gt;&lt;br /&gt;
* &amp;lt;code&amp;gt;12.2A-j*8.6A&amp;lt;/code&amp;gt; oder &amp;lt;code&amp;gt;12.2A-8.6A*j&amp;lt;/code&amp;gt; oder &amp;lt;code&amp;gt;12.2-j*8.6A&amp;lt;/code&amp;gt; für den komplexen Strom von 12,2&amp;amp;nbsp;A-j&amp;amp;middot;8,6&amp;amp;nbsp;A&lt;br /&gt;
&lt;br /&gt;
== Vektoren ==&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;code&amp;gt;[2, -3, 0]N&amp;lt;/code&amp;gt; oder &amp;lt;code&amp;gt;[2N, -3N, 0N]&amp;lt;/code&amp;gt; für den dreidimensionalen Vektor [[Datei:Kraftvektor.png]]&lt;br /&gt;
* &amp;lt;code&amp;gt;[0, 0, 12]Nm&amp;lt;/code&amp;gt; oder &amp;lt;code&amp;gt;[0Nm, 0Nm, 12Nm]&amp;lt;/code&amp;gt; für den dreidimensionalen Vektor [[Datei:Drehmomentvektor.png]]&lt;br /&gt;
* &amp;lt;code&amp;gt;[2, 0, 0]mm/s2&amp;lt;/code&amp;gt; oder &amp;lt;code&amp;gt;[2mm/s2, 0mm/s2, 0m/s^2]&amp;lt;/code&amp;gt; oder &amp;lt;code&amp;gt;[2E-3, 0, 0]m/s-2&amp;lt;/code&amp;gt; für den dreidimensionalen Vektor [[Datei:Beschleunigungsvektor.png]]&lt;br /&gt;
&lt;br /&gt;
== Symbolische Resultate ==&lt;br /&gt;
&lt;br /&gt;
* Bei symbolischen Resultaten müssen die Einheiten – falls erforderlich – in einfache Hochkomma gesetzt werden, z. B. &amp;lt;code&amp;gt;t&#039;s&#039;+1&#039;s&#039;&amp;lt;/code&amp;gt;&lt;br /&gt;
* &amp;lt;code&amp;gt;x^y&amp;lt;/code&amp;gt; für [[Datei:xpowery.png]]&lt;br /&gt;
* &amp;lt;code&amp;gt;sqrt(2)&amp;lt;/code&amp;gt; für [[Datei:sqrt2.png]]&lt;br /&gt;
* &amp;lt;code&amp;gt;root(x^2,3)&amp;lt;/code&amp;gt; oder &amp;lt;code&amp;gt;x^(2/3)&amp;lt;/code&amp;gt; für [[Datei:root3x2.png]]&lt;br /&gt;
* &amp;lt;code&amp;gt;exp(-x)&amp;lt;/code&amp;gt; für [[Datei:exp-x.png]]&lt;br /&gt;
* &amp;lt;code&amp;gt;cos(x)&amp;lt;/code&amp;gt; für [[Datei:cosx.png]]&lt;br /&gt;
* &amp;lt;code&amp;gt;atan(1)&amp;lt;/code&amp;gt; für den Arkustangens von 1&lt;br /&gt;
* &amp;lt;code&amp;gt;%pi&amp;lt;/code&amp;gt; für die Kreiszahl &amp;amp;pi; = 3,14159...&lt;br /&gt;
&lt;br /&gt;
== Siehe auch ==&lt;br /&gt;
&lt;br /&gt;
* [[Einheit]]&lt;/div&gt;</summary>
		<author><name>Ckral</name></author>
	</entry>
	<entry>
		<id>https://wiki.letto.at/wiki/index.php?title=Berechnungen&amp;diff=3462</id>
		<title>Berechnungen</title>
		<link rel="alternate" type="text/html" href="https://wiki.letto.at/wiki/index.php?title=Berechnungen&amp;diff=3462"/>
		<updated>2024-07-04T09:47:32Z</updated>

		<summary type="html">&lt;p&gt;Ckral: Fix von #1869&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Allgemeines =&lt;br /&gt;
Berechnungen werden in mehreren Bereichen der Frageerstellung verwendet und bilden die Basis für [[Fragetypen#Berechnungsfrage|Berechnungsfrage]] und [[Fragetypen#Mehrfachberechnungsfrage|Mehrfachberechnungsfrage]].&lt;br /&gt;
&lt;br /&gt;
Alle Berechnungen unterstützen [[Einheit|Einheiten]] und symbolische Auswertung.&lt;br /&gt;
&lt;br /&gt;
=Grundsätzlicher Aufbau der Ergebnis-Berechnung bei Fragen mit Berechnungen=&lt;br /&gt;
[[Datei:BerechnungSchema.png|mini|hochkant=2.0|Schema der Berechnung]]&lt;br /&gt;
Die Berechnung und die Beurteilung einer Frage teilt sich in 3 grundsätzliche Schritte:&lt;br /&gt;
* Berechnnug der geschlossenen Lösung (Formel) aus den Maxima-Feldern &lt;br /&gt;
* Berechnung des Ergebnisses einer Frage durch Einsetzen der Zahlenwerte aus den Datensätzen in die geschlossene Lösung&lt;br /&gt;
* Beurteilung der Schülereingabe durch Vergleich mit dem Ergebnis&lt;br /&gt;
&lt;br /&gt;
=Konstante=&lt;br /&gt;
Alle Konstante welche in Letto definiert sind beginnen mit einem Prozentzeichen. Verwendet man den Variablennamen ohne Prozenzzeichen, so wird die Konstante wie eine Variable mit dem Wert der Konstanten verwendet.&lt;br /&gt;
&lt;br /&gt;
Liste der definierten Konstanten:&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%&amp;quot; &lt;br /&gt;
| Name || Wert || Beschreibung&lt;br /&gt;
|-&lt;br /&gt;
| %i || i || komplexer Parameter als Lösung der Gleichung x^2=-1&lt;br /&gt;
|-&lt;br /&gt;
| %j || i || komplexer Parameter als Lösung der Gleichung x^2=-1&amp;lt;br&amp;gt;&amp;lt;b&amp;gt;Wichtig:&amp;lt;/b&amp;gt; Wir nur vom Parser unterstützt, nicht von Maxima&lt;br /&gt;
|-&lt;br /&gt;
| %e || 2.718281828459045 || Eulersche Zahl &lt;br /&gt;
|-&lt;br /&gt;
| %pi || 3.141592653589793 || Kreiszahl&lt;br /&gt;
|-&lt;br /&gt;
| %mu0 || magnetische Feldkonstante || 4*%pi*1E-7&#039;Vs/Am&#039;&lt;br /&gt;
|-&lt;br /&gt;
| %m0 || magnetische Feldkonstante (alt, wird bald entfernt werden) || 4*%pi*1E-7&#039;Vs/Am&#039;&lt;br /&gt;
|-&lt;br /&gt;
| %epsilon0 || elektrische Feldkonstante || 8.85418781762039E-12&#039;As/Vm&#039;&lt;br /&gt;
|-&lt;br /&gt;
| %e0 || elektrische Feldkonstante (alt, wird bald entfernt werden) || 8.85418781762039E-12&#039;As/Vm&#039;&lt;br /&gt;
|-&lt;br /&gt;
| %c0 || Lichtgeschwindigkeit || 299792458&#039;m/s&#039;&lt;br /&gt;
|-&lt;br /&gt;
| %Qe || Elementarladung || 1.602176620898E-19As&lt;br /&gt;
|-&lt;br /&gt;
| %g  || Erdbeschleunigung || 9.81&#039;m/s^2&#039;&lt;br /&gt;
|-&lt;br /&gt;
| %NA || Avogadro Konstante || 6.02214085774E23/mol&lt;br /&gt;
|-&lt;br /&gt;
| %k  || Stefan Bolzman Konstante || 1.3806485279E-23&#039;J/K&#039;&lt;br /&gt;
|-&lt;br /&gt;
| %R0 || Universelle Gaskonstante || 8.314459848&#039;J/Kmol&#039;&lt;br /&gt;
|-&lt;br /&gt;
| %h || planksches Wirkungsquantum || 6.6260704081E-34Js&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=Berechnung mit Maxima=&lt;br /&gt;
* Maxima wird &#039;&#039;&#039;nur für symbolische Berechnungen&#039;&#039;&#039; bei der Erstellung von Beispielen verwendet. Hierbei wird, wie schon oberhalb im Schema angegeben, zuerst die Moodle.mac geladen, dann das [[Beispielsammlung Editieren#Maxima-Feld|Maxima-Feld]] berechnet und anschließend die Maxima-Felder aller Teilfragen. Das Ergebnis der Berechnung wird dann als symbolischer Ausdruck im Lösungfeld eingetragen.&lt;br /&gt;
* Da zum Zeitpunkt der &#039;&#039;&#039;Maxima-Berechnung keine Datensätze&#039;&#039;&#039; vorhanden sind, kann keine numerische Berechnung in Maxima durchgeführt werden, welche die [[Datensätze]] benötigt. Dies muss der interne Parser zum Zeitpunkt des Online-Test-Laufes erledigen. Numerische Berechnungen, welche der interne Parser nicht kann können deshalb auch nicht mit Maxima berechnet werden.&lt;br /&gt;
* Da das Lösungsfeld, welches mit Maxima berechnet wird symbolisch ausgewertet wird, können in Maxima sämtliche symbolischen Berechnungsverfahren angewendet werden, welche ein symbolisches Ergebnis liefern und keine numerischen Werte der Datensätze benötigen.&lt;br /&gt;
* Reicht im Maximafeld die Zeilenlänge nicht aus ist es möglich einen defninierten Zeilenumbruch zu realisieren. Schreiben Sie dazu &amp;quot;\&amp;quot; (einfacher Backslash) am Ende der Zeile.  &lt;br /&gt;
* &#039;&#039;&#039;Funktionsdeklarationen&#039;&#039;&#039; wie &#039;&#039;&#039;f(x):=&#039;&#039;&#039;x^2 mit Doppelpunkt-Ist-Gleich sind im Maxima-Feld nur eingeschränkt bis gar &#039;&#039;&#039;nicht verwendbar&#039;&#039;&#039;, da sie vom Parser nicht unterstützt werden.&lt;br /&gt;
* &#039;&#039;&#039;Mengen von Maxima&#039;&#039;&#039; sind in LeTTo n&#039;&#039;&#039;icht verwendbar&#039;&#039;&#039;. LeTTo verwender hierzu eigene Funktionen des Parsers welche mit &amp;quot;set&amp;quot; beginnen und auf Vektoren basieren.&lt;br /&gt;
&lt;br /&gt;
== Berechnungen mit &amp;quot;Vorberechnung&amp;quot; und Maxima (Parser nicht angehakt) ==&lt;br /&gt;
* Es werden die Datensätze ohne Einheiten vor der Durchrechnung des Maxima-Feldes an Maxima gesendet&lt;br /&gt;
* Im Maxima-Feld werden durch den Preprozessor alle Einheiten von allen konstanten Werten entfernt&lt;br /&gt;
* Die Ergebnisse nach der Maxima-Durchrechnung sind somit alle ohne Einheit&lt;br /&gt;
* Der Postpozesser fügt an alle Ergebnisse der Maxima-Berechnung die definierten Einheiten an&lt;br /&gt;
&lt;br /&gt;
=== Einheitendfinition für den Postprozessor (nur bei Berechnung mit Vorberechnung ohne Parser wirksam!) ===&lt;br /&gt;
* Definition einer Einheit mit der Funktion unit in einem Kommentar&lt;br /&gt;
* Setzen der Einheit Volt (V) für alle Variablen die mit U beginnen  &lt;br /&gt;
  //unit(U*)=V&lt;br /&gt;
* Setzen der Einheit Ampere(A) für alle Variablen die mit I oder ix beginnen&lt;br /&gt;
  //unit(I*,ix*)=A&lt;br /&gt;
&lt;br /&gt;
=Berechnung mit dem internen Parser=&lt;br /&gt;
* Der interne Parser kann durch Wahl der Checkbox &amp;quot;Parser&amp;quot; anstatt von Maxima für die Berechnung des Maxima-Feldes verwendet werden. &lt;br /&gt;
* Jedenfalls wird der Parser zur Test-Laufzeit für die Berechnung des Ergebnisses einer Frage aus Lösung und Datensätzen und zum Berechnen der Schülereingabe verwendet.&lt;br /&gt;
&lt;br /&gt;
==Operatoren==&lt;br /&gt;
=== VORSICHT mit MAXIMA ===&lt;br /&gt;
* Einige Operatoren sind in &#039;&#039;&#039;Maxima anders&#039;&#039;&#039;, oder &#039;&#039;&#039;nicht definiert&#039;&#039;&#039;. Möchte man im Maximafeld die Operatoren des Parsers-verwenden, so muss das gesamte Maxima-Feld &#039;&#039;&#039;mit dem Parser gerechnet&#039;&#039;&#039; werden. Man verliert dadurch jedoch die Vorteile der Maxima-Berechnung.&lt;br /&gt;
* Alternativ kann man statt der Operatoren auch &#039;&#039;&#039;Funktionen verwenden&#039;&#039;&#039; (zB: ne() statt != ). Diese werden dann von Maxima zwar nicht ausgewertet, die Berechnung bleibt aber trotzdem korrekt und kann mit Maxima durchgeführt werden.&lt;br /&gt;
* Es gibt einige Funktionen welche in &#039;&#039;&#039;Maxima existieren&#039;&#039;&#039; aber im &#039;&#039;&#039;Parser nicht, oder mit anderem Syntax&#039;&#039;&#039;.&lt;br /&gt;
** Wenn diese von Maxima nicht ausgewertet werden können, da sie &#039;&#039;&#039;Datensätze&#039;&#039;&#039; enthalten welche zu Auswertezeitpunkt von Maxima noch &#039;&#039;&#039;nicht mit Werten belegt&#039;&#039;&#039; sind, &#039;&#039;&#039;dürfen sie in der Berechnung nicht verwendet werden&#039;&#039;&#039;, da der Parser dann damit nichts anfangen kann.&lt;br /&gt;
** Solche Funktionen haben entweder im Parser eine alternative Schreibweise welche auch mit Maxima verwendet werden kann (z.B.: wenn), oder sie können prinzipell nicht verwendet werden. (Für wichtige Funktionsweisen könnte man in zukünftigen Versionen neue Funktionalitäten in den Parser einbauen, die die gewünschte Funktion erfüllen)&lt;br /&gt;
** Ein weiter Möglichkeit für die Verwendung solcher Funktionen ist der Verzicht auf Datensätze in diesen Funktionen, damit diese Funktion beim Auswerten des Maxima-Feldes bereits ausgewertet werden kann und somit der Parser davon nichts mehr sieht.&lt;br /&gt;
** zB:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
if then&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Infix Operatoren===&lt;br /&gt;
====arithmetische Operatoren====&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Operator || Priorität || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| + || 40 || Addition || 4+5 || 9 &lt;br /&gt;
|-&lt;br /&gt;
| - || 40 || Subtraktion || 6-2 || 4&lt;br /&gt;
|-&lt;br /&gt;
| * || 50 || Multiplikation || 4*5 || 20&lt;br /&gt;
|-&lt;br /&gt;
| / || 51 || Division || 20/4 || 5&lt;br /&gt;
|-&lt;br /&gt;
| % || 51 || Divisionsrest || 104%20 || 4&lt;br /&gt;
|-&lt;br /&gt;
| &amp;amp;#124; &amp;amp;#124; || 60 || Parallelschaltung || x &amp;amp;#124; &amp;amp;#124; y || x*y/(x+y)&lt;br /&gt;
|-&lt;br /&gt;
| ^ || 90 || Potenz || 2^3 || 8&lt;br /&gt;
|-&lt;br /&gt;
| .*. || 200 || Operator der intern für eine fehlende bindende Multiplikation verwendet wird || 4x || 4*x&lt;br /&gt;
|-&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
====Bitoperatoren====&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Operator || Priorität || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
||  |  || 20 || Bitweise oder logisches ODER ||| 9|5 &amp;lt;br&amp;gt; true|false || 13 &amp;lt;br&amp;gt;true&lt;br /&gt;
|-&lt;br /&gt;
| or || 20 || Bitweise oder logisches ODER || 9 or 5 || 13&lt;br /&gt;
|-&lt;br /&gt;
| &amp;amp;  || 21 || Bitweise oder logisches UND  || 13&amp;amp;10 || 8&lt;br /&gt;
|-&lt;br /&gt;
| and || 21 || Bitweise oder logisches UND  || 13 and 10 || 8&lt;br /&gt;
|-&lt;br /&gt;
| xor || 22 || Bitweise oder logisches exklusiv oder XOR  || 13 xor 10 || 7&lt;br /&gt;
|-&lt;br /&gt;
| imp || 23 || Bitweise oder logisches impliziert IMP || 13 imp 10 || 8&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;&amp;lt;  || 35 || Bitweise links schieben  || 5&amp;lt;&amp;lt;2 || 20&lt;br /&gt;
|-&lt;br /&gt;
| &amp;gt;&amp;gt;  || 35 || Bitweise rechts schieben || 8&amp;gt;&amp;gt;2 || 2&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
====Vergleichsoperatoren====&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Operator || Priorität || Beschreibung || Beispiel&lt;br /&gt;
|-&lt;br /&gt;
| =  || 3 || Gleichungsoperator || x=y&lt;br /&gt;
|-&lt;br /&gt;
| == || 30 || Gleichungsoperator || x==y&lt;br /&gt;
|-&lt;br /&gt;
| != || 30 || Ungleichungsoperator || x!=y&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt; || 32 || Kleiner || x&amp;lt;y&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;= || 32 || Kleiner gleich || x&amp;lt;=y&lt;br /&gt;
|-&lt;br /&gt;
| &amp;gt; || 32 || größer || x&amp;gt;y&lt;br /&gt;
|-&lt;br /&gt;
| &amp;gt;= || 32 || größer gleich || x&amp;gt;=y&lt;br /&gt;
|}&lt;br /&gt;
====Organisative Operatoren====&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Operator || Priorität || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| , || 0 || Listen-Trennzeichen || x,y ||&lt;br /&gt;
|-&lt;br /&gt;
| $ || 1 || Trennzeichen zwischen mehreren Berechnungen || ||&lt;br /&gt;
|-&lt;br /&gt;
| ; || 1 || Trennzeichen zwischen mehreren Berechnungen || ||&lt;br /&gt;
|-&lt;br /&gt;
| : || 2 || Zuweisung an eine Variablen auf der linken Seite || x:5 || &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Prefix Operatoren===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Operator || Priorität || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| + || 45 || positives Vorzeichen || +5 || 5&lt;br /&gt;
|-&lt;br /&gt;
| - || 45 || negatives Vorzeichen || -(-5) || 5&lt;br /&gt;
|-&lt;br /&gt;
| ~ || 95  || bitweise Inversion einer 64bit-Ganzzahl || ~0x0F0F || 0xFFFFFFFFFFFFF0F0&lt;br /&gt;
|-&lt;br /&gt;
| ! || 120 || logisches NOT || !(3&amp;lt;4) || false&lt;br /&gt;
|-&lt;br /&gt;
| ++ || 130 || Inkrement von Ganzzahlen || ++x || erhöht x um eins und gibt das Ergebnis nach der Erhöhung zurück&lt;br /&gt;
|-&lt;br /&gt;
| -- || 130 || Dekrement von Ganzzahlen || --x || vermindert x um eins und gibt das Ergebnis nach der Verminderung zurück&lt;br /&gt;
|-&lt;br /&gt;
| % || 200 || Prefix für Namen, welche als Konstante definiert sind || %pi || 3.141592653589793&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Suffix Operatoren===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Operator || Priorität || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| ++ || 135 || Inkrement von Ganzzahlen || x++ || erhöht x um eins und gibt den Variablenwert vor der Erhöhung zurück&lt;br /&gt;
|-&lt;br /&gt;
| -- || 135 || Dekrement von Ganzzahlen || x-- || vermindert x um eins und gibt den Variablenwert vor der Verminderung zurück&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==Klammern==&lt;br /&gt;
* () runde Klammern werden für mathematische Ausdrücke zur Klammerung verwendet&lt;br /&gt;
* {} geschwungene Klammer werden im Angabetext für die Namen der Datensätze verwendet&lt;br /&gt;
* [] eckige Klammern werden für Vektoren und Matrizen verwendet&lt;br /&gt;
&lt;br /&gt;
==Funktionen==&lt;br /&gt;
===Funktionen für Ganzzahlen===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| band || bitweises UND || band(4,12) || 4&lt;br /&gt;
|-&lt;br /&gt;
| bor  || bitweises ODER || bor(4,1) || 5&lt;br /&gt;
|-&lt;br /&gt;
| bxor || bitweises EXKLUSIV ODER || band(4,5) || 1&lt;br /&gt;
|-&lt;br /&gt;
| bimp || bitweises Parameter1 impliziert Parameter2 || bimp(13,10) || 8&lt;br /&gt;
|-&lt;br /&gt;
| binv || bitweises NICHT mit 8 bit || binv(0x0F) || 0xF0&lt;br /&gt;
|-&lt;br /&gt;
| shl || Schiebe Ganzzahl bitweise nach links || shl(8,2) || 32&lt;br /&gt;
|-&lt;br /&gt;
| shr || Schiebe Ganzzahl bitweise nach rechts || shr(8,2) || 2&lt;br /&gt;
|-&lt;br /&gt;
| div || Ganzzahldivision, Ergebnis wird abgeschnitten || div(5,2) || 2&lt;br /&gt;
|-&lt;br /&gt;
| inv8  || bitweise Invertieren und die letzten 8 Bit bestimmen  || inv8(0b1001) || 0b11110110&lt;br /&gt;
|-&lt;br /&gt;
| inv16 || bitweise Invertieren und die letzten 16 Bit bestimmen || inv16(0xF0)  || 0xFF0F&lt;br /&gt;
|-&lt;br /&gt;
| inv32 || bitweise Invertieren und die letzten 32 Bit bestimmen || inv32(0xF0)  || 0bFFFFFF0F&lt;br /&gt;
|-&lt;br /&gt;
| inv64 || bitweise Invertieren und die letzten 64 Bit bestimmen || inv64(0xF0)  || 0bFFFFFFFFFFFFFF0F&lt;br /&gt;
|-&lt;br /&gt;
| byte  || Zahl in eine Ganzzahl wandeln und die letzten 8bit der Zahl Abschneiden, Einheit geht verloren  || byte(34.2) || 34&lt;br /&gt;
|-&lt;br /&gt;
| word  || Zahl in eine Ganzzahl wandeln und die letzten 16bit der Zahl Abschneiden, Einheit geht verloren || word(34.2) || 34&lt;br /&gt;
|-&lt;br /&gt;
| int   || Zahl in eine Ganzzahl wandeln und die letzten 32bit der Zahl Abschneiden, Einheit geht verloren || int(34.2) || 34&lt;br /&gt;
|-&lt;br /&gt;
| long  || Zahl in eine Ganzzahl wandeln , Einheit geht verloren || long(34.2) || 34&lt;br /&gt;
|-&lt;br /&gt;
| [[parity]]  || Paritätsberechnung : parity(Parität,Codewortlänge,Datenwort[,Datenwort,....]) || parity(even,7,&amp;quot;xy&amp;quot;) || &lt;br /&gt;
|-&lt;br /&gt;
| [[blockparity]]  || Kreuz oder Blockparität : blockparity(Parität,Codewortlänge,Codewortanzahl,Datenwort[,Datenwort,....]) || blockparity(even,7,3,&amp;quot;abc&amp;quot;) || &lt;br /&gt;
|-&lt;br /&gt;
| [[bcd]]  || Wandelt in eine Long-Zahl in ein Feld aus BCD-kodierten Zahlen um || bcd(124) || [1,2,4]&lt;br /&gt;
|-&lt;br /&gt;
| [[code]] || Code aus mehreren Codeworten zusammensetzen : code(Codewortlänge,Datenwort[,Datenwort,....]) || code(5,4,3,5) || 0b1000001100101&lt;br /&gt;
|-&lt;br /&gt;
| [[hamming]] || Bestimmt den Hamming-Abstand von mehreren Codeworten || hamming(1,2,4,8,16) || 2&lt;br /&gt;
|-&lt;br /&gt;
| [[komplement]] ||  Bildet das Zweierkomplement mit einer negativen Zahl mit einer bestimmten Bitanzahl, fehlt die Bitanzahl, so wird ein 32Bit-2er-komplement gebildet || komplement(-5,8) || 0b11111011&lt;br /&gt;
|-&lt;br /&gt;
| [[bitstream]] || Erzeugt aus einer Ganzzahl einen Bitstrom als String mit einer definierten Anzahl von Bit (MSB werden nötigenfalls mit 0 gefüllt) : bitstream(Daten,Bitanzahl) || bitstream(0x184,12) || &amp;quot;000110000100&amp;quot;&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Funktionen für rationale und Ganzzahlen===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| kgV || berechnet das kleinste gemeinsame Vielfache von mehreren Zahlen || kgV(3,10) || 30&lt;br /&gt;
|-&lt;br /&gt;
| ggT || berechnet den größten gemeinsamen Teiler von mehreren Zahlen || ggT(12,10) || 2&lt;br /&gt;
|- &lt;br /&gt;
| isprim || prüft ob die angegebene Zahl eine Primzahl ist || isprim(13) || true&lt;br /&gt;
|-&lt;br /&gt;
| prims || zerlegt eine Ganzzahl in ihre Primfaktoren || prims(12) || [2,2,3]&lt;br /&gt;
|-&lt;br /&gt;
| defracmix || zerlegt eine rationale Zahl in einen gemischten Bruch aus ganzzahligem Summanden, Zähler und Nenner als Menge&amp;lt;br&amp;gt;Die erhaltene Menge kann mit dem Format-Modfier &#039;&#039;&#039;frac&#039;&#039;&#039; als gemischter Bruch dargestellt werden (siehe [[Zahlendarstellung]]) || defracmix(14/12)&amp;lt;br&amp;gt;defracmix(-15/12)&amp;lt;br&amp;gt;defracmix(3/12) || [1,2/12]&amp;lt;br&amp;gt;[-1,3,12]&amp;lt;br&amp;gt;[0,3,12] &lt;br /&gt;
|-&lt;br /&gt;
| defrac || zerlegt eine rationale Zahl in Zähler und Nenner als Menge &amp;lt;br&amp;gt;Die erhaltene Menge kann mit dem Format-Modfier &#039;&#039;&#039;frac&#039;&#039;&#039; als gemischter Bruch dargestellt werden || defrac(14/12) || [13,12]&lt;br /&gt;
|-&lt;br /&gt;
| frac || erzeugt aus einer Menge aus 2 oder 3 Elementen (von defrac) eine rationale Zahl || frac([3,7])&amp;lt;br&amp;gt;frac([1,2,3]) || 3/7 &amp;lt;br&amp;gt; 5/3&lt;br /&gt;
|-&lt;br /&gt;
| mod || Mathematische Implementierung von [https://de.wikipedia.org/wiki/Division_mit_Rest#Modulo modulo]: Divisionsrest einer Division mit ganzzahligem Ergebnis || mod(5,2) &amp;lt;br&amp;gt; mod(6.2,2.5) &amp;lt;br&amp;gt; mod(-4,3) || 1&amp;lt;br&amp;gt;1.2 &amp;lt;br&amp;gt; 2&lt;br /&gt;
|-&lt;br /&gt;
| mod2 || Symmetrische Implementierung von [https://de.wikipedia.org/wiki/Division_mit_Rest#Modulo modulo]: Divisionsrest einer Division mit ganzzahligem Ergebnis &amp;lt;br&amp;gt;Der Unterschied zu mod liegt in der Behandlung von negativen Zahlen des ersten Arguments &amp;lt;br&amp;gt;Siehe auch Divisionsrest des Parser-Operators % [[Berechnungen#arithmetische_Operatoren]] || mod2(5,2) &amp;lt;br&amp;gt; mod2(6.2,2.5) &amp;lt;br&amp;gt; mod2(-4,3) || 1&amp;lt;br&amp;gt;1.2 &amp;lt;br&amp;gt; -1&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===boolsche Funktionen===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| eq || gleich || eq(4,4) || true&lt;br /&gt;
|-&lt;br /&gt;
| eqruntime || symbolischer Vergleich, welcher &#039;&#039;&#039;symbolisch erst bei der Ergebnisberechnung&#039;&#039;&#039; ausgeführt wird. Muss verwendet werden, wenn bei Vergleichen symbolische Antworten von Schülern (Q0,Q1,...) verwendet werden.  || eqruntime(x+3*y,3*y+x) || true&lt;br /&gt;
|-&lt;br /&gt;
| ne || ungleich || ne(6,4) || true&lt;br /&gt;
|-&lt;br /&gt;
| ge || größer gleich || ge(6,4) || true&lt;br /&gt;
|-&lt;br /&gt;
| le || kleiner gleich || le(6,4) || false&lt;br /&gt;
|-&lt;br /&gt;
| gt || größer || gt(6,4) || true&lt;br /&gt;
|-&lt;br /&gt;
| lt || kleiner || lt(6,4) || false&lt;br /&gt;
|-&lt;br /&gt;
| between || prüft ob Parameter1 kleiner als Parameter2 und Parameter2 kleiner als Parameter 3 || between(3,4,5) || true&lt;br /&gt;
|-&lt;br /&gt;
| land || logisches UND || land(a&amp;lt;b,b&amp;lt;c) || &lt;br /&gt;
|-&lt;br /&gt;
| lor  || logisches ODER || lor(a&amp;lt;b,b&amp;lt;c) || &lt;br /&gt;
|-&lt;br /&gt;
| not  || logisches NICHT. Vorsicht ein symbolisches Ergebnis von Maxima liefert not als Prefix-Operator, welcher vom Parser nicht unterstützt wird ( Verwende statt dessen &#039;&#039;&#039;lnot&#039;&#039;&#039; ) || not(a&amp;lt;b) || &lt;br /&gt;
|-&lt;br /&gt;
| lnot  || logisches NICHT, wie not jedoch wird es von Maxima nicht ausgewertet || lnot(a&amp;lt;b) || &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===arithmetische Funktionen===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| double || Zahl in eine Gleitkommazahl umwandeln, die Einheit geht dabei verloren || double(3.4V) || 3.4&lt;br /&gt;
|-&lt;br /&gt;
| numeric || verwirft die Einheit, wenn eine vorhanden ist und liefert nur den Zahlenwert || numeric(2.3mA) &amp;lt;br&amp;gt; numeric(5%)|| 0.0023 &amp;lt;br&amp;gt; 5&lt;br /&gt;
|-&lt;br /&gt;
| unit || gibt die SI-Einheit mit dem Zahlenwert 1 zurück || unit(3.1kA) &amp;lt;br&amp;gt; unit(5%) || 1A &amp;lt;br&amp;gt; 1%&lt;br /&gt;
|-&lt;br /&gt;
| cround  || Rundet die Zahl kaufmännisch, der zweite Parameter gibt die Anzahl der Kommastellen an, ohne 2.Parameter wird auf Ganzzahlen gerundet, bei komplexen Zahlen wird Betrag und Winkel in Grad gerundet. || cround(23.535,2)&amp;lt;br&amp;gt;cround(2.435arg34.5364°,1) || 23.54&amp;lt;br&amp;gt;2.4arg34.5°&lt;br /&gt;
|-&lt;br /&gt;
| ccround  || Rundet die Zahl kaufmännisch, der zweite Parameter gibt die Anzahl der Kommastellen an, bei komplexe Zahlen wird Real und Imaginärteil gerundet. || ccround(2.4534+5.645*%i,2) || 2.45+5.65i&lt;br /&gt;
|-&lt;br /&gt;
| round  || Rundet die Zahl kaufmännisch, aus Kompatibilitätsgründen zu Maxima hat round nur einen Parameter || round(23.535) || 24&lt;br /&gt;
|-&lt;br /&gt;
| ground || Rundet die Zahl auf die im zweiten Parameter angegebenen gültigen Ziffern || ground(2453.43,2) || 2500&lt;br /&gt;
|-&lt;br /&gt;
| floor  || Rundet auf die größte ganze Zahl, welche kleiner oder gleich x ist || floor(24.5) || 24&lt;br /&gt;
|-&lt;br /&gt;
| trunc  || Schneidet die Zahl nach dem Komma ab || trunc(24.5) || 24&lt;br /&gt;
|-&lt;br /&gt;
| ceiling || ceiling(x) Rundet auf die kleinste ganze Zahl, welche größer oder gleich x ist || ceiling(13.2) || 14&lt;br /&gt;
|-&lt;br /&gt;
| pow || Potenzfunktion || pow(2,3) || 8&lt;br /&gt;
|-&lt;br /&gt;
| par || Parallelschaltung von Widerständen || par(x,y) || x*y/(x+y)&lt;br /&gt;
|-&lt;br /&gt;
| min  || Minimum von mehrere Werten suchen || min(3,5,1) || 1&lt;br /&gt;
|-&lt;br /&gt;
| max  || Maximum von mehreren Werten suchen || max(3,5,1) ||  5&lt;br /&gt;
|-&lt;br /&gt;
| random  || Zufallszahl aus einem definierten Zahlenbereich random(minimal,maximal)&amp;lt;br&amp;gt;VORSICHT! Die Zufallszahl wird bei jedem Aufruf neu berechnet, weshalb sich der Wert bei jedem Anzeigevorgang einer Frage ändert. Sollte sich der berechnete Wert für eine Schülerangabe zwischen Fragestellung und Ergebniskontrolle nicht ändern dürfen (ist der Normalfall) muss man einen &#039;&#039;&#039;Datensatz statt einer Zufallszahl&#039;&#039;&#039; verwenden! &amp;lt;br&amp;gt; Zufallszahlen haben in der Ergebnisberechnung keinen Sinn, und sollten maximal für angezeigte zufällige Werte verwendet werden! || random(2,8) ||  3.4532&lt;br /&gt;
|-&lt;br /&gt;
| randomC  || komplexe Zufallszahl aus einem definierten Zahlenbereich für den Betrag&amp;lt;br&amp;gt;VORSICHT! Die Zufallszahl wird bei jedem Aufruf neu berechnet!  || randomC(2,8) ||  3.4532arg40.3°&lt;br /&gt;
|-&lt;br /&gt;
| signum  || Liefert das Vorzeichen einer Zahl (-1,0,1). Bei einer komplexen Zahl das Vorzeichen des Realteils. || signum(-4) || -1&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Maxima-basierte Funktionen ===&lt;br /&gt;
* Diese Funktionen funktionieren nur wenn Maxima installiert ist und werden immer an Maxima gesendet, auch wenn der interne Parser aktiviert ist.&lt;br /&gt;
* Weiters werden sie bei der Ausgabe als TeX-Formel auch korrekt mit LaTeX gesetzt.&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| integrate || Berechnet das unbestimmte oder bestimmte Integral einer Funktion. || integrate(x^2,x) &amp;lt;br&amp;gt; integrate(x^2,x,0,2) || x^3/3 &amp;lt;br&amp;gt; 8/3  &lt;br /&gt;
|-&lt;br /&gt;
| diff || Berechnet die Ableitung einer Funktion.  || diff(x^2,x)&amp;lt;br&amp;gt;diff(3*x^2,x,2) || x &amp;lt;br&amp;gt; 6&lt;br /&gt;
|-&lt;br /&gt;
| tomaxima || Führt die Berechnung aller Parameter von links nach rechts hintereinander mit Maxima aus. Das Ergebnis ist dann das Ergebnis des letzten Parameters. || tomaxima(y:x^2,y+2) || x^2+2&lt;br /&gt;
|-&lt;br /&gt;
| laplace || Bestimmt die Laplace-Transformierte einer Funktion. || laplace(sin(t),t,s) || 1/(1+s^2)&lt;br /&gt;
|-&lt;br /&gt;
| ilt || Bestimmt die inverse Laplace-Transformierte eine Laplace-Funktion || ilt(1/(1+s),s,t) || e^(-t)&lt;br /&gt;
|-&lt;br /&gt;
| sum || Summenbildung || sum(1/k,k,1,2) || 3/2&lt;br /&gt;
|-&lt;br /&gt;
| product || Produktbildung || product(1/k,k,1,3) || 1/6&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===erweiterte arithmetische Funktionen===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| sigma || Sprungfunktion: sigma(x) liefert 0 für x&amp;lt;0 und 1 für x&amp;gt;=0 || sigma(243.3) || 1&lt;br /&gt;
|-&lt;br /&gt;
| pulse || Rechteckfunktion: &amp;lt;br&amp;gt;pulse(x,x0) ist gleich 1 für x0 &amp;lt; x &amp;lt; x0 + 1, sonst 0&amp;lt;br&amp;gt;pulse(x,x0,L) ist gleich 1 für x0 &amp;lt; x &amp;lt; x0 + L, sonst 0&amp;lt;br&amp;gt;[[Datei:pulse.png|300px]] || pulse(x,2,4) || [[Datei:pulse_x_2_4.png|100px]]&lt;br /&gt;
|-&lt;br /&gt;
| interpol || Interpolationsfunktion zwischen mehreren Stützpunkten in einem Koordinatensystem. &amp;lt;br&amp;gt; interpol(WerteX,WerteY,x) || interpol([0,1,2],[0,3,3],1.5) || 3&lt;br /&gt;
|-&lt;br /&gt;
| periodic || Erzeugt aus einer beliebigen Funktion zwischen 0 und Periodendauer eine periodische Funktion &amp;lt;br&amp;gt; periodic(Variable,Periodendauer,Funktion)&amp;lt;br&amp;gt; periodic(Variable,Periodendauer,Funktionsperiodendauer,Funktion) || ch1(t):periodic(t,5ms,2&#039;Vms-2&#039;*t^2) &amp;lt;br&amp;gt; ch1(t):periodic(t,5ms,1,2V*t^2) || :[[Datei:ClipCapIt-190318-113524.PNG|100px]] &amp;lt;br&amp;gt; :[[Datei:ClipCapIt-190318-113644.PNG|100px]]&lt;br /&gt;
|-&lt;br /&gt;
| numint || numerische Integration &amp;lt;br&amp;gt; numint(untereGrenze,obereGrenze,funktion,Variable)&amp;lt;br&amp;gt; numint(untereGrenze,obereGrenze,funktion,Variable,punkteAnzahl) || numint(0,2pi,sin(t),t) || 0&lt;br /&gt;
|-&lt;br /&gt;
| numdif || numerisches Differenzieren einer Funktion &amp;quot;funktion&amp;quot; nach einer Variablen &amp;quot;Variable&amp;quot; an der Stelle &amp;quot;position&amp;quot; mit einer Differenz der Variablen von &amp;quot;differenz&amp;quot; &amp;lt;br&amp;gt; numdif(position,funktion,Variable,differenz) || numdif(0,sin(t),t,0.01) || 1&lt;br /&gt;
|-&lt;br /&gt;
| solve || löst eine Gleichung oder ein Gleichungssystem nach einer oder mehrerer Variablen || solve([2*x+y=3,x-y=0],[x,y]) || [ [ x=1,y=1 ] ]&lt;br /&gt;
|-&lt;br /&gt;
| solvevalue || löst eine Gleichung oder ein Gleichungssystem nach einer Variablen und liefert genau die erste Lösung wenn sie numerisch berechenbar ist || solvevalue([ 2*x+y=3,x-y=0 ],[ x,y ],x)  || 1&lt;br /&gt;
|-&lt;br /&gt;
| newton || Bestimmt eine Nullstelle einer Funktion nach dem Newton-Verfahren. Der erste Parameter ist ein Ausdruck in einer Variablen, der zweite Parameter ist der Startwert. || newton(x^2-4,4) || 2&lt;br /&gt;
|-&lt;br /&gt;
| cnewton || Bestimmt eine komplexe Nullstelle einer Funktion nach dem Newton-Verfahren. Der erste Parameter ist ein Ausdruck in einer Variablen, der zweite Parameter ist der komplexe Startwert. || cnewton (x^2+4,4) || 2*%i&lt;br /&gt;
|-&lt;br /&gt;
| newtonall || Bestimmt alle Nullstellen einer Funktion mit einem Betrag des Funktionsparameters kleiner als ein definierter Wert nach dem Newton-Verfahren. Der erste Parameter ist ein Ausdruck in einer Variablen, der zweite Parameter ist der maximale Betrag des Funktionsparameters. Das Ergebnis ist immer ein Vektor mit den nach aufsteigendem Funktionswert sortierten Nullstellen. || newtonall (x^2-4,4) || [-2,2]&lt;br /&gt;
|-&lt;br /&gt;
| cnewtonall || Bestimmt alle komplexen Nullstellen einer Funktion mit einem Betrag des Funktionsparameters kleiner als ein definierter Wert nach dem Newton-Verfahren. Der erste Parameter ist ein Ausdruck in einer Variablen, der zweite Parameter ist der maximale Betrag des Funktionsparameters. Das Ergebnis ist immer ein Vektor mit den Nullstellen. || cnewtonall (x^2+4,4) || [-2*%i,2*%i]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Gleichungen und Gleichungssysteme ===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis || ab Revision&lt;br /&gt;
|-&lt;br /&gt;
| solve || löst eine Gleichung oder ein Gleichungssystem nach einer oder mehrerer Variablen || solve([2*x+y=3,x-y=0],[x,y]) || [ [ x=1,y=1 ] ] || &lt;br /&gt;
|-&lt;br /&gt;
| lhs || liefert die linke Seite einer Gleichung, Ungleichung oder eines Infix Operators || lhs(x+y=c+2) || x+y || 6521&lt;br /&gt;
|-&lt;br /&gt;
| rhs || liefert die rechte Seite einer Gleichung, Ungleichung oder eines Infix Operators || rhs(x+y=c+2) || c+2 || 6521&lt;br /&gt;
|-&lt;br /&gt;
| onlypos || liefert aus dem Lösungsvektor von solve welcher aus lauter Gleichungen besteht nur die Lösungen welche positiv nicht Null sind || onlypos([[x=3,y=-3],[x=4,y=5],[x=-2,y=4]]) &amp;lt;br&amp;gt; onlypos([x=-2,x=0,x=6,x=8]) || [ [x=4,y=5] ] &amp;lt;br&amp;gt; [x=7,x=8] || 6522&lt;br /&gt;
|-&lt;br /&gt;
| onlyreal || liefert aus dem Lösungsvektor von solve welcher aus lauter Gleichungen besteht nur die Lösungen welche reell sind || onlyreal([[x=1,y=%i],[x=1,y=-%i],[x=3,y=4]]) &amp;lt;br&amp;gt; onlyreal([x=%i+1,x=1-%i,x=3,x=8]) || [ [x=3,y=4] ] &amp;lt;br&amp;gt; [x=3,x=8] || 6522&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Stringfunktionen===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| dechex || Zahl in eine Ganzzahl wandeln und als Hexadezimal-String ausgeben || dexhex(12) || &amp;quot;0xC&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| chr || Bestimmt die Zeichen mit dem ASC-II-Code der Long-Parameter und setzt daraus einen String zusammen. || chr(0x65,105) || &amp;quot;ei&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| val || Bestimmt den ASC-II-Code des ersten Zeichens welches als String-Parameter übergeben wurde.|| val(&amp;quot;a&amp;quot;) || 97&lt;br /&gt;
|-&lt;br /&gt;
| strcat || Fügt mehrere Strings zusammen.|| strcat(&amp;quot;a&amp;quot;,&amp;quot;b&amp;quot;) || &amp;quot;ab&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===trigonometrische Funktionen===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| sin || Sinus || sin(%pi/2) || 1&lt;br /&gt;
|-&lt;br /&gt;
| cos || Cosinus || cos(%pi/2) || 0&lt;br /&gt;
|-&lt;br /&gt;
| tan || Tangens || tan(%pi/4) || 1&lt;br /&gt;
|-&lt;br /&gt;
| asin || Arcus-Sinus || asin(1) || %pi/2&lt;br /&gt;
|-&lt;br /&gt;
| arcsin || Arcus-Sinus || asin(1) || %pi/2&lt;br /&gt;
|-&lt;br /&gt;
| acos || Arcus-Cosinus || acos(1) || 0&lt;br /&gt;
|-&lt;br /&gt;
| arccos || Arcus-Cosinus || acos(1) || 0&lt;br /&gt;
|-&lt;br /&gt;
| atan || Arcus-Tangens || atan(1) || %pi/4&lt;br /&gt;
|-&lt;br /&gt;
| arctan || Arcus-Tangens || arctan(1) || %pi/4&lt;br /&gt;
|-&lt;br /&gt;
| atan2 || Arcus-Tangens atan2(y,x)=arctan(y/x) || atan2(-2,-2) || -%pi*3/4&lt;br /&gt;
|-&lt;br /&gt;
| arctan2 || Arcus-Tangens arctan2(y,x)=arctan(y/x) || arctan2(-2,-2) || -%pi*3/4&lt;br /&gt;
|-&lt;br /&gt;
| sinh || Sinus-Hyperbolicus || sinh(1) || 1.1752012&lt;br /&gt;
|-&lt;br /&gt;
| cosh || Cosinus-Hyperbolicus || cosh(1) || 1.5430806&lt;br /&gt;
|-&lt;br /&gt;
| tanh || Tangens-Hyperbolicus || tanh(1) || 0.7615941&lt;br /&gt;
|-&lt;br /&gt;
| coth || Cotangens-Hyperbolicus || coth(1) || 1.313035&lt;br /&gt;
|-&lt;br /&gt;
| asinh || Area-Sinus-Hyperbolicus || asinh(1.1752012) || 1&lt;br /&gt;
|-&lt;br /&gt;
| acosh || Area-Cosinus-Hyperbolicus || acosh(1.5430806) || 1&lt;br /&gt;
|-&lt;br /&gt;
| atanh || Area-Tangens-Hyperbolicus || atanh(0.7615941) || 1&lt;br /&gt;
|-&lt;br /&gt;
| acoth || Area-Cotangens-Hyperbolicus || acoth(1.313035) || 1&lt;br /&gt;
|-&lt;br /&gt;
| [[csin]] || Erzeugt aus einer komplexen Zahl (Effektivwert) und einer Frequenz einen Sinusfunktion in der Zeit || csin(U) || sqrt(2)*cabs(U)*sin(2*pi*f*t+carg(U))&lt;br /&gt;
|-&lt;br /&gt;
| [[quadrant]] || Liefert den Quadranten eines Winkels mit einer Toleranzangabe. || quadrant(20°,5°) || 1&lt;br /&gt;
|-&lt;br /&gt;
| argnorm || Wandelt einen Winkel auf den Bereich von 0°-360° || argnorm(-50°) || 310°&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Exponentialfunktionen===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| pow || Potenzfunktion || pow(2,3) || 8&lt;br /&gt;
|-&lt;br /&gt;
| exp|| Exponentialfunktion || exp(1) || %e&lt;br /&gt;
|-&lt;br /&gt;
| log || natürlicher Logarythmus || log(%e) || 1&lt;br /&gt;
|-&lt;br /&gt;
| ln || natürlicher Logarythmus || ln(%e) || 1&lt;br /&gt;
|-&lt;br /&gt;
| log10 || Logarythmus zur Basis 10 || log10(100) || 2&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===komplexe Zahlen===&lt;br /&gt;
Die Funktionen zu komplexen Zahlen werden (anders als in Maxima) nur ausgewertet wenn das Ergebnis numerisch berechenbar ist, ansonsten bleibt die Funktion symbolisch erhalten.&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| abs || Liefert den Absolutbetrag einer komplexen Zahl || abs(3+4*%i) || 5&lt;br /&gt;
|-&lt;br /&gt;
| cabs || Liefert den Absolutbetrag einer komplexen Zahl || cabs(3+4*%i) || 5&lt;br /&gt;
|-&lt;br /&gt;
| carg || Liefert das Argument einer komplexen Zahl || carg(4*%e^(3*%i)) || 3&lt;br /&gt;
|-&lt;br /&gt;
| realpart || Liefert den Realteil einer komplexen Zahl || realpart(3+4*%i) || 3&lt;br /&gt;
|-&lt;br /&gt;
| imagpart || Liefert den Imaginärteil einer komplexen Zahl || imagpart(3+4*%i) || 4&lt;br /&gt;
|-&lt;br /&gt;
| conjugate || Liefert die konjugiert komplexe Zahl einer komplexen Zahl || conjugate(3+4*%i) || 3-4*%i&lt;br /&gt;
|-&lt;br /&gt;
| rectform || hat in LeTTo keine Relevanz, da die Zahlendarstellung bei der Ausgabe definiert wird wie zB.: {=3arg2;karti} ||  || &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Polynome===&lt;br /&gt;
Polynome mit reellen Koeffizienten in einer Variablen können mit folgenden Funktionen erstellt und verarbeitet werden. Für die interne Verarbeitung wird hierzu ein eigener Polynom-Datentyp verwendet.&lt;br /&gt;
&lt;br /&gt;
siehe auch [[Zahlendarstellung#f.C3.BCr_Polynome_und_gebrochen_rationale_Funktionen_mit_numerischen_Koeffizienten_in_einer_Variablen_k.C3.B6nnen_folgende_Parameter_angegeben_werden|Zahlendarstellung Polynome]]&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| polynom(p) || Erzeugt aus einem Ausdruck welcher genau eine Variable besitzen muss ein Polynom in dieser Variablen || polynom(1+x) || 1+x²&lt;br /&gt;
|-&lt;br /&gt;
| polynom(p,var) || Erzeugt aus einem Ausdruck ein Polynom in einer definierten Variablen. Ist p ein gültiger Polynom-Ausdruck mit reelen Koeffizienten in der Variablen var wird das Polynom erzeugt, ansonsten bleibt die Funktion erhalten. || polynom(1+a*x^2,x) &amp;lt;br&amp;gt; polynom(1+2*x^2,x) || polynom(1+a*x^2,x)&amp;lt;br&amp;gt;1+2*x²&lt;br /&gt;
|-&lt;br /&gt;
| polynom(p,var,&amp;quot;einheit&amp;quot;) || Erzeugt ein Polynom in der Variablen var, mit der Einheit &amp;quot;einheit&amp;quot; für die Polynomvariable. Die Einheit muss als String in Doppelhochkomma angegeben werden! Das Polynom p muss entweder ohne Einheiten oder mit den korrekten Einheiten angegeben werden! || polynom(1+2*p^2,p,&amp;quot;s-1&amp;quot;) &amp;lt;br&amp;gt; polynom(1+2&#039;s2&#039;*p^2,p,&amp;quot;s-1&amp;quot;) || 1+2&#039;s2&#039;*p^2 &amp;lt;br&amp;gt;1+2&#039;s2&#039;*p^2&lt;br /&gt;
|-&lt;br /&gt;
| factfrompolynom(p) || Erzeugt aus einem Polynom einen Vektor mit den Polynomfaktoren. Erste Zeile Zählerfaktoren, zweite Zeile Nennerfaktoren, dritte Zeile Polynomvariable, vierte Zeile Einheit der Polynomvariable|| factfrompolynom(polynom((2+x)/(1+2*x))) || [[1,0.5],[0.5,1],&amp;quot;x&amp;quot;,&amp;quot;&amp;quot;]&lt;br /&gt;
|-&lt;br /&gt;
| polynomfromfact(f) || Erzeugt aus einer Faktoren-Liste, welche mit factfrompolynom erstellt wurde ein neues Polynom || polynomfromfact([[1,0.5],[0.5,1],&amp;quot;x&amp;quot;,&amp;quot;&amp;quot;]) || (2+x)/(1+2*x)&lt;br /&gt;
|- &lt;br /&gt;
| polynomfromfact(zähler,nenner,var,einheit) || Erzeugt aus Zähler und Nenner Faktor-Vektoren ein neues Polynom || polynomfromfact([1,0.5],[0.5,1],x,&amp;quot;&amp;quot;) || (2+x)/(1+2*x)&lt;br /&gt;
|- &lt;br /&gt;
| nullfrompolynom(p) || Erzeugt aus einem Polynom einen Vektor mit den PolynomNullstellen und Polstellen. Erste Zeile gemeinsamer Faktor, zweite Zeile Nullstellen, dritte Zeile Polstellen, vierte Zeile Polynomvariable|| nullfrompolynom(polynom((2+x)/(1+2*x))) || [0.5,[-2],[-0.5],x]&lt;br /&gt;
|-&lt;br /&gt;
| polynomfromnull(n) || Erzeugt aus einer Nullstellen-Polstellen-Liste, welche mit nullfrompolynom erstellt wurde ein neues Polynom || polynomfromnull([0.5,[-2],[-0.5],x]) || (2+x)/(1+2*x)&lt;br /&gt;
|- &lt;br /&gt;
| polynomfromnull(faktor,nullstellen,polstellen,var) || Erzeugt aus einer Faktor-Vektoren ein neues Polynom || polynomfromnull(0.5,[-2],[-0.5],x) || (2+x)/(1+2*x)&lt;br /&gt;
|-  &lt;br /&gt;
| polynomk(p) || Bestimmt den Faktor, welcher vom Polynom herausgehoben werden kann, so dass die höchste Potenz der Polynomvariable den Multiplikator Eins hat. || polynomk(polynom((2+x)/(1+2*x))) || 0.5&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===statistische Funktionen===&lt;br /&gt;
Die Funktionen funktionieren nur ohne Einheiten.&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| factorial || Liefert die Fakultät einer positiven ganzen Zahl || factorial(5) || 120&lt;br /&gt;
|-&lt;br /&gt;
| binomial || Liefert den Binomialkoeffizienten von zwei positiven ganzen Zahlen || binomial(5,2) || 10&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Mengen-Funktionen===&lt;br /&gt;
Mengen werden intern als Vektoren verarbeitet und sind deshalb auch direkt durch Vektoren ersetzbar. Auch alle Vektor-Funktionen sind somit auch auf Mengen anwendbar und umgekehrt.&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis || ab Rev&lt;br /&gt;
|-&lt;br /&gt;
| setget || Liefert ein Element einer Menge oder einer Matrix (Menge von Mengen) || setget([12,13,14],1) &amp;lt;br&amp;gt; setget(matrix([9,2],[3,4]),0,1) || 13 &amp;lt;br&amp;gt; 2 &lt;br /&gt;
|-&lt;br /&gt;
| setset || setzt ein Element einer Menge oder einer Matrix (Menge von Mengen) || setset([12,13,14],1,35) &amp;lt;br&amp;gt; setset(matrix([9,2],[3,4]),0,0,-9) || [12,35,14] &amp;lt;br&amp;gt; [[-9,2],[3,4]]&lt;br /&gt;
|-&lt;br /&gt;
| setlength || liefert die Anzahl der Elemente einer Liste, Menge oder eines Vektors || setlength([3,6,54,34,3,54]) || 6 &lt;br /&gt;
|- &lt;br /&gt;
| setinsert || fügt ein Element in eine Menge an eine gegebene Stelle ein || setinsert([12,13,14],1,25) || [12,25,13,14]&lt;br /&gt;
|-&lt;br /&gt;
| setremove || löscht ein Element einer Menge || setremove([12,13,14],1) || [12,14]&lt;br /&gt;
|-&lt;br /&gt;
| setapply || wendet einen Ausdruck oder Funktion auf alle Elemente einer Menge an || setapply(y,[1,2,3],y*2) || [2,4,6] || 5965&lt;br /&gt;
|-&lt;br /&gt;
| setmedian || Liefert den Median einer Menge || setmedian([4,3,1,5,6]) || 4&lt;br /&gt;
|-&lt;br /&gt;
| setboxplot || Liefert die Werte des Boxplot einer Menge (Minimum, unteres Quartil, Median, oberes Quartil, Maximum) als Vektor verwendbar für das [[Plot#definierte_Zeichenelemente|Plot-Plugin]] || setboxplot([1,2,3,10,8,9]) || [1,2,5.5,9,10]&lt;br /&gt;
|-&lt;br /&gt;
| setsort || Sortiert die Elemente einer Menge aufsteigend || setsort([3,-3,2,0,5,2]) || [-3,0,2,2,3,5]&lt;br /&gt;
|-&lt;br /&gt;
| setsortnd || Sortiert die Elemente einer Menge aufsteigend und entfernt alle mehrfach vorkommenden Elemente || setsortnd([31,-3,2,31,0,5,2]) || [-3,0,2,5,31]&lt;br /&gt;
|-&lt;br /&gt;
| setcount || Bestimmt die Anzahl wie oft ein Element in einer Menge vorkommt oder die Anzahl der Elemente der Menge || setcount([31,-3,2,31,0,5,2],31) &amp;lt;br&amp;gt; setcount([2,5,3,6]) || 2 &amp;lt;br&amp;gt; 4&lt;br /&gt;
|-&lt;br /&gt;
| setmodus || Liefert das Element einer Menge, welches am öftesten vorkommt oder die Elemente als Menge wenn mehrere Elemente gleich oft vorkommen || setmodus([3,-3,2,0,5,2]) || 2&lt;br /&gt;
|-&lt;br /&gt;
| setreverse || Dreht die Reihenfolge einer Menge um || setreverse([3,-3,2,0,5,2]) || [2,5,0,2,-3,3]&lt;br /&gt;
|-&lt;br /&gt;
| setnd || Löscht alle Duplikate aus der Menge || setnd([3,-3,2,0,5,2]) || [3,-3,2,0,5]&lt;br /&gt;
|-&lt;br /&gt;
| setshuffle || Mischt eine Menge in eine andere Reihenfolge. VORSICHT, ohne zweiten Parameter (ganze Zahl) ändert sich die Reihenfolge bei jedem mal neu Laden automatisch und ist nicht nachvollziehbar, weshalb sie dann für Schülerbeispiele nicht einsetzbar ist! Daher ist es für eine praktische Anwendung in einem Schülerbeispiel &#039;&#039;&#039;erforderlich&#039;&#039;&#039;, dass der zweite Parameter determiniert (beispielsweise über einen Integer-Datensatz-Wert zwischen 0 und 1000) festgelegt wird.|| setshuffle([3,-3,2,0,5,2],5) || [2,3,−3,2,0,5] || 6082&lt;br /&gt;
|-&lt;br /&gt;
| setmittel || Bestimmt den Mittelwert einer Menge || setmittel([1,3,2,4]) || 2.5&lt;br /&gt;
|-&lt;br /&gt;
| setgeomittel || Bestimmt das geometrische Mittelwert einer Menge aus positiven reellen Zahlen || setgeomittel([10,20,30]) || 18.171206&lt;br /&gt;
|-&lt;br /&gt;
| setvarianz || Bestimmt die empirische Varianz einer Menge || setvarianz([3,1,2,5,4]) || ((3-3)^2+(1-3)^2+(2-3)^2+(5-3)^2+(4-3)^2)/5=2&lt;br /&gt;
|-&lt;br /&gt;
| setquadratmittel || Bestimmt den quadratischen Mittelwert einer Menge || setquadratmittel([10,20,30]) || 21.6025&lt;br /&gt;
|-&lt;br /&gt;
| setsum || Bestimmt die Summe aller Werte einer Menge || setsum([1,3,2,4]) || 10&lt;br /&gt;
|-&lt;br /&gt;
| setprod || Bestimmt das Produkt aller Werte einer Menge || setprod([1,3,2,4]) || 24&lt;br /&gt;
|-&lt;br /&gt;
| setunion || Fügt mehrere Mengen zu einer neuen Menge zusammen || setunion([1,3,2,4],[3,7]) || [1,3,2,4,3,7]&lt;br /&gt;
|-&lt;br /&gt;
| setunionnd || Fügt mehrere Mengen zu einer neuen Menge zusammen, sortiert diese und entfernt alle mehrfachen Elemente || setunionnd([1,3,2,4],[3,7]) || [1,2,3,4,7]&lt;br /&gt;
|-&lt;br /&gt;
| setcut || Bildet die Schnittmenge aus mehreren Mengen || setcut([1,3,2,4],[3,7]) || [3]&lt;br /&gt;
|-&lt;br /&gt;
| setcompare || vergleicht zwei Mengen miteinander, wobei die Reihenfolge egal ist  || setcompare([1,3,2,4],[3,7]) &amp;lt;br&amp;gt; setcompare([1,3,2],[1,2,3]) &amp;lt;br&amp;gt; setcompare([1,3,2],[1,3,2,3]) &amp;lt;br&amp;gt; setcompare([1,2,3],[1,2,3])  || false &amp;lt;br&amp;gt; true &amp;lt;br&amp;gt; false &amp;lt;br&amp;gt; true&lt;br /&gt;
|-&lt;br /&gt;
| setcomparend || vergleicht zwei Mengen miteinander, wobei die Reihenfolge egal ist und doppelte Werte als einfach behandelt werden. || setcomparend([1,3,2,4],[3,7]) &amp;lt;br&amp;gt; setcomparend([1,3,2],[1,2,3]) &amp;lt;br&amp;gt; setcomparend([1,3,2],[1,3,2,3]) &amp;lt;br&amp;gt; setcomparend([1,2,3],[1,2,3])  || false &amp;lt;br&amp;gt; true &amp;lt;br&amp;gt; true &amp;lt;br&amp;gt; true&lt;br /&gt;
|-&lt;br /&gt;
| setpartof || prüft ob die erste Menge eine Teilmenge der zweite Menge ist wobei die Reihenfolge egal ist aber mehrfache Werte berücksichtigt werden  || setpartof([1,4],[1,3,7]) &amp;lt;br&amp;gt; setpartof([1,3],[1,2,3]) &amp;lt;br&amp;gt; setpartof([1,3,3],[1,3,5,7]) &amp;lt;br&amp;gt; setpartof([1,4,4],[1,2,3,4])  || false &amp;lt;br&amp;gt; true &amp;lt;br&amp;gt; false &amp;lt;br&amp;gt; false&lt;br /&gt;
|-&lt;br /&gt;
| setpartofnd || prüft ob die erste Menge eine Teilmenge der zweite Menge ist wobei die Reihenfolge und mehrfache Werte egal sind  || setpartofnd([1,4],[1,3,7]) &amp;lt;br&amp;gt; setpartofnd([1,3],[1,2,3]) &amp;lt;br&amp;gt; setpartofnd([1,3,3],[1,3,5,7]) &amp;lt;br&amp;gt; setpartofnd([1,4,4],[1,2,3,4])  || false &amp;lt;br&amp;gt; true &amp;lt;br&amp;gt; true &amp;lt;br&amp;gt; true&lt;br /&gt;
|-&lt;br /&gt;
| setgetmin || Liefert den kleinsten Wert einer Menge || setgetmin([1,3,-2,4]) || -2&lt;br /&gt;
|-&lt;br /&gt;
| setgetmax || Liefert den größten Wert einer Menge || setgetmax([1,3,-2,4]) || 4&lt;br /&gt;
|-&lt;br /&gt;
| setremovefirst || Entfernt den ersten Wert einer Menge || setremovefirst([1,3,-2,4]) || [3,-2,4]&lt;br /&gt;
|-&lt;br /&gt;
| setremovelast || Entfernt den letzten Wert einer Menge || setremovelast([1,3,-2,4]) || [1,3,-2]&lt;br /&gt;
|-&lt;br /&gt;
| setgetfirst || Liefert den ersten Wert einer Menge || setgetfirst([1,3,-2,4]) || 1&lt;br /&gt;
|-&lt;br /&gt;
| setgetlast || Liefert den letzten Wert einer Menge || setgetlast([1,3,-2,4]) || 4&lt;br /&gt;
|-&lt;br /&gt;
| setsub || setsub(M,x,y) Liefert eine Teilmenge von M der Elemente vom index x bis zum Index y || setsub([1,3,-2,4],1,2) || [3,-2]&lt;br /&gt;
|-&lt;br /&gt;
| setmakelist || setmakelist(f,x,start,stop) setzt in den Ausdruck f für x die Werte von start bis stop mit einer Schrittweite von 1 ein. || setmakelist(x^2,x,1,4) || [ 1,4,9,16 ]&lt;br /&gt;
|-&lt;br /&gt;
| || setmakelist(f,x,start,stop,schrittweite) setzt in den Ausdruck f für x die Werte von start bis stop mit dem Abstand schrittweite ein. || setmakelist(x^2,x,1,2,0.5) || [ 1,2.25,4 ]&lt;br /&gt;
|-&lt;br /&gt;
| || setmakelist(f,x,set) setzt die Werte des Vektors set in den Ausdruck f für x ein. || setmakelist(x^2,x,[3,1,2])  ||[ 9,1,4 ]&lt;br /&gt;
|-&lt;br /&gt;
| foreach || Führt für jedes Element eine Berechnung aus und verbindet die Ergebnisse mit der Aggregatfunktion || foreach([2,-3,5,-6],p,cabs(p),&amp;quot;+&amp;quot;) || 16 || 6075 &lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Punkte-Mengen-Funktionen ===&lt;br /&gt;
Bei der Eingabe mit dem Plot-Plugin werden Punkte-Mengen als Matrizen in der Form [[x1,y1],[x2,y2],[y3,y3]] für die gespeicherten Punkte welcher der Schüler eingegeben hat verwendet.&lt;br /&gt;
&lt;br /&gt;
Um die Verarbeitung der Eingaben zu erleichtern kann man die Funktionen beginnend mit pv verwenden.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis || ab Rev&lt;br /&gt;
|-&lt;br /&gt;
| pvabs || Bestimmt den Betrag eines Punktes oder aller Ortsvektoren zu den Punkten. || pvabs([[2,3],[4,5],[6,3],[-2,4]]) &amp;lt;br&amp;gt; pvabs([[2,3],[4,5],[6,3],[-2,4]],1) ||  [3.6056,6.4031,6.7082,4.4721] &amp;lt;br&amp;gt; 6.4031 || 6077&lt;br /&gt;
|-&lt;br /&gt;
| pvarg || Bestimmt den Winkel eines Punktes oder aller Ortsvektoren zu den Punkten. || pvarg([[2,3],[4,5],[6,3],[-2,4]]) &amp;lt;br&amp;gt; pvarg([[2,3],[4,5],[6,3],[-2,4]],1) || [0.98279,0.89606,0.46365,2.0344] &amp;lt;br&amp;gt; 0.89606 || 6077&lt;br /&gt;
|-&lt;br /&gt;
| pvget || Liefert einen Punkt der Punkteliste. || pvget([[2,3],[4,5],[6,3],[-2,4]],1) || [4,5] || 6077&lt;br /&gt;
|-&lt;br /&gt;
| pvgetx || Bestimmt die x-Koordinate eines Punktes oder aller Punkte. || pvgetx([[2,3],[4,5],[6,3],[-2,4]]) &amp;lt;br&amp;gt; pvgetx([[2,3],[4,5],[6,3],[-2,4]],1) || [2,4,6,-2]&amp;lt;br&amp;gt;4 || 6077&lt;br /&gt;
|-&lt;br /&gt;
| pvgety || Bestimmt die y-Koordinate eines Punktes oder aller Punkte. || pvgety([[2,3],[4,5],[6,3],[-2,4]]) &amp;lt;br&amp;gt; pvgety([[2,3],[4,5],[6,3],[-2,4]],1) || [3,5,3,4]&amp;lt;br&amp;gt;3 || 6077&lt;br /&gt;
|-&lt;br /&gt;
| pvdistance || Bestimmt die Abstände als Vektoren zwischen den Punkten. pvdistance([A,B,C]) liefert [AB,BC,CA] || pvdistance([[1,2],[3,4],[10,10]]) || [[2,2],[7,6],[-9,-8] || 6569&lt;br /&gt;
|-&lt;br /&gt;
| pvlineabs || Bestimmt aus dem n-ten Punktepaar den Absolutbetrag des Abstandes. || pvlineabs([[2,3],[4,5],[6,3],[-2,4]])&amp;lt;br&amp;gt;pvlineabs([[2,3],[4,5],[6,3],[-2,4]],0) || [2.8284,8.0623]&amp;lt;br&amp;gt;2.82842712475 || 6075 &lt;br /&gt;
|-&lt;br /&gt;
| pvlinearg || Bestimmt aus dem n-ten Punktepaar den Winkel der Strecke zur x-Achse || pvlinearg([[2,3],[4,5],[6,3],[-2,4]])&amp;lt;br&amp;gt;pvlinearg([[2,3],[4,5],[6,3],[-2,4]],0) || [45°,172.87°]&amp;lt;br&amp;gt;45° || 6075 &lt;br /&gt;
|-&lt;br /&gt;
| pvlinek || Bestimmt die Steigung der zugehörigen Geraden dem n-ten Punktepaar || pvlinek([[2,3],[4,5],[6,3],[-2,4]])&amp;lt;br&amp;gt;pvlinek([[2,3],[4,5],[6,3],[-2,4]],0) ||  [1,−0.125]&amp;lt;br&amp;gt;1 || 6075 &lt;br /&gt;
|-&lt;br /&gt;
| pvlined || Bestimmt den Schnittpunkt einer Geraden durch das n-te Punktepaar mit der y-Achse || pvlined([[2,3],[4,5],[6,3],[-2,4]])&amp;lt;br&amp;gt;pvlined([[2,3],[4,5],[6,3],[-2,4]],0) || [1,3.75] &amp;lt;br&amp;gt;1 || 6075 &lt;br /&gt;
|-&lt;br /&gt;
| pvline || Bestimmt die Geradengleichung einer Geraden durch das n-te Punktepaar || pvline([[2,3],[4,5],[6,3],[-2,4]])&amp;lt;br&amp;gt;pvline([[2,3],[4,5],[6,3],[-2,4]],0) || [y=1+x,y=3.75−0.125⋅x]&amp;lt;br&amp;gt;y=x+1 || 6075 &lt;br /&gt;
|-&lt;br /&gt;
| pvpoints || Bestimmt die Anzahl der Punkte || pvpoints([[2,3],[4,5],[6,3],[-2,4]]) || 4 || 6075 &lt;br /&gt;
|-&lt;br /&gt;
| pvvect || Bestimmt einen Vector aus dem n-te Punktepaar || pvvect([[2,3],[4,5],[6,3],[-2,4]],0) || [2,2] || 6075 &lt;br /&gt;
|-&lt;br /&gt;
| pvsortx || Sortiert die Punkte nach steigender x-Koordinate || pvsortx([[2,3],[4,5],[6,3],[−2,4],[−3,5],[−7,−9]]) || [[−7,−9],[−3,5],[−2,4],[2,3],[4,5],[6,3]] ||6077 &lt;br /&gt;
|-&lt;br /&gt;
| pvsorty || Sortiert die Punkte nach steigender y-Koordinate || pvsorty([[2,3],[4,5],[6,3],[−2,4],[−3,5],[−7,−9]]) || [[−7,−9],[2,3],[6,3],[−2,4],[4,5],[−3,5]] ||6077&lt;br /&gt;
|-&lt;br /&gt;
| pvsortabs || Sortiert die Punkte nach steigendem Absolutbetrag des Ortsvektors || pvsortabs([[2,3],[4,5],[6,3],[−2,4],[−3,5],[−7,−9]]) ||  [[2,3],[−2,4],[−3,5],[4,5],[6,3],[−7,−9]] ||6077&lt;br /&gt;
|-&lt;br /&gt;
| pvsortarg || Sortiert die Punkte nach steigendem Winkel des Ortsvektors (-pi bis pi) || pvsortarg([[2,3],[4,5],[6,3],[−2,4],[−3,5],[−7,−9]]) ||  [[−7,−9],[6,3],[4,5],[2,3],[−2,4],[−3,5]] ||6077&lt;br /&gt;
|-&lt;br /&gt;
| pvsortlinex || Sortiert Punktepaare nach steigender x-Koordinate der kleineren x-Koordinate des Paares. || pvsortlinex([[2,3],[4,5],[6,3],[−2,4],[−3,5],[−7,−9]]) || [[−3,5],[−7,−9],[6,3],[−2,4],[2,3],[4,5]] ||6077 &lt;br /&gt;
|-&lt;br /&gt;
| pvsortliney || Sortiert Punktepaare nach steigender y-Koordinate der kleineren y-Koordinate des Paares. || pvsortliney([[2,3],[4,5],[6,3],[−2,4],[−3,5],[−7,−9]]) ||  [[−3,5],[−7,−9],[2,3],[4,5],[6,3],[−2,4]] ||6077 &lt;br /&gt;
|-&lt;br /&gt;
| pvsortlineabs || Sortiert Punktepaare nach steigendem Betrag der Linienlänge. || pvsortlineabs([[2,3],[4,5],[6,3],[−2,4],[−3,5],[−7,−9]]) || [[2,3],[4,5],[6,3],[−2,4],[−3,5],[−7,−9]] || 6077&lt;br /&gt;
|-&lt;br /&gt;
| pvsortlinearg || Sortiert Punktepaare nach steigendem Winkel der Linienrichtung. || pvsortlinearg([[2,3],[4,5],[6,3],[−2,4],[−3,5],[−7,−9]]) || [[−3,5],[−7,−9],[2,3],[4,5],[6,3],[−2,4]] || 6077&lt;br /&gt;
|-&lt;br /&gt;
| pvequals || Prüft ob zwei Punktevektoren gleich sind. Die Genauigkeit wird als dritter Parameter angegeben, oder bei einem Antwortfeld von der Antworttoleranz genommen. Prozentangaben der Genauigkeit beziehen sich auf die Breite bzw. Höhe des Punktefeldes im karthesischen Koordinatensystem. || pvequals([[2,3],[4,5],[6,3],[-2,4],[-3,5],[-7,-9]],[[2.01,3],[4,5],[6.01,3],[-2,3.99],[-3,5],[-7,-9]],2%) || true || 6077&lt;br /&gt;
|-&lt;br /&gt;
| pvhaspoint || Prüft ob sich ein Punkt innerhalb des Punktefeldes befindet. Die Genauigkeit kann wie bei pvequals als dritter Parameter angegeben werden. || pvhaspoint([[2,3],[4,5],[6,3],[-2,4],[-3,5],[-7,-9]],[4,5],2%) || true || 6077&lt;br /&gt;
|-&lt;br /&gt;
| pvhasline || Prüft ob sich eine Linie innerhalb des Punktefeldes von Linien befindet. Die Genauigkeit kann wie bei pvequals als dritter Parameter angegeben werden. || pvhaspoint([[2,3],[4,5],[6,3],[-2,4],[-3,5],[-7,-9]],[[6,3],[-2,4]],2%) || true || 6078&lt;br /&gt;
|-&lt;br /&gt;
| pvforeachline || Führt für jedes Punktepaar eine Berechnung aus und verbindet die Ergebnisse mit der Aggregatfunktion || pvforeachline([[2,3],[4,5],[6,3],[-2,4]],p,pvlineabs(p),&amp;quot;+&amp;quot;) || 10.890684873 || 6075 &lt;br /&gt;
|-&lt;br /&gt;
| pvfunc || Erzeugt aus einer Funktionen in einer Variablen (x-Achse) eine Punktmatrix der Funktionswerte (y-Achse). pvfunc(funktion,variable,minx,maxx,deltax) || pvfunc(x^2,x,-2,2,0.5) || [[−2,4],[−1.5,2.25],[−1,1],[−0.5,0.25],[0,0],[0.5,0.25],[1,1],[1.5,2.25]] || 6080&lt;br /&gt;
|-&lt;br /&gt;
| pvcompare || Vergleicht einen Referenz-Linienzug mit einem eingegebenen Linienzug unter Berücksichtigung der Toleranz.&amp;lt;br&amp;gt; pvcompare(Referenz,Eingabe)&amp;lt;br&amp;gt; pvcompare(Referenz,Eingabe,Toleranz)&amp;lt;br&amp;gt; pvcompare(Referenz,Eingabe,MinX,MaxX,MinY,MaxY) &amp;lt;br&amp;gt; pvcompare(Referenz,Eingabe,MinX,MaxX,MinY,MaxY,Toleranz) || pvcompare([[0,0],[1,1],[2,1],[3,0]],[[0,0],[1,1],[2,1],[3,0]],0,3,-5,5) || true  || 6080&lt;br /&gt;
|-&lt;br /&gt;
| pvunion || hängt mehrere Punktevektoren zu einem größereren Punktevektor zusammen || pvunion([[1,2],[3,4]],[[5,6],[7,8]],[9,10]) || [[1,2],[3,4],[5,6],[7,8],[9,10]] || 6569&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Typ-Funktionen===&lt;br /&gt;
Werden nur dann ausgewertet wenn der Parameter ein numerischer Wert oder eine Menge ist.&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| isset || Prüft ob es sich um eine Menge handelt. || isset([12,13,14]) || true &lt;br /&gt;
|-&lt;br /&gt;
| issetnumeric || Prüft ob es sich um eine Menge aus reellen Zahlen handelt. || issetnumeric([12,13.4,14]) || true &lt;br /&gt;
|-&lt;br /&gt;
| issetlong || Prüft ob es sich um eine Menge aus ganzen Zahlen handelt. || issetlong([12,13,14]) || true &lt;br /&gt;
|-&lt;br /&gt;
| islong || Prüft ob es sich um eine ganze Zahl handelt. || islong(12) || true &lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Algebra===&lt;br /&gt;
====Index von Matrizen====&lt;br /&gt;
* Als Parameter von Matrix-, PV- und Vektor-&#039;&#039;&#039;Funktion&#039;&#039;&#039; beginnt der Index immer &#039;&#039;&#039;bei 0 zu zählen&#039;&#039;&#039;.&lt;br /&gt;
* Greift man über den Namen und &#039;&#039;&#039;eckige Klammer&#039;&#039;&#039; auf den Index zu wird der Maxima-kompatible Index verwendet welcher &#039;&#039;&#039;bei 1 zu zählen&#039;&#039;&#039; beginnt.&lt;br /&gt;
Beispiel:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
M:[[1,2,3],[4,5,6],[7,8,9]]&lt;br /&gt;
a:vget(M,1,2)&lt;br /&gt;
b:M[2,3]&lt;br /&gt;
c:M[2][3]&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
a,b,c liefert immer das gleiche Element der Matrix!&lt;br /&gt;
&lt;br /&gt;
====Funktionen====&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| matrix || erzeugt aus mehreren gleich langen Vektoren eine Matrix || matrix([1,2],[3,4]) || [[1,2],[3,4]]&lt;br /&gt;
|-&lt;br /&gt;
| inv || invertiert eine quadratische Matrix oder bildet 1/x || inv(matrix([1,2],[3,4])) || [[-2,1],[3/2,-1/2]]&lt;br /&gt;
|-&lt;br /&gt;
| vget || liefert ein Element eines Vektors oder einer Matrix [https://www.youtube.com/watch?v=T82YIt3e8ac Video] || vget([12,13,14],1) &amp;lt;br&amp;gt; vget(matrix([9,2],[3,4]),0,1) || 13 &amp;lt;br&amp;gt; 2 &lt;br /&gt;
|-&lt;br /&gt;
| first || liefert das erste Element mit dem Index 0 eines Vektors || first([12,13,14]) || 12&lt;br /&gt;
|-&lt;br /&gt;
| second || liefert das zweite Element mit dem Index 1 eines Vektors || second([12,13,14]) || 13&lt;br /&gt;
|- &lt;br /&gt;
| third|| liefert das dritte Element mit dem Index 2 eines Vektors || third([12,13,14]) || 14&lt;br /&gt;
|-&lt;br /&gt;
| fourth || liefert das vierte Element mit dem Index 3 eines Vektors || fourth ([12,13,14,15,16,17,18]) || 15&lt;br /&gt;
|-&lt;br /&gt;
| fifth || liefert das fünfte Element mit dem Index 4 eines Vektors || fifth ([12,13,14,15,16,17,18]) || 16&lt;br /&gt;
|-&lt;br /&gt;
| sixth || liefert das sechste Element mit dem Index 5 eines Vektors || sixth ([12,13,14,15,16,17,18]) || 17&lt;br /&gt;
|-&lt;br /&gt;
| vgetmaxima || liefert ein Element eines Vektors oder einer Matrix wobei der Index (wie bei Maxima) bei 1 startet. || vgetmaxima([12,13,14],1) || 12 &lt;br /&gt;
|-&lt;br /&gt;
| vset || setzt ein Element eines Vektors oder einer Matrix || vset([12,13,14],1,35) &amp;lt;br&amp;gt; vset(matrix([9,2],[3,4]),0,0,-9) || [12,35,14] &amp;lt;br&amp;gt; [[-9,2],[3,4]]&lt;br /&gt;
|-&lt;br /&gt;
| vsetmaxima || setzt ein Element eines Vektors oder einer Matrix wobei der Index (wie bei Maxima) bei 1 startet. || vsetmaxima([12,13,14],1,35) || [35,13,14]&lt;br /&gt;
|-&lt;br /&gt;
| vinsert || fügt ein Element in einen Vektor an eine gegebene Stelle ein || vinsert([12,13,14],1,25) || [12,25,13,14]&lt;br /&gt;
|-&lt;br /&gt;
| vremove || löscht ein Element eines Vektors [https://www.youtube.com/watch?v=T82YIt3e8ac Video] || vremove([12,13,14],1) || [12,14]&lt;br /&gt;
|-&lt;br /&gt;
| vabs || Berechnet den Betrag eines Vektors || vabs([3,4]) || 5&lt;br /&gt;
|-&lt;br /&gt;
| vin || Berechnet das innere Produkt von 2 Vektoren || vin([1,2,3],[4,5,6]) || 32&lt;br /&gt;
|-&lt;br /&gt;
| vex || Berechnet das ex-Produkt von 2 Vektoren im 3-dimensionalen Raum || vex([1,2,3],[4,5,6]) || [-3,6,-3]&lt;br /&gt;
|-&lt;br /&gt;
| mrows || liefert die Anzahl der Zeilen einer Matrix || mrows([[3,4,4],[3,6,54,34,3,54]]) || 2&lt;br /&gt;
|-&lt;br /&gt;
| mcols || liefert die Anzahl der Spalten einer Matrix || mcols([[3,4,4],[3,6,54,34,3,54]]) || 6 &lt;br /&gt;
|- &lt;br /&gt;
| mprod || Bildet das Matrixprodukt aus zwei Matrizen || mprod([[1,2],[3,4]],[[5,6],[7,8]]) || [[19,22],[43,50]]&lt;br /&gt;
|-&lt;br /&gt;
| mtrans || Bildet die transponierte Matrix || mtrans([[1,2],[3,4]]) || [[1,3],[2,4]]&lt;br /&gt;
|-&lt;br /&gt;
| minv || Bildet die inverse Matrix || minv([[1,2],[3,4]]) || [[-2,1],[3/2,-1/2]]&lt;br /&gt;
|-&lt;br /&gt;
| mdet || Bildet die Determinante einer quadratischen Matrix || mdet([[1,2],[3,4]]) || -2&lt;br /&gt;
|-&lt;br /&gt;
| mcunion  || Fügt mehrere Matrizen oder Vektoren spaltenweise(nebeneinander) zusammen || mcunion([[1,2,3],[4,5,6],[7,8,9]],[[10,11],[12,13],[14,15]]) || [[1,2,3,10,11],[4,5,6,12,13],[7,8,9,14,15]]&lt;br /&gt;
|-&lt;br /&gt;
| mrunion  || Fügt mehrere Matrizen oder Vektoren zeileweise(untereinander) zusammen || mrunion([[1,2,3],[4,5,6],[7,8,9]],[[10,11,12],[13,14,15]]) || [[1,2,3],[4,5,6],[7,8,9],[10,11,12],[13,14,15]]&lt;br /&gt;
|-&lt;br /&gt;
| msub     || msub(matrix,zeile,spalte,zeilen,spalten) Liefert eine Untermatrix beginnend bei Zeile und Spalten mit der angegebenen Anzahl von Zeilen und Spalten. Die Parameter Spalte,Zeilen und Spalten sind dabei optional. || msub([[1,2,3],[4,5,6],[7,8,9]],0,1,2,2) || [[2,3],[5,6]]&lt;br /&gt;
|-&lt;br /&gt;
| mcinsert || mcinsert(matrix,matrixodervektor,position) Fügt an der Spaltenposition eine Matrix oder einen Vektor als neue Spalten ein || mcinsert([[1,2,3],[4,5,6],[7,8,9]],[[10,11],[12,13],[14,15]],1) || [[1,10,11,2,3],[4,12,13,5,6],[7,14,15,8,9]]&lt;br /&gt;
|-&lt;br /&gt;
| mrinsert || mrinsert(matrix,matrixodervektor,position) Fügt an der Zeilenposition eine Matrix oder einen Vektor als neue Zeilen ein || mrinsert([[1,2,3],[4,5,6],[7,8,9]],[[10,11,12],[13,14,15]],1) || [[1,2,3],[10,11,12],[13,14,15],[4,5,6],[7,8,9]]&lt;br /&gt;
|-&lt;br /&gt;
| mcdelete || mcdelete(matrix,position) Löscht die angegebene Spalte aus einer Matrix || mcdelete([[1,2,3],[4,5,6],[7,8,9]],1) || [[1,3],[4,6],[7,9]] &lt;br /&gt;
|-&lt;br /&gt;
| mrdelete || mrdelete(matrix,position) Löscht die angegebene Zeile aus einer Matrix || mrdelete([[1,2,3],[4,5,6],[7,8,9]],1) || [[1,2,3],[7,8,9]]&lt;br /&gt;
|-&lt;br /&gt;
| vindex || vindex(v,x) liefert den Index des Elementes eines Vektors, welcher am nächsten bei x liegt || vindex([10,30,70],40) || 1 &lt;br /&gt;
|-&lt;br /&gt;
| vindexup || vindexup(v,x) liefert den Index des Elementes eines Vektors, welcher größer oder gleich x ist || vindexup([10,30,70],40) || 2 &lt;br /&gt;
|-&lt;br /&gt;
| vindexdown || vindexdown(v,x) liefert den Index des Elementes eines Vektors, welcher kleiner oder gleich x ist || vindexdown([10,30,70],60) || 1&lt;br /&gt;
|-&lt;br /&gt;
| verweis || verweis(M,x,n) liefert den Wert der n-ten Spalte (ohne Angabe von n die 2.Spalte) einer Matrix M wo x dem Wert in der ersten Spalte am nächsten liegt || verweis([[10,33],[20,77],[30,99]],21) || 77&lt;br /&gt;
|-&lt;br /&gt;
| verweisup || verweisup(M,x,n) liefert den Wert der n-ten Spalte (ohne Angabe von n die 2.Spalte) einer Matrix M wo x dem Wert in der ersten Spalte am nächsten liegt || verweisup([[10,33],[20,77],[30,99]],21) || 99&lt;br /&gt;
|-&lt;br /&gt;
| verweisdown || verweisdown(M,x,n) liefert den Wert der n-ten Spalte (ohne Angabe von n die 2.Spalte) einer Matrix M wo x dem Wert in der ersten Spalte am nächsten liegt || verweisdown([[10,33],[20,77],[30,99]],27,1) || 77&lt;br /&gt;
|-&lt;br /&gt;
| range || range(anzahl) liefert ein Feld von ganzzahligen Werten von 0 beginnend || range(5) || [0,1,2,3,4]&lt;br /&gt;
|-&lt;br /&gt;
| linspace || linspace(start,ende,anzahl) liefert ein Feld von Werte von Startwert bis Endwert mit gleichem Abstand || linspace(4,8,5) || [4,5,6,7,8]&lt;br /&gt;
|-&lt;br /&gt;
| logspace || logspace(start,ende,anzahl) liefert ein Feld von Werte von Startwert bis Endwert mit gleichem logarithmischen Abstand || logspace(10,10000,4) || [10,100,1000,10000]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Variable===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| kill || löscht Variable aus dem Variablenspeicher || kill(x,y) &amp;lt;br&amp;gt; kill(allbut(y)) &amp;lt;br&amp;gt; kill(all) || löscht die Variablen x und y &amp;lt;br&amp;gt; löscht alle Variablen mit Ausnahme von y &amp;lt;br&amp;gt; löscht alle Variable&lt;br /&gt;
|-&lt;br /&gt;
| allbut || Liefert eine Liste aller Variablen des Parsers als Menge(Vektor) mit Ausnahme der als Parameter angegebenen Variablen || allbut(x,y) || [a,b,c]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Auswertung und Programmierung===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis || Revision&lt;br /&gt;
|-&lt;br /&gt;
| ev || Auswertung eines Ausdruckes, als Parameter können Gleichungen angegeben werden, welche dann in den Ausdruck eingesetzt werden || ev(x*y,y=4) || x*4&lt;br /&gt;
|-&lt;br /&gt;
| evruntime || Auswertung eines Ausdruckes, als Parameter können Gleichungen angegeben werden, welche dann in den Ausdruck eingesetzt werden. Das &#039;&#039;&#039;Einsetzen erfolgt erst bei der Ergebnisberechnung&#039;&#039;&#039;! || evruntime(x*y,y=4) || x*4&lt;br /&gt;
|-&lt;br /&gt;
| [[nv]] || Auswertung eines Ausdruckes, als Parameter können Gleichungen angegeben werden, welche dann in den Ausdruck eingesetzt werden. Im Gegensatz zu ev werden bestehende Variable nur in den Gleichungen, aber nicht im Ausdruck selbst eingesetzt! || nv(x*y,y=4) || x*4&lt;br /&gt;
|-&lt;br /&gt;
| [[if]] || Bedingungsfunktion if(bedingung,wahrwert,falschwert) || if(4&amp;lt;6,10,12) || 10&lt;br /&gt;
|-&lt;br /&gt;
| [[if|wenn]] || Bedingungsfunktion wenn(bedingung,wahrwert,falschwert). Im Prinzip identisch wie if, jedoch kann if mit Maxima nicht verwendet werden. || wenn(4&amp;lt;6,10,12) || 10&lt;br /&gt;
|-&lt;br /&gt;
| plugin || Ruft die Berechnungsmethode des Plugins, welches als erster Stringparameter angegeben werden muss auf und übergibt die weiteren Parameter an die Berechnungsmethode des Plugins.  || plugin(&amp;quot;plugin1&amp;quot;,3) || führt die Berechnung des Plugins mit dem Namen &amp;quot;plugin1&amp;quot; mit dem Parameter 3 aus. &lt;br /&gt;
|-&lt;br /&gt;
| symbolic || Bei allen Variablen innerhalb von symbolic werden nur nicht-numerische Werte eingesetzt! Wird vor allem im Angabtext bei {= } verwendet || symbolic(x^2+2) || x^2+2&lt;br /&gt;
|-&lt;br /&gt;
| runtime || Bei dieser Funktion wird &#039;&#039;&#039;erst bei der Berechnung der Frageantwort, nach dem Einsetzen der Datensätze&#039;&#039;&#039; das &#039;&#039;&#039;komplette Maxima-Feld&#039;&#039;&#039; mit dem internen &#039;&#039;&#039;Parser&#039;&#039;&#039; durchgerechnet und danach der Parameter-Ausdruck berechnet. Dadurch kann man bei komplizierten Berechnungen eine sehr aufwendige symbolische Berechnung verhindern! || runtime(U) || &lt;br /&gt;
|-&lt;br /&gt;
| dataset || liefert alle Datensätze einer Datensatz-Definition in einem Vektor || dataset(x) || &lt;br /&gt;
|-&lt;br /&gt;
| parse || Wenn der Parameter ein String ist wird dieser String mit dem Parser interpretiert || parse(&amp;quot;2+3&amp;quot;) || 5&lt;br /&gt;
|-&lt;br /&gt;
| foreach || Führt für jedes Element einer Menge eine Berechnung aus und verbindet die Ergebnisse mit der Aggregatfunktion || foreach([2,-3,5,-6],p,cabs(p),&amp;quot;+&amp;quot;) || 16 || 6075 &lt;br /&gt;
|-&lt;br /&gt;
| pvforeachline || Führt für jedes Punktepaar einer Punktemenge eine Berechnung aus und verbindet die Ergebnisse mit der Aggregatfunktion || pvforeachline([[2,3],[4,5],[6,3],[-2,4]],p,pvlineabs(p),&amp;quot;+&amp;quot;) || 10.890684873 || 6075 &lt;br /&gt;
|-&lt;br /&gt;
| forloop || Führt eine Zählschleife aus forloop(Variable,Startwert,Wiederholbedingung,Inkrement,Ausdruck,Aggregatsfunktion). &amp;lt;br&amp;gt;Ohne Aggregatsfunktion wird ein Feld mit den Ergebnissen der Schleifeniterationen geliefert. || forloop(i,1,i&amp;lt;7,i++,i,&amp;quot;+&amp;quot;)&amp;lt;br&amp;gt;forloop(i,1,i&amp;lt;7,i:i+2,i) || 21&amp;lt;br&amp;gt;[1,3,5] || 6077&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Optimierung der Ausdrücke===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| opt   || Ausdruck wird vollständig optimiert, die Funktion wird ausgewertet und ist danach nicht mehr vorhanden. Nur bei der Verwendung des internen Parser sinnvoll. || opt(x+x) || 2*x&lt;br /&gt;
|-&lt;br /&gt;
| ratsimp || Ausdruck wird vollständig optimiert, die Funktion wird ausgewertet und ist danach nicht mehr vorhanden (wie opt, wird jedoch auch von Maxima ausgewertet) || ratsimp(x+x) || 2*x&lt;br /&gt;
|-&lt;br /&gt;
| noopt || Ausdruck wird nicht optimiert, bleibt also so erhalten wie angegeben. Die Funktion an sich geht aber verloren. || noopt(2+3) || 2+3&lt;br /&gt;
|-&lt;br /&gt;
| nopt || Ausdruck wird nicht optimiert, bleibt also so erhalten wie angegeben. Die Funktion bleibt erhalten und wird erst bei der Lösungsberechnung oder durch opt() entfernt. || noopt(2+3) || 2+3&lt;br /&gt;
|-&lt;br /&gt;
| lopt || Im Maximafeld bleibt die Funktion ohne Funktion erhalten, im Ergebnis {=  wird die Funktion entfernt und in der Lösung wird nach dem Einsetzen der Werte der Ausdruck vollständig optimiert. || lopt(x+3)  || lopt(x+3)  &lt;br /&gt;
|-&lt;br /&gt;
| lnoopt || Im Maximafeld bleibt die Funktion ohne Funktion erhalten, im Ergebnis {=  wird die Funktion entfernt und in der Lösung wird nach dem Einsetzen der Werte der Ausdruck nicht mehr optimiert. || lnoopt(x+3+2)  || lnoopt(x+5) &lt;br /&gt;
|-&lt;br /&gt;
| loptnumeric || Im Maximafeld bleibt die Funktion ohne Funktion erhalten, im Ergebnis {=  wird die Funktion entfernt und in der Lösung wird nach dem Einsetzen der Werte der Ausdruck nur numerisch optimiert. || loptnumeric(x+y)  || loptnumeric(x+y)&lt;br /&gt;
|-&lt;br /&gt;
| aopt || Bei Maxima und Lösung geht die Funktion verloren, nur innerhalb von noopt bleibt sie erhalten. Bei der Anzeige führt sie zur Optimierung das Ausdruckes nach Einsetzen der Datensätze. || aopt(x)  || x&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Anzeige und Lösungsberechnung===&lt;br /&gt;
Diese Funktionen haben entweder einen oder zwei Parameter. Der erste Parameter stellt die darzustellende Funktion dar, der zweite Parameter, welcher eine Ganzzahl sein muss, gibt an, wie die Darstellung erfolgen soll. Wird der 2.Parameter weggelassen, so wird er als 0 interpretiert.&lt;br /&gt;
* 0 Bei Berechnungen hat die Funktion keine Wirkung, bleibt aber als Funktion erhalten. Bei Lösung und Anzeige wird die Funktion ausgewertet&lt;br /&gt;
* 1 Wirkt nur bei Lösung, bei Berechnungen bleibt die Funktion erhalten&lt;br /&gt;
* 2 Wirkt nur bei Anzeige, bei Berechnungen bleibt die Funktion erhalten&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| viewpow || Gibt alle Wurzeln als Potenzen aus, und stellt alle Potenzen im Nenner als negativen Exponenten im Zähler dar || viewpow(sqrt(x)) || x^(1/2)&lt;br /&gt;
|-&lt;br /&gt;
| viewsqrt || Gibt Potenzen welche als Wurzel darstellbar sind auch als als Wurzeln mit der Funktion sqrt oder root aus || viewsqrt(x^(1/2)) || sqrt(x)&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Datums und Zeitfunktionen ===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis || REvision&lt;br /&gt;
|-&lt;br /&gt;
| dateparse || Wandelt einen String in ein Datum als Ganzzahl in Sekunden seit 1.1.0000 || || || 6530&lt;br /&gt;
|-&lt;br /&gt;
| date || date(y,m,d,h,min,sec) erzeugt ein Datum als Ganzzahl in Sekunden seit 1.1.000 || || || 6530&lt;br /&gt;
|-&lt;br /&gt;
| datestring || datestring(x) datestring(x,\&amp;quot;format\&amp;quot;) erzeugt aus einem Datum in Sekunden seit 1.1.0000 eine Stringausgabe || || || 6530&lt;br /&gt;
|-&lt;br /&gt;
| timestring || erzeugt eine Uhrzeit als String || || || 6530&lt;br /&gt;
|-&lt;br /&gt;
| datetimestring || erzeugt Datum und Uhrzeit als String || || || 6530&lt;br /&gt;
|-&lt;br /&gt;
| dateyear || Erzeugt aus einem Datum als Ganzzahl das Jahr || || || 6530&lt;br /&gt;
|-&lt;br /&gt;
| datemonth || Erzeugt aus einem Datum als Ganzzahl das Monat || || || 6530&lt;br /&gt;
|-&lt;br /&gt;
| dateday || Erzeugt aus einem Datum als Ganzzahl den Tag || || || 6530&lt;br /&gt;
|-&lt;br /&gt;
| datehour || Erzeugt aus einem Datum als Ganzzahl die Stunde || || || 6530&lt;br /&gt;
|-&lt;br /&gt;
| dateminute || Erzeugt aus einem Datum als Ganzzahl die Minute || || || 6530&lt;br /&gt;
|-&lt;br /&gt;
| datesecond || Erzeugt aus einem Datum als Ganzzahl die Sekunde || || || 6530&lt;br /&gt;
|-&lt;br /&gt;
| datediff || Rechnet die Differenz von 2 ganzzahligen Datumswerten. Erstes minus zweites Datum. Ergebnis als Double in Sekunden || || || 6530&lt;br /&gt;
|-&lt;br /&gt;
| dateweekday || Liefert den Wochentag beginnend mit Montag als 1 und Sonntag als 7 || || || 6530&lt;br /&gt;
|-&lt;br /&gt;
| dateweek || Liefert die Kalenderwoche des Tages innerhalb des Jahres || || || 6530&lt;br /&gt;
|-&lt;br /&gt;
| datedayofyear || Liefert den Tag des Jahres || || || 6530&lt;br /&gt;
|-&lt;br /&gt;
| years || Erzeugt aus einem Sekundenwert die Jahre (/365d) als Double ohne Einheit || || || 6530&lt;br /&gt;
|-&lt;br /&gt;
| months || Erzeugt aus einem Sekundenwert die Monate (/30d) als Double ohne Einheit || || || 6530&lt;br /&gt;
|-&lt;br /&gt;
| weeks || Erzeugt aus einem Sekundenwert die Wochen (/7d) als Double ohne Einheit || || || 6530&lt;br /&gt;
|-&lt;br /&gt;
| days || Erzeugt aus einem Sekundenwert die Tage als Double ohne Einheit || || || 6530&lt;br /&gt;
|-&lt;br /&gt;
| hours || Erzeugt aus einem Sekundenwert die Stunden als Double ohne Einheit || || || 6530&lt;br /&gt;
|-&lt;br /&gt;
| minutes || Erzeugt aus einem Sekundenwert die Minuten als Double ohne Einheit || || || 6530&lt;br /&gt;
|-&lt;br /&gt;
| seconds || Erzeugt aus einem Sekundenwert die Sekunden als Double ohne Einheit || || || 6530&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Spezialfunktionen LeTTo ===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| points || Berechnet die erreichbare Gesamtpunkteanzahl einer Frage || points() || 2&lt;br /&gt;
|-&lt;br /&gt;
| points || Berechnet die erreichbare Punkteanzahl einer Teilfrage. Als Parameter wird die Fragenummer als Ganzzahl angegeben. || points(0) || 1&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Spezialfunktionen Technik===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| color || Widerstandsfarbcode berechnen.&amp;lt;br&amp;gt;1. Parameter muss ein Double sein&amp;lt;br&amp;gt; 2. Parameter sind die Anzahl der Farbringe&amp;lt;br&amp;gt; 3. Parameter ist der Darstellungsmodus (0 = Deutsch ausgeschrieben, 1 = Abkürzung Deutsch mit drei Buchstaben, 2 = Abkürzung Deutsch mit zwei Buchstaben, 3 = Englisch ausgeschrieben, 4 = Abkürzung Englisch mit drei Buchstaben, 5 = Abkürzung Englisch mit zwei Buchstaben) || color(120,3,0) || braun,rot,braun&lt;br /&gt;
|-&lt;br /&gt;
| parsecolor || Wandelt einen String mit einem Widerstandsfarbcode in einen Double-Wert || parsecolor(&amp;quot;br-rt-br&amp;quot;) || 120&lt;br /&gt;
|-&lt;br /&gt;
| ip || Wandelt eine Long-Zahl in einen String als IP-Adresse um, oder 4 Byte-Zahlen in eine Long Zahl als IP-32-bit-Adresse || ip(1534536453)&amp;lt;br&amp;gt;ip(10,20,30,40) || &amp;quot;91.119.43.5&amp;quot;&amp;lt;br&amp;gt;169090600&lt;br /&gt;
|-&lt;br /&gt;
| parseip || Wandelt einen String mit einer IP-Adresse in einen Long-Wert || parseip(&amp;quot;91.119.43.5&amp;quot;) || 1534536453&lt;br /&gt;
|-&lt;br /&gt;
| e12 || rundet einen Zahlenwert auf den nächstliegenden Wert der [[Normreihe]] E12.&amp;lt;br&amp;gt;Die Rundung erfolgt geometrisch d.h. der Quotient zwischen Normwert und zu rundendem Wert wird minimiert. || e12(700Ohm) || 680Ohm&lt;br /&gt;
|-&lt;br /&gt;
| e12up || rundet einen Zahlenwert auf den nächstgrößerern Wert der [[Normreihe]] E12 || e12(670Ohm) || 680Ohm&lt;br /&gt;
|-&lt;br /&gt;
| e12down || rundet einen Zahlenwert auf den nächstkleineren Wert der [[Normreihe]] E12 || e12(700Ohm) || 680Ohm&lt;br /&gt;
|-&lt;br /&gt;
| ise12 || prüft ob der als Parameter übergebenen Wert ein Wert der [[Normreihe]] E12 ist.|| ise12(680Ohm) || true&lt;br /&gt;
|-&lt;br /&gt;
| norm || rundet einen Zahlenwert auf den nächstliegenden Wert einer gegebenen Wertereihe oder [[Normreihe]].&amp;lt;br&amp;gt;Die Rundung erfolgt geometrisch wenn es sich um eine logarithmisch aufgeteilte Normreihe handelt, oder sonst linear. || norm(700Ohm,E12) || 680Ohm&lt;br /&gt;
|-&lt;br /&gt;
| normup || rundet einen Zahlenwert auf den nächstgrößerern Wert einer gegebenen Wertereihe oder [[Normreihe]]. || normup(730Ohm,[1,3,5,8]) || 800Ohm&lt;br /&gt;
|-&lt;br /&gt;
| normdown || rundet einen Zahlenwert auf den nächstkleineren Wert einer gegebenen Wertereihe oder [[Normreihe]]. || normdown(700Ohm,E12) || 680Ohm&lt;br /&gt;
|-&lt;br /&gt;
| isnorm || prüft ob der als Parameter übergebenen Wert ein Wert einer gegebenen Wertereihe oder [[Normreihe]] ist. || isnorm(680Ohm,E12) || true&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Raumzeiger für elektrische Maschinen===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| [[svphtosv]](a,b,c) || berechnet aus den Stranggrößen (a,b,c) einen komplexen Raumzeiger || svphtosv(0.5,0.5,-1) || 1arg60°&lt;br /&gt;
|-&lt;br /&gt;
| [[svsvtoph]](sv)&amp;lt;br&amp;gt;svsvtoph(sv,index) || berechnet aus einem komplexen Raumzeiger die Stranggrössen &amp;lt;br&amp;gt; berechnet aus einem komplexen Raumzeiger die Stranggrössen, index selektiert Stranggröße als Rückgabewert || svsvtoph(1arg60°)&amp;lt;br&amp;gt; svsvtoph(1arg60°,3)|| [0.5,0.5,-1] &amp;lt;br&amp;gt; -1&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=Probleme mit großen Gleichungssystemen=&lt;br /&gt;
Bei der Verwendung von Plugins (zB: Drehstromplugin) können sehr rasch sehr große Gleichungssysteme entstehen. Der Standard-Lösungsweg, dass die Gleichungen algebraisch aufgelöst werden und dann zur Laufzeit die Werte eingesetzt werden, kann somit sehr lange Berechnungszeiten nach sich ziehen. Effizienter ist es, das Gleichungssystem zur Laufzeit mit eingesetzten Zahlen zu rechnen.&lt;br /&gt;
&lt;br /&gt;
Dazu gibt es die Möglichkeit, in der Frage das Häkchen Vorberechnung auszuwählen, dann werden die Ergebnisse erst zur Laufzeit gerechnet.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Achtung:&#039;&#039;&#039; Der Parser hat Probleme mit der Berechnung von großen Gleichungssystemen. Es sollte daher zur Laufzeit bei der Verwendung von Drehstrom-Plugins mit Maxima gerechnet werden.&lt;br /&gt;
Dabei werden allerdings alle Einheiten entfernt und können wieder über .... zu den entsprechenden Formelzeichen hinzugefügt werden. Bedenken Sie aber, dass die Einheiten bei Berechnung mit Maxima zur Laufzeit prinzipiell verloren gehen.&lt;br /&gt;
&lt;br /&gt;
=Ergebnisvorschau=&lt;br /&gt;
Aufruf dieses Dialoges über den [[Datei:ClipCapIt-180904-181443.PNG|25px]]-Button aus dem [[Toolbar]].&lt;br /&gt;
&lt;br /&gt;
Die Berechnungen aus dem Maxima-Feld bei der [[Beispiele Bearbeiten|Fragendefinition]] können auch über den [[Datei:ClipCapIt-180904-182120.PNG|25px]]-Button durchgeführt werden. Hier wird die Berechnung durchgeführt und das Lösungsfeld ausgefüllt, aber der Rechengang wird nicht angezeigt. &lt;br /&gt;
:[[Datei:ClipCapIt-180904-181415.PNG|400px]]&lt;br /&gt;
&lt;br /&gt;
Beim Fehlersuchen oder bei komplexen Berechnungen kann es aber hilfreich sein, den ganzen Maxima-Lösungsweg zu sehen, dies ist über den [[Datei:ClipCapIt-180904-181443.PNG|25px]]-Button möchlich.&lt;br /&gt;
&lt;br /&gt;
[[Kategorie:Berechnung]]&lt;/div&gt;</summary>
		<author><name>Ckral</name></author>
	</entry>
	<entry>
		<id>https://wiki.letto.at/wiki/index.php?title=Berechnungen&amp;diff=3459</id>
		<title>Berechnungen</title>
		<link rel="alternate" type="text/html" href="https://wiki.letto.at/wiki/index.php?title=Berechnungen&amp;diff=3459"/>
		<updated>2024-06-05T10:51:20Z</updated>

		<summary type="html">&lt;p&gt;Ckral: Korrektur der Dokumentation zu Funktion color über #1830&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Allgemeines =&lt;br /&gt;
Berechnungen werden in mehreren Bereichen der Frageerstellung verwendet und bilden die Basis für [[Fragetypen#Berechnungsfrage|Berechnungsfrage]] und [[Fragetypen#Mehrfachberechnungsfrage|Mehrfachberechnungsfrage]].&lt;br /&gt;
&lt;br /&gt;
Alle Berechnungen unterstützen [[Einheit|Einheiten]] und symbolische Auswertung.&lt;br /&gt;
&lt;br /&gt;
=Grundsätzlicher Aufbau der Ergebnis-Berechnung bei Fragen mit Berechnungen=&lt;br /&gt;
[[Datei:BerechnungSchema.png|mini|hochkant=2.0|Schema der Berechnung]]&lt;br /&gt;
Die Berechnung und die Beurteilung einer Frage teilt sich in 3 grundsätzliche Schritte:&lt;br /&gt;
* Berechnnug der geschlossenen Lösung (Formel) aus den Maxima-Feldern &lt;br /&gt;
* Berechnung des Ergebnisses einer Frage durch Einsetzen der Zahlenwerte aus den Datensätzen in die geschlossene Lösung&lt;br /&gt;
* Beurteilung der Schülereingabe durch Vergleich mit dem Ergebnis&lt;br /&gt;
&lt;br /&gt;
=Konstante=&lt;br /&gt;
Alle Konstante welche in Letto definiert sind beginnen mit einem Prozentzeichen. Verwendet man den Variablennamen ohne Prozenzzeichen, so wird die Konstante wie eine Variable mit dem Wert der Konstanten verwendet.&lt;br /&gt;
&lt;br /&gt;
Liste der definierten Konstanten:&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%&amp;quot; &lt;br /&gt;
| Name || Wert || Beschreibung&lt;br /&gt;
|-&lt;br /&gt;
| %i || i || komplexer Parameter als Lösung der Gleichung x^2=-1&lt;br /&gt;
|-&lt;br /&gt;
| %j || i || komplexer Parameter als Lösung der Gleichung x^2=-1&amp;lt;br&amp;gt;&amp;lt;b&amp;gt;Wichtig:&amp;lt;/b&amp;gt; Wir nur vom Parser unterstützt, nicht von Maxima&lt;br /&gt;
|-&lt;br /&gt;
| %e || 2.718281828459045 || Eulersche Zahl &lt;br /&gt;
|-&lt;br /&gt;
| %pi || 3.141592653589793 || Kreiszahl&lt;br /&gt;
|-&lt;br /&gt;
| %mu0 || magnetische Feldkonstante || 4*%pi*1E-7&#039;Vs/Am&#039;&lt;br /&gt;
|-&lt;br /&gt;
| %m0 || magnetische Feldkonstante (alt, wird bald entfernt werden) || 4*%pi*1E-7&#039;Vs/Am&#039;&lt;br /&gt;
|-&lt;br /&gt;
| %epsilon0 || elektrische Feldkonstante || 8.85418781762039E-12&#039;As/Vm&#039;&lt;br /&gt;
|-&lt;br /&gt;
| %e0 || elektrische Feldkonstante (alt, wird bald entfernt werden) || 8.85418781762039E-12&#039;As/Vm&#039;&lt;br /&gt;
|-&lt;br /&gt;
| %c0 || Lichtgeschwindigkeit || 299792458&#039;m/s&#039;&lt;br /&gt;
|-&lt;br /&gt;
| %Qe || Elementarladung || 1.602176620898E-19As&lt;br /&gt;
|-&lt;br /&gt;
| %g  || Erdbeschleunigung || 9.81&#039;m/s^2&#039;&lt;br /&gt;
|-&lt;br /&gt;
| %NA || Avogadro Konstante || 6.02214085774E23/mol&lt;br /&gt;
|-&lt;br /&gt;
| %k  || Stefan Bolzman Konstante || 1.3806485279E-23&#039;J/K&#039;&lt;br /&gt;
|-&lt;br /&gt;
| %R0 || Universelle Gaskonstante || 8.314459848&#039;J/Kmol&#039;&lt;br /&gt;
|-&lt;br /&gt;
| %h || planksches Wirkungsquantum || 6.6260704081E-34Js&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=Berechnung mit Maxima=&lt;br /&gt;
* Maxima wird &#039;&#039;&#039;nur für symbolische Berechnungen&#039;&#039;&#039; bei der Erstellung von Beispielen verwendet. Hierbei wird, wie schon oberhalb im Schema angegeben, zuerst die Moodle.mac geladen, dann das [[Beispielsammlung Editieren#Maxima-Feld|Maxima-Feld]] berechnet und anschließend die Maxima-Felder aller Teilfragen. Das Ergebnis der Berechnung wird dann als symbolischer Ausdruck im Lösungfeld eingetragen.&lt;br /&gt;
* Da zum Zeitpunkt der &#039;&#039;&#039;Maxima-Berechnung keine Datensätze&#039;&#039;&#039; vorhanden sind, kann keine numerische Berechnung in Maxima durchgeführt werden, welche die [[Datensätze]] benötigt. Dies muss der interne Parser zum Zeitpunkt des Online-Test-Laufes erledigen. Numerische Berechnungen, welche der interne Parser nicht kann können deshalb auch nicht mit Maxima berechnet werden.&lt;br /&gt;
* Da das Lösungsfeld, welches mit Maxima berechnet wird symbolisch ausgewertet wird, können in Maxima sämtliche symbolischen Berechnungsverfahren angewendet werden, welche ein symbolisches Ergebnis liefern und keine numerischen Werte der Datensätze benötigen.&lt;br /&gt;
* Reicht im Maximafeld die Zeilenlänge nicht aus ist es möglich einen defninierten Zeilenumbruch zu realisieren. Schreiben Sie dazu &amp;quot;\&amp;quot; (einfacher Backslash) am Ende der Zeile.  &lt;br /&gt;
* &#039;&#039;&#039;Funktionsdeklarationen&#039;&#039;&#039; wie &#039;&#039;&#039;f(x):=&#039;&#039;&#039;x^2 mit Doppelpunkt-Ist-Gleich sind im Maxima-Feld nur eingeschränkt bis gar &#039;&#039;&#039;nicht verwendbar&#039;&#039;&#039;, da sie vom Parser nicht unterstützt werden.&lt;br /&gt;
* &#039;&#039;&#039;Mengen von Maxima&#039;&#039;&#039; sind in LeTTo n&#039;&#039;&#039;icht verwendbar&#039;&#039;&#039;. LeTTo verwender hierzu eigene Funktionen des Parsers welche mit &amp;quot;set&amp;quot; beginnen und auf Vektoren basieren.&lt;br /&gt;
&lt;br /&gt;
== Berechnungen mit &amp;quot;Vorberechnung&amp;quot; und Maxima (Parser nicht angehakt) ==&lt;br /&gt;
* Es werden die Datensätze ohne Einheiten vor der Durchrechnung des Maxima-Feldes an Maxima gesendet&lt;br /&gt;
* Im Maxima-Feld werden durch den Preprozessor alle Einheiten von allen konstanten Werten entfernt&lt;br /&gt;
* Die Ergebnisse nach der Maxima-Durchrechnung sind somit alle ohne Einheit&lt;br /&gt;
* Der Postpozesser fügt an alle Ergebnisse der Maxima-Berechnung die definierten Einheiten an&lt;br /&gt;
&lt;br /&gt;
=== Einheitendfinition für den Postprozessor (nur bei Berechnung mit Vorberechnung ohne Parser wirksam!) ===&lt;br /&gt;
* Definition einer Einheit mit der Funktion unit in einem Kommentar&lt;br /&gt;
* Setzen der Einheit Volt (V) für alle Variablen die mit U beginnen  &lt;br /&gt;
  //unit(U*)=V&lt;br /&gt;
* Setzen der Einheit Ampere(A) für alle Variablen die mit I oder ix beginnen&lt;br /&gt;
  //unit(I*,ix*)=A&lt;br /&gt;
&lt;br /&gt;
=Berechnung mit dem internen Parser=&lt;br /&gt;
* Der interne Parser kann durch Wahl der Checkbox &amp;quot;Parser&amp;quot; anstatt von Maxima für die Berechnung des Maxima-Feldes verwendet werden. &lt;br /&gt;
* Jedenfalls wird der Parser zur Test-Laufzeit für die Berechnung des Ergebnisses einer Frage aus Lösung und Datensätzen und zum Berechnen der Schülereingabe verwendet.&lt;br /&gt;
&lt;br /&gt;
==Operatoren==&lt;br /&gt;
=== VORSICHT mit MAXIMA ===&lt;br /&gt;
* Einige Operatoren sind in &#039;&#039;&#039;Maxima anders&#039;&#039;&#039;, oder &#039;&#039;&#039;nicht definiert&#039;&#039;&#039;. Möchte man im Maximafeld die Operatoren des Parsers-verwenden, so muss das gesamte Maxima-Feld &#039;&#039;&#039;mit dem Parser gerechnet&#039;&#039;&#039; werden. Man verliert dadurch jedoch die Vorteile der Maxima-Berechnung.&lt;br /&gt;
* Alternativ kann man statt der Operatoren auch &#039;&#039;&#039;Funktionen verwenden&#039;&#039;&#039; (zB: ne() statt != ). Diese werden dann von Maxima zwar nicht ausgewertet, die Berechnung bleibt aber trotzdem korrekt und kann mit Maxima durchgeführt werden.&lt;br /&gt;
* Es gibt einige Funktionen welche in &#039;&#039;&#039;Maxima existieren&#039;&#039;&#039; aber im &#039;&#039;&#039;Parser nicht, oder mit anderem Syntax&#039;&#039;&#039;.&lt;br /&gt;
** Wenn diese von Maxima nicht ausgewertet werden können, da sie &#039;&#039;&#039;Datensätze&#039;&#039;&#039; enthalten welche zu Auswertezeitpunkt von Maxima noch &#039;&#039;&#039;nicht mit Werten belegt&#039;&#039;&#039; sind, &#039;&#039;&#039;dürfen sie in der Berechnung nicht verwendet werden&#039;&#039;&#039;, da der Parser dann damit nichts anfangen kann.&lt;br /&gt;
** Solche Funktionen haben entweder im Parser eine alternative Schreibweise welche auch mit Maxima verwendet werden kann (z.B.: wenn), oder sie können prinzipell nicht verwendet werden. (Für wichtige Funktionsweisen könnte man in zukünftigen Versionen neue Funktionalitäten in den Parser einbauen, die die gewünschte Funktion erfüllen)&lt;br /&gt;
** Ein weiter Möglichkeit für die Verwendung solcher Funktionen ist der Verzicht auf Datensätze in diesen Funktionen, damit diese Funktion beim Auswerten des Maxima-Feldes bereits ausgewertet werden kann und somit der Parser davon nichts mehr sieht.&lt;br /&gt;
** zB:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
if then&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Infix Operatoren===&lt;br /&gt;
====arithmetische Operatoren====&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Operator || Priorität || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| + || 40 || Addition || 4+5 || 9 &lt;br /&gt;
|-&lt;br /&gt;
| - || 40 || Subtraktion || 6-2 || 4&lt;br /&gt;
|-&lt;br /&gt;
| * || 50 || Multiplikation || 4*5 || 20&lt;br /&gt;
|-&lt;br /&gt;
| / || 51 || Division || 20/4 || 5&lt;br /&gt;
|-&lt;br /&gt;
| % || 51 || Divisionsrest || 104%20 || 4&lt;br /&gt;
|-&lt;br /&gt;
| &amp;amp;#124; &amp;amp;#124; || 60 || Parallelschaltung || x &amp;amp;#124; &amp;amp;#124; y || x*y/(x+y)&lt;br /&gt;
|-&lt;br /&gt;
| ^ || 90 || Potenz || 2^3 || 8&lt;br /&gt;
|-&lt;br /&gt;
| .*. || 200 || Operator der intern für eine fehlende bindende Multiplikation verwendet wird || 4x || 4*x&lt;br /&gt;
|-&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
====Bitoperatoren====&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Operator || Priorität || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
||  |  || 20 || Bitweise oder logisches ODER ||| 9|5 &amp;lt;br&amp;gt; true|false || 13 &amp;lt;br&amp;gt;true&lt;br /&gt;
|-&lt;br /&gt;
| or || 20 || Bitweise oder logisches ODER || 9 or 5 || 13&lt;br /&gt;
|-&lt;br /&gt;
| &amp;amp;  || 21 || Bitweise oder logisches UND  || 13&amp;amp;10 || 8&lt;br /&gt;
|-&lt;br /&gt;
| and || 21 || Bitweise oder logisches UND  || 13 and 10 || 8&lt;br /&gt;
|-&lt;br /&gt;
| xor || 22 || Bitweise oder logisches exklusiv oder XOR  || 13 xor 10 || 7&lt;br /&gt;
|-&lt;br /&gt;
| imp || 23 || Bitweise oder logisches impliziert IMP || 13 imp 10 || 8&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;&amp;lt;  || 35 || Bitweise links schieben  || 5&amp;lt;&amp;lt;2 || 20&lt;br /&gt;
|-&lt;br /&gt;
| &amp;gt;&amp;gt;  || 35 || Bitweise rechts schieben || 8&amp;gt;&amp;gt;2 || 2&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
====Vergleichsoperatoren====&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Operator || Priorität || Beschreibung || Beispiel&lt;br /&gt;
|-&lt;br /&gt;
| =  || 3 || Gleichungsoperator || x=y&lt;br /&gt;
|-&lt;br /&gt;
| == || 30 || Gleichungsoperator || x==y&lt;br /&gt;
|-&lt;br /&gt;
| != || 30 || Ungleichungsoperator || x!=y&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt; || 32 || Kleiner || x&amp;lt;y&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;= || 32 || Kleiner gleich || x&amp;lt;=y&lt;br /&gt;
|-&lt;br /&gt;
| &amp;gt; || 32 || größer || x&amp;gt;y&lt;br /&gt;
|-&lt;br /&gt;
| &amp;gt;= || 32 || größer gleich || x&amp;gt;=y&lt;br /&gt;
|}&lt;br /&gt;
====Organisative Operatoren====&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Operator || Priorität || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| , || 0 || Listen-Trennzeichen || x,y ||&lt;br /&gt;
|-&lt;br /&gt;
| $ || 1 || Trennzeichen zwischen mehreren Berechnungen || ||&lt;br /&gt;
|-&lt;br /&gt;
| ; || 1 || Trennzeichen zwischen mehreren Berechnungen || ||&lt;br /&gt;
|-&lt;br /&gt;
| : || 2 || Zuweisung an eine Variablen auf der linken Seite || x:5 || &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Prefix Operatoren===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Operator || Priorität || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| + || 45 || positives Vorzeichen || +5 || 5&lt;br /&gt;
|-&lt;br /&gt;
| - || 45 || negatives Vorzeichen || -(-5) || 5&lt;br /&gt;
|-&lt;br /&gt;
| ~ || 95  || bitweise Inversion einer 64bit-Ganzzahl || ~0x0F0F || 0xFFFFFFFFFFFFF0F0&lt;br /&gt;
|-&lt;br /&gt;
| ! || 120 || logisches NOT || !(3&amp;lt;4) || false&lt;br /&gt;
|-&lt;br /&gt;
| ++ || 130 || Inkrement von Ganzzahlen || ++x || erhöht x um eins und gibt das Ergebnis nach der Erhöhung zurück&lt;br /&gt;
|-&lt;br /&gt;
| -- || 130 || Dekrement von Ganzzahlen || --x || vermindert x um eins und gibt das Ergebnis nach der Verminderung zurück&lt;br /&gt;
|-&lt;br /&gt;
| % || 200 || Prefix für Namen, welche als Konstante definiert sind || %pi || 3.141592653589793&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Suffix Operatoren===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Operator || Priorität || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| ++ || 135 || Inkrement von Ganzzahlen || x++ || erhöht x um eins und gibt den Variablenwert vor der Erhöhung zurück&lt;br /&gt;
|-&lt;br /&gt;
| -- || 135 || Dekrement von Ganzzahlen || x-- || vermindert x um eins und gibt den Variablenwert vor der Verminderung zurück&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==Klammern==&lt;br /&gt;
* () runde Klammern werden für mathematische Ausdrücke zur Klammerung verwendet&lt;br /&gt;
* {} geschwungene Klammer werden im Angabetext für die Namen der Datensätze verwendet&lt;br /&gt;
* [] eckige Klammern werden für Vektoren und Matrizen verwendet&lt;br /&gt;
&lt;br /&gt;
==Funktionen==&lt;br /&gt;
===Funktionen für Ganzzahlen===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| band || bitweises UND || band(4,12) || 4&lt;br /&gt;
|-&lt;br /&gt;
| bor  || bitweises ODER || bor(4,1) || 5&lt;br /&gt;
|-&lt;br /&gt;
| bxor || bitweises EXKLUSIV ODER || band(4,5) || 1&lt;br /&gt;
|-&lt;br /&gt;
| bimp || bitweises Parameter1 impliziert Parameter2 || bimp(13,10) || 8&lt;br /&gt;
|-&lt;br /&gt;
| binv || bitweises NICHT mit 8 bit || binv(0x0F) || 0xF0&lt;br /&gt;
|-&lt;br /&gt;
| shl || Schiebe Ganzzahl bitweise nach links || shl(8,2) || 32&lt;br /&gt;
|-&lt;br /&gt;
| shr || Schiebe Ganzzahl bitweise nach rechts || shr(8,2) || 2&lt;br /&gt;
|-&lt;br /&gt;
| div || Ganzzahldivision, Ergebnis wird abgeschnitten || div(5,2) || 2&lt;br /&gt;
|-&lt;br /&gt;
| inv8  || bitweise Invertieren und die letzten 8 Bit bestimmen  || inv8(0b1001) || 0b11110110&lt;br /&gt;
|-&lt;br /&gt;
| inv16 || bitweise Invertieren und die letzten 16 Bit bestimmen || inv16(0xF0)  || 0xFF0F&lt;br /&gt;
|-&lt;br /&gt;
| inv32 || bitweise Invertieren und die letzten 32 Bit bestimmen || inv32(0xF0)  || 0bFFFFFF0F&lt;br /&gt;
|-&lt;br /&gt;
| inv64 || bitweise Invertieren und die letzten 64 Bit bestimmen || inv64(0xF0)  || 0bFFFFFFFFFFFFFF0F&lt;br /&gt;
|-&lt;br /&gt;
| byte  || Zahl in eine Ganzzahl wandeln und die letzten 8bit der Zahl Abschneiden, Einheit geht verloren  || byte(34.2) || 34&lt;br /&gt;
|-&lt;br /&gt;
| word  || Zahl in eine Ganzzahl wandeln und die letzten 16bit der Zahl Abschneiden, Einheit geht verloren || word(34.2) || 34&lt;br /&gt;
|-&lt;br /&gt;
| int   || Zahl in eine Ganzzahl wandeln und die letzten 32bit der Zahl Abschneiden, Einheit geht verloren || int(34.2) || 34&lt;br /&gt;
|-&lt;br /&gt;
| long  || Zahl in eine Ganzzahl wandeln , Einheit geht verloren || long(34.2) || 34&lt;br /&gt;
|-&lt;br /&gt;
| [[parity]]  || Paritätsberechnung : parity(Parität,Codewortlänge,Datenwort[,Datenwort,....]) || parity(even,7,&amp;quot;xy&amp;quot;) || &lt;br /&gt;
|-&lt;br /&gt;
| [[blockparity]]  || Kreuz oder Blockparität : blockparity(Parität,Codewortlänge,Codewortanzahl,Datenwort[,Datenwort,....]) || blockparity(even,7,3,&amp;quot;abc&amp;quot;) || &lt;br /&gt;
|-&lt;br /&gt;
| [[bcd]]  || Wandelt in eine Long-Zahl in ein Feld aus BCD-kodierten Zahlen um || bcd(124) || [1,2,4]&lt;br /&gt;
|-&lt;br /&gt;
| [[code]] || Code aus mehreren Codeworten zusammensetzen : code(Codewortlänge,Datenwort[,Datenwort,....]) || code(5,4,3,5) || 0b1000001100101&lt;br /&gt;
|-&lt;br /&gt;
| [[hamming]] || Bestimmt den Hamming-Abstand von mehreren Codeworten || hamming(1,2,4,8,16) || 2&lt;br /&gt;
|-&lt;br /&gt;
| [[komplement]] ||  Bildet das Zweierkomplement mit einer negativen Zahl mit einer bestimmten Bitanzahl, fehlt die Bitanzahl, so wird ein 32Bit-2er-komplement gebildet || komplement(-5,8) || 0b11111011&lt;br /&gt;
|-&lt;br /&gt;
| [[bitstream]] || Erzeugt aus einer Ganzzahl einen Bitstrom als String mit einer definierten Anzahl von Bit (MSB werden nötigenfalls mit 0 gefüllt) : bitstream(Daten,Bitanzahl) || bitstream(0x184,12) || &amp;quot;000110000100&amp;quot;&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Funktionen für rationale und Ganzzahlen===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| kgV || berechnet das kleinste gemeinsame Vielfache von mehreren Zahlen || kgV(3,10) || 30&lt;br /&gt;
|-&lt;br /&gt;
| ggT || berechnet den größten gemeinsamen Teiler von mehreren Zahlen || ggT(12,10) || 2&lt;br /&gt;
|- &lt;br /&gt;
| isprim || prüft ob die angegebene Zahl eine Primzahl ist || isprim(13) || true&lt;br /&gt;
|-&lt;br /&gt;
| prims || zerlegt eine Ganzzahl in ihre Primfaktoren || prims(12) || [2,2,3]&lt;br /&gt;
|-&lt;br /&gt;
| defracmix || zerlegt eine rationale Zahl in einen gemischten Bruch aus ganzzahligem Summanden, Zähler und Nenner als Menge&amp;lt;br&amp;gt;Die erhaltene Menge kann mit dem Format-Modfier &#039;&#039;&#039;frac&#039;&#039;&#039; als gemischter Bruch dargestellt werden (siehe [[Zahlendarstellung]]) || defracmix(14/12)&amp;lt;br&amp;gt;defracmix(-15/12)&amp;lt;br&amp;gt;defracmix(3/12) || [1,2/12]&amp;lt;br&amp;gt;[-1,3,12]&amp;lt;br&amp;gt;[0,3,12] &lt;br /&gt;
|-&lt;br /&gt;
| defrac || zerlegt eine rationale Zahl in Zähler und Nenner als Menge &amp;lt;br&amp;gt;Die erhaltene Menge kann mit dem Format-Modfier &#039;&#039;&#039;frac&#039;&#039;&#039; als gemischter Bruch dargestellt werden || defrac(14/12) || [13,12]&lt;br /&gt;
|-&lt;br /&gt;
| frac || erzeugt aus einer Menge aus 2 oder 3 Elementen (von defrac) eine rationale Zahl || frac([3,7])&amp;lt;br&amp;gt;frac([1,2,3]) || 3/7 &amp;lt;br&amp;gt; 5/3&lt;br /&gt;
|-&lt;br /&gt;
| mod || Mathematische Implementierung von [https://de.wikipedia.org/wiki/Division_mit_Rest#Modulo modulo]: Divisionsrest einer Division mit ganzzahligem Ergebnis || mod(5,2) &amp;lt;br&amp;gt; mod(6.2,2.5) &amp;lt;br&amp;gt; mod(-4,3) || 1&amp;lt;br&amp;gt;1.2 &amp;lt;br&amp;gt; 2&lt;br /&gt;
|-&lt;br /&gt;
| mod2 || Symmetrische Implementierung von [https://de.wikipedia.org/wiki/Division_mit_Rest#Modulo modulo]: Divisionsrest einer Division mit ganzzahligem Ergebnis &amp;lt;br&amp;gt;Der Unterschied zu mod liegt in der Behandlung von negativen Zahlen des ersten Arguments &amp;lt;br&amp;gt;Siehe auch Divisionsrest des Parser-Operators % [[Berechnungen#arithmetische_Operatoren]] || mod2(5,2) &amp;lt;br&amp;gt; mod2(6.2,2.5) &amp;lt;br&amp;gt; mod2(-4,3) || 1&amp;lt;br&amp;gt;1.2 &amp;lt;br&amp;gt; -1&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===boolsche Funktionen===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| eq || gleich || eq(4,4) || true&lt;br /&gt;
|-&lt;br /&gt;
| eqruntime || symbolischer Vergleich, welcher &#039;&#039;&#039;symbolisch erst bei der Ergebnisberechnung&#039;&#039;&#039; ausgeführt wird. Muss verwendet werden, wenn bei Vergleichen symbolische Antworten von Schülern (Q0,Q1,...) verwendet werden.  || eqruntime(x+3*y,3*y+x) || true&lt;br /&gt;
|-&lt;br /&gt;
| ne || ungleich || ne(6,4) || true&lt;br /&gt;
|-&lt;br /&gt;
| ge || größer gleich || ge(6,4) || true&lt;br /&gt;
|-&lt;br /&gt;
| le || kleiner gleich || le(6,4) || false&lt;br /&gt;
|-&lt;br /&gt;
| gt || größer || gt(6,4) || true&lt;br /&gt;
|-&lt;br /&gt;
| lt || kleiner || lt(6,4) || false&lt;br /&gt;
|-&lt;br /&gt;
| between || prüft ob Parameter1 kleiner als Parameter2 und Parameter2 kleiner als Parameter 3 || between(3,4,5) || true&lt;br /&gt;
|-&lt;br /&gt;
| land || logisches UND || land(a&amp;lt;b,b&amp;lt;c) || &lt;br /&gt;
|-&lt;br /&gt;
| lor  || logisches ODER || lor(a&amp;lt;b,b&amp;lt;c) || &lt;br /&gt;
|-&lt;br /&gt;
| not  || logisches NICHT. Vorsicht ein symbolisches Ergebnis von Maxima liefert not als Prefix-Operator, welcher vom Parser nicht unterstützt wird ( Verwende statt dessen &#039;&#039;&#039;lnot&#039;&#039;&#039; ) || not(a&amp;lt;b) || &lt;br /&gt;
|-&lt;br /&gt;
| lnot  || logisches NICHT, wie not jedoch wird es von Maxima nicht ausgewertet || lnot(a&amp;lt;b) || &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===arithmetische Funktionen===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| double || Zahl in eine Gleitkommazahl umwandeln, die Einheit geht dabei verloren || double(3.4V) || 3.4&lt;br /&gt;
|-&lt;br /&gt;
| numeric || verwirft die Einheit, wenn eine vorhanden ist und liefert nur den Zahlenwert || numeric(2.3mA) &amp;lt;br&amp;gt; numeric(5%)|| 0.0023 &amp;lt;br&amp;gt; 5&lt;br /&gt;
|-&lt;br /&gt;
| unit || gibt die SI-Einheit mit dem Zahlenwert 1 zurück || unit(3.1kA) &amp;lt;br&amp;gt; unit(5%) || 1A &amp;lt;br&amp;gt; 1%&lt;br /&gt;
|-&lt;br /&gt;
| cround  || Rundet die Zahl kaufmännisch, der zweite Parameter gibt die Anzahl der Kommastellen an, ohne 2.Parameter wird auf Ganzzahlen gerundet, bei komplexen Zahlen wird Betrag und Winkel in Grad gerundet. || cround(23.535,2)&amp;lt;br&amp;gt;cround(2.435arg34.5364°,1) || 23.54&amp;lt;br&amp;gt;2.4arg34.5°&lt;br /&gt;
|-&lt;br /&gt;
| ccround  || Rundet die Zahl kaufmännisch, der zweite Parameter gibt die Anzahl der Kommastellen an, bei komplexe Zahlen wird Real und Imaginärteil gerundet. || ccround(2.4534+5.645*%i,2) || 2.45+5.65i&lt;br /&gt;
|-&lt;br /&gt;
| round  || Rundet die Zahl kaufmännisch, aus Kompatibilitätsgründen zu Maxima hat round nur einen Parameter || round(23.535) || 24&lt;br /&gt;
|-&lt;br /&gt;
| ground || Rundet die Zahl auf die im zweiten Parameter angegebenen gültigen Ziffern || ground(2453.43,2) || 2500&lt;br /&gt;
|-&lt;br /&gt;
| floor  || Rundet auf die größte ganze Zahl, welche kleiner oder gleich x ist || floor(24.5) || 24&lt;br /&gt;
|-&lt;br /&gt;
| trunc  || Schneidet die Zahl nach dem Komma ab || trunc(24.5) || 24&lt;br /&gt;
|-&lt;br /&gt;
| ceiling || ceiling(x) Rundet auf die kleinste ganze Zahl, welche größer oder gleich x ist || ceiling(13.2) || 14&lt;br /&gt;
|-&lt;br /&gt;
| pow || Potenzfunktion || pow(2,3) || 8&lt;br /&gt;
|-&lt;br /&gt;
| par || Parallelschaltung von Widerständen || par(x,y) || x*y/(x+y)&lt;br /&gt;
|-&lt;br /&gt;
| min  || Minimum von mehrere Werten suchen || min(3,5,1) || 1&lt;br /&gt;
|-&lt;br /&gt;
| max  || Maximum von mehreren Werten suchen || max(3,5,1) ||  5&lt;br /&gt;
|-&lt;br /&gt;
| random  || Zufallszahl aus einem definierten Zahlenbereich random(minimal,maximal)&amp;lt;br&amp;gt;VORSICHT! Die Zufallszahl wird bei jedem Aufruf neu berechnet, weshalb sich der Wert bei jedem Anzeigevorgang einer Frage ändert. Sollte sich der berechnete Wert für eine Schülerangabe zwischen Fragestellung und Ergebniskontrolle nicht ändern dürfen (ist der Normalfall) muss man einen &#039;&#039;&#039;Datensatz statt einer Zufallszahl&#039;&#039;&#039; verwenden! &amp;lt;br&amp;gt; Zufallszahlen haben in der Ergebnisberechnung keinen Sinn, und sollten maximal für angezeigte zufällige Werte verwendet werden! || random(2,8) ||  3.4532&lt;br /&gt;
|-&lt;br /&gt;
| randomC  || komplexe Zufallszahl aus einem definierten Zahlenbereich für den Betrag&amp;lt;br&amp;gt;VORSICHT! Die Zufallszahl wird bei jedem Aufruf neu berechnet!  || randomC(2,8) ||  3.4532arg40.3°&lt;br /&gt;
|-&lt;br /&gt;
| signum  || Liefert das Vorzeichen einer Zahl (-1,0,1). Bei einer komplexen Zahl das Vorzeichen des Realteils. || signum(-4) || -1&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Maxima-basierte Funktionen ===&lt;br /&gt;
* Diese Funktionen funktionieren nur wenn Maxima installiert ist und werden immer an Maxima gesendet, auch wenn der interne Parser aktiviert ist.&lt;br /&gt;
* Weiters werden sie bei der Ausgabe als TeX-Formel auch korrekt mit LaTeX gesetzt.&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| integrate || Berechnet das unbestimmte oder bestimmte Integral einer Funktion. || integrate(x^2,x) &amp;lt;br&amp;gt; integrate(x^2,x,0,2) || x^3/3 &amp;lt;br&amp;gt; 8/3  &lt;br /&gt;
|-&lt;br /&gt;
| diff || Berechnet die Ableitung einer Funktion.  || diff(x^2,x)&amp;lt;br&amp;gt;diff(3*x^2,x,2) || x &amp;lt;br&amp;gt; 6&lt;br /&gt;
|-&lt;br /&gt;
| tomaxima || Führt die Berechnung aller Parameter von links nach rechts hintereinander mit Maxima aus. Das Ergebnis ist dann das Ergebnis des letzten Parameters. || tomaxima(y:x^2,y+2) || x^2+2&lt;br /&gt;
|-&lt;br /&gt;
| laplace || Bestimmt die Laplace-Transformierte einer Funktion. || laplace(sin(t),t,s) || 1/(1+s^2)&lt;br /&gt;
|-&lt;br /&gt;
| ilt || Bestimmt die inverse Laplace-Transformierte eine Laplace-Funktion || ilt(1/(1+s),s,t) || e^(-t)&lt;br /&gt;
|-&lt;br /&gt;
| sum || Summenbildung || sum(1/k,k,1,2) || 3/2&lt;br /&gt;
|-&lt;br /&gt;
| product || Produktbildung || product(1/k,k,1,3) || 1/6&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===erweiterte arithmetische Funktionen===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| sigma || Sprungfunktion: sigma(x) liefert 0 für x&amp;lt;0 und 1 für x&amp;gt;=0 || sigma(243.3) || 1&lt;br /&gt;
|-&lt;br /&gt;
| pulse || Rechteckfunktion: &amp;lt;br&amp;gt;pulse(x,x0) ist gleich 1 für x0 &amp;lt; x &amp;lt; x0 + 1, sonst 0&amp;lt;br&amp;gt;pulse(x,x0,L) ist gleich 1 für x0 &amp;lt; x &amp;lt; x0 + L, sonst 0&amp;lt;br&amp;gt;[[Datei:pulse.png|300px]] || pulse(x,2,4) || [[Datei:pulse_x_2_4.png|100px]]&lt;br /&gt;
|-&lt;br /&gt;
| interpol || Interpolationsfunktion zwischen mehreren Stützpunkten in einem Koordinatensystem. &amp;lt;br&amp;gt; interpol(WerteX,WerteY,x) || interpol([0,1,2],[0,3,3],1.5) || 3&lt;br /&gt;
|-&lt;br /&gt;
| periodic || Erzeugt aus einer beliebigen Funktion zwischen 0 und Periodendauer eine periodische Funktion &amp;lt;br&amp;gt; periodic(Variable,Periodendauer,Funktion)&amp;lt;br&amp;gt; periodic(Variable,Periodendauer,Funktionsperiodendauer,Funktion) || ch1(t):periodic(t,5ms,2&#039;Vms-2&#039;*t^2) &amp;lt;br&amp;gt; ch1(t):periodic(t,5ms,1,2V*t^2) || :[[Datei:ClipCapIt-190318-113524.PNG|100px]] &amp;lt;br&amp;gt; :[[Datei:ClipCapIt-190318-113644.PNG|100px]]&lt;br /&gt;
|-&lt;br /&gt;
| numint || numerische Integration &amp;lt;br&amp;gt; numint(untereGrenze,obereGrenze,funktion,Variable)&amp;lt;br&amp;gt; numint(untereGrenze,obereGrenze,funktion,Variable,punkteAnzahl) || numint(0,2pi,sin(t),t) || 0&lt;br /&gt;
|-&lt;br /&gt;
| numdif || numerisches Differenzieren einer Funktion &amp;quot;funktion&amp;quot; nach einer Variablen &amp;quot;Variable&amp;quot; an der Stelle &amp;quot;position&amp;quot; mit einer Differenz der Variablen von &amp;quot;differenz&amp;quot; &amp;lt;br&amp;gt; numdif(position,funktion,Variable,differenz) || numdif(0,sin(t),t,0.01) || 1&lt;br /&gt;
|-&lt;br /&gt;
| solve || löst eine Gleichung oder ein Gleichungssystem nach einer oder mehrerer Variablen || solve([2*x+y=3,x-y=0],[x,y]) || [ [ x=1,y=1 ] ]&lt;br /&gt;
|-&lt;br /&gt;
| solvevalue || löst eine Gleichung oder ein Gleichungssystem nach einer Variablen und liefert genau die erste Lösung wenn sie numerisch berechenbar ist || solvevalue([ 2*x+y=3,x-y=0 ],[ x,y ],x)  || 1&lt;br /&gt;
|-&lt;br /&gt;
| newton || Bestimmt eine Nullstelle einer Funktion nach dem Newton-Verfahren. Der erste Parameter ist ein Ausdruck in einer Variablen, der zweite Parameter ist der Startwert. || newton(x^2-4,4) || 2&lt;br /&gt;
|-&lt;br /&gt;
| cnewton || Bestimmt eine komplexe Nullstelle einer Funktion nach dem Newton-Verfahren. Der erste Parameter ist ein Ausdruck in einer Variablen, der zweite Parameter ist der komplexe Startwert. || cnewton (x^2+4,4) || 2*%i&lt;br /&gt;
|-&lt;br /&gt;
| newtonall || Bestimmt alle Nullstellen einer Funktion mit einem Betrag des Funktionsparameters kleiner als ein definierter Wert nach dem Newton-Verfahren. Der erste Parameter ist ein Ausdruck in einer Variablen, der zweite Parameter ist der maximale Betrag des Funktionsparameters. Das Ergebnis ist immer ein Vektor mit den nach aufsteigendem Funktionswert sortierten Nullstellen. || newtonall (x^2-4,4) || [-2,2]&lt;br /&gt;
|-&lt;br /&gt;
| cnewtonall || Bestimmt alle komplexen Nullstellen einer Funktion mit einem Betrag des Funktionsparameters kleiner als ein definierter Wert nach dem Newton-Verfahren. Der erste Parameter ist ein Ausdruck in einer Variablen, der zweite Parameter ist der maximale Betrag des Funktionsparameters. Das Ergebnis ist immer ein Vektor mit den Nullstellen. || cnewtonall (x^2+4,4) || [-2*%i,2*%i]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Gleichungen und Gleichungssysteme ===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis || ab Revision&lt;br /&gt;
|-&lt;br /&gt;
| solve || löst eine Gleichung oder ein Gleichungssystem nach einer oder mehrerer Variablen || solve([2*x+y=3,x-y=0],[x,y]) || [ [ x=1,y=1 ] ] || &lt;br /&gt;
|-&lt;br /&gt;
| lhs || liefert die linke Seite einer Gleichung, Ungleichung oder eines Infix Operators || lhs(x+y=c+2) || x+y || 6521&lt;br /&gt;
|-&lt;br /&gt;
| rhs || liefert die rechte Seite einer Gleichung, Ungleichung oder eines Infix Operators || rhs(x+y=c+2) || c+2 || 6521&lt;br /&gt;
|-&lt;br /&gt;
| onlypos || liefert aus dem Lösungsvektor von solve welcher aus lauter Gleichungen besteht nur die Lösungen welche positiv nicht Null sind || onlypos([[x=3,y=-3],[x=4,y=5],[x=-2,y=4]]) &amp;lt;br&amp;gt; onlypos([x=-2,x=0,x=6,x=8]) || [ [x=4,y=5] ] &amp;lt;br&amp;gt; [x=7,x=8] || 6522&lt;br /&gt;
|-&lt;br /&gt;
| onlyreal || liefert aus dem Lösungsvektor von solve welcher aus lauter Gleichungen besteht nur die Lösungen welche reell sind || onlyreal([[x=1,y=%i],[x=1,y=-%i],[x=3,y=4]]) &amp;lt;br&amp;gt; onlyreal([x=%i+1,x=1-%i,x=3,x=8]) || [ [x=3,y=4] ] &amp;lt;br&amp;gt; [x=3,x=8] || 6522&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Stringfunktionen===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| dechex || Zahl in eine Ganzzahl wandeln und als Hexadezimal-String ausgeben || dexhex(12) || &amp;quot;0xC&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| chr || Bestimmt die Zeichen mit dem ASC-II-Code der Long-Parameter und setzt daraus einen String zusammen. || chr(0x65,105) || &amp;quot;ei&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| val || Bestimmt den ASC-II-Code des ersten Zeichens welches als String-Parameter übergeben wurde.|| val(&amp;quot;a&amp;quot;) || 97&lt;br /&gt;
|-&lt;br /&gt;
| strcat || Fügt mehrere Strings zusammen.|| strcat(&amp;quot;a&amp;quot;,&amp;quot;b&amp;quot;) || &amp;quot;ab&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===trigonometrische Funktionen===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| sin || Sinus || sin(%pi/2) || 1&lt;br /&gt;
|-&lt;br /&gt;
| cos || Cosinus || cos(%pi/2) || 0&lt;br /&gt;
|-&lt;br /&gt;
| tan || Tangens || tan(%pi/4) || 1&lt;br /&gt;
|-&lt;br /&gt;
| asin || Arcus-Sinus || asin(1) || %pi/2&lt;br /&gt;
|-&lt;br /&gt;
| arcsin || Arcus-Sinus || asin(1) || %pi/2&lt;br /&gt;
|-&lt;br /&gt;
| acos || Arcus-Cosinus || acos(1) || 0&lt;br /&gt;
|-&lt;br /&gt;
| arccos || Arcus-Cosinus || acos(1) || 0&lt;br /&gt;
|-&lt;br /&gt;
| atan || Arcus-Tangens || atan(1) || %pi/4&lt;br /&gt;
|-&lt;br /&gt;
| arctan || Arcus-Tangens || arctan(1) || %pi/4&lt;br /&gt;
|-&lt;br /&gt;
| atan2 || Arcus-Tangens atan2(y,x)=arctan(y/x) || atan2(-2,-2) || -%pi*3/4&lt;br /&gt;
|-&lt;br /&gt;
| arctan2 || Arcus-Tangens arctan2(y,x)=arctan(y/x) || arctan2(-2,-2) || -%pi*3/4&lt;br /&gt;
|-&lt;br /&gt;
| sinh || Sinus-Hyperbolicus || sinh(1) || 1.1752012&lt;br /&gt;
|-&lt;br /&gt;
| cosh || Cosinus-Hyperbolicus || cosh(1) || 1.5430806&lt;br /&gt;
|-&lt;br /&gt;
| tanh || Tangens-Hyperbolicus || tanh(1) || 0.7615941&lt;br /&gt;
|-&lt;br /&gt;
| coth || Cotangens-Hyperbolicus || coth(1) || 1.313035&lt;br /&gt;
|-&lt;br /&gt;
| asinh || Area-Sinus-Hyperbolicus || asinh(1.1752012) || 1&lt;br /&gt;
|-&lt;br /&gt;
| acosh || Area-Cosinus-Hyperbolicus || acosh(1.5430806) || 1&lt;br /&gt;
|-&lt;br /&gt;
| atanh || Area-Tangens-Hyperbolicus || atanh(0.7615941) || 1&lt;br /&gt;
|-&lt;br /&gt;
| acoth || Area-Cotangens-Hyperbolicus || acoth(1.313035) || 1&lt;br /&gt;
|-&lt;br /&gt;
| [[csin]] || Erzeugt aus einer komplexen Zahl (Effektivwert) und einer Frequenz einen Sinusfunktion in der Zeit || csin(U) || sqrt(2)*cabs(U)*sin(2*pi*f*t+carg(U))&lt;br /&gt;
|-&lt;br /&gt;
| [[quadrant]] || Liefert den Quadranten eines Winkels mit einer Toleranzangabe. || quadrant(20°,5°) || 1&lt;br /&gt;
|-&lt;br /&gt;
| argnorm || Wandelt einen Winkel auf den Bereich von 0°-360° || argnorm(-50°) || 310°&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Exponentialfunktionen===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| pow || Potenzfunktion || pow(2,3) || 8&lt;br /&gt;
|-&lt;br /&gt;
| exp|| Exponentialfunktion || exp(1) || %e&lt;br /&gt;
|-&lt;br /&gt;
| log || natürlicher Logarythmus || log(%e) || 1&lt;br /&gt;
|-&lt;br /&gt;
| ln || natürlicher Logarythmus || ln(%e) || 1&lt;br /&gt;
|-&lt;br /&gt;
| log10 || Logarythmus zur Basis 10 || log10(100) || 2&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===komplexe Zahlen===&lt;br /&gt;
Die Funktionen zu komplexen Zahlen werden (anders als in Maxima) nur ausgewertet wenn das Ergebnis numerisch berechenbar ist, ansonsten bleibt die Funktion symbolisch erhalten.&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| abs || Liefert den Absolutbetrag einer komplexen Zahl || abs(3+4*%i) || 5&lt;br /&gt;
|-&lt;br /&gt;
| cabs || Liefert den Absolutbetrag einer komplexen Zahl || cabs(3+4*%i) || 5&lt;br /&gt;
|-&lt;br /&gt;
| carg || Liefert das Argument einer komplexen Zahl || carg(4*%e^(3*%i)) || 3&lt;br /&gt;
|-&lt;br /&gt;
| realpart || Liefert den Realteil einer komplexen Zahl || realpart(3+4*%i) || 3&lt;br /&gt;
|-&lt;br /&gt;
| imagpart || Liefert den Imaginärteil einer komplexen Zahl || imagpart(3+4*%i) || 4&lt;br /&gt;
|-&lt;br /&gt;
| conjugate || Liefert die konjugiert komplexe Zahl einer komplexen Zahl || conjugate(3+4*%i) || 3-4*%i&lt;br /&gt;
|-&lt;br /&gt;
| rectform || hat in LeTTo keine Relevanz, da die Zahlendarstellung bei der Ausgabe definiert wird wie zB.: {=3arg2;karti} ||  || &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Polynome===&lt;br /&gt;
Polynome mit reellen Koeffizienten in einer Variablen können mit folgenden Funktionen erstellt und verarbeitet werden. Für die interne Verarbeitung wird hierzu ein eigener Polynom-Datentyp verwendet.&lt;br /&gt;
&lt;br /&gt;
siehe auch [[Zahlendarstellung#f.C3.BCr_Polynome_und_gebrochen_rationale_Funktionen_mit_numerischen_Koeffizienten_in_einer_Variablen_k.C3.B6nnen_folgende_Parameter_angegeben_werden|Zahlendarstellung Polynome]]&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| polynom(p) || Erzeugt aus einem Ausdruck welcher genau eine Variable besitzen muss ein Polynom in dieser Variablen || polynom(1+x) || 1+x²&lt;br /&gt;
|-&lt;br /&gt;
| polynom(p,var) || Erzeugt aus einem Ausdruck ein Polynom in einer definierten Variablen. Ist p ein gültiger Polynom-Ausdruck mit reelen Koeffizienten in der Variablen var wird das Polynom erzeugt, ansonsten bleibt die Funktion erhalten. || polynom(1+a*x^2,x) &amp;lt;br&amp;gt; polynom(1+2*x^2,x) || polynom(1+a*x^2,x)&amp;lt;br&amp;gt;1+2*x²&lt;br /&gt;
|-&lt;br /&gt;
| polynom(p,var,&amp;quot;einheit&amp;quot;) || Erzeugt ein Polynom in der Variablen var, mit der Einheit &amp;quot;einheit&amp;quot; für die Polynomvariable. Die Einheit muss als String in Doppelhochkomma angegeben werden! Das Polynom p muss entweder ohne Einheiten oder mit den korrekten Einheiten angegeben werden! || polynom(1+2*p^2,p,&amp;quot;s-1&amp;quot;) &amp;lt;br&amp;gt; polynom(1+2&#039;s2&#039;*p^2,p,&amp;quot;s-1&amp;quot;) || 1+2&#039;s2&#039;*p^2 &amp;lt;br&amp;gt;1+2&#039;s2&#039;*p^2&lt;br /&gt;
|-&lt;br /&gt;
| factfrompolynom(p) || Erzeugt aus einem Polynom einen Vektor mit den Polynomfaktoren. Erste Zeile Zählerfaktoren, zweite Zeile Nennerfaktoren, dritte Zeile Polynomvariable, vierte Zeile Einheit der Polynomvariable|| factfrompolynom(polynom((2+x)/(1+2*x))) || [[1,0.5],[0.5,1],&amp;quot;x&amp;quot;,&amp;quot;&amp;quot;]&lt;br /&gt;
|-&lt;br /&gt;
| polynomfromfact(f) || Erzeugt aus einer Faktoren-Liste, welche mit factfrompolynom erstellt wurde ein neues Polynom || polynomfromfact([[1,0.5],[0.5,1],&amp;quot;x&amp;quot;,&amp;quot;&amp;quot;]) || (2+x)/(1+2*x)&lt;br /&gt;
|- &lt;br /&gt;
| polynomfromfact(zähler,nenner,var,einheit) || Erzeugt aus Zähler und Nenner Faktor-Vektoren ein neues Polynom || polynomfromfact([1,0.5],[0.5,1],x,&amp;quot;&amp;quot;) || (2+x)/(1+2*x)&lt;br /&gt;
|- &lt;br /&gt;
| nullfrompolynom(p) || Erzeugt aus einem Polynom einen Vektor mit den PolynomNullstellen und Polstellen. Erste Zeile gemeinsamer Faktor, zweite Zeile Nullstellen, dritte Zeile Polstellen, vierte Zeile Polynomvariable|| nullfrompolynom(polynom((2+x)/(1+2*x))) || [0.5,[-2],[-0.5],x]&lt;br /&gt;
|-&lt;br /&gt;
| polynomfromnull(n) || Erzeugt aus einer Nullstellen-Polstellen-Liste, welche mit nullfrompolynom erstellt wurde ein neues Polynom || polynomfromnull([0.5,[-2],[-0.5],x]) || (2+x)/(1+2*x)&lt;br /&gt;
|- &lt;br /&gt;
| polynomfromnull(faktor,nullstellen,polstellen,var) || Erzeugt aus einer Faktor-Vektoren ein neues Polynom || polynomfromnull(0.5,[-2],[-0.5],x) || (2+x)/(1+2*x)&lt;br /&gt;
|-  &lt;br /&gt;
| polynomk(p) || Bestimmt den Faktor, welcher vom Polynom herausgehoben werden kann, so dass die höchste Potenz der Polynomvariable den Multiplikator Eins hat. || polynomk(polynom((2+x)/(1+2*x))) || 0.5&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===statistische Funktionen===&lt;br /&gt;
Die Funktionen funktionieren nur ohne Einheiten.&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| factorial || Liefert die Fakultät einer positiven ganzen Zahl || factorial(5) || 120&lt;br /&gt;
|-&lt;br /&gt;
| binomial || Liefert den Binomialkoeffizienten von zwei positiven ganzen Zahlen || binomial(5,2) || 10&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Mengen-Funktionen===&lt;br /&gt;
Mengen werden intern als Vektoren verarbeitet und sind deshalb auch direkt durch Vektoren ersetzbar. Auch alle Vektor-Funktionen sind somit auch auf Mengen anwendbar und umgekehrt.&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis || ab Rev&lt;br /&gt;
|-&lt;br /&gt;
| setget || Liefert ein Element einer Menge oder einer Matrix (Menge von Mengen) || setget([12,13,14],1) &amp;lt;br&amp;gt; setget(matrix([9,2],[3,4]),0,1) || 13 &amp;lt;br&amp;gt; 2 &lt;br /&gt;
|-&lt;br /&gt;
| setset || setzt ein Element einer Menge oder einer Matrix (Menge von Mengen) || setset([12,13,14],1,35) &amp;lt;br&amp;gt; setset(matrix([9,2],[3,4]),0,0,-9) || [12,35,14] &amp;lt;br&amp;gt; [[-9,2],[3,4]]&lt;br /&gt;
|-&lt;br /&gt;
| setlength || liefert die Anzahl der Elemente einer Liste, Menge oder eines Vektors || setlength([3,6,54,34,3,54]) || 6 &lt;br /&gt;
|- &lt;br /&gt;
| setinsert || fügt ein Element in eine Menge an eine gegebene Stelle ein || setinsert([12,13,14],1,25) || [12,25,13,14]&lt;br /&gt;
|-&lt;br /&gt;
| setremove || löscht ein Element einer Menge || setremove([12,13,14],1) || [12,14]&lt;br /&gt;
|-&lt;br /&gt;
| setapply || wendet einen Ausdruck oder Funktion auf alle Elemente einer Menge an || setapply(y,[1,2,3],y*2) || [2,4,6] || 5965&lt;br /&gt;
|-&lt;br /&gt;
| setmedian || Liefert den Median einer Menge || setmedian([4,3,1,5,6]) || 4&lt;br /&gt;
|-&lt;br /&gt;
| setboxplot || Liefert die Werte des Boxplot einer Menge (Minimum, unteres Quartil, Median, oberes Quartil, Maximum) als Vektor verwendbar für das [[Plot#definierte_Zeichenelemente|Plot-Plugin]] || setboxplot([1,2,3,10,8,9]) || [1,2,5.5,9,10]&lt;br /&gt;
|-&lt;br /&gt;
| setsort || Sortiert die Elemente einer Menge aufsteigend || setsort([3,-3,2,0,5,2]) || [-3,0,2,2,3,5]&lt;br /&gt;
|-&lt;br /&gt;
| setsortnd || Sortiert die Elemente einer Menge aufsteigend und entfernt alle mehrfach vorkommenden Elemente || setsortnd([31,-3,2,31,0,5,2]) || [-3,0,2,5,31]&lt;br /&gt;
|-&lt;br /&gt;
| setcount || Bestimmt die Anzahl wie oft ein Element in einer Menge vorkommt oder die Anzahl der Elemente der Menge || setcount([31,-3,2,31,0,5,2],31) &amp;lt;br&amp;gt; setcount([2,5,3,6]) || 2 &amp;lt;br&amp;gt; 4&lt;br /&gt;
|-&lt;br /&gt;
| setmodus || Liefert das Element einer Menge, welches am öftesten vorkommt oder die Elemente als Menge wenn mehrere Elemente gleich oft vorkommen || setmodus([3,-3,2,0,5,2]) || 2&lt;br /&gt;
|-&lt;br /&gt;
| setreverse || Dreht die Reihenfolge einer Menge um || setreverse([3,-3,2,0,5,2]) || [2,5,0,2,-3,3]&lt;br /&gt;
|-&lt;br /&gt;
| setnd || Löscht alle Duplikate aus der Menge || setnd([3,-3,2,0,5,2]) || [3,-3,2,0,5]&lt;br /&gt;
|-&lt;br /&gt;
| setshuffle || Mischt eine Menge in eine andere Reihenfolge. VORSICHT, ohne zweiten Parameter (ganze Zahl) ändert sich die Reihenfolge bei jedem mal neu Laden automatisch und ist nicht nachvollziehbar, weshalb sie dann für Schülerbeispiele nicht einsetzbar ist! Daher ist es für eine praktische Anwendung in einem Schülerbeispiel &#039;&#039;&#039;erforderlich&#039;&#039;&#039;, dass der zweite Parameter determiniert (beispielsweise über einen Integer-Datensatz-Wert zwischen 0 und 1000) festgelegt wird.|| setshuffle([3,-3,2,0,5,2],5) || [2,3,−3,2,0,5] || 6082&lt;br /&gt;
|-&lt;br /&gt;
| setmittel || Bestimmt den Mittelwert einer Menge || setmittel([1,3,2,4]) || 2.5&lt;br /&gt;
|-&lt;br /&gt;
| setgeomittel || Bestimmt das geometrische Mittelwert einer Menge aus positiven reellen Zahlen || setgeomittel([10,20,30]) || 18.171206&lt;br /&gt;
|-&lt;br /&gt;
| setvarianz || Bestimmt die empirische Varianz einer Menge || setvarianz([3,1,2,5,4]) || ((3-3)^2+(1-3)^2+(2-3)^2+(5-3)^2+(4-3)^2)/5=2&lt;br /&gt;
|-&lt;br /&gt;
| setquadratmittel || Bestimmt den quadratischen Mittelwert einer Menge || setquadratmittel([10,20,30]) || 21.6025&lt;br /&gt;
|-&lt;br /&gt;
| setsum || Bestimmt die Summe aller Werte einer Menge || setsum([1,3,2,4]) || 10&lt;br /&gt;
|-&lt;br /&gt;
| setprod || Bestimmt das Produkt aller Werte einer Menge || setprod([1,3,2,4]) || 24&lt;br /&gt;
|-&lt;br /&gt;
| setunion || Fügt mehrere Mengen zu einer neuen Menge zusammen || setunion([1,3,2,4],[3,7]) || {1,3,2,4,3,7}&lt;br /&gt;
|-&lt;br /&gt;
| setunionnd || Fügt mehrere Mengen zu einer neuen Menge zusammen, sortiert diese und entfernt alle mehrfachen Elemente || setunionnd([1,3,2,4],[3,7]) || {1,2,3,4,7}&lt;br /&gt;
|-&lt;br /&gt;
| setcut || Bildet die Schnittmenge aus mehreren Mengen || setcut([1,3,2,4],[3,7]) || {3}&lt;br /&gt;
|-&lt;br /&gt;
| setcompare || vergleicht zwei Mengen miteinander, wobei die Reihenfolge egal ist  || setcompare([1,3,2,4],[3,7]) &amp;lt;br&amp;gt; setcompare([1,3,2],[1,2,3]) &amp;lt;br&amp;gt; setcompare([1,3,2],[1,3,2,3]) &amp;lt;br&amp;gt; setcompare([1,2,3],[1,2,3])  || false &amp;lt;br&amp;gt; true &amp;lt;br&amp;gt; false &amp;lt;br&amp;gt; true&lt;br /&gt;
|-&lt;br /&gt;
| setcomparend || vergleicht zwei Mengen miteinander, wobei die Reihenfolge egal ist und doppelte Werte als einfach behandelt werden. || setcomparend([1,3,2,4],[3,7]) &amp;lt;br&amp;gt; setcomparend([1,3,2],[1,2,3]) &amp;lt;br&amp;gt; setcomparend([1,3,2],[1,3,2,3]) &amp;lt;br&amp;gt; setcomparend([1,2,3],[1,2,3])  || false &amp;lt;br&amp;gt; true &amp;lt;br&amp;gt; true &amp;lt;br&amp;gt; true&lt;br /&gt;
|-&lt;br /&gt;
| setpartof || prüft ob die erste Menge eine Teilmenge der zweite Menge ist wobei die Reihenfolge egal ist aber mehrfache Werte berücksichtigt werden  || setpartof([1,4],[1,3,7]) &amp;lt;br&amp;gt; setpartof([1,3],[1,2,3]) &amp;lt;br&amp;gt; setpartof([1,3,3],[1,3,5,7]) &amp;lt;br&amp;gt; setpartof([1,4,4],[1,2,3,4])  || false &amp;lt;br&amp;gt; true &amp;lt;br&amp;gt; false &amp;lt;br&amp;gt; false&lt;br /&gt;
|-&lt;br /&gt;
| setpartofnd || prüft ob die erste Menge eine Teilmenge der zweite Menge ist wobei die Reihenfolge und mehrfache Werte egal sind  || setpartofnd([1,4],[1,3,7]) &amp;lt;br&amp;gt; setpartofnd([1,3],[1,2,3]) &amp;lt;br&amp;gt; setpartofnd([1,3,3],[1,3,5,7]) &amp;lt;br&amp;gt; setpartofnd([1,4,4],[1,2,3,4])  || false &amp;lt;br&amp;gt; true &amp;lt;br&amp;gt; true &amp;lt;br&amp;gt; true&lt;br /&gt;
|-&lt;br /&gt;
| setgetmin || Liefert den kleinsten Wert einer Menge || setgetmin([1,3,-2,4]) || -2&lt;br /&gt;
|-&lt;br /&gt;
| setgetmax || Liefert den größten Wert einer Menge || setgetmax([1,3,-2,4]) || 4&lt;br /&gt;
|-&lt;br /&gt;
| setremovefirst || Entfernt den ersten Wert einer Menge || setremovefirst([1,3,-2,4]) || {3,-2,4}&lt;br /&gt;
|-&lt;br /&gt;
| setremovelast || Entfernt den letzten Wert einer Menge || setremovelast([1,3,-2,4]) || {1,3,-2}&lt;br /&gt;
|-&lt;br /&gt;
| setgetfirst || Liefert den ersten Wert einer Menge || setgetfirst([1,3,-2,4]) || 1&lt;br /&gt;
|-&lt;br /&gt;
| setgetlast || Liefert den letzten Wert einer Menge || setgetlast([1,3,-2,4]) || 4&lt;br /&gt;
|-&lt;br /&gt;
| setsub || setsub(M,x,y) Liefert eine Teilmenge von M der Elemente vom index x bis zum Index y || setsub([1,3,-2,4],1,2) || {3,-2}&lt;br /&gt;
|-&lt;br /&gt;
| setmakelist || setmakelist(f,x,start,stop) setzt in den Ausdruck f für x die Werte von start bis stop mit einer Schrittweite von 1 ein. || setmakelist(x^2,x,1,4) || [ 1,4,9,16 ]&lt;br /&gt;
|-&lt;br /&gt;
| || setmakelist(f,x,start,stop,schrittweite) setzt in den Ausdruck f für x die Werte von start bis stop mit dem Abstand schrittweite ein. || setmakelist(x^2,x,1,2,0.5) || [ 1,2.25,4 ]&lt;br /&gt;
|-&lt;br /&gt;
| || setmakelist(f,x,set) setzt die Werte des Vektors set in den Ausdruck f für x ein. || setmakelist(x^2,x,[3,1,2])  ||[ 9,1,4 ]&lt;br /&gt;
|-&lt;br /&gt;
| foreach || Führt für jedes Element eine Berechnung aus und verbindet die Ergebnisse mit der Aggregatfunktion || foreach([2,-3,5,-6],p,cabs(p),&amp;quot;+&amp;quot;) || 16 || 6075 &lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Punkte-Mengen-Funktionen ===&lt;br /&gt;
Bei der Eingabe mit dem Plot-Plugin werden Punkte-Mengen als Matrizen in der Form [[x1,y1],[x2,y2],[y3,y3]] für die gespeicherten Punkte welcher der Schüler eingegeben hat verwendet.&lt;br /&gt;
&lt;br /&gt;
Um die Verarbeitung der Eingaben zu erleichtern kann man die Funktionen beginnend mit pv verwenden.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis || ab Rev&lt;br /&gt;
|-&lt;br /&gt;
| pvabs || Bestimmt den Betrag eines Punktes oder aller Ortsvektoren zu den Punkten. || pvabs([[2,3],[4,5],[6,3],[-2,4]]) &amp;lt;br&amp;gt; pvabs([[2,3],[4,5],[6,3],[-2,4]],1) ||  [3.6056,6.4031,6.7082,4.4721] &amp;lt;br&amp;gt; 6.4031 || 6077&lt;br /&gt;
|-&lt;br /&gt;
| pvarg || Bestimmt den Winkel eines Punktes oder aller Ortsvektoren zu den Punkten. || pvarg([[2,3],[4,5],[6,3],[-2,4]]) &amp;lt;br&amp;gt; pvarg([[2,3],[4,5],[6,3],[-2,4]],1) || [0.98279,0.89606,0.46365,2.0344] &amp;lt;br&amp;gt; 0.89606 || 6077&lt;br /&gt;
|-&lt;br /&gt;
| pvget || Liefert einen Punkt der Punkteliste. || pvget([[2,3],[4,5],[6,3],[-2,4]],1) || [4,5] || 6077&lt;br /&gt;
|-&lt;br /&gt;
| pvgetx || Bestimmt die x-Koordinate eines Punktes oder aller Punkte. || pvgetx([[2,3],[4,5],[6,3],[-2,4]]) &amp;lt;br&amp;gt; pvgetx([[2,3],[4,5],[6,3],[-2,4]],1) || [2,4,6,-2]&amp;lt;br&amp;gt;4 || 6077&lt;br /&gt;
|-&lt;br /&gt;
| pvgety || Bestimmt die y-Koordinate eines Punktes oder aller Punkte. || pvgety([[2,3],[4,5],[6,3],[-2,4]]) &amp;lt;br&amp;gt; pvgety([[2,3],[4,5],[6,3],[-2,4]],1) || [3,5,3,4]&amp;lt;br&amp;gt;3 || 6077&lt;br /&gt;
|-&lt;br /&gt;
| pvdistance || Bestimmt die Abstände als Vektoren zwischen den Punkten. pvdistance([A,B,C]) liefert [AB,BC,CA] || pvdistance([[1,2],[3,4],[10,10]]) || [[2,2],[7,6],[-9,-8] || 6569&lt;br /&gt;
|-&lt;br /&gt;
| pvlineabs || Bestimmt aus dem n-ten Punktepaar den Absolutbetrag des Abstandes. || pvlineabs([[2,3],[4,5],[6,3],[-2,4]])&amp;lt;br&amp;gt;pvlineabs([[2,3],[4,5],[6,3],[-2,4]],0) || [2.8284,8.0623]&amp;lt;br&amp;gt;2.82842712475 || 6075 &lt;br /&gt;
|-&lt;br /&gt;
| pvlinearg || Bestimmt aus dem n-ten Punktepaar den Winkel der Strecke zur x-Achse || pvlinearg([[2,3],[4,5],[6,3],[-2,4]])&amp;lt;br&amp;gt;pvlinearg([[2,3],[4,5],[6,3],[-2,4]],0) || [45°,172.87°]&amp;lt;br&amp;gt;45° || 6075 &lt;br /&gt;
|-&lt;br /&gt;
| pvlinek || Bestimmt die Steigung der zugehörigen Geraden dem n-ten Punktepaar || pvlinek([[2,3],[4,5],[6,3],[-2,4]])&amp;lt;br&amp;gt;pvlinek([[2,3],[4,5],[6,3],[-2,4]],0) ||  [1,−0.125]&amp;lt;br&amp;gt;1 || 6075 &lt;br /&gt;
|-&lt;br /&gt;
| pvlined || Bestimmt den Schnittpunkt einer Geraden durch das n-te Punktepaar mit der y-Achse || pvlined([[2,3],[4,5],[6,3],[-2,4]])&amp;lt;br&amp;gt;pvlined([[2,3],[4,5],[6,3],[-2,4]],0) || [1,3.75] &amp;lt;br&amp;gt;1 || 6075 &lt;br /&gt;
|-&lt;br /&gt;
| pvline || Bestimmt die Geradengleichung einer Geraden durch das n-te Punktepaar || pvline([[2,3],[4,5],[6,3],[-2,4]])&amp;lt;br&amp;gt;pvline([[2,3],[4,5],[6,3],[-2,4]],0) || [y=1+x,y=3.75−0.125⋅x]&amp;lt;br&amp;gt;y=x+1 || 6075 &lt;br /&gt;
|-&lt;br /&gt;
| pvpoints || Bestimmt die Anzahl der Punkte || pvpoints([[2,3],[4,5],[6,3],[-2,4]]) || 4 || 6075 &lt;br /&gt;
|-&lt;br /&gt;
| pvvect || Bestimmt einen Vector aus dem n-te Punktepaar || pvvect([[2,3],[4,5],[6,3],[-2,4]],0) || [2,2] || 6075 &lt;br /&gt;
|-&lt;br /&gt;
| pvsortx || Sortiert die Punkte nach steigender x-Koordinate || pvsortx([[2,3],[4,5],[6,3],[−2,4],[−3,5],[−7,−9]]) || [[−7,−9],[−3,5],[−2,4],[2,3],[4,5],[6,3]] ||6077 &lt;br /&gt;
|-&lt;br /&gt;
| pvsorty || Sortiert die Punkte nach steigender y-Koordinate || pvsorty([[2,3],[4,5],[6,3],[−2,4],[−3,5],[−7,−9]]) || [[−7,−9],[2,3],[6,3],[−2,4],[4,5],[−3,5]] ||6077&lt;br /&gt;
|-&lt;br /&gt;
| pvsortabs || Sortiert die Punkte nach steigendem Absolutbetrag des Ortsvektors || pvsortabs([[2,3],[4,5],[6,3],[−2,4],[−3,5],[−7,−9]]) ||  [[2,3],[−2,4],[−3,5],[4,5],[6,3],[−7,−9]] ||6077&lt;br /&gt;
|-&lt;br /&gt;
| pvsortarg || Sortiert die Punkte nach steigendem Winkel des Ortsvektors (-pi bis pi) || pvsortarg([[2,3],[4,5],[6,3],[−2,4],[−3,5],[−7,−9]]) ||  [[−7,−9],[6,3],[4,5],[2,3],[−2,4],[−3,5]] ||6077&lt;br /&gt;
|-&lt;br /&gt;
| pvsortlinex || Sortiert Punktepaare nach steigender x-Koordinate der kleineren x-Koordinate des Paares. || pvsortlinex([[2,3],[4,5],[6,3],[−2,4],[−3,5],[−7,−9]]) || [[−3,5],[−7,−9],[6,3],[−2,4],[2,3],[4,5]] ||6077 &lt;br /&gt;
|-&lt;br /&gt;
| pvsortliney || Sortiert Punktepaare nach steigender y-Koordinate der kleineren y-Koordinate des Paares. || pvsortliney([[2,3],[4,5],[6,3],[−2,4],[−3,5],[−7,−9]]) ||  [[−3,5],[−7,−9],[2,3],[4,5],[6,3],[−2,4]] ||6077 &lt;br /&gt;
|-&lt;br /&gt;
| pvsortlineabs || Sortiert Punktepaare nach steigendem Betrag der Linienlänge. || pvsortlineabs([[2,3],[4,5],[6,3],[−2,4],[−3,5],[−7,−9]]) || [[2,3],[4,5],[6,3],[−2,4],[−3,5],[−7,−9]] || 6077&lt;br /&gt;
|-&lt;br /&gt;
| pvsortlinearg || Sortiert Punktepaare nach steigendem Winkel der Linienrichtung. || pvsortlinearg([[2,3],[4,5],[6,3],[−2,4],[−3,5],[−7,−9]]) || [[−3,5],[−7,−9],[2,3],[4,5],[6,3],[−2,4]] || 6077&lt;br /&gt;
|-&lt;br /&gt;
| pvequals || Prüft ob zwei Punktevektoren gleich sind. Die Genauigkeit wird als dritter Parameter angegeben, oder bei einem Antwortfeld von der Antworttoleranz genommen. Prozentangaben der Genauigkeit beziehen sich auf die Breite bzw. Höhe des Punktefeldes im karthesischen Koordinatensystem. || pvequals([[2,3],[4,5],[6,3],[-2,4],[-3,5],[-7,-9]],[[2.01,3],[4,5],[6.01,3],[-2,3.99],[-3,5],[-7,-9]],2%) || true || 6077&lt;br /&gt;
|-&lt;br /&gt;
| pvhaspoint || Prüft ob sich ein Punkt innerhalb des Punktefeldes befindet. Die Genauigkeit kann wie bei pvequals als dritter Parameter angegeben werden. || pvhaspoint([[2,3],[4,5],[6,3],[-2,4],[-3,5],[-7,-9]],[4,5],2%) || true || 6077&lt;br /&gt;
|-&lt;br /&gt;
| pvhasline || Prüft ob sich eine Linie innerhalb des Punktefeldes von Linien befindet. Die Genauigkeit kann wie bei pvequals als dritter Parameter angegeben werden. || pvhaspoint([[2,3],[4,5],[6,3],[-2,4],[-3,5],[-7,-9]],[[6,3],[-2,4]],2%) || true || 6078&lt;br /&gt;
|-&lt;br /&gt;
| pvforeachline || Führt für jedes Punktepaar eine Berechnung aus und verbindet die Ergebnisse mit der Aggregatfunktion || pvforeachline([[2,3],[4,5],[6,3],[-2,4]],p,pvlineabs(p),&amp;quot;+&amp;quot;) || 10.890684873 || 6075 &lt;br /&gt;
|-&lt;br /&gt;
| pvfunc || Erzeugt aus einer Funktionen in einer Variablen (x-Achse) eine Punktmatrix der Funktionswerte (y-Achse). pvfunc(funktion,variable,minx,maxx,deltax) || pvfunc(x^2,x,-2,2,0.5) || [[−2,4],[−1.5,2.25],[−1,1],[−0.5,0.25],[0,0],[0.5,0.25],[1,1],[1.5,2.25]] || 6080&lt;br /&gt;
|-&lt;br /&gt;
| pvcompare || Vergleicht einen Referenz-Linienzug mit einem eingegebenen Linienzug unter Berücksichtigung der Toleranz.&amp;lt;br&amp;gt; pvcompare(Referenz,Eingabe)&amp;lt;br&amp;gt; pvcompare(Referenz,Eingabe,Toleranz)&amp;lt;br&amp;gt; pvcompare(Referenz,Eingabe,MinX,MaxX,MinY,MaxY) &amp;lt;br&amp;gt; pvcompare(Referenz,Eingabe,MinX,MaxX,MinY,MaxY,Toleranz) || pvcompare([[0,0],[1,1],[2,1],[3,0]],[[0,0],[1,1],[2,1],[3,0]],0,3,-5,5) || true  || 6080&lt;br /&gt;
|-&lt;br /&gt;
| pvunion || hängt mehrere Punktevektoren zu einem größereren Punktevektor zusammen || pvunion([[1,2],[3,4]],[[5,6],[7,8]],[9,10]) || [[1,2],[3,4],[5,6],[7,8],[9,10]] || 6569&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Typ-Funktionen===&lt;br /&gt;
Werden nur dann ausgewertet wenn der Parameter ein numerischer Wert oder eine Menge ist.&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| isset || Prüft ob es sich um eine Menge handelt. || isset([12,13,14]) || true &lt;br /&gt;
|-&lt;br /&gt;
| issetnumeric || Prüft ob es sich um eine Menge aus reellen Zahlen handelt. || issetnumeric([12,13.4,14]) || true &lt;br /&gt;
|-&lt;br /&gt;
| issetlong || Prüft ob es sich um eine Menge aus ganzen Zahlen handelt. || issetlong([12,13,14]) || true &lt;br /&gt;
|-&lt;br /&gt;
| islong || Prüft ob es sich um eine ganze Zahl handelt. || islong(12) || true &lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Algebra===&lt;br /&gt;
====Index von Matrizen====&lt;br /&gt;
* Als Parameter von Matrix-, PV- und Vektor-&#039;&#039;&#039;Funktion&#039;&#039;&#039; beginnt der Index immer &#039;&#039;&#039;bei 0 zu zählen&#039;&#039;&#039;.&lt;br /&gt;
* Greift man über den Namen und &#039;&#039;&#039;eckige Klammer&#039;&#039;&#039; auf den Index zu wird der Maxima-kompatible Index verwendet welcher &#039;&#039;&#039;bei 1 zu zählen&#039;&#039;&#039; beginnt.&lt;br /&gt;
Beispiel:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
M:[[1,2,3],[4,5,6],[7,8,9]]&lt;br /&gt;
a:vget(M,1,2)&lt;br /&gt;
b:M[2,3]&lt;br /&gt;
c:M[2][3]&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
a,b,c liefert immer das gleiche Element der Matrix!&lt;br /&gt;
&lt;br /&gt;
====Funktionen====&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| matrix || erzeugt aus mehreren gleich langen Vektoren eine Matrix || matrix([1,2],[3,4]) || [[1,2],[3,4]]&lt;br /&gt;
|-&lt;br /&gt;
| inv || invertiert eine quadratische Matrix oder bildet 1/x || inv(matrix([1,2],[3,4])) || [[-2,1],[3/2,-1/2]]&lt;br /&gt;
|-&lt;br /&gt;
| vget || liefert ein Element eines Vektors oder einer Matrix [https://www.youtube.com/watch?v=T82YIt3e8ac Video] || vget([12,13,14],1) &amp;lt;br&amp;gt; vget(matrix([9,2],[3,4]),0,1) || 13 &amp;lt;br&amp;gt; 2 &lt;br /&gt;
|-&lt;br /&gt;
| first || liefert das erste Element mit dem Index 0 eines Vektors || first([12,13,14]) || 12&lt;br /&gt;
|-&lt;br /&gt;
| second || liefert das zweite Element mit dem Index 1 eines Vektors || second([12,13,14]) || 13&lt;br /&gt;
|- &lt;br /&gt;
| third|| liefert das dritte Element mit dem Index 2 eines Vektors || third([12,13,14]) || 14&lt;br /&gt;
|-&lt;br /&gt;
| fourth || liefert das vierte Element mit dem Index 3 eines Vektors || fourth ([12,13,14,15,16,17,18]) || 15&lt;br /&gt;
|-&lt;br /&gt;
| fifth || liefert das fünfte Element mit dem Index 4 eines Vektors || fifth ([12,13,14,15,16,17,18]) || 16&lt;br /&gt;
|-&lt;br /&gt;
| sixth || liefert das sechste Element mit dem Index 5 eines Vektors || sixth ([12,13,14,15,16,17,18]) || 17&lt;br /&gt;
|-&lt;br /&gt;
| vgetmaxima || liefert ein Element eines Vektors oder einer Matrix wobei der Index (wie bei Maxima) bei 1 startet. || vgetmaxima([12,13,14],1) || 12 &lt;br /&gt;
|-&lt;br /&gt;
| vset || setzt ein Element eines Vektors oder einer Matrix || vset([12,13,14],1,35) &amp;lt;br&amp;gt; vset(matrix([9,2],[3,4]),0,0,-9) || [12,35,14] &amp;lt;br&amp;gt; [[-9,2],[3,4]]&lt;br /&gt;
|-&lt;br /&gt;
| vsetmaxima || setzt ein Element eines Vektors oder einer Matrix wobei der Index (wie bei Maxima) bei 1 startet. || vsetmaxima([12,13,14],1,35) || [35,13,14]&lt;br /&gt;
|-&lt;br /&gt;
| vinsert || fügt ein Element in einen Vektor an eine gegebene Stelle ein || vinsert([12,13,14],1,25) || [12,25,13,14]&lt;br /&gt;
|-&lt;br /&gt;
| vremove || löscht ein Element eines Vektors [https://www.youtube.com/watch?v=T82YIt3e8ac Video] || vremove([12,13,14],1) || [12,14]&lt;br /&gt;
|-&lt;br /&gt;
| vabs || Berechnet den Betrag eines Vektors || vabs([3,4]) || 5&lt;br /&gt;
|-&lt;br /&gt;
| vin || Berechnet das innere Produkt von 2 Vektoren || vin([1,2,3],[4,5,6]) || 32&lt;br /&gt;
|-&lt;br /&gt;
| vex || Berechnet das ex-Produkt von 2 Vektoren im 3-dimensionalen Raum || vex([1,2,3],[4,5,6]) || [-3,6,-3]&lt;br /&gt;
|-&lt;br /&gt;
| mrows || liefert die Anzahl der Zeilen einer Matrix || mrows([[3,4,4],[3,6,54,34,3,54]]) || 2&lt;br /&gt;
|-&lt;br /&gt;
| mcols || liefert die Anzahl der Spalten einer Matrix || mcols([[3,4,4],[3,6,54,34,3,54]]) || 6 &lt;br /&gt;
|- &lt;br /&gt;
| mprod || Bildet das Matrixprodukt aus zwei Matrizen || mprod([[1,2],[3,4]],[[5,6],[7,8]]) || [[19,22],[43,50]]&lt;br /&gt;
|-&lt;br /&gt;
| mtrans || Bildet die transponierte Matrix || mtrans([[1,2],[3,4]]) || [[1,3],[2,4]]&lt;br /&gt;
|-&lt;br /&gt;
| minv || Bildet die inverse Matrix || minv([[1,2],[3,4]]) || [[-2,1],[3/2,-1/2]]&lt;br /&gt;
|-&lt;br /&gt;
| mdet || Bildet die Determinante einer quadratischen Matrix || mdet([[1,2],[3,4]]) || -2&lt;br /&gt;
|-&lt;br /&gt;
| mcunion  || Fügt mehrere Matrizen oder Vektoren spaltenweise(nebeneinander) zusammen || mcunion([[1,2,3],[4,5,6],[7,8,9]],[[10,11],[12,13],[14,15]]) || [[1,2,3,10,11],[4,5,6,12,13],[7,8,9,14,15]]&lt;br /&gt;
|-&lt;br /&gt;
| mrunion  || Fügt mehrere Matrizen oder Vektoren zeileweise(untereinander) zusammen || mrunion([[1,2,3],[4,5,6],[7,8,9]],[[10,11,12],[13,14,15]]) || [[1,2,3],[4,5,6],[7,8,9],[10,11,12],[13,14,15]]&lt;br /&gt;
|-&lt;br /&gt;
| msub     || msub(matrix,zeile,spalte,zeilen,spalten) Liefert eine Untermatrix beginnend bei Zeile und Spalten mit der angegebenen Anzahl von Zeilen und Spalten. Die Parameter Spalte,Zeilen und Spalten sind dabei optional. || msub([[1,2,3],[4,5,6],[7,8,9]],0,1,2,2) || [[2,3],[5,6]]&lt;br /&gt;
|-&lt;br /&gt;
| mcinsert || mcinsert(matrix,matrixodervektor,position) Fügt an der Spaltenposition eine Matrix oder einen Vektor als neue Spalten ein || mcinsert([[1,2,3],[4,5,6],[7,8,9]],[[10,11],[12,13],[14,15]],1) || [[1,10,11,2,3],[4,12,13,5,6],[7,14,15,8,9]]&lt;br /&gt;
|-&lt;br /&gt;
| mrinsert || mrinsert(matrix,matrixodervektor,position) Fügt an der Zeilenposition eine Matrix oder einen Vektor als neue Zeilen ein || mrinsert([[1,2,3],[4,5,6],[7,8,9]],[[10,11,12],[13,14,15]],1) || [[1,2,3],[10,11,12],[13,14,15],[4,5,6],[7,8,9]]&lt;br /&gt;
|-&lt;br /&gt;
| mcdelete || mcdelete(matrix,position) Löscht die angegebene Spalte aus einer Matrix || mcdelete([[1,2,3],[4,5,6],[7,8,9]],1) || [[1,3],[4,6],[7,9]] &lt;br /&gt;
|-&lt;br /&gt;
| mrdelete || mrdelete(matrix,position) Löscht die angegebene Zeile aus einer Matrix || mrdelete([[1,2,3],[4,5,6],[7,8,9]],1) || [[1,2,3],[7,8,9]]&lt;br /&gt;
|-&lt;br /&gt;
| vindex || vindex(v,x) liefert den Index des Elementes eines Vektors, welcher am nächsten bei x liegt || vindex([10,30,70],40) || 1 &lt;br /&gt;
|-&lt;br /&gt;
| vindexup || vindexup(v,x) liefert den Index des Elementes eines Vektors, welcher größer oder gleich x ist || vindexup([10,30,70],40) || 2 &lt;br /&gt;
|-&lt;br /&gt;
| vindexdown || vindexdown(v,x) liefert den Index des Elementes eines Vektors, welcher kleiner oder gleich x ist || vindexdown([10,30,70],60) || 1&lt;br /&gt;
|-&lt;br /&gt;
| verweis || verweis(M,x,n) liefert den Wert der n-ten Spalte (ohne Angabe von n die 2.Spalte) einer Matrix M wo x dem Wert in der ersten Spalte am nächsten liegt || verweis([[10,33],[20,77],[30,99]],21) || 77&lt;br /&gt;
|-&lt;br /&gt;
| verweisup || verweisup(M,x,n) liefert den Wert der n-ten Spalte (ohne Angabe von n die 2.Spalte) einer Matrix M wo x dem Wert in der ersten Spalte am nächsten liegt || verweisup([[10,33],[20,77],[30,99]],21) || 99&lt;br /&gt;
|-&lt;br /&gt;
| verweisdown || verweisdown(M,x,n) liefert den Wert der n-ten Spalte (ohne Angabe von n die 2.Spalte) einer Matrix M wo x dem Wert in der ersten Spalte am nächsten liegt || verweisdown([[10,33],[20,77],[30,99]],27,1) || 77&lt;br /&gt;
|-&lt;br /&gt;
| range || range(anzahl) liefert ein Feld von ganzzahligen Werten von 0 beginnend || range(5) || [0,1,2,3,4]&lt;br /&gt;
|-&lt;br /&gt;
| linspace || linspace(start,ende,anzahl) liefert ein Feld von Werte von Startwert bis Endwert mit gleichem Abstand || linspace(4,8,5) || [4,5,6,7,8]&lt;br /&gt;
|-&lt;br /&gt;
| logspace || logspace(start,ende,anzahl) liefert ein Feld von Werte von Startwert bis Endwert mit gleichem logarithmischen Abstand || logspace(10,10000,4) || [10,100,1000,10000]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Variable===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| kill || löscht Variable aus dem Variablenspeicher || kill(x,y) &amp;lt;br&amp;gt; kill(allbut(y)) &amp;lt;br&amp;gt; kill(all) || löscht die Variablen x und y &amp;lt;br&amp;gt; löscht alle Variablen mit Ausnahme von y &amp;lt;br&amp;gt; löscht alle Variable&lt;br /&gt;
|-&lt;br /&gt;
| allbut || Liefert eine Liste aller Variablen des Parsers als Menge(Vektor) mit Ausnahme der als Parameter angegebenen Variablen || allbut(x,y) || [a,b,c]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Auswertung und Programmierung===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis || Revision&lt;br /&gt;
|-&lt;br /&gt;
| ev || Auswertung eines Ausdruckes, als Parameter können Gleichungen angegeben werden, welche dann in den Ausdruck eingesetzt werden || ev(x*y,y=4) || x*4&lt;br /&gt;
|-&lt;br /&gt;
| evruntime || Auswertung eines Ausdruckes, als Parameter können Gleichungen angegeben werden, welche dann in den Ausdruck eingesetzt werden. Das &#039;&#039;&#039;Einsetzen erfolgt erst bei der Ergebnisberechnung&#039;&#039;&#039;! || evruntime(x*y,y=4) || x*4&lt;br /&gt;
|-&lt;br /&gt;
| [[nv]] || Auswertung eines Ausdruckes, als Parameter können Gleichungen angegeben werden, welche dann in den Ausdruck eingesetzt werden. Im Gegensatz zu ev werden bestehende Variable nur in den Gleichungen, aber nicht im Ausdruck selbst eingesetzt! || nv(x*y,y=4) || x*4&lt;br /&gt;
|-&lt;br /&gt;
| [[if]] || Bedingungsfunktion if(bedingung,wahrwert,falschwert) || if(4&amp;lt;6,10,12) || 10&lt;br /&gt;
|-&lt;br /&gt;
| [[if|wenn]] || Bedingungsfunktion wenn(bedingung,wahrwert,falschwert). Im Prinzip identisch wie if, jedoch kann if mit Maxima nicht verwendet werden. || wenn(4&amp;lt;6,10,12) || 10&lt;br /&gt;
|-&lt;br /&gt;
| plugin || Ruft die Berechnungsmethode des Plugins, welches als erster Stringparameter angegeben werden muss auf und übergibt die weiteren Parameter an die Berechnungsmethode des Plugins.  || plugin(&amp;quot;plugin1&amp;quot;,3) || führt die Berechnung des Plugins mit dem Namen &amp;quot;plugin1&amp;quot; mit dem Parameter 3 aus. &lt;br /&gt;
|-&lt;br /&gt;
| symbolic || Bei allen Variablen innerhalb von symbolic werden nur nicht-numerische Werte eingesetzt! Wird vor allem im Angabtext bei {= } verwendet || symbolic(x^2+2) || x^2+2&lt;br /&gt;
|-&lt;br /&gt;
| runtime || Bei dieser Funktion wird &#039;&#039;&#039;erst bei der Berechnung der Frageantwort, nach dem Einsetzen der Datensätze&#039;&#039;&#039; das &#039;&#039;&#039;komplette Maxima-Feld&#039;&#039;&#039; mit dem internen &#039;&#039;&#039;Parser&#039;&#039;&#039; durchgerechnet und danach der Parameter-Ausdruck berechnet. Dadurch kann man bei komplizierten Berechnungen eine sehr aufwendige symbolische Berechnung verhindern! || runtime(U) || &lt;br /&gt;
|-&lt;br /&gt;
| dataset || liefert alle Datensätze einer Datensatz-Definition in einem Vektor || dataset(x) || &lt;br /&gt;
|-&lt;br /&gt;
| parse || Wenn der Parameter ein String ist wird dieser String mit dem Parser interpretiert || parse(&amp;quot;2+3&amp;quot;) || 5&lt;br /&gt;
|-&lt;br /&gt;
| foreach || Führt für jedes Element einer Menge eine Berechnung aus und verbindet die Ergebnisse mit der Aggregatfunktion || foreach([2,-3,5,-6],p,cabs(p),&amp;quot;+&amp;quot;) || 16 || 6075 &lt;br /&gt;
|-&lt;br /&gt;
| pvforeachline || Führt für jedes Punktepaar einer Punktemenge eine Berechnung aus und verbindet die Ergebnisse mit der Aggregatfunktion || pvforeachline([[2,3],[4,5],[6,3],[-2,4]],p,pvlineabs(p),&amp;quot;+&amp;quot;) || 10.890684873 || 6075 &lt;br /&gt;
|-&lt;br /&gt;
| forloop || Führt eine Zählschleife aus forloop(Variable,Startwert,Wiederholbedingung,Inkrement,Ausdruck,Aggregatsfunktion). &amp;lt;br&amp;gt;Ohne Aggregatsfunktion wird ein Feld mit den Ergebnissen der Schleifeniterationen geliefert. || forloop(i,1,i&amp;lt;7,i++,i,&amp;quot;+&amp;quot;)&amp;lt;br&amp;gt;forloop(i,1,i&amp;lt;7,i:i+2,i) || 21&amp;lt;br&amp;gt;[1,3,5] || 6077&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Optimierung der Ausdrücke===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| opt   || Ausdruck wird vollständig optimiert, die Funktion wird ausgewertet und ist danach nicht mehr vorhanden. Nur bei der Verwendung des internen Parser sinnvoll. || opt(x+x) || 2*x&lt;br /&gt;
|-&lt;br /&gt;
| ratsimp || Ausdruck wird vollständig optimiert, die Funktion wird ausgewertet und ist danach nicht mehr vorhanden (wie opt, wird jedoch auch von Maxima ausgewertet) || ratsimp(x+x) || 2*x&lt;br /&gt;
|-&lt;br /&gt;
| noopt || Ausdruck wird nicht optimiert, bleibt also so erhalten wie angegeben. Die Funktion an sich geht aber verloren. || noopt(2+3) || 2+3&lt;br /&gt;
|-&lt;br /&gt;
| nopt || Ausdruck wird nicht optimiert, bleibt also so erhalten wie angegeben. Die Funktion bleibt erhalten und wird erst bei der Lösungsberechnung oder durch opt() entfernt. || noopt(2+3) || 2+3&lt;br /&gt;
|-&lt;br /&gt;
| lopt || Im Maximafeld bleibt die Funktion ohne Funktion erhalten, im Ergebnis {=  wird die Funktion entfernt und in der Lösung wird nach dem Einsetzen der Werte der Ausdruck vollständig optimiert. || lopt(x+3)  || lopt(x+3)  &lt;br /&gt;
|-&lt;br /&gt;
| lnoopt || Im Maximafeld bleibt die Funktion ohne Funktion erhalten, im Ergebnis {=  wird die Funktion entfernt und in der Lösung wird nach dem Einsetzen der Werte der Ausdruck nicht mehr optimiert. || lnoopt(x+3+2)  || lnoopt(x+5) &lt;br /&gt;
|-&lt;br /&gt;
| loptnumeric || Im Maximafeld bleibt die Funktion ohne Funktion erhalten, im Ergebnis {=  wird die Funktion entfernt und in der Lösung wird nach dem Einsetzen der Werte der Ausdruck nur numerisch optimiert. || loptnumeric(x+y)  || loptnumeric(x+y)&lt;br /&gt;
|-&lt;br /&gt;
| aopt || Bei Maxima und Lösung geht die Funktion verloren, nur innerhalb von noopt bleibt sie erhalten. Bei der Anzeige führt sie zur Optimierung das Ausdruckes nach Einsetzen der Datensätze. || aopt(x)  || x&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Anzeige und Lösungsberechnung===&lt;br /&gt;
Diese Funktionen haben entweder einen oder zwei Parameter. Der erste Parameter stellt die darzustellende Funktion dar, der zweite Parameter, welcher eine Ganzzahl sein muss, gibt an, wie die Darstellung erfolgen soll. Wird der 2.Parameter weggelassen, so wird er als 0 interpretiert.&lt;br /&gt;
* 0 Bei Berechnungen hat die Funktion keine Wirkung, bleibt aber als Funktion erhalten. Bei Lösung und Anzeige wird die Funktion ausgewertet&lt;br /&gt;
* 1 Wirkt nur bei Lösung, bei Berechnungen bleibt die Funktion erhalten&lt;br /&gt;
* 2 Wirkt nur bei Anzeige, bei Berechnungen bleibt die Funktion erhalten&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| viewpow || Gibt alle Wurzeln als Potenzen aus, und stellt alle Potenzen im Nenner als negativen Exponenten im Zähler dar || viewpow(sqrt(x)) || x^(1/2)&lt;br /&gt;
|-&lt;br /&gt;
| viewsqrt || Gibt Potenzen welche als Wurzel darstellbar sind auch als als Wurzeln mit der Funktion sqrt oder root aus || viewsqrt(x^(1/2)) || sqrt(x)&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Datums und Zeitfunktionen ===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis || REvision&lt;br /&gt;
|-&lt;br /&gt;
| dateparse || Wandelt einen String in ein Datum als Ganzzahl in Sekunden seit 1.1.0000 || || || 6530&lt;br /&gt;
|-&lt;br /&gt;
| date || date(y,m,d,h,min,sec) erzeugt ein Datum als Ganzzahl in Sekunden seit 1.1.000 || || || 6530&lt;br /&gt;
|-&lt;br /&gt;
| datestring || datestring(x) datestring(x,\&amp;quot;format\&amp;quot;) erzeugt aus einem Datum in Sekunden seit 1.1.0000 eine Stringausgabe || || || 6530&lt;br /&gt;
|-&lt;br /&gt;
| timestring || erzeugt eine Uhrzeit als String || || || 6530&lt;br /&gt;
|-&lt;br /&gt;
| datetimestring || erzeugt Datum und Uhrzeit als String || || || 6530&lt;br /&gt;
|-&lt;br /&gt;
| dateyear || Erzeugt aus einem Datum als Ganzzahl das Jahr || || || 6530&lt;br /&gt;
|-&lt;br /&gt;
| datemonth || Erzeugt aus einem Datum als Ganzzahl das Monat || || || 6530&lt;br /&gt;
|-&lt;br /&gt;
| dateday || Erzeugt aus einem Datum als Ganzzahl den Tag || || || 6530&lt;br /&gt;
|-&lt;br /&gt;
| datehour || Erzeugt aus einem Datum als Ganzzahl die Stunde || || || 6530&lt;br /&gt;
|-&lt;br /&gt;
| dateminute || Erzeugt aus einem Datum als Ganzzahl die Minute || || || 6530&lt;br /&gt;
|-&lt;br /&gt;
| datesecond || Erzeugt aus einem Datum als Ganzzahl die Sekunde || || || 6530&lt;br /&gt;
|-&lt;br /&gt;
| datediff || Rechnet die Differenz von 2 ganzzahligen Datumswerten. Erstes minus zweites Datum. Ergebnis als Double in Sekunden || || || 6530&lt;br /&gt;
|-&lt;br /&gt;
| dateweekday || Liefert den Wochentag beginnend mit Montag als 1 und Sonntag als 7 || || || 6530&lt;br /&gt;
|-&lt;br /&gt;
| dateweek || Liefert die Kalenderwoche des Tages innerhalb des Jahres || || || 6530&lt;br /&gt;
|-&lt;br /&gt;
| datedayofyear || Liefert den Tag des Jahres || || || 6530&lt;br /&gt;
|-&lt;br /&gt;
| years || Erzeugt aus einem Sekundenwert die Jahre (/365d) als Double ohne Einheit || || || 6530&lt;br /&gt;
|-&lt;br /&gt;
| months || Erzeugt aus einem Sekundenwert die Monate (/30d) als Double ohne Einheit || || || 6530&lt;br /&gt;
|-&lt;br /&gt;
| weeks || Erzeugt aus einem Sekundenwert die Wochen (/7d) als Double ohne Einheit || || || 6530&lt;br /&gt;
|-&lt;br /&gt;
| days || Erzeugt aus einem Sekundenwert die Tage als Double ohne Einheit || || || 6530&lt;br /&gt;
|-&lt;br /&gt;
| hours || Erzeugt aus einem Sekundenwert die Stunden als Double ohne Einheit || || || 6530&lt;br /&gt;
|-&lt;br /&gt;
| minutes || Erzeugt aus einem Sekundenwert die Minuten als Double ohne Einheit || || || 6530&lt;br /&gt;
|-&lt;br /&gt;
| seconds || Erzeugt aus einem Sekundenwert die Sekunden als Double ohne Einheit || || || 6530&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Spezialfunktionen LeTTo ===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| points || Berechnet die erreichbare Gesamtpunkteanzahl einer Frage || points() || 2&lt;br /&gt;
|-&lt;br /&gt;
| points || Berechnet die erreichbare Punkteanzahl einer Teilfrage. Als Parameter wird die Fragenummer als Ganzzahl angegeben. || points(0) || 1&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Spezialfunktionen Technik===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| color || Widerstandsfarbcode berechnen.&amp;lt;br&amp;gt;1. Parameter muss ein Double sein&amp;lt;br&amp;gt; 2. Parameter sind die Anzahl der Farbringe&amp;lt;br&amp;gt; 3. Parameter ist der Darstellungsmodus (0 = Deutsch ausgeschrieben, 1 = Abkürzung Deutsch mit drei Buchstaben, 2 = Abkürzung Deutsch mit zwei Buchstaben, 3 = Englisch ausgeschrieben, 4 = Abkürzung Englisch mit drei Buchstaben, 5 = Abkürzung Englisch mit zwei Buchstaben) || color(120,3,0) || braun,rot,braun&lt;br /&gt;
|-&lt;br /&gt;
| parsecolor || Wandelt einen String mit einem Widerstandsfarbcode in einen Double-Wert || parsecolor(&amp;quot;br-rt-br&amp;quot;) || 120&lt;br /&gt;
|-&lt;br /&gt;
| ip || Wandelt eine Long-Zahl in einen String als IP-Adresse um, oder 4 Byte-Zahlen in eine Long Zahl als IP-32-bit-Adresse || ip(1534536453)&amp;lt;br&amp;gt;ip(10,20,30,40) || &amp;quot;91.119.43.5&amp;quot;&amp;lt;br&amp;gt;169090600&lt;br /&gt;
|-&lt;br /&gt;
| parseip || Wandelt einen String mit einer IP-Adresse in einen Long-Wert || parseip(&amp;quot;91.119.43.5&amp;quot;) || 1534536453&lt;br /&gt;
|-&lt;br /&gt;
| e12 || rundet einen Zahlenwert auf den nächstliegenden Wert der [[Normreihe]] E12.&amp;lt;br&amp;gt;Die Rundung erfolgt geometrisch d.h. der Quotient zwischen Normwert und zu rundendem Wert wird minimiert. || e12(700Ohm) || 680Ohm&lt;br /&gt;
|-&lt;br /&gt;
| e12up || rundet einen Zahlenwert auf den nächstgrößerern Wert der [[Normreihe]] E12 || e12(670Ohm) || 680Ohm&lt;br /&gt;
|-&lt;br /&gt;
| e12down || rundet einen Zahlenwert auf den nächstkleineren Wert der [[Normreihe]] E12 || e12(700Ohm) || 680Ohm&lt;br /&gt;
|-&lt;br /&gt;
| ise12 || prüft ob der als Parameter übergebenen Wert ein Wert der [[Normreihe]] E12 ist.|| ise12(680Ohm) || true&lt;br /&gt;
|-&lt;br /&gt;
| norm || rundet einen Zahlenwert auf den nächstliegenden Wert einer gegebenen Wertereihe oder [[Normreihe]].&amp;lt;br&amp;gt;Die Rundung erfolgt geometrisch wenn es sich um eine logarithmisch aufgeteilte Normreihe handelt, oder sonst linear. || norm(700Ohm,E12) || 680Ohm&lt;br /&gt;
|-&lt;br /&gt;
| normup || rundet einen Zahlenwert auf den nächstgrößerern Wert einer gegebenen Wertereihe oder [[Normreihe]]. || normup(730Ohm,[1,3,5,8]) || 800Ohm&lt;br /&gt;
|-&lt;br /&gt;
| normdown || rundet einen Zahlenwert auf den nächstkleineren Wert einer gegebenen Wertereihe oder [[Normreihe]]. || normdown(700Ohm,E12) || 680Ohm&lt;br /&gt;
|-&lt;br /&gt;
| isnorm || prüft ob der als Parameter übergebenen Wert ein Wert einer gegebenen Wertereihe oder [[Normreihe]] ist. || isnorm(680Ohm,E12) || true&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Raumzeiger für elektrische Maschinen===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| [[svphtosv]](a,b,c) || berechnet aus den Stranggrößen (a,b,c) einen komplexen Raumzeiger || svphtosv(0.5,0.5,-1) || 1arg60°&lt;br /&gt;
|-&lt;br /&gt;
| [[svsvtoph]](sv)&amp;lt;br&amp;gt;svsvtoph(sv,index) || berechnet aus einem komplexen Raumzeiger die Stranggrössen &amp;lt;br&amp;gt; berechnet aus einem komplexen Raumzeiger die Stranggrössen, index selektiert Stranggröße als Rückgabewert || svsvtoph(1arg60°)&amp;lt;br&amp;gt; svsvtoph(1arg60°,3)|| [0.5,0.5,-1] &amp;lt;br&amp;gt; -1&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=Probleme mit großen Gleichungssystemen=&lt;br /&gt;
Bei der Verwendung von Plugins (zB: Drehstromplugin) können sehr rasch sehr große Gleichungssysteme entstehen. Der Standard-Lösungsweg, dass die Gleichungen algebraisch aufgelöst werden und dann zur Laufzeit die Werte eingesetzt werden, kann somit sehr lange Berechnungszeiten nach sich ziehen. Effizienter ist es, das Gleichungssystem zur Laufzeit mit eingesetzten Zahlen zu rechnen.&lt;br /&gt;
&lt;br /&gt;
Dazu gibt es die Möglichkeit, in der Frage das Häkchen Vorberechnung auszuwählen, dann werden die Ergebnisse erst zur Laufzeit gerechnet.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Achtung:&#039;&#039;&#039; Der Parser hat Probleme mit der Berechnung von großen Gleichungssystemen. Es sollte daher zur Laufzeit bei der Verwendung von Drehstrom-Plugins mit Maxima gerechnet werden.&lt;br /&gt;
Dabei werden allerdings alle Einheiten entfernt und können wieder über .... zu den entsprechenden Formelzeichen hinzugefügt werden. Bedenken Sie aber, dass die Einheiten bei Berechnung mit Maxima zur Laufzeit prinzipiell verloren gehen.&lt;br /&gt;
&lt;br /&gt;
=Ergebnisvorschau=&lt;br /&gt;
Aufruf dieses Dialoges über den [[Datei:ClipCapIt-180904-181443.PNG|25px]]-Button aus dem [[Toolbar]].&lt;br /&gt;
&lt;br /&gt;
Die Berechnungen aus dem Maxima-Feld bei der [[Beispiele Bearbeiten|Fragendefinition]] können auch über den [[Datei:ClipCapIt-180904-182120.PNG|25px]]-Button durchgeführt werden. Hier wird die Berechnung durchgeführt und das Lösungsfeld ausgefüllt, aber der Rechengang wird nicht angezeigt. &lt;br /&gt;
:[[Datei:ClipCapIt-180904-181415.PNG|400px]]&lt;br /&gt;
&lt;br /&gt;
Beim Fehlersuchen oder bei komplexen Berechnungen kann es aber hilfreich sein, den ganzen Maxima-Lösungsweg zu sehen, dies ist über den [[Datei:ClipCapIt-180904-181443.PNG|25px]]-Button möchlich.&lt;br /&gt;
&lt;br /&gt;
[[Kategorie:Berechnung]]&lt;/div&gt;</summary>
		<author><name>Ckral</name></author>
	</entry>
	<entry>
		<id>https://wiki.letto.at/wiki/index.php?title=Berechnungen&amp;diff=3242</id>
		<title>Berechnungen</title>
		<link rel="alternate" type="text/html" href="https://wiki.letto.at/wiki/index.php?title=Berechnungen&amp;diff=3242"/>
		<updated>2022-11-10T11:08:31Z</updated>

		<summary type="html">&lt;p&gt;Ckral: Formulierung verbessert&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Allgemeines =&lt;br /&gt;
Berechnungen werden in mehreren Bereichen der Frageerstellung verwendet und bilden die Basis für [[Fragetypen#Berechnungsfrage|Berechnungsfrage]] und [[Fragetypen#Mehrfachberechnungsfrage|Mehrfachberechnungsfrage]].&lt;br /&gt;
&lt;br /&gt;
Alle Berechnungen unterstützen [[Einheit|Einheiten]] und symbolische Auswertung.&lt;br /&gt;
&lt;br /&gt;
=Grundsätzlicher Aufbau der Ergebnis-Berechnung bei Fragen mit Berechnungen=&lt;br /&gt;
[[Datei:BerechnungSchema.png|mini|hochkant=2.0|Schema der Berechnung]]&lt;br /&gt;
Die Berechnung und die Beurteilung einer Frage teilt sich in 3 grundsätzliche Schritte:&lt;br /&gt;
* Berechnnug der geschlossenen Lösung (Formel) aus den Maxima-Feldern &lt;br /&gt;
* Berechnung des Ergebnisses einer Frage durch Einsetzen der Zahlenwerte aus den Datensätzen in die geschlossene Lösung&lt;br /&gt;
* Beurteilung der Schülereingabe durch Vergleich mit dem Ergebnis&lt;br /&gt;
&lt;br /&gt;
=Konstante=&lt;br /&gt;
Alle Konstante welche in Letto definiert sind beginnen mit einem Prozentzeichen. Verwendet man den Variablennamen ohne Prozenzzeichen, so wird die Konstante wie eine Variable mit dem Wert der Konstanten verwendet.&lt;br /&gt;
&lt;br /&gt;
Liste der definierten Konstanten:&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%&amp;quot; &lt;br /&gt;
| Name || Wert || Beschreibung&lt;br /&gt;
|-&lt;br /&gt;
| %i || i || komplexer Parameter als Lösung der Gleichung x^2=-1&lt;br /&gt;
|-&lt;br /&gt;
| %j || i || komplexer Parameter als Lösung der Gleichung x^2=-1&amp;lt;br&amp;gt;&amp;lt;b&amp;gt;Wichtig:&amp;lt;/b&amp;gt; Wir nur vom Parser unterstützt, nicht von Maxima&lt;br /&gt;
|-&lt;br /&gt;
| %e || 2.718281828459045 || Eulersche Zahl &lt;br /&gt;
|-&lt;br /&gt;
| %pi || 3.141592653589793 || Kreiszahl&lt;br /&gt;
|-&lt;br /&gt;
| %mu0 || magnetische Feldkonstante || 4*%pi*1E-7&#039;Vs/Am&#039;&lt;br /&gt;
|-&lt;br /&gt;
| %m0 || magnetische Feldkonstante (alt, wird bald entfernt werden) || 4*%pi*1E-7&#039;Vs/Am&#039;&lt;br /&gt;
|-&lt;br /&gt;
| %epsilon0 || elektrische Feldkonstante || 8.85418781762039E-12&#039;As/Vm&#039;&lt;br /&gt;
|-&lt;br /&gt;
| %e0 || elektrische Feldkonstante (alt, wird bald entfernt werden) || 8.85418781762039E-12&#039;As/Vm&#039;&lt;br /&gt;
|-&lt;br /&gt;
| %c0 || Lichtgeschwindigkeit || 299792458&#039;m/s&#039;&lt;br /&gt;
|-&lt;br /&gt;
| %Qe || Elementarladung || 1.602176620898E-19As&lt;br /&gt;
|-&lt;br /&gt;
| %g  || Erdbeschleunigung || 9.81&#039;m/s^2&#039;&lt;br /&gt;
|-&lt;br /&gt;
| %NA || Avogadro Konstante || 6.02214085774E23/mol&lt;br /&gt;
|-&lt;br /&gt;
| %k  || Stefan Bolzman Konstante || 1.3806485279E-23&#039;J/K&#039;&lt;br /&gt;
|-&lt;br /&gt;
| %R0 || Universelle Gaskonstante || 8.314459848&#039;J/Kmol&#039;&lt;br /&gt;
|-&lt;br /&gt;
| %h || planksches Wirkungsquantum || 6.6260704081E-34Js&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=Berechnung mit Maxima=&lt;br /&gt;
* Maxima wird &#039;&#039;&#039;nur für symbolische Berechnungen&#039;&#039;&#039; bei der Erstellung von Beispielen verwendet. Hierbei wird, wie schon oberhalb im Schema angegeben, zuerst die Moodle.mac geladen, dann das [[Beispielsammlung Editieren#Maxima-Feld|Maxima-Feld]] berechnet und anschließend die Maxima-Felder aller Teilfragen. Das Ergebnis der Berechnung wird dann als symbolischer Ausdruck im Lösungfeld eingetragen.&lt;br /&gt;
* Da zum Zeitpunkt der &#039;&#039;&#039;Maxima-Berechnung keine Datensätze&#039;&#039;&#039; vorhanden sind, kann keine numerische Berechnung in Maxima durchgeführt werden, welche die [[Datensätze]] benötigt. Dies muss der interne Parser zum Zeitpunkt des Online-Test-Laufes erledigen. Numerische Berechnungen, welche der interne Parser nicht kann können deshalb auch nicht mit Maxima berechnet werden.&lt;br /&gt;
* Da das Lösungsfeld, welches mit Maxima berechnet wird symbolisch ausgewertet wird, können in Maxima sämtliche symbolischen Berechnungsverfahren angewendet werden, welche ein symbolisches Ergebnis liefern und keine numerischen Werte der Datensätze benötigen.&lt;br /&gt;
* Reicht im Maximafeld die Zeilenlänge nicht aus ist es möglich einen defninierten Zeilenumbruch zu realisieren. Schreiben Sie dazu &amp;quot;\&amp;quot; (einfacher Backslash) am Ende der Zeile.  &lt;br /&gt;
* &#039;&#039;&#039;Funktionsdeklarationen&#039;&#039;&#039; wie &#039;&#039;&#039;f(x):=&#039;&#039;&#039;x^2 mit Doppelpunkt-Ist-Gleich sind im Maxima-Feld nur eingeschränkt bis gar &#039;&#039;&#039;nicht verwendbar&#039;&#039;&#039;, da sie vom Parser nicht unterstützt werden.&lt;br /&gt;
* &#039;&#039;&#039;Mengen von Maxima&#039;&#039;&#039; sind in LeTTo n&#039;&#039;&#039;icht verwendbar&#039;&#039;&#039;. LeTTo verwender hierzu eigene Funktionen des Parsers welche mit &amp;quot;set&amp;quot; beginnen und auf Vektoren basieren.&lt;br /&gt;
&lt;br /&gt;
=Berechnung mit dem internen Parser=&lt;br /&gt;
* Der interne Parser kann durch Wahl der Checkbox &amp;quot;Parser&amp;quot; anstatt von Maxima für die Berechnung des Maxima-Feldes verwendet werden. &lt;br /&gt;
* Jedenfalls wird der Parser zur Test-Laufzeit für die Berechnung des Ergebnisses einer Frage aus Lösung und Datensätzen und zum Berechnen der Schülereingabe verwendet.&lt;br /&gt;
&lt;br /&gt;
==Operatoren==&lt;br /&gt;
=== VORSICHT mit MAXIMA ===&lt;br /&gt;
* Einige Operatoren sind in &#039;&#039;&#039;Maxima anders&#039;&#039;&#039;, oder &#039;&#039;&#039;nicht definiert&#039;&#039;&#039;. Möchte man im Maximafeld die Operatoren des Parsers-verwenden, so muss das gesamte Maxima-Feld &#039;&#039;&#039;mit dem Parser gerechnet&#039;&#039;&#039; werden. Man verliert dadurch jedoch die Vorteile der Maxima-Berechnung.&lt;br /&gt;
* Alternativ kann man statt der Operatoren auch &#039;&#039;&#039;Funktionen verwenden&#039;&#039;&#039; (zB: ne() statt != ). Diese werden dann von Maxima zwar nicht ausgewertet, die Berechnung bleibt aber trotzdem korrekt und kann mit Maxima durchgeführt werden.&lt;br /&gt;
* Es gibt einige Funktionen welche in &#039;&#039;&#039;Maxima existieren&#039;&#039;&#039; aber im &#039;&#039;&#039;Parser nicht, oder mit anderem Syntax&#039;&#039;&#039;.&lt;br /&gt;
** Wenn diese von Maxima nicht ausgewertet werden können, da sie &#039;&#039;&#039;Datensätze&#039;&#039;&#039; enthalten welche zu Auswertezeitpunkt von Maxima noch &#039;&#039;&#039;nicht mit Werten belegt&#039;&#039;&#039; sind, &#039;&#039;&#039;dürfen sie in der Berechnung nicht verwendet werden&#039;&#039;&#039;, da der Parser dann damit nichts anfangen kann.&lt;br /&gt;
** Solche Funktionen haben entweder im Parser eine alternative Schreibweise welche auch mit Maxima verwendet werden kann (z.B.: wenn), oder sie können prinzipell nicht verwendet werden. (Für wichtige Funktionsweisen könnte man in zukünftigen Versionen neue Funktionalitäten in den Parser einbauen, die die gewünschte Funktion erfüllen)&lt;br /&gt;
** Ein weiter Möglichkeit für die Verwendung solcher Funktionen ist der Verzicht auf Datensätze in diesen Funktionen, damit diese Funktion beim Auswerten des Maxima-Feldes bereits ausgewertet werden kann und somit der Parser davon nichts mehr sieht.&lt;br /&gt;
** zB:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
if then&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Infix Operatoren===&lt;br /&gt;
====arithmetische Operatoren====&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Operator || Priorität || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| + || 40 || Addition || 4+5 || 9 &lt;br /&gt;
|-&lt;br /&gt;
| - || 40 || Subtraktion || 6-2 || 4&lt;br /&gt;
|-&lt;br /&gt;
| * || 50 || Multiplikation || 4*5 || 20&lt;br /&gt;
|-&lt;br /&gt;
| / || 51 || Division || 20/4 || 5&lt;br /&gt;
|-&lt;br /&gt;
| % || 51 || Divisionsrest || 104%20 || 4&lt;br /&gt;
|-&lt;br /&gt;
| / / || 60 || Parallelschaltung || x / / y || x*y/(x+y)&lt;br /&gt;
|-&lt;br /&gt;
| ^ || 90 || Potenz || 2^3 || 8&lt;br /&gt;
|-&lt;br /&gt;
| .*. || 200 || Operator der intern für eine fehlende bindende Multiplikation verwendet wird || 4x || 4*x&lt;br /&gt;
|-&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
====Bitoperatoren====&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Operator || Priorität || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
||  |  || 20 || Bitweise oder logisches ODER ||| 9|5 &amp;lt;br&amp;gt; true|false || 13 &amp;lt;br&amp;gt;true&lt;br /&gt;
|-&lt;br /&gt;
| or || 20 || Bitweise oder logisches ODER || 9 or 5 || 13&lt;br /&gt;
|-&lt;br /&gt;
| &amp;amp;  || 21 || Bitweise oder logisches UND  || 13&amp;amp;10 || 8&lt;br /&gt;
|-&lt;br /&gt;
| and || 21 || Bitweise oder logisches UND  || 13 and 10 || 8&lt;br /&gt;
|-&lt;br /&gt;
| xor || 22 || Bitweise oder logisches exklusiv oder XOR  || 13 xor 10 || 7&lt;br /&gt;
|-&lt;br /&gt;
| imp || 23 || Bitweise oder logisches impliziert IMP || 13 imp 10 || 8&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;&amp;lt;  || 35 || Bitweise links schieben  || 5&amp;lt;&amp;lt;2 || 20&lt;br /&gt;
|-&lt;br /&gt;
| &amp;gt;&amp;gt;  || 35 || Bitweise rechts schieben || 8&amp;gt;&amp;gt;2 || 2&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
====Vergleichsoperatoren====&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Operator || Priorität || Beschreibung || Beispiel&lt;br /&gt;
|-&lt;br /&gt;
| =  || 3 || Gleichungsoperator || x=y&lt;br /&gt;
|-&lt;br /&gt;
| == || 30 || Gleichungsoperator || x==y&lt;br /&gt;
|-&lt;br /&gt;
| != || 30 || Ungleichungsoperator || x!=y&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt; || 32 || Kleiner || x&amp;lt;y&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;= || 32 || Kleiner gleich || x&amp;lt;=y&lt;br /&gt;
|-&lt;br /&gt;
| &amp;gt; || 32 || größer || x&amp;gt;y&lt;br /&gt;
|-&lt;br /&gt;
| &amp;gt;= || 32 || größer gleich || x&amp;gt;=y&lt;br /&gt;
|}&lt;br /&gt;
====Organisative Operatoren====&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Operator || Priorität || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| , || 0 || Listen-Trennzeichen || x,y ||&lt;br /&gt;
|-&lt;br /&gt;
| $ || 1 || Trennzeichen zwischen mehreren Berechnungen || ||&lt;br /&gt;
|-&lt;br /&gt;
| ; || 1 || Trennzeichen zwischen mehreren Berechnungen || ||&lt;br /&gt;
|-&lt;br /&gt;
| : || 2 || Zuweisung an eine Variablen auf der linken Seite || x:5 || &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Prefix Operatoren===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Operator || Priorität || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| + || 45 || positives Vorzeichen || +5 || 5&lt;br /&gt;
|-&lt;br /&gt;
| - || 45 || negatives Vorzeichen || -(-5) || 5&lt;br /&gt;
|-&lt;br /&gt;
| ~ || 95  || bitweise Inversion einer 64bit-Ganzzahl || ~0x0F0F || 0xFFFFFFFFFFFFF0F0&lt;br /&gt;
|-&lt;br /&gt;
| ! || 120 || logisches NOT || !(3&amp;lt;4) || false&lt;br /&gt;
|-&lt;br /&gt;
| ++ || 130 || Inkrement von Ganzzahlen || ++x || erhöht x um eins und gibt das Ergebnis nach der Erhöhung zurück&lt;br /&gt;
|-&lt;br /&gt;
| -- || 130 || Dekrement von Ganzzahlen || --x || vermindert x um eins und gibt das Ergebnis nach der Verminderung zurück&lt;br /&gt;
|-&lt;br /&gt;
| % || 200 || Prefix für Namen, welche als Konstante definiert sind || %pi || 3.141592653589793&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Suffix Operatoren===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Operator || Priorität || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| ++ || 135 || Inkrement von Ganzzahlen || x++ || erhöht x um eins und gibt den Variablenwert vor der Erhöhung zurück&lt;br /&gt;
|-&lt;br /&gt;
| -- || 135 || Dekrement von Ganzzahlen || x-- || vermindert x um eins und gibt den Variablenwert vor der Verminderung zurück&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==Klammern==&lt;br /&gt;
* () runde Klammern werden für mathematische Ausdrücke zur Klammerung verwendet&lt;br /&gt;
* {} geschwungene Klammer werden im Angabetext für die Namen der Datensätze verwendet&lt;br /&gt;
* [] eckige Klammern werden für Vektoren und Matrizen verwendet&lt;br /&gt;
&lt;br /&gt;
==Funktionen==&lt;br /&gt;
===Funktionen für Ganzzahlen===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| band || bitweises UND || band(4,12) || 4&lt;br /&gt;
|-&lt;br /&gt;
| bor  || bitweises ODER || bor(4,1) || 5&lt;br /&gt;
|-&lt;br /&gt;
| bxor || bitweises EXKLUSIV ODER || band(4,5) || 1&lt;br /&gt;
|-&lt;br /&gt;
| bimp || bitweises Parameter1 impliziert Parameter2 || bimp(13,10) || 8&lt;br /&gt;
|-&lt;br /&gt;
| binv || bitweises NICHT mit 8 bit || binv(0x0F) || 0xF0&lt;br /&gt;
|-&lt;br /&gt;
| shl || Schiebe Ganzzahl bitweise nach links || shl(8,2) || 32&lt;br /&gt;
|-&lt;br /&gt;
| shr || Schiebe Ganzzahl bitweise nach rechts || shr(8,2) || 2&lt;br /&gt;
|-&lt;br /&gt;
| div || Ganzzahldivision, Ergebnis wird abgeschnitten || div(5,2) || 2&lt;br /&gt;
|-&lt;br /&gt;
| inv8  || bitweise Invertieren und die letzten 8 Bit bestimmen  || inv8(0b1001) || 0b11110110&lt;br /&gt;
|-&lt;br /&gt;
| inv16 || bitweise Invertieren und die letzten 16 Bit bestimmen || inv16(0xF0)  || 0xFF0F&lt;br /&gt;
|-&lt;br /&gt;
| inv32 || bitweise Invertieren und die letzten 32 Bit bestimmen || inv32(0xF0)  || 0bFFFFFF0F&lt;br /&gt;
|-&lt;br /&gt;
| inv64 || bitweise Invertieren und die letzten 64 Bit bestimmen || inv64(0xF0)  || 0bFFFFFFFFFFFFFF0F&lt;br /&gt;
|-&lt;br /&gt;
| byte  || Zahl in eine Ganzzahl wandeln und die letzten 8bit der Zahl Abschneiden, Einheit geht verloren  || byte(34.2) || 34&lt;br /&gt;
|-&lt;br /&gt;
| word  || Zahl in eine Ganzzahl wandeln und die letzten 16bit der Zahl Abschneiden, Einheit geht verloren || word(34.2) || 34&lt;br /&gt;
|-&lt;br /&gt;
| int   || Zahl in eine Ganzzahl wandeln und die letzten 32bit der Zahl Abschneiden, Einheit geht verloren || int(34.2) || 34&lt;br /&gt;
|-&lt;br /&gt;
| long  || Zahl in eine Ganzzahl wandeln , Einheit geht verloren || long(34.2) || 34&lt;br /&gt;
|-&lt;br /&gt;
| [[parity]]  || Paritätsberechnung : parity(Parität,Codewortlänge,Datenwort[,Datenwort,....]) || parity(even,7,&amp;quot;xy&amp;quot;) || &lt;br /&gt;
|-&lt;br /&gt;
| [[blockparity]]  || Kreuz oder Blockparität : blockparity(Parität,Codewortlänge,Codewortanzahl,Datenwort[,Datenwort,....]) || blockparity(even,7,3,&amp;quot;abc&amp;quot;) || &lt;br /&gt;
|-&lt;br /&gt;
| [[bcd]]  || Wandelt in eine Long-Zahl in ein Feld aus BCD-kodierten Zahlen um || bcd(124) || [1,2,4]&lt;br /&gt;
|-&lt;br /&gt;
| [[code]] || Code aus mehreren Codeworten zusammensetzen : code(Codewortlänge,Datenwort[,Datenwort,....]) || code(5,4,3,5) || 0b1000001100101&lt;br /&gt;
|-&lt;br /&gt;
| [[hamming]] || Bestimmt den Hamming-Abstand von mehreren Codeworten || hamming(1,2,4,8,16) || 2&lt;br /&gt;
|-&lt;br /&gt;
| [[komplement]] ||  Bildet das Zweierkomplement mit einer negativen Zahl mit einer bestimmten Bitanzahl, fehlt die Bitanzahl, so wird ein 32Bit-2er-komplement gebildet || komplement(-5,8) || 0b11111011&lt;br /&gt;
|-&lt;br /&gt;
| [[bitstream]] || Erzeugt aus einer Ganzzahl einen Bitstrom als String mit einer definierten Anzahl von Bit (MSB werden nötigenfalls mit 0 gefüllt) : bitstream(Daten,Bitanzahl) || bitstream(0x184,12) || &amp;quot;000110000100&amp;quot;&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Funktionen für rationale und Ganzzahlen===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| kgV || berechnet das kleinste gemeinsame Vielfache von mehreren Zahlen || kgV(3,10) || 30&lt;br /&gt;
|-&lt;br /&gt;
| ggT || berechnet den größten gemeinsamen Teiler von mehreren Zahlen || ggT(12,10) || 2&lt;br /&gt;
|- &lt;br /&gt;
| isprim || prüft ob die angegebene Zahl eine Primzahl ist || isprim(13) || true&lt;br /&gt;
|-&lt;br /&gt;
| prims || zerlegt eine Ganzzahl in ihre Primfaktoren || prims(12) || [2,2,3]&lt;br /&gt;
|-&lt;br /&gt;
| defracmix || zerlegt eine rationale Zahl in einen gemischten Bruch aus ganzzahligem Summanden, Zähler und Nenner als Menge&amp;lt;br&amp;gt;Die erhaltene Menge kann mit dem Format-Modfier &#039;&#039;&#039;frac&#039;&#039;&#039; als gemischter Bruch dargestellt werden (siehe [[Zahlendarstellung]]) || defracmix(14/12)&amp;lt;br&amp;gt;defracmix(-15/12)&amp;lt;br&amp;gt;defracmix(3/12) || [1,2/12]&amp;lt;br&amp;gt;[-1,3,12]&amp;lt;br&amp;gt;[0,3,12] &lt;br /&gt;
|-&lt;br /&gt;
| defrac || zerlegt eine rationale Zahl in Zähler und Nenner als Menge &amp;lt;br&amp;gt;Die erhaltene Menge kann mit dem Format-Modfier &#039;&#039;&#039;frac&#039;&#039;&#039; als gemischter Bruch dargestellt werden || defrac(14/12) || [13,12]&lt;br /&gt;
|-&lt;br /&gt;
| frac || erzeugt aus einer Menge aus 2 oder 3 Elementen (von defrac) eine rationale Zahl || frac([3,7])&amp;lt;br&amp;gt;frac([1,2,3]) || 3/7 &amp;lt;br&amp;gt; 5/3&lt;br /&gt;
|-&lt;br /&gt;
| mod || Mathematische Implementierung von [https://de.wikipedia.org/wiki/Division_mit_Rest#Modulo modulo]: Divisionsrest einer Division mit ganzzahligem Ergebnis || mod(5,2) &amp;lt;br&amp;gt; mod(6.2,2.5) &amp;lt;br&amp;gt; mod(-4,3) || 1&amp;lt;br&amp;gt;1.2 &amp;lt;br&amp;gt; 2&lt;br /&gt;
|-&lt;br /&gt;
| mod2 || Symmetrische Implementierung von [https://de.wikipedia.org/wiki/Division_mit_Rest#Modulo modulo]: Divisionsrest einer Division mit ganzzahligem Ergebnis &amp;lt;br&amp;gt;Der Unterschied zu mod liegt in der Behandlung von negativen Zahlen des ersten Arguments &amp;lt;br&amp;gt;Siehe auch Divisionsrest des Parser-Operators % [[Berechnungen#arithmetische_Operatoren]] || mod2(5,2) &amp;lt;br&amp;gt; mod2(6.2,2.5) &amp;lt;br&amp;gt; mod2(-4,3) || 1&amp;lt;br&amp;gt;1.2 &amp;lt;br&amp;gt; -1&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===boolsche Funktionen===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| eq || gleich || eq(4,4) || true&lt;br /&gt;
|-&lt;br /&gt;
| eqruntime || symbolischer Vergleich, welcher &#039;&#039;&#039;symbolisch erst bei der Ergebnisberechnung&#039;&#039;&#039; ausgeführt wird. Muss verwendet werden, wenn bei Vergleichen symbolische Antworten von Schülern (Q0,Q1,...) verwendet werden.  || eqruntime(x+3*y,3*y+x) || true&lt;br /&gt;
|-&lt;br /&gt;
| ne || ungleich || ne(6,4) || true&lt;br /&gt;
|-&lt;br /&gt;
| ge || größer gleich || ge(6,4) || true&lt;br /&gt;
|-&lt;br /&gt;
| le || kleiner gleich || le(6,4) || false&lt;br /&gt;
|-&lt;br /&gt;
| gt || größer || gt(6,4) || true&lt;br /&gt;
|-&lt;br /&gt;
| lt || kleiner || lt(6,4) || false&lt;br /&gt;
|-&lt;br /&gt;
| between || prüft ob Parameter1 kleiner als Parameter2 und Parameter2 kleiner als Parameter 3 || between(3,4,5) || true&lt;br /&gt;
|-&lt;br /&gt;
| land || logisches UND || land(a&amp;lt;b,b&amp;lt;c) || &lt;br /&gt;
|-&lt;br /&gt;
| lor  || logisches ODER || lor(a&amp;lt;b,b&amp;lt;c) || &lt;br /&gt;
|-&lt;br /&gt;
| not  || logisches NICHT. Vorsicht ein symbolisches Ergebnis von Maxima liefert not als Prefix-Operator, welcher vom Parser nicht unterstützt wird ( Verwende statt dessen &#039;&#039;&#039;lnot&#039;&#039;&#039; ) || not(a&amp;lt;b) || &lt;br /&gt;
|-&lt;br /&gt;
| lnot  || logisches NICHT, wie not jedoch wird es von Maxima nicht ausgewertet || lnot(a&amp;lt;b) || &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===arithmetische Funktionen===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| double || Zahl in eine Gleitkommazahl umwandeln, die Einheit geht dabei verloren || double(3.4V) || 3.4&lt;br /&gt;
|-&lt;br /&gt;
| numeric || verwirft die Einheit, wenn eine vorhanden ist und liefert nur den Zahlenwert || numeric(2.3mA) &amp;lt;br&amp;gt; numeric(5%)|| 0.0023 &amp;lt;br&amp;gt; 5&lt;br /&gt;
|-&lt;br /&gt;
| unit || gibt die SI-Einheit mit dem Zahlenwert 1 zurück || unit(3.1kA) &amp;lt;br&amp;gt; unit(5%) || 1A &amp;lt;br&amp;gt; 1%&lt;br /&gt;
|-&lt;br /&gt;
| cround  || Rundet die Zahl kaufmännisch, der zweite Parameter gibt die Anzahl der Kommastellen an, ohne 2.Parameter wird auf Ganzzahlen gerundet, bei komplexen Zahlen wird Betrag und Winkel in Grad gerundet. || cround(23.535,2)&amp;lt;br&amp;gt;cround(2.435arg34.5364°,1) || 23.54&amp;lt;br&amp;gt;2.4arg34.5°&lt;br /&gt;
|-&lt;br /&gt;
| ccround  || Rundet die Zahl kaufmännisch, der zweite Parameter gibt die Anzahl der Kommastellen an, bei komplexe Zahlen wird Real und Imaginärteil gerundet. || ccround(2.4534+5.645*%i,2) || 2.45+5.65i&lt;br /&gt;
|-&lt;br /&gt;
| round  || Rundet die Zahl kaufmännisch, aus Kompatibilitätsgründen zu Maxima hat round nur einen Parameter || round(23.535) || 24&lt;br /&gt;
|-&lt;br /&gt;
| ground || Rundet die Zahl auf die im zweiten Parameter angegebenen gültigen Ziffern || ground(2453.43,2) || 2500&lt;br /&gt;
|-&lt;br /&gt;
| floor  || Rundet auf die größte ganze Zahl, welche kleiner oder gleich x ist || floor(24.5) || 24&lt;br /&gt;
|-&lt;br /&gt;
| trunc  || Schneidet die Zahl nach dem Komma ab || trunc(24.5) || 24&lt;br /&gt;
|-&lt;br /&gt;
| ceiling || ceiling(x) Rundet auf die kleinste ganze Zahl, welche größer oder gleich x ist || ceiling(13.2) || 14&lt;br /&gt;
|-&lt;br /&gt;
| pow || Potenzfunktion || pow(2,3) || 8&lt;br /&gt;
|-&lt;br /&gt;
| par || Parallelschaltung von Widerständen || par(x,y) || x*y/(x+y)&lt;br /&gt;
|-&lt;br /&gt;
| min  || Minimum von mehrere Werten suchen || min(3,5,1) || 1&lt;br /&gt;
|-&lt;br /&gt;
| max  || Maximum von mehreren Werten suchen || max(3,5,1) ||  5&lt;br /&gt;
|-&lt;br /&gt;
| random  || Zufallszahl aus einem definierten Zahlenbereich random(minimal,maximal)&amp;lt;br&amp;gt;VORSICHT! Die Zufallszahl wird bei jedem Aufruf neu berechnet, weshalb sich der Wert bei jedem Anzeigevorgang einer Frage ändert. Sollte sich der berechnete Wert für eine Schülerangabe zwischen Fragestellung und Ergebniskontrolle nicht ändern dürfen (ist der Normalfall) muss man einen &#039;&#039;&#039;Datensatz statt einer Zufallszahl&#039;&#039;&#039; verwenden! &amp;lt;br&amp;gt; Zufallszahlen haben in der Ergebnisberechnung keinen Sinn, und sollten maximal für angezeigte zufällige Werte verwendet werden! || random(2,8) ||  3.4532&lt;br /&gt;
|-&lt;br /&gt;
| randomC  || komplexe Zufallszahl aus einem definierten Zahlenbereich für den Betrag&amp;lt;br&amp;gt;VORSICHT! Die Zufallszahl wird bei jedem Aufruf neu berechnet!  || randomC(2,8) ||  3.4532arg40.3°&lt;br /&gt;
|-&lt;br /&gt;
| signum  || Liefert das Vorzeichen einer Zahl (-1,0,1). Bei einer komplexen Zahl das Vorzeichen des Realteils. || signum(-4) || -1&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Maxima-basierte Funktionen ===&lt;br /&gt;
* Diese Funktionen funktionieren nur wenn Maxima installiert ist und werden immer an Maxima gesendet, auch wenn der interne Parser aktiviert ist.&lt;br /&gt;
* Weiters werden sie bei der Ausgabe als TeX-Formel auch korrekt mit LaTeX gesetzt.&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| integrate || Berechnet das unbestimmte oder bestimmte Integral einer Funktion. || integrate(x^2,x) &amp;lt;br&amp;gt; integrate(x^2,x,0,2) || x^3/3 &amp;lt;br&amp;gt; 8/3  &lt;br /&gt;
|-&lt;br /&gt;
| diff || Berechnet die Ableitung einer Funktion.  || diff(x^2,x)&amp;lt;br&amp;gt;diff(3*x^2,x,2) || x &amp;lt;br&amp;gt; 6&lt;br /&gt;
|-&lt;br /&gt;
| tomaxima || Führt die Berechnung aller Parameter von links nach rechts hintereinander mit Maxima aus. Das Ergebnis ist dann das Ergebnis des letzten Parameters. || tomaxima(y:x^2,y+2) || x^2+2&lt;br /&gt;
|-&lt;br /&gt;
| laplace || Bestimmt die Laplace-Transformierte einer Funktion. || laplace(sin(t),t,s) || 1/(1+s^2)&lt;br /&gt;
|-&lt;br /&gt;
| ilt || Bestimmt die inverse Laplace-Transformierte eine Laplace-Funktion || ilt(1/(1+s),s,t) || e^(-t)&lt;br /&gt;
|-&lt;br /&gt;
| sum || Summenbildung || sum(1/k,k,1,2) || 3/2&lt;br /&gt;
|-&lt;br /&gt;
| product || Produktbildung || product(1/k,k,1,3) || 1/6&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===erweiterte arithmetische Funktionen===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| sigma || Sprungfunktion: sigma(x) liefert 0 für x&amp;lt;0 und 1 für x&amp;gt;=0 || sigma(243.3) || 1&lt;br /&gt;
|-&lt;br /&gt;
| pulse || Rechteckfunktion: &amp;lt;br&amp;gt;pulse(x,x0) ist gleich 1 für x0 &amp;lt; x &amp;lt; x0 + 1, sonst 0&amp;lt;br&amp;gt;pulse(x,x0,L) ist gleich 1 für x0 &amp;lt; x &amp;lt; x0 + L, sonst 0&amp;lt;br&amp;gt;[[Datei:pulse.png|300px]] || pulse(x,2,4) || [[Datei:pulse_x_2_4.png|100px]]&lt;br /&gt;
|-&lt;br /&gt;
| interpol || Interpolationsfunktion zwischen mehreren Stützpunkten in einem Koordinatensystem. &amp;lt;br&amp;gt; interpol(WerteX,WerteY,x) || interpol([0,1,2],[0,3,3],1.5) || 3&lt;br /&gt;
|-&lt;br /&gt;
| periodic || Erzeugt aus einer beliebigen Funktion zwischen 0 und Periodendauer eine periodische Funktion &amp;lt;br&amp;gt; periodic(Variable,Periodendauer,Funktion)&amp;lt;br&amp;gt; periodic(Variable,Periodendauer,Funktionsperiodendauer,Funktion) || ch1(t):periodic(t,5ms,2&#039;Vms-2&#039;*t^2) &amp;lt;br&amp;gt; ch1(t):periodic(t,5ms,1,2V*t^2) || :[[Datei:ClipCapIt-190318-113524.PNG|100px]] &amp;lt;br&amp;gt; :[[Datei:ClipCapIt-190318-113644.PNG|100px]]&lt;br /&gt;
|-&lt;br /&gt;
| numint || numerische Integration &amp;lt;br&amp;gt; numint(untereGrenze,obereGrenze,funktion,Variable)&amp;lt;br&amp;gt; numint(untereGrenze,obereGrenze,funktion,Variable,punkteAnzahl) || numint(0,2pi,sin(t),t) || 0&lt;br /&gt;
|-&lt;br /&gt;
| numdif || numerisches Differenzieren einer Funktion &amp;quot;funktion&amp;quot; nach einer Variablen &amp;quot;Variable&amp;quot; an der Stelle &amp;quot;position&amp;quot; mit einer Differenz der Variablen von &amp;quot;differenz&amp;quot; &amp;lt;br&amp;gt; numdif(position,funktion,Variable,differenz) || numdif(0,sin(t),t,0.01) || 1&lt;br /&gt;
|-&lt;br /&gt;
| solve || löst eine Gleichung oder ein Gleichungssystem nach einer oder mehrerer Variablen || solve([2*x+y=3,x-y=0],[x,y]) || [ [ x=1,y=1 ] ]&lt;br /&gt;
|-&lt;br /&gt;
| solvevalue || löst eine Gleichung oder ein Gleichungssystem nach einer Variablen und liefert genau die erste Lösung wenn sie numerisch berechenbar ist || solvevalue([ 2*x+y=3,x-y=0 ],[ x,y ],x)  || 1&lt;br /&gt;
|-&lt;br /&gt;
| newton || Bestimmt eine Nullstelle einer Funktion nach dem Newton-Verfahren. Der erste Parameter ist ein Ausdruck in einer Variablen, der zweite Parameter ist der Startwert. || newton(x^2-4,4) || 2&lt;br /&gt;
|-&lt;br /&gt;
| cnewton || Bestimmt eine komplexe Nullstelle einer Funktion nach dem Newton-Verfahren. Der erste Parameter ist ein Ausdruck in einer Variablen, der zweite Parameter ist der komplexe Startwert. || newton(x^2+4,4) || 2*%i&lt;br /&gt;
|-&lt;br /&gt;
| newtonall || Bestimmt alle Nullstellen einer Funktion mit einem Betrag des Funktionsparameters kleiner als ein definierter Wert nach dem Newton-Verfahren. Der erste Parameter ist ein Ausdruck in einer Variablen, der zweite Parameter ist der maximale Betrag des Funktionsparameters. Das Ergebnis ist immer ein Vektor mit den nach aufsteigendem Funktionswert sortierten Nullstellen. || newton(x^2-4,4) || [-2,2]&lt;br /&gt;
|-&lt;br /&gt;
| cnewtonall || Bestimmt alle komplexen Nullstellen einer Funktion mit einem Betrag des Funktionsparameters kleiner als ein definierter Wert nach dem Newton-Verfahren. Der erste Parameter ist ein Ausdruck in einer Variablen, der zweite Parameter ist der maximale Betrag des Funktionsparameters. Das Ergebnis ist immer ein Vektor mit den Nullstellen. || newton(x^2+4,4) || [-2*%i,2*%i]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Stringfunktionen===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| dechex || Zahl in eine Ganzzahl wandeln und als Hexadezimal-String ausgeben || dexhex(12) || &amp;quot;0xC&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| chr || Bestimmt die Zeichen mit dem ASC-II-Code der Long-Parameter und setzt daraus einen String zusammen. || chr(0x65,105) || &amp;quot;ei&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| val || Bestimmt den ASC-II-Code des ersten Zeichens welches als String-Parameter übergeben wurde.|| val(&amp;quot;a&amp;quot;) || 97&lt;br /&gt;
|-&lt;br /&gt;
| strcat || Fügt mehrere Strings zusammen.|| strcat(&amp;quot;a&amp;quot;,&amp;quot;b&amp;quot;) || &amp;quot;ab&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===trigonometrische Funktionen===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| sin || Sinus || sin(%pi/2) || 1&lt;br /&gt;
|-&lt;br /&gt;
| cos || Cosinus || cos(%pi/2) || 0&lt;br /&gt;
|-&lt;br /&gt;
| tan || Tangens || tan(%pi/4) || 1&lt;br /&gt;
|-&lt;br /&gt;
| asin || Arcus-Sinus || asin(1) || %pi/2&lt;br /&gt;
|-&lt;br /&gt;
| arcsin || Arcus-Sinus || asin(1) || %pi/2&lt;br /&gt;
|-&lt;br /&gt;
| acos || Arcus-Cosinus || acos(1) || 0&lt;br /&gt;
|-&lt;br /&gt;
| arccos || Arcus-Cosinus || acos(1) || 0&lt;br /&gt;
|-&lt;br /&gt;
| atan || Arcus-Tangens || atan(1) || %pi/4&lt;br /&gt;
|-&lt;br /&gt;
| arctan || Arcus-Tangens || arctan(1) || %pi/4&lt;br /&gt;
|-&lt;br /&gt;
| atan2 || Arcus-Tangens atan2(y,x)=arctan(y/x) || atan2(-2,-2) || -%pi*3/4&lt;br /&gt;
|-&lt;br /&gt;
| arctan2 || Arcus-Tangens arctan2(y,x)=arctan(y/x) || arctan2(-2,-2) || -%pi*3/4&lt;br /&gt;
|-&lt;br /&gt;
| sinh || Sinus-Hyperbolicus || sinh(1) || 1.1752012&lt;br /&gt;
|-&lt;br /&gt;
| cosh || Cosinus-Hyperbolicus || cosh(1) || 1.5430806&lt;br /&gt;
|-&lt;br /&gt;
| tanh || Tangens-Hyperbolicus || tanh(1) || 0.7615941&lt;br /&gt;
|-&lt;br /&gt;
| coth || Cotangens-Hyperbolicus || coth(1) || 1.313035&lt;br /&gt;
|-&lt;br /&gt;
| asinh || Area-Sinus-Hyperbolicus || asinh(1.1752012) || 1&lt;br /&gt;
|-&lt;br /&gt;
| acosh || Area-Cosinus-Hyperbolicus || acosh(1.5430806) || 1&lt;br /&gt;
|-&lt;br /&gt;
| atanh || Area-Tangens-Hyperbolicus || atanh(0.7615941) || 1&lt;br /&gt;
|-&lt;br /&gt;
| acoth || Area-Cotangens-Hyperbolicus || acoth(1.313035) || 1&lt;br /&gt;
|-&lt;br /&gt;
| [[csin]] || Erzeugt aus einer komplexen Zahl (Effektivwert) und einer Frequenz einen Sinusfunktion in der Zeit || csin(U) || sqrt(2)*cabs(U)*sin(2*pi*f*t+carg(U))&lt;br /&gt;
|-&lt;br /&gt;
| [[quadrant]] || Liefert den Quadranten eines Winkels mit einer Toleranzangabe. || quadrant(20°,5°) || 1&lt;br /&gt;
|-&lt;br /&gt;
| argnorm || Wandelt einen Winkel auf den Bereich von 0°-360° || argnorm(-50°) || 310°&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Exponentialfunktionen===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| pow || Potenzfunktion || pow(2,3) || 8&lt;br /&gt;
|-&lt;br /&gt;
| exp|| Exponentialfunktion || exp(1) || %e&lt;br /&gt;
|-&lt;br /&gt;
| log || natürlicher Logarythmus || log(%e) || 1&lt;br /&gt;
|-&lt;br /&gt;
| ln || natürlicher Logarythmus || ln(%e) || 1&lt;br /&gt;
|-&lt;br /&gt;
| log10 || Logarythmus zur Basis 10 || log10(100) || 2&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===komplexe Zahlen===&lt;br /&gt;
Die Funktionen zu komplexen Zahlen werden (anders als in Maxima) nur ausgewertet wenn das Ergebnis numerisch berechenbar ist, ansonsten bleibt die Funktion symbolisch erhalten.&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| abs || Liefert den Absolutbetrag einer komplexen Zahl || abs(3+4*%i) || 5&lt;br /&gt;
|-&lt;br /&gt;
| cabs || Liefert den Absolutbetrag einer komplexen Zahl || cabs(3+4*%i) || 5&lt;br /&gt;
|-&lt;br /&gt;
| carg || Liefert das Argument einer komplexen Zahl || carg(4*%e^(3*%i)) || 3&lt;br /&gt;
|-&lt;br /&gt;
| realpart || Liefert den Realteil einer komplexen Zahl || realpart(3+4*%i) || 3&lt;br /&gt;
|-&lt;br /&gt;
| imagpart || Liefert den Imaginärteil einer komplexen Zahl || imagpart(3+4*%i) || 4&lt;br /&gt;
|-&lt;br /&gt;
| conjugate || Liefert die konjugiert komplexe Zahl einer komplexen Zahl || conjugate(3+4*%i) || 3-4*%i&lt;br /&gt;
|-&lt;br /&gt;
| rectform || hat in LeTTo keine Relevanz, da die Zahlendarstellung bei der Ausgabe definiert wird wie zB.: {=3arg2;karti} ||  || &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Polynome===&lt;br /&gt;
Polynome mit reellen Koeffizienten in einer Variablen können mit folgenden Funktionen erstellt und verarbeitet werden. Für die interne Verarbeitung wird hierzu ein eigener Polynom-Datentyp verwendet.&lt;br /&gt;
&lt;br /&gt;
siehe auch [[Zahlendarstellung#f.C3.BCr_Polynome_und_gebrochen_rationale_Funktionen_mit_numerischen_Koeffizienten_in_einer_Variablen_k.C3.B6nnen_folgende_Parameter_angegeben_werden|Zahlendarstellung Polynome]]&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| polynom(p) || Erzeugt aus einem Ausdruck welcher genau eine Variable besitzen muss ein Polynom in dieser Variablen || polynom(1+x) || 1+x²&lt;br /&gt;
|-&lt;br /&gt;
| polynom(p,var) || Erzeugt aus einem Ausdruck ein Polynom in einer definierten Variablen. Ist p ein gültiger Polynom-Ausdruck mit reelen Koeffizienten in der Variablen var wird das Polynom erzeugt, ansonsten bleibt die Funktion erhalten. || polynom(1+a*x^2,x) &amp;lt;br&amp;gt; polynom(1+2*x^2,x) || polynom(1+a*x^2,x)&amp;lt;br&amp;gt;1+2*x²&lt;br /&gt;
|-&lt;br /&gt;
| polynom(p,var,&amp;quot;einheit&amp;quot;) || Erzeugt ein Polynom in der Variablen var, mit der Einheit &amp;quot;einheit&amp;quot; für die Polynomvariable. Die Einheit muss als String in Doppelhochkomma angegeben werden! Das Polynom p muss entweder ohne Einheiten oder mit den korrekten Einheiten angegeben werden! || polynom(1+2*p^2,p,&amp;quot;s-1&amp;quot;) &amp;lt;br&amp;gt; polynom(1+2&#039;s2&#039;*p^2,p,&amp;quot;s-1&amp;quot;) || 1+2&#039;s2&#039;*p^2 &amp;lt;br&amp;gt;1+2&#039;s2&#039;*p^2&lt;br /&gt;
|-&lt;br /&gt;
| factfrompolynom(p) || Erzeugt aus einem Polynom einen Vektor mit den Polynomfaktoren. Erste Zeile Zählerfaktoren, zweite Zeile Nennerfaktoren, dritte Zeile Polynomvariable, vierte Zeile Einheit der Polynomvariable|| factfrompolynom(polynom((2+x)/(1+2*x))) || [[1,0.5],[0.5,1],&amp;quot;x&amp;quot;,&amp;quot;&amp;quot;]&lt;br /&gt;
|-&lt;br /&gt;
| polynomfromfact(f) || Erzeugt aus einer Faktoren-Liste, welche mit factfrompolynom erstellt wurde ein neues Polynom || polynomfromfact([[1,0.5],[0.5,1],&amp;quot;x&amp;quot;,&amp;quot;&amp;quot;]) || (2+x)/(1+2*x)&lt;br /&gt;
|- &lt;br /&gt;
| polynomfromfact(zähler,nenner,var,einheit) || Erzeugt aus Zähler und Nenner Faktor-Vektoren ein neues Polynom || polynomfromfact([1,0.5],[0.5,1],x,&amp;quot;&amp;quot;) || (2+x)/(1+2*x)&lt;br /&gt;
|- &lt;br /&gt;
| nullfrompolynom(p) || Erzeugt aus einem Polynom einen Vektor mit den PolynomNullstellen und Polstellen. Erste Zeile gemeinsamer Faktor, zweite Zeile Nullstellen, dritte Zeile Polstellen, vierte Zeile Polynomvariable|| nullfrompolynom(polynom((2+x)/(1+2*x))) || [0.5,[-2],[-0.5],x]&lt;br /&gt;
|-&lt;br /&gt;
| polynomfromnull(n) || Erzeugt aus einer Nullstellen-Polstellen-Liste, welche mit nullfrompolynom erstellt wurde ein neues Polynom || polynomfromnull([0.5,[-2],[-0.5],x]) || (2+x)/(1+2*x)&lt;br /&gt;
|- &lt;br /&gt;
| polynomfromnull(faktor,nullstellen,polstellen,var) || Erzeugt aus einer Faktor-Vektoren ein neues Polynom || polynomfromnull(0.5,[-2],[-0.5],x) || (2+x)/(1+2*x)&lt;br /&gt;
|-  &lt;br /&gt;
| polynomk(p) || Bestimmt den Faktor, welcher vom Polynom herausgehoben werden kann, so dass die höchste Potenz der Polynomvariable den Multiplikator Eins hat. || polynomk(polynom((2+x)/(1+2*x))) || 0.5&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===statistische Funktionen===&lt;br /&gt;
Die Funktionen funktionieren nur ohne Einheiten.&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| factorial || Liefert die Fakultät einer positiven ganzen Zahl || factorial(5) || 120&lt;br /&gt;
|-&lt;br /&gt;
| binomial || Liefert den Binomialkoeffizienten von zwei positiven ganzen Zahlen || binomial(5,2) || 10&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Mengen-Funktionen===&lt;br /&gt;
Mengen werden intern als Vektoren verarbeitet und sind deshalb auch direkt durch Vektoren ersetzbar. Auch alle Vektor-Funktionen sind somit auch auf Mengen anwendbar und umgekehrt.&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis || ab Rev&lt;br /&gt;
|-&lt;br /&gt;
| setget || Liefert ein Element einer Menge oder einer Matrix (Menge von Mengen) || setget([12,13,14],1) &amp;lt;br&amp;gt; setget(matrix([9,2],[3,4]),0,1) || 13 &amp;lt;br&amp;gt; 2 &lt;br /&gt;
|-&lt;br /&gt;
| setset || setzt ein Element einer Menge oder einer Matrix (Menge von Mengen) || setset([12,13,14],1,35) &amp;lt;br&amp;gt; setset(matrix([9,2],[3,4]),0,0,-9) || [12,35,14] &amp;lt;br&amp;gt; [[-9,2],[3,4]]&lt;br /&gt;
|-&lt;br /&gt;
| setlength || liefert die Anzahl der Elemente einer Liste, Menge oder eines Vektors || setlength([3,6,54,34,3,54]) || 6 &lt;br /&gt;
|- &lt;br /&gt;
| setinsert || fügt ein Element in eine Menge an eine gegebene Stelle ein || setinsert([12,13,14],1,25) || [12,25,13,14]&lt;br /&gt;
|-&lt;br /&gt;
| setremove || löscht ein Element einer Menge || setremove([12,13,14],1) || [12,14]&lt;br /&gt;
|-&lt;br /&gt;
| setapply || wendet einen Ausdruck oder Funktion auf alle Elemente einer Menge an || setapply(y,[1,2,3],y*2) || [2,4,6] || 5965&lt;br /&gt;
|-&lt;br /&gt;
| setmedian || Liefert den Median einer Menge || setmedian([4,3,1,5,6]) || 4&lt;br /&gt;
|-&lt;br /&gt;
| setboxplot || Liefert die Werte des Boxplot einer Menge (Minimum, unteres Quartil, Median, oberes Quartil, Maximum) als Vektor verwendbar für das [[Plot#definierte_Zeichenelemente|Plot-Plugin]] || setboxplot([1,2,3,10,8,9]) || [1,2,5.5,9,10]&lt;br /&gt;
|-&lt;br /&gt;
| setsort || Sortiert die Elemente einer Menge aufsteigend || setsort([3,-3,2,0,5,2]) || [-3,0,2,2,3,5]&lt;br /&gt;
|-&lt;br /&gt;
| setsortnd || Sortiert die Elemente einer Menge aufsteigend und entfernt alle mehrfach vorkommenden Elemente || setsortnd([31,-3,2,31,0,5,2]) || [-3,0,2,5,31]&lt;br /&gt;
|-&lt;br /&gt;
| setcount || Bestimmt die Anzahl wie oft ein Element in einer Menge vorkommt oder die Anzahl der Elemente der Menge || setcount([31,-3,2,31,0,5,2],31) &amp;lt;br&amp;gt; setcount([2,5,3,6]) || 2 &amp;lt;br&amp;gt; 4&lt;br /&gt;
|-&lt;br /&gt;
| setmodus || Liefert das Element einer Menge, welches am öftesten vorkommt oder die Elemente als Menge wenn mehrere Elemente gleich oft vorkommen || setmodus([3,-3,2,0,5,2]) || 2&lt;br /&gt;
|-&lt;br /&gt;
| setreverse || Dreht die Reihenfolge einer Menge um || setreverse([3,-3,2,0,5,2]) || [2,5,0,2,-3,3]&lt;br /&gt;
|-&lt;br /&gt;
| setnd || Löscht alle Duplikate aus der Menge || setnd([3,-3,2,0,5,2]) || [3,-3,2,0,5]&lt;br /&gt;
|-&lt;br /&gt;
| setshuffle || Mischt eine Menge in eine andere Reihenfolge. VORSICHT, ohne zweiten Parameter (ganze Zahl) ändert sich die Reihenfolge bei jedem mal neu Laden automatisch und ist nicht nachvollziehbar, weshalb sie dann für Schülerbeispiele nicht einsetzbar ist! Daher ist es für eine praktische Anwendung in einem Schülerbeispiel &#039;&#039;&#039;erforderlich&#039;&#039;&#039;, dass der zweite Parameter determiniert (beispielsweise über einen Integer-Datensatz-Wert zwischen 0 und 1000) festgelegt wird.|| setshuffle([3,-3,2,0,5,2],5) || [2,3,−3,2,0,5] || 6082&lt;br /&gt;
|-&lt;br /&gt;
| setmittel || Bestimmt den Mittelwert einer Menge || setmittel([1,3,2,4]) || 2.5&lt;br /&gt;
|-&lt;br /&gt;
| setgeomittel || Bestimmt das geometrische Mittelwert einer Menge aus positiven reellen Zahlen || setgeomittel([10,20,30]) || 18.171206&lt;br /&gt;
|-&lt;br /&gt;
| setvarianz || Bestimmt die empirische Varianz einer Menge || setvarianz([3,1,2,5,4]) || ((3-3)^2+(1-3)^2+(2-3)^2+(5-3)^2+(4-3)^2)/5=2&lt;br /&gt;
|-&lt;br /&gt;
| setquadratmittel || Bestimmt den quadratischen Mittelwert einer Menge || setquadratmittel([10,20,30]) || 21.6025&lt;br /&gt;
|-&lt;br /&gt;
| setsum || Bestimmt die Summe aller Werte einer Menge || setsum([1,3,2,4]) || 10&lt;br /&gt;
|-&lt;br /&gt;
| setprod || Bestimmt das Produkt aller Werte einer Menge || setprod([1,3,2,4]) || 24&lt;br /&gt;
|-&lt;br /&gt;
| setunion || Fügt mehrere Mengen zu einer neuen Menge zusammen || setunion([1,3,2,4],[3,7]) || {1,3,2,4,3,7}&lt;br /&gt;
|-&lt;br /&gt;
| setunionnd || Fügt mehrere Mengen zu einer neuen Menge zusammen, sortiert diese und entfernt alle mehrfachen Elemente || setunionnd([1,3,2,4],[3,7]) || {1,2,3,4,7}&lt;br /&gt;
|-&lt;br /&gt;
| setcut || Bildet die Schnittmenge aus mehreren Mengen || setcut([1,3,2,4],[3,7]) || {3}&lt;br /&gt;
|-&lt;br /&gt;
| setcompare || vergleicht zwei Mengen miteinander, wobei die Reihenfolge egal ist  || setcompare([1,3,2,4],[3,7]) &amp;lt;br&amp;gt; setcompare([1,3,2],[1,2,3]) &amp;lt;br&amp;gt; setcompare([1,3,2],[1,3,2,3]) &amp;lt;br&amp;gt; setcompare([1,2,3],[1,2,3])  || false &amp;lt;br&amp;gt; true &amp;lt;br&amp;gt; false &amp;lt;br&amp;gt; true&lt;br /&gt;
|-&lt;br /&gt;
| setcomparend || vergleicht zwei Mengen miteinander, wobei die Reihenfolge egal ist und doppelte Werte als einfach behandelt werden. || setcomparend([1,3,2,4],[3,7]) &amp;lt;br&amp;gt; setcomparend([1,3,2],[1,2,3]) &amp;lt;br&amp;gt; setcomparend([1,3,2],[1,3,2,3]) &amp;lt;br&amp;gt; setcomparend([1,2,3],[1,2,3])  || false &amp;lt;br&amp;gt; true &amp;lt;br&amp;gt; true &amp;lt;br&amp;gt; true&lt;br /&gt;
|-&lt;br /&gt;
| setpartof || prüft ob die erste Menge eine Teilmenge der zweite Menge ist wobei die Reihenfolge egal ist aber mehrfache Werte berücksichtigt werden  || setpartof([1,4],[1,3,7]) &amp;lt;br&amp;gt; setpartof([1,3],[1,2,3]) &amp;lt;br&amp;gt; setpartof([1,3,3],[1,3,5,7]) &amp;lt;br&amp;gt; setpartof([1,4,4],[1,2,3,4])  || false &amp;lt;br&amp;gt; true &amp;lt;br&amp;gt; false &amp;lt;br&amp;gt; false&lt;br /&gt;
|-&lt;br /&gt;
| setpartofnd || prüft ob die erste Menge eine Teilmenge der zweite Menge ist wobei die Reihenfolge und mehrfache Werte egal sind  || setpartofnd([1,4],[1,3,7]) &amp;lt;br&amp;gt; setpartofnd([1,3],[1,2,3]) &amp;lt;br&amp;gt; setpartofnd([1,3,3],[1,3,5,7]) &amp;lt;br&amp;gt; setpartofnd([1,4,4],[1,2,3,4])  || false &amp;lt;br&amp;gt; true &amp;lt;br&amp;gt; true &amp;lt;br&amp;gt; true&lt;br /&gt;
|-&lt;br /&gt;
| setgetmin || Liefert den kleinsten Wert einer Menge || setgetmin([1,3,-2,4]) || -2&lt;br /&gt;
|-&lt;br /&gt;
| setgetmax || Liefert den größten Wert einer Menge || setgetmax([1,3,-2,4]) || 4&lt;br /&gt;
|-&lt;br /&gt;
| setremovefirst || Entfernt den ersten Wert einer Menge || setremovefirst([1,3,-2,4]) || {3,-2,4}&lt;br /&gt;
|-&lt;br /&gt;
| setremovelast || Entfernt den letzten Wert einer Menge || setremovelast([1,3,-2,4]) || {1,3,-2}&lt;br /&gt;
|-&lt;br /&gt;
| setgetfirst || Liefert den ersten Wert einer Menge || setgetfirst([1,3,-2,4]) || 1&lt;br /&gt;
|-&lt;br /&gt;
| setgetlast || Liefert den letzten Wert einer Menge || setgetlast([1,3,-2,4]) || 4&lt;br /&gt;
|-&lt;br /&gt;
| setsub || setsub(M,x,y) Liefert eine Teilmenge von M der Elemente vom index x bis zum Index y || setsub([1,3,-2,4],1,2) || {3,-2}&lt;br /&gt;
|-&lt;br /&gt;
| setmakelist || setmakelist(f,x,start,stop) setzt in den Ausdruck f für x die Werte von start bis stop mit einer Schrittweite von 1 ein. || setmakelist(x^2,x,1,4) || [ 1,4,9,16 ]&lt;br /&gt;
|-&lt;br /&gt;
| || setmakelist(f,x,start,stop,schrittweite) setzt in den Ausdruck f für x die Werte von start bis stop mit dem Abstand schrittweite ein. || setmakelist(x^2,x,1,2,0.5) || [ 1,2.25,4 ]&lt;br /&gt;
|-&lt;br /&gt;
| || setmakelist(f,x,set) setzt die Werte des Vektors set in den Ausdruck f für x ein. || setmakelist(x^2,x,[3,1,2])  ||[ 9,1,4 ]&lt;br /&gt;
|-&lt;br /&gt;
| foreach || Führt für jedes Element eine Berechnung aus und verbindet die Ergebnisse mit der Aggregatfunktion || foreach([2,-3,5,-6],p,cabs(p),&amp;quot;+&amp;quot;) || 16 || 6075 &lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Punkte-Mengen-Funktionen ===&lt;br /&gt;
Bei der Eingabe mit dem Plot-Plugin werden Punkte-Mengen als Matrizen in der Form [[x1,y1],[x2,y2],[y3,y3]] für die gespeicherten Punkte welcher der Schüler eingegeben hat verwendet.&lt;br /&gt;
&lt;br /&gt;
Um die Verarbeitung der Eingaben zu erleichtern kann man die Funktionen beginnend mit pv verwenden.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis || ab Rev&lt;br /&gt;
|-&lt;br /&gt;
| pvabs || Bestimmt den Betrag eines Punktes oder aller Ortsvektoren zu den Punkten. || pvabs([[2,3],[4,5],[6,3],[-2,4]]) &amp;lt;br&amp;gt; pvabs([[2,3],[4,5],[6,3],[-2,4]],1) ||  [3.6056,6.4031,6.7082,4.4721] &amp;lt;br&amp;gt; 6.4031 || 6077&lt;br /&gt;
|-&lt;br /&gt;
| pvarg || Bestimmt den Winkel eines Punktes oder aller Ortsvektoren zu den Punkten. || pvarg([[2,3],[4,5],[6,3],[-2,4]]) &amp;lt;br&amp;gt; pvarg([[2,3],[4,5],[6,3],[-2,4]],1) || [0.98279,0.89606,0.46365,2.0344] &amp;lt;br&amp;gt; 0.89606 || 6077&lt;br /&gt;
|-&lt;br /&gt;
| pvget || Liefert einen Punkt der Punkteliste. || pvget([[2,3],[4,5],[6,3],[-2,4]],1) || [4,5] || 6077&lt;br /&gt;
|-&lt;br /&gt;
| pvgetx || Bestimmt die x-Koordinate eines Punktes oder aller Punkte. || pvgetx([[2,3],[4,5],[6,3],[-2,4]]) &amp;lt;br&amp;gt; pvgetx([[2,3],[4,5],[6,3],[-2,4]],1) || [2,4,6,-2]&amp;lt;br&amp;gt;4 || 6077&lt;br /&gt;
|-&lt;br /&gt;
| pvgety || Bestimmt die y-Koordinate eines Punktes oder aller Punkte. || pvgety([[2,3],[4,5],[6,3],[-2,4]]) &amp;lt;br&amp;gt; pvgety([[2,3],[4,5],[6,3],[-2,4]],1) || [3,5,3,4]&amp;lt;br&amp;gt;3 || 6077&lt;br /&gt;
|-&lt;br /&gt;
| pvlineabs || Bestimmt aus dem n-ten Punktepaar den Absolutbetrag des Abstandes. || pvlineabs([[2,3],[4,5],[6,3],[-2,4]])&amp;lt;br&amp;gt;pvlineabs([[2,3],[4,5],[6,3],[-2,4]],0) || [2.8284,8.0623]&amp;lt;br&amp;gt;2.82842712475 || 6075 &lt;br /&gt;
|-&lt;br /&gt;
| pvlinearg || Bestimmt aus dem n-ten Punktepaar den Winkel der Strecke zur x-Achse || pvlinearg([[2,3],[4,5],[6,3],[-2,4]])&amp;lt;br&amp;gt;pvlinearg([[2,3],[4,5],[6,3],[-2,4]],0) || [45°,172.87°]&amp;lt;br&amp;gt;45° || 6075 &lt;br /&gt;
|-&lt;br /&gt;
| pvlinek || Bestimmt die Steigung der zugehörigen Geraden dem n-ten Punktepaar || pvlinek([[2,3],[4,5],[6,3],[-2,4]])&amp;lt;br&amp;gt;pvlinek([[2,3],[4,5],[6,3],[-2,4]],0) ||  [1,−0.125]&amp;lt;br&amp;gt;1 || 6075 &lt;br /&gt;
|-&lt;br /&gt;
| pvlined || Bestimmt den Schnittpunkt einer Geraden durch das n-te Punktepaar mit der y-Achse || pvlined([[2,3],[4,5],[6,3],[-2,4]])&amp;lt;br&amp;gt;pvlined([[2,3],[4,5],[6,3],[-2,4]],0) || [1,3.75] &amp;lt;br&amp;gt;1 || 6075 &lt;br /&gt;
|-&lt;br /&gt;
| pvline || Bestimmt die Geradengleichung einer Geraden durch das n-te Punktepaar || pvline([[2,3],[4,5],[6,3],[-2,4]])&amp;lt;br&amp;gt;pvline([[2,3],[4,5],[6,3],[-2,4]],0) || [y=1+x,y=3.75−0.125⋅x]&amp;lt;br&amp;gt;y=x+1 || 6075 &lt;br /&gt;
|-&lt;br /&gt;
| pvpoints || Bestimmt die Anzahl der Punkte || pvpoints([[2,3],[4,5],[6,3],[-2,4]]) || 4 || 6075 &lt;br /&gt;
|-&lt;br /&gt;
| pvvect || Bestimmt einen Vector aus dem n-te Punktepaar || pvvect([[2,3],[4,5],[6,3],[-2,4]],0) || [2,2] || 6075 &lt;br /&gt;
|-&lt;br /&gt;
| pvsortx || Sortiert die Punkte nach steigender x-Koordinate || pvsortx([[2,3],[4,5],[6,3],[−2,4],[−3,5],[−7,−9]]) || [[−7,−9],[−3,5],[−2,4],[2,3],[4,5],[6,3]] ||6077 &lt;br /&gt;
|-&lt;br /&gt;
| pvsorty || Sortiert die Punkte nach steigender y-Koordinate || pvsorty([[2,3],[4,5],[6,3],[−2,4],[−3,5],[−7,−9]]) || [[−7,−9],[2,3],[6,3],[−2,4],[4,5],[−3,5]] ||6077&lt;br /&gt;
|-&lt;br /&gt;
| pvsortabs || Sortiert die Punkte nach steigendem Absolutbetrag des Ortsvektors || pvsortabs([[2,3],[4,5],[6,3],[−2,4],[−3,5],[−7,−9]]) ||  [[2,3],[−2,4],[−3,5],[4,5],[6,3],[−7,−9]] ||6077&lt;br /&gt;
|-&lt;br /&gt;
| pvsortarg || Sortiert die Punkte nach steigendem Winkel des Ortsvektors (-pi bis pi) || pvsortarg([[2,3],[4,5],[6,3],[−2,4],[−3,5],[−7,−9]]) ||  [[−7,−9],[6,3],[4,5],[2,3],[−2,4],[−3,5]] ||6077&lt;br /&gt;
|-&lt;br /&gt;
| pvsortlinex || Sortiert Punktepaare nach steigender x-Koordinate der kleineren x-Koordinate des Paares. || pvsortlinex([[2,3],[4,5],[6,3],[−2,4],[−3,5],[−7,−9]]) || [[−3,5],[−7,−9],[6,3],[−2,4],[2,3],[4,5]] ||6077 &lt;br /&gt;
|-&lt;br /&gt;
| pvsortliney || Sortiert Punktepaare nach steigender y-Koordinate der kleineren y-Koordinate des Paares. || pvsortliney([[2,3],[4,5],[6,3],[−2,4],[−3,5],[−7,−9]]) ||  [[−3,5],[−7,−9],[2,3],[4,5],[6,3],[−2,4]] ||6077 &lt;br /&gt;
|-&lt;br /&gt;
| pvsortlineabs || Sortiert Punktepaare nach steigendem Betrag der Linienlänge. || pvsortlineabs([[2,3],[4,5],[6,3],[−2,4],[−3,5],[−7,−9]]) || [[2,3],[4,5],[6,3],[−2,4],[−3,5],[−7,−9]] || 6077&lt;br /&gt;
|-&lt;br /&gt;
| pvsortlinearg || Sortiert Punktepaare nach steigendem Winkel der Linienrichtung. || pvsortlinearg([[2,3],[4,5],[6,3],[−2,4],[−3,5],[−7,−9]]) || [[−3,5],[−7,−9],[2,3],[4,5],[6,3],[−2,4]] || 6077&lt;br /&gt;
|-&lt;br /&gt;
| pvequals || Prüft ob zwei Punktevektoren gleich sind. Die Genauigkeit wird als dritter Parameter angegeben, oder bei einem Antwortfeld von der Antworttoleranz genommen. Prozentangaben der Genauigkeit beziehen sich auf die Breite bzw. Höhe des Punktefeldes im karthesischen Koordinatensystem. || pvequals([[2,3],[4,5],[6,3],[-2,4],[-3,5],[-7,-9]],[[2.01,3],[4,5],[6.01,3],[-2,3.99],[-3,5],[-7,-9]],2%) || true || 6077&lt;br /&gt;
|-&lt;br /&gt;
| pvhaspoint || Prüft ob sich ein Punkt innerhalb des Punktefeldes befindet. Die Genauigkeit kann wie bei pvequals als dritter Parameter angegeben werden. || pvhaspoint([[2,3],[4,5],[6,3],[-2,4],[-3,5],[-7,-9]],[4,5],2%) || true || 6077&lt;br /&gt;
|-&lt;br /&gt;
| pvhasline || Prüft ob sich eine Linie innerhalb des Punktefeldes von Linien befindet. Die Genauigkeit kann wie bei pvequals als dritter Parameter angegeben werden. || pvhaspoint([[2,3],[4,5],[6,3],[-2,4],[-3,5],[-7,-9]],[[6,3],[-2,4]],2%) || true || 6078&lt;br /&gt;
|-&lt;br /&gt;
| pvforeachline || Führt für jedes Punktepaar eine Berechnung aus und verbindet die Ergebnisse mit der Aggregatfunktion || pvforeachline([[2,3],[4,5],[6,3],[-2,4]],p,pvlineabs(p),&amp;quot;+&amp;quot;) || 10.890684873 || 6075 &lt;br /&gt;
|-&lt;br /&gt;
| pvfunc || Erzeugt aus einer Funktionen in einer Variablen (x-Achse) eine Punktmatrix der Funktionswerte (y-Achse). pvfunc(funktion,variable,minx,maxx,deltax) || pvfunc(x^2,x,-2,2,0.5) || [[−2,4],[−1.5,2.25],[−1,1],[−0.5,0.25],[0,0],[0.5,0.25],[1,1],[1.5,2.25]] || 6080&lt;br /&gt;
|-&lt;br /&gt;
| pvcompare || Vergleicht einen Referenz-Linienzug mit einem eingegebenen Linienzug unter Berücksichtigung der Toleranz.&amp;lt;br&amp;gt; pvcompare(Referenz,Eingabe)&amp;lt;br&amp;gt; pvcompare(Referenz,Eingabe,Toleranz)&amp;lt;br&amp;gt; pvcompare(Referenz,Eingabe,MinX,MaxX,MinY,MaxY) &amp;lt;br&amp;gt; pvcompare(Referenz,Eingabe,MinX,MaxX,MinY,MaxY,Toleranz) || pvcompare([[0,0],[1,1],[2,1],[3,0]],[[0,0],[1,1],[2,1],[3,0]],0,3,-5,5) || true  || 6080&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Typ-Funktionen===&lt;br /&gt;
Werden nur dann ausgewertet wenn der Parameter ein numerischer Wert oder eine Menge ist.&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| isset || Prüft ob es sich um eine Menge handelt. || isset([12,13,14]) || true &lt;br /&gt;
|-&lt;br /&gt;
| issetnumeric || Prüft ob es sich um eine Menge aus reellen Zahlen handelt. || issetnumeric([12,13.4,14]) || true &lt;br /&gt;
|-&lt;br /&gt;
| issetlong || Prüft ob es sich um eine Menge aus ganzen Zahlen handelt. || issetlong([12,13,14]) || true &lt;br /&gt;
|-&lt;br /&gt;
| islong || Prüft ob es sich um eine ganze Zahl handelt. || islong(12) || true &lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Algebra===&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;Hinweis:&#039;&#039; Die Indizes eines Vektors oder einer Matrix werden in Letto ausgehend von 0 weg gezählt.  &lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| matrix || erzeugt aus mehreren gleich langen Vektoren eine Matrix || matrix([1,2],[3,4]) || [[1,2],[3,4]]&lt;br /&gt;
|-&lt;br /&gt;
| inv || invertiert eine quadratische Matrix oder bildet 1/x || inv(matrix([1,2],[3,4])) || [[-2,1],[3/2,-1/2]]&lt;br /&gt;
|-&lt;br /&gt;
| vget || liefert ein Element eines Vektors oder einer Matrix [https://www.youtube.com/watch?v=T82YIt3e8ac Video] || vget([12,13,14],1) &amp;lt;br&amp;gt; vget(matrix([9,2],[3,4]),0,1) || 13 &amp;lt;br&amp;gt; 2 &lt;br /&gt;
|-&lt;br /&gt;
| vgetmaxima || liefert ein Element eines Vektors oder einer Matrix wobei der Index (wie bei Maxima) bei 1 startet. || vgetmaxima([12,13,14],1) || 12 &lt;br /&gt;
|-&lt;br /&gt;
| vset || setzt ein Element eines Vektors oder einer Matrix || vset([12,13,14],1,35) &amp;lt;br&amp;gt; vset(matrix([9,2],[3,4]),0,0,-9) || [12,35,14] &amp;lt;br&amp;gt; [[-9,2],[3,4]]&lt;br /&gt;
|-&lt;br /&gt;
| vsetmaxima || setzt ein Element eines Vektors oder einer Matrix wobei der Index (wie bei Maxima) bei 1 startet. || vsetmaxima([12,13,14],1,35) || [35,13,14]&lt;br /&gt;
|-&lt;br /&gt;
| vinsert || fügt ein Element in einen Vektor an eine gegebene Stelle ein || vinsert([12,13,14],1,25) || [12,25,13,14]&lt;br /&gt;
|-&lt;br /&gt;
| vremove || löscht ein Element eines Vektors [https://www.youtube.com/watch?v=T82YIt3e8ac Video] || vremove([12,13,14],1) || [12,14]&lt;br /&gt;
|-&lt;br /&gt;
| vabs || Berechnet den Betrag eines Vektors || vabs([3,4]) || 5&lt;br /&gt;
|-&lt;br /&gt;
| vin || Berechnet das innere Produkt von 2 Vektoren || vin([1,2,3],[4,5,6]) || 32&lt;br /&gt;
|-&lt;br /&gt;
| vex || Berechnet das ex-Produkt von 2 Vektoren im 3-dimensionalen Raum || vex([1,2,3],[4,5,6]) || [-3,6,-3]&lt;br /&gt;
|-&lt;br /&gt;
| mrows || liefert die Anzahl der Zeilen einer Matrix || mrows([[3,4,4],[3,6,54,34,3,54]]) || 2&lt;br /&gt;
|-&lt;br /&gt;
| mcols || liefert die Anzahl der Spalten einer Matrix || mcols([[3,4,4],[3,6,54,34,3,54]]) || 6 &lt;br /&gt;
|- &lt;br /&gt;
| mprod || Bildet das Matrixprodukt aus zwei Matrizen || mprod([[1,2],[3,4]],[[5,6],[7,8]]) || [[19,22],[43,50]]&lt;br /&gt;
|-&lt;br /&gt;
| mtrans || Bildet die transponierte Matrix || mtrans([[1,2],[3,4]]) || [[1,3],[2,4]]&lt;br /&gt;
|-&lt;br /&gt;
| minv || Bildet die inverse Matrix || minv([[1,2],[3,4]]) || [[-2,1],[3/2,-1/2]]&lt;br /&gt;
|-&lt;br /&gt;
| mdet || Bildet die Determinante einer quadratischen Matrix || mdet([[1,2],[3,4]]) || -2&lt;br /&gt;
|-&lt;br /&gt;
| vindex || vindex(v,x) liefert den Index des Elementes eines Vektors, welcher am nächsten bei x liegt || vindex([10,30,70],40) || 1 &lt;br /&gt;
|-&lt;br /&gt;
| vindexup || vindexup(v,x) liefert den Index des Elementes eines Vektors, welcher größer oder gleich x ist || vindexup([10,30,70],40) || 2 &lt;br /&gt;
|-&lt;br /&gt;
| vindexdown || vindexdown(v,x) liefert den Index des Elementes eines Vektors, welcher kleiner oder gleich x ist || vindexdown([10,30,70],60) || 1&lt;br /&gt;
|-&lt;br /&gt;
| verweis || verweis(M,x,n) liefert den Wert der n-ten Spalte (ohne Angabe von n die 2.Spalte) einer Matrix M wo x dem Wert in der ersten Spalte am nächsten liegt || verweis([[10,33],[20,77],[30,99]],21) || 77&lt;br /&gt;
|-&lt;br /&gt;
| verweisup || verweisup(M,x,n) liefert den Wert der n-ten Spalte (ohne Angabe von n die 2.Spalte) einer Matrix M wo x dem Wert in der ersten Spalte am nächsten liegt || verweisup([[10,33],[20,77],[30,99]],21) || 99&lt;br /&gt;
|-&lt;br /&gt;
| verweisdown || verweisdown(M,x,n) liefert den Wert der n-ten Spalte (ohne Angabe von n die 2.Spalte) einer Matrix M wo x dem Wert in der ersten Spalte am nächsten liegt || verweisdown([[10,33],[20,77],[30,99]],27,1) || 77&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Variable===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| kill || löscht Variable aus dem Variablenspeicher || kill(x,y) &amp;lt;br&amp;gt; kill(allbut(y)) &amp;lt;br&amp;gt; kill(all) || löscht die Variablen x und y &amp;lt;br&amp;gt; löscht alle Variablen mit Ausnahme von y &amp;lt;br&amp;gt; löscht alle Variable&lt;br /&gt;
|-&lt;br /&gt;
| allbut || Liefert eine Liste aller Variablen des Parsers als Menge(Vektor) mit Ausnahme der als Parameter angegebenen Variablen || allbut(x,y) || [a,b,c]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Auswertung und Programmierung===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis || Revision&lt;br /&gt;
|-&lt;br /&gt;
| ev || Auswertung eines Ausdruckes, als Parameter können Gleichungen angegeben werden, welche dann in den Ausdruck eingesetzt werden || ev(x*y,y=4) || x*4&lt;br /&gt;
|-&lt;br /&gt;
| evruntime || Auswertung eines Ausdruckes, als Parameter können Gleichungen angegeben werden, welche dann in den Ausdruck eingesetzt werden. Das &#039;&#039;&#039;Einsetzen erfolgt erst bei der Ergebnisberechnung&#039;&#039;&#039;! || evruntime(x*y,y=4) || x*4&lt;br /&gt;
|-&lt;br /&gt;
| [[nv]] || Auswertung eines Ausdruckes, als Parameter können Gleichungen angegeben werden, welche dann in den Ausdruck eingesetzt werden. Im Gegensatz zu ev werden bestehende Variable nur in den Gleichungen, aber nicht im Ausdruck selbst eingesetzt! || nv(x*y,y=4) || x*4&lt;br /&gt;
|-&lt;br /&gt;
| [[if]] || Bedingungsfunktion if(bedingung,wahrwert,falschwert) || if(4&amp;lt;6,10,12) || 10&lt;br /&gt;
|-&lt;br /&gt;
| [[if|wenn]] || Bedingungsfunktion wenn(bedingung,wahrwert,falschwert). Im Prinzip identisch wie if, jedoch kann if mit Maxima nicht verwendet werden. || wenn(4&amp;lt;6,10,12) || 10&lt;br /&gt;
|-&lt;br /&gt;
| plugin || Ruft die Berechnungsmethode des Plugins, welches als erster Stringparameter angegeben werden muss auf und übergibt die weiteren Parameter an die Berechnungsmethode des Plugins.  || plugin(&amp;quot;plugin1&amp;quot;,3) || führt die Berechnung des Plugins mit dem Namen &amp;quot;plugin1&amp;quot; mit dem Parameter 3 aus. &lt;br /&gt;
|-&lt;br /&gt;
| symbolic || Bei allen Variablen innerhalb von symbolic werden nur nicht-numerische Werte eingesetzt! Wird vor allem im Angabtext bei {= } verwendet || symbolic(x^2+2) || x^2+2&lt;br /&gt;
|-&lt;br /&gt;
| runtime || Bei dieser Funktion wird &#039;&#039;&#039;erst bei der Berechnung der Frageantwort, nach dem Einsetzen der Datensätze&#039;&#039;&#039; das &#039;&#039;&#039;komplette Maxima-Feld&#039;&#039;&#039; mit dem internen &#039;&#039;&#039;Parser&#039;&#039;&#039; durchgerechnet und danach der Parameter-Ausdruck berechnet. Dadurch kann man bei komplizierten Berechnungen eine sehr aufwendige symbolische Berechnung verhindern! || runtime(U) || &lt;br /&gt;
|-&lt;br /&gt;
| dataset || liefert alle Datensätze einer Datensatz-Definition in einem Vektor || dataset(x) || &lt;br /&gt;
|-&lt;br /&gt;
| parse || Wenn der Parameter ein String ist wird dieser String mit dem Parser interpretiert || parse(&amp;quot;2+3&amp;quot;) || 5&lt;br /&gt;
|-&lt;br /&gt;
| foreach || Führt für jedes Element einer Menge eine Berechnung aus und verbindet die Ergebnisse mit der Aggregatfunktion || foreach([2,-3,5,-6],p,cabs(p),&amp;quot;+&amp;quot;) || 16 || 6075 &lt;br /&gt;
|-&lt;br /&gt;
| pvforeachline || Führt für jedes Punktepaar einer Punktemenge eine Berechnung aus und verbindet die Ergebnisse mit der Aggregatfunktion || pvforeachline([[2,3],[4,5],[6,3],[-2,4]],p,pvlineabs(p),&amp;quot;+&amp;quot;) || 10.890684873 || 6075 &lt;br /&gt;
|-&lt;br /&gt;
| forloop || Führt eine Zählschleife aus forloop(Variable,Startwert,Wiederholbedingung,Inkrement,Ausdruck,Aggregatsfunktion). &amp;lt;br&amp;gt;Ohne Aggregatsfunktion wird ein Feld mit den Ergebnissen der Schleifeniterationen geliefert. || forloop(i,1,i&amp;lt;7,i++,i,&amp;quot;+&amp;quot;)&amp;lt;br&amp;gt;forloop(i,1,i&amp;lt;7,i:i+2,i) || 21&amp;lt;br&amp;gt;[1,3,5] || 6077&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Optimierung der Ausdrücke===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| opt   || Ausdruck wird vollständig optimiert, die Funktion wird ausgewertet und ist danach nicht mehr vorhanden. Nur bei der Verwendung des internen Parser sinnvoll. || opt(x+x) || 2*x&lt;br /&gt;
|-&lt;br /&gt;
| ratsimp || Ausdruck wird vollständig optimiert, die Funktion wird ausgewertet und ist danach nicht mehr vorhanden (wie opt, wird jedoch auch von Maxima ausgewertet) || ratsimp(x+x) || 2*x&lt;br /&gt;
|-&lt;br /&gt;
| noopt || Ausdruck wird nicht optimiert, bleibt also so erhalten wie angegeben. Die Funktion an sich geht aber verloren. || noopt(2+3) || 2+3&lt;br /&gt;
|-&lt;br /&gt;
| nopt || Ausdruck wird nicht optimiert, bleibt also so erhalten wie angegeben. Die Funktion bleibt erhalten und wird erst bei der Lösungsberechnung oder durch opt() entfernt. || noopt(2+3) || 2+3&lt;br /&gt;
|-&lt;br /&gt;
| lopt || Im Maximafeld bleibt die Funktion ohne Funktion erhalten, im Ergebnis {=  wird die Funktion entfernt und in der Lösung wird nach dem Einsetzen der Werte der Ausdruck vollständig optimiert. || lopt(x+3)  || lopt(x+3)  &lt;br /&gt;
|-&lt;br /&gt;
| lnoopt || Im Maximafeld bleibt die Funktion ohne Funktion erhalten, im Ergebnis {=  wird die Funktion entfernt und in der Lösung wird nach dem Einsetzen der Werte der Ausdruck nicht mehr optimiert. || lnoopt(x+3+2)  || lnoopt(x+5) &lt;br /&gt;
|-&lt;br /&gt;
| loptnumeric || Im Maximafeld bleibt die Funktion ohne Funktion erhalten, im Ergebnis {=  wird die Funktion entfernt und in der Lösung wird nach dem Einsetzen der Werte der Ausdruck nur numerisch optimiert. || loptnumeric(x+y)  || loptnumeric(x+y)&lt;br /&gt;
|-&lt;br /&gt;
| aopt || Bei Maxima und Lösung geht die Funktion verloren, nur innerhalb von noopt bleibt sie erhalten. Bei der Anzeige führt sie zur Optimierung das Ausdruckes nach Einsetzen der Datensätze. || aopt(x)  || x&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Anzeige und Lösungsberechnung===&lt;br /&gt;
Diese Funktionen haben entweder einen oder zwei Parameter. Der erste Parameter stellt die darzustellende Funktion dar, der zweite Parameter, welcher eine Ganzzahl sein muss, gibt an, wie die Darstellung erfolgen soll. Wird der 2.Parameter weggelassen, so wird er als 0 interpretiert.&lt;br /&gt;
* 0 Bei Berechnungen hat die Funktion keine Wirkung, bleibt aber als Funktion erhalten. Bei Lösung und Anzeige wird die Funktion ausgewertet&lt;br /&gt;
* 1 Wirkt nur bei Lösung, bei Berechnungen bleibt die Funktion erhalten&lt;br /&gt;
* 2 Wirkt nur bei Anzeige, bei Berechnungen bleibt die Funktion erhalten&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| viewpow || Gibt alle Wurzeln als Potenzen aus, und stellt alle Potenzen im Nenner als negativen Exponenten im Zähler dar || viewpow(sqrt(x)) || x^(1/2)&lt;br /&gt;
|-&lt;br /&gt;
| viewsqrt || Gibt Potenzen welche als Wurzel darstellbar sind auch als als Wurzeln mit der Funktion sqrt oder root aus || viewsqrt(x^(1/2)) || sqrt(x)&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Spezialfunktionen LeTTo ===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| points || Berechnet die erreichbare Gesamtpunkteanzahl einer Frage || points() || 2&lt;br /&gt;
|-&lt;br /&gt;
| points || Berechnet die erreichbare Punkteanzahl einer Teilfrage. Als Parameter wird die Fragenummer als Ganzzahl angegeben. || points(0) || 1&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Spezialfunktionen Technik===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| color || Widerstandsfarbcode berechnen.&amp;lt;br&amp;gt;1. Parameter muss ein Double sein&amp;lt;br&amp;gt; 2.Parameter sind die Anzahl der Farbringe&amp;lt;br&amp;gt; 3.Parameter ist der Modus (0..2-St,1..3St,2..Deutsch,3..2StEng,4..3StEng,5..Englisch || color(120,3,2) || braun,rot,braun&lt;br /&gt;
|-&lt;br /&gt;
| parsecolor || Wandelt einen String mit einem Widerstandsfarbcode in einen Double-Wert || parsecolor(&amp;quot;br-rt-br&amp;quot;) || 120&lt;br /&gt;
|-&lt;br /&gt;
| ip || Wandelt eine Long-Zahl in einen String als IP-Adresse um, oder 4 Byte-Zahlen in eine Long Zahl als IP-32-bit-Adresse || ip(1534536453)&amp;lt;br&amp;gt;ip(10,20,30,40) || &amp;quot;91.119.43.5&amp;quot;&amp;lt;br&amp;gt;169090600&lt;br /&gt;
|-&lt;br /&gt;
| parseip || Wandelt einen String mit einer IP-Adresse in einen Long-Wert || parseip(&amp;quot;91.119.43.5&amp;quot;) || 1534536453&lt;br /&gt;
|-&lt;br /&gt;
| e12 || rundet einen Zahlenwert auf den nächstliegenden Wert der [[Normreihe]] E12.&amp;lt;br&amp;gt;Die Rundung erfolgt geometrisch d.h. der Quotient zwischen Normwert und zu rundendem Wert wird minimiert. || e12(700Ohm) || 680Ohm&lt;br /&gt;
|-&lt;br /&gt;
| e12up || rundet einen Zahlenwert auf den nächstgrößerern Wert der [[Normreihe]] E12 || e12(670Ohm) || 680Ohm&lt;br /&gt;
|-&lt;br /&gt;
| e12down || rundet einen Zahlenwert auf den nächstkleineren Wert der [[Normreihe]] E12 || e12(700Ohm) || 680Ohm&lt;br /&gt;
|-&lt;br /&gt;
| ise12 || prüft ob der als Parameter übergebenen Wert ein Wert der [[Normreihe]] E12 ist.|| ise12(680Ohm) || true&lt;br /&gt;
|-&lt;br /&gt;
| norm || rundet einen Zahlenwert auf den nächstliegenden Wert einer gegebenen Wertereihe oder [[Normreihe]].&amp;lt;br&amp;gt;Die Rundung erfolgt geometrisch wenn es sich um eine logarithmisch aufgeteilte Normreihe handelt, oder sonst linear. || norm(700Ohm,E12) || 680Ohm&lt;br /&gt;
|-&lt;br /&gt;
| normup || rundet einen Zahlenwert auf den nächstgrößerern Wert einer gegebenen Wertereihe oder [[Normreihe]]. || normup(730Ohm,[1,3,5,8]) || 800Ohm&lt;br /&gt;
|-&lt;br /&gt;
| normdown || rundet einen Zahlenwert auf den nächstkleineren Wert einer gegebenen Wertereihe oder [[Normreihe]]. || normdown(700Ohm,E12) || 680Ohm&lt;br /&gt;
|-&lt;br /&gt;
| isnorm || prüft ob der als Parameter übergebenen Wert ein Wert einer gegebenen Wertereihe oder [[Normreihe]] ist. || isnorm(680Ohm,E12) || true&lt;br /&gt;
|}&lt;br /&gt;
===Raumzeiger für elektrische Maschinen===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| [[svphtosv]](a,b,c) || berechnet aus den Stranggrößen (a,b,c) einen komplexen Raumzeiger || svphtosv(0.5,0.5,-1) || 1arg60°&lt;br /&gt;
|-&lt;br /&gt;
| [[svsvtoph]](sv)&amp;lt;br&amp;gt;svsvtoph(sv,index) || berechnet aus einem komplexen Rauzeiger die Phasengrößen &amp;lt;br&amp;gt; berechnet aus einem komplexen Rauzeiger die Phasengrößen, index selektiert Stranggröße als Rückgabewert || svsvtoph(1arg60°)&amp;lt;br&amp;gt; svsvtoph(1arg60°,3)|| [0.5,0.5,-1] &amp;lt;br&amp;gt; -1&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=Ergebnisvorschau=&lt;br /&gt;
Aufruf dieses Dialoges über den [[Datei:ClipCapIt-180904-181443.PNG|25px]]-Button aus dem [[Toolbar]].&lt;br /&gt;
&lt;br /&gt;
Die Berechnungen aus dem Maxima-Feld bei der [[Beispiele Bearbeiten|Fragendefinition]] können auch über den [[Datei:ClipCapIt-180904-182120.PNG|25px]]-Button durchgeführt werden. Hier wird die Berechnung durchgeführt und das Lösungsfeld ausgefüllt, aber der Rechengang wird nicht angezeigt. &lt;br /&gt;
:[[Datei:ClipCapIt-180904-181415.PNG|400px]]&lt;br /&gt;
&lt;br /&gt;
Beim Fehlersuchen oder bei komplexen Berechnungen kann es aber hilfreich sein, den ganzen Maxima-Lösungsweg zu sehen, dies ist über den [[Datei:ClipCapIt-180904-181443.PNG|25px]]-Button möchlich.&lt;br /&gt;
&lt;br /&gt;
[[Kategorie:Berechnung]]&lt;/div&gt;</summary>
		<author><name>Ckral</name></author>
	</entry>
	<entry>
		<id>https://wiki.letto.at/wiki/index.php?title=Berechnungen&amp;diff=3241</id>
		<title>Berechnungen</title>
		<link rel="alternate" type="text/html" href="https://wiki.letto.at/wiki/index.php?title=Berechnungen&amp;diff=3241"/>
		<updated>2022-11-10T11:07:23Z</updated>

		<summary type="html">&lt;p&gt;Ckral: Formato korrigiert&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Allgemeines =&lt;br /&gt;
Berechnungen werden in mehreren Bereichen der Frageerstellung verwendet und bilden die Basis für [[Fragetypen#Berechnungsfrage|Berechnungsfrage]] und [[Fragetypen#Mehrfachberechnungsfrage|Mehrfachberechnungsfrage]].&lt;br /&gt;
&lt;br /&gt;
Alle Berechnungen unterstützen [[Einheit|Einheiten]] und symbolische Auswertung.&lt;br /&gt;
&lt;br /&gt;
=Grundsätzlicher Aufbau der Ergebnis-Berechnung bei Fragen mit Berechnungen=&lt;br /&gt;
[[Datei:BerechnungSchema.png|mini|hochkant=2.0|Schema der Berechnung]]&lt;br /&gt;
Die Berechnung und die Beurteilung einer Frage teilt sich in 3 grundsätzliche Schritte:&lt;br /&gt;
* Berechnnug der geschlossenen Lösung (Formel) aus den Maxima-Feldern &lt;br /&gt;
* Berechnung des Ergebnisses einer Frage durch Einsetzen der Zahlenwerte aus den Datensätzen in die geschlossene Lösung&lt;br /&gt;
* Beurteilung der Schülereingabe durch Vergleich mit dem Ergebnis&lt;br /&gt;
&lt;br /&gt;
=Konstante=&lt;br /&gt;
Alle Konstante welche in Letto definiert sind beginnen mit einem Prozentzeichen. Verwendet man den Variablennamen ohne Prozenzzeichen, so wird die Konstante wie eine Variable mit dem Wert der Konstanten verwendet.&lt;br /&gt;
&lt;br /&gt;
Liste der definierten Konstanten:&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%&amp;quot; &lt;br /&gt;
| Name || Wert || Beschreibung&lt;br /&gt;
|-&lt;br /&gt;
| %i || i || komplexer Parameter als Lösung der Gleichung x^2=-1&lt;br /&gt;
|-&lt;br /&gt;
| %j || i || komplexer Parameter als Lösung der Gleichung x^2=-1&amp;lt;br&amp;gt;&amp;lt;b&amp;gt;Wichtig:&amp;lt;/b&amp;gt; Wir nur vom Parser unterstützt, nicht von Maxima&lt;br /&gt;
|-&lt;br /&gt;
| %e || 2.718281828459045 || Eulersche Zahl &lt;br /&gt;
|-&lt;br /&gt;
| %pi || 3.141592653589793 || Kreiszahl&lt;br /&gt;
|-&lt;br /&gt;
| %mu0 || magnetische Feldkonstante || 4*%pi*1E-7&#039;Vs/Am&#039;&lt;br /&gt;
|-&lt;br /&gt;
| %m0 || magnetische Feldkonstante (alt, wird bald entfernt werden) || 4*%pi*1E-7&#039;Vs/Am&#039;&lt;br /&gt;
|-&lt;br /&gt;
| %epsilon0 || elektrische Feldkonstante || 8.85418781762039E-12&#039;As/Vm&#039;&lt;br /&gt;
|-&lt;br /&gt;
| %e0 || elektrische Feldkonstante (alt, wird bald entfernt werden) || 8.85418781762039E-12&#039;As/Vm&#039;&lt;br /&gt;
|-&lt;br /&gt;
| %c0 || Lichtgeschwindigkeit || 299792458&#039;m/s&#039;&lt;br /&gt;
|-&lt;br /&gt;
| %Qe || Elementarladung || 1.602176620898E-19As&lt;br /&gt;
|-&lt;br /&gt;
| %g  || Erdbeschleunigung || 9.81&#039;m/s^2&#039;&lt;br /&gt;
|-&lt;br /&gt;
| %NA || Avogadro Konstante || 6.02214085774E23/mol&lt;br /&gt;
|-&lt;br /&gt;
| %k  || Stefan Bolzman Konstante || 1.3806485279E-23&#039;J/K&#039;&lt;br /&gt;
|-&lt;br /&gt;
| %R0 || Universelle Gaskonstante || 8.314459848&#039;J/Kmol&#039;&lt;br /&gt;
|-&lt;br /&gt;
| %h || planksches Wirkungsquantum || 6.6260704081E-34Js&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=Berechnung mit Maxima=&lt;br /&gt;
* Maxima wird &#039;&#039;&#039;nur für symbolische Berechnungen&#039;&#039;&#039; bei der Erstellung von Beispielen verwendet. Hierbei wird, wie schon oberhalb im Schema angegeben, zuerst die Moodle.mac geladen, dann das [[Beispielsammlung Editieren#Maxima-Feld|Maxima-Feld]] berechnet und anschließend die Maxima-Felder aller Teilfragen. Das Ergebnis der Berechnung wird dann als symbolischer Ausdruck im Lösungfeld eingetragen.&lt;br /&gt;
* Da zum Zeitpunkt der &#039;&#039;&#039;Maxima-Berechnung keine Datensätze&#039;&#039;&#039; vorhanden sind, kann keine numerische Berechnung in Maxima durchgeführt werden, welche die [[Datensätze]] benötigt. Dies muss der interne Parser zum Zeitpunkt des Online-Test-Laufes erledigen. Numerische Berechnungen, welche der interne Parser nicht kann können deshalb auch nicht mit Maxima berechnet werden.&lt;br /&gt;
* Da das Lösungsfeld, welches mit Maxima berechnet wird symbolisch ausgewertet wird, können in Maxima sämtliche symbolischen Berechnungsverfahren angewendet werden, welche ein symbolisches Ergebnis liefern und keine numerischen Werte der Datensätze benötigen.&lt;br /&gt;
* Reicht im Maximafeld die Zeilenlänge nicht aus ist es möglich einen defninierten Zeilenumbruch zu realisieren. Schreiben Sie dazu &amp;quot;\&amp;quot; (einfacher Backslash) am Ende der Zeile.  &lt;br /&gt;
* &#039;&#039;&#039;Funktionsdeklarationen&#039;&#039;&#039; wie &#039;&#039;&#039;f(x):=&#039;&#039;&#039;x^2 mit Doppelpunkt-Ist-Gleich sind im Maxima-Feld nur eingeschränkt bis gar &#039;&#039;&#039;nicht verwendbar&#039;&#039;&#039;, da sie vom Parser nicht unterstützt werden.&lt;br /&gt;
* &#039;&#039;&#039;Mengen von Maxima&#039;&#039;&#039; sind in LeTTo n&#039;&#039;&#039;icht verwendbar&#039;&#039;&#039;. LeTTo verwender hierzu eigene Funktionen des Parsers welche mit &amp;quot;set&amp;quot; beginnen und auf Vektoren basieren.&lt;br /&gt;
&lt;br /&gt;
=Berechnung mit dem internen Parser=&lt;br /&gt;
* Der interne Parser kann durch Wahl der Checkbox &amp;quot;Parser&amp;quot; anstatt von Maxima für die Berechnung des Maxima-Feldes verwendet werden. &lt;br /&gt;
* Jedenfalls wird der Parser zur Test-Laufzeit für die Berechnung des Ergebnisses einer Frage aus Lösung und Datensätzen und zum Berechnen der Schülereingabe verwendet.&lt;br /&gt;
&lt;br /&gt;
==Operatoren==&lt;br /&gt;
=== VORSICHT mit MAXIMA ===&lt;br /&gt;
* Einige Operatoren sind in &#039;&#039;&#039;Maxima anders&#039;&#039;&#039;, oder &#039;&#039;&#039;nicht definiert&#039;&#039;&#039;. Möchte man im Maximafeld die Operatoren des Parsers-verwenden, so muss das gesamte Maxima-Feld &#039;&#039;&#039;mit dem Parser gerechnet&#039;&#039;&#039; werden. Man verliert dadurch jedoch die Vorteile der Maxima-Berechnung.&lt;br /&gt;
* Alternativ kann man statt der Operatoren auch &#039;&#039;&#039;Funktionen verwenden&#039;&#039;&#039; (zB: ne() statt != ). Diese werden dann von Maxima zwar nicht ausgewertet, die Berechnung bleibt aber trotzdem korrekt und kann mit Maxima durchgeführt werden.&lt;br /&gt;
* Es gibt einige Funktionen welche in &#039;&#039;&#039;Maxima existieren&#039;&#039;&#039; aber im &#039;&#039;&#039;Parser nicht, oder mit anderem Syntax&#039;&#039;&#039;.&lt;br /&gt;
** Wenn diese von Maxima nicht ausgewertet werden können, da sie &#039;&#039;&#039;Datensätze&#039;&#039;&#039; enthalten welche zu Auswertezeitpunkt von Maxima noch &#039;&#039;&#039;nicht mit Werten belegt&#039;&#039;&#039; sind, &#039;&#039;&#039;dürfen sie in der Berechnung nicht verwendet werden&#039;&#039;&#039;, da der Parser dann damit nichts anfangen kann.&lt;br /&gt;
** Solche Funktionen haben entweder im Parser eine alternative Schreibweise welche auch mit Maxima verwendet werden kann (z.B.: wenn), oder sie können prinzipell nicht verwendet werden. (Für wichtige Funktionsweisen könnte man in zukünftigen Versionen neue Funktionalitäten in den Parser einbauen, die die gewünschte Funktion erfüllen)&lt;br /&gt;
** Ein weiter Möglichkeit für die Verwendung solcher Funktionen ist der Verzicht auf Datensätze in diesen Funktionen, damit diese Funktion beim Auswerten des Maxima-Feldes bereits ausgewertet werden kann und somit der Parser davon nichts mehr sieht.&lt;br /&gt;
** zB:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
if then&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Infix Operatoren===&lt;br /&gt;
====arithmetische Operatoren====&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Operator || Priorität || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| + || 40 || Addition || 4+5 || 9 &lt;br /&gt;
|-&lt;br /&gt;
| - || 40 || Subtraktion || 6-2 || 4&lt;br /&gt;
|-&lt;br /&gt;
| * || 50 || Multiplikation || 4*5 || 20&lt;br /&gt;
|-&lt;br /&gt;
| / || 51 || Division || 20/4 || 5&lt;br /&gt;
|-&lt;br /&gt;
| % || 51 || Divisionsrest || 104%20 || 4&lt;br /&gt;
|-&lt;br /&gt;
| / / || 60 || Parallelschaltung || x / / y || x*y/(x+y)&lt;br /&gt;
|-&lt;br /&gt;
| ^ || 90 || Potenz || 2^3 || 8&lt;br /&gt;
|-&lt;br /&gt;
| .*. || 200 || Operator der intern für eine fehlende bindende Multiplikation verwendet wird || 4x || 4*x&lt;br /&gt;
|-&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
====Bitoperatoren====&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Operator || Priorität || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
||  |  || 20 || Bitweise oder logisches ODER ||| 9|5 &amp;lt;br&amp;gt; true|false || 13 &amp;lt;br&amp;gt;true&lt;br /&gt;
|-&lt;br /&gt;
| or || 20 || Bitweise oder logisches ODER || 9 or 5 || 13&lt;br /&gt;
|-&lt;br /&gt;
| &amp;amp;  || 21 || Bitweise oder logisches UND  || 13&amp;amp;10 || 8&lt;br /&gt;
|-&lt;br /&gt;
| and || 21 || Bitweise oder logisches UND  || 13 and 10 || 8&lt;br /&gt;
|-&lt;br /&gt;
| xor || 22 || Bitweise oder logisches exklusiv oder XOR  || 13 xor 10 || 7&lt;br /&gt;
|-&lt;br /&gt;
| imp || 23 || Bitweise oder logisches impliziert IMP || 13 imp 10 || 8&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;&amp;lt;  || 35 || Bitweise links schieben  || 5&amp;lt;&amp;lt;2 || 20&lt;br /&gt;
|-&lt;br /&gt;
| &amp;gt;&amp;gt;  || 35 || Bitweise rechts schieben || 8&amp;gt;&amp;gt;2 || 2&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
====Vergleichsoperatoren====&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Operator || Priorität || Beschreibung || Beispiel&lt;br /&gt;
|-&lt;br /&gt;
| =  || 3 || Gleichungsoperator || x=y&lt;br /&gt;
|-&lt;br /&gt;
| == || 30 || Gleichungsoperator || x==y&lt;br /&gt;
|-&lt;br /&gt;
| != || 30 || Ungleichungsoperator || x!=y&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt; || 32 || Kleiner || x&amp;lt;y&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;= || 32 || Kleiner gleich || x&amp;lt;=y&lt;br /&gt;
|-&lt;br /&gt;
| &amp;gt; || 32 || größer || x&amp;gt;y&lt;br /&gt;
|-&lt;br /&gt;
| &amp;gt;= || 32 || größer gleich || x&amp;gt;=y&lt;br /&gt;
|}&lt;br /&gt;
====Organisative Operatoren====&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Operator || Priorität || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| , || 0 || Listen-Trennzeichen || x,y ||&lt;br /&gt;
|-&lt;br /&gt;
| $ || 1 || Trennzeichen zwischen mehreren Berechnungen || ||&lt;br /&gt;
|-&lt;br /&gt;
| ; || 1 || Trennzeichen zwischen mehreren Berechnungen || ||&lt;br /&gt;
|-&lt;br /&gt;
| : || 2 || Zuweisung an eine Variablen auf der linken Seite || x:5 || &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Prefix Operatoren===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Operator || Priorität || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| + || 45 || positives Vorzeichen || +5 || 5&lt;br /&gt;
|-&lt;br /&gt;
| - || 45 || negatives Vorzeichen || -(-5) || 5&lt;br /&gt;
|-&lt;br /&gt;
| ~ || 95  || bitweise Inversion einer 64bit-Ganzzahl || ~0x0F0F || 0xFFFFFFFFFFFFF0F0&lt;br /&gt;
|-&lt;br /&gt;
| ! || 120 || logisches NOT || !(3&amp;lt;4) || false&lt;br /&gt;
|-&lt;br /&gt;
| ++ || 130 || Inkrement von Ganzzahlen || ++x || erhöht x um eins und gibt das Ergebnis nach der Erhöhung zurück&lt;br /&gt;
|-&lt;br /&gt;
| -- || 130 || Dekrement von Ganzzahlen || --x || vermindert x um eins und gibt das Ergebnis nach der Verminderung zurück&lt;br /&gt;
|-&lt;br /&gt;
| % || 200 || Prefix für Namen, welche als Konstante definiert sind || %pi || 3.141592653589793&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Suffix Operatoren===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Operator || Priorität || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| ++ || 135 || Inkrement von Ganzzahlen || x++ || erhöht x um eins und gibt den Variablenwert vor der Erhöhung zurück&lt;br /&gt;
|-&lt;br /&gt;
| -- || 135 || Dekrement von Ganzzahlen || x-- || vermindert x um eins und gibt den Variablenwert vor der Verminderung zurück&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==Klammern==&lt;br /&gt;
* () runde Klammern werden für mathematische Ausdrücke zur Klammerung verwendet&lt;br /&gt;
* {} geschwungene Klammer werden im Angabetext für die Namen der Datensätze verwendet&lt;br /&gt;
* [] eckige Klammern werden für Vektoren und Matrizen verwendet&lt;br /&gt;
&lt;br /&gt;
==Funktionen==&lt;br /&gt;
===Funktionen für Ganzzahlen===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| band || bitweises UND || band(4,12) || 4&lt;br /&gt;
|-&lt;br /&gt;
| bor  || bitweises ODER || bor(4,1) || 5&lt;br /&gt;
|-&lt;br /&gt;
| bxor || bitweises EXKLUSIV ODER || band(4,5) || 1&lt;br /&gt;
|-&lt;br /&gt;
| bimp || bitweises Parameter1 impliziert Parameter2 || bimp(13,10) || 8&lt;br /&gt;
|-&lt;br /&gt;
| binv || bitweises NICHT mit 8 bit || binv(0x0F) || 0xF0&lt;br /&gt;
|-&lt;br /&gt;
| shl || Schiebe Ganzzahl bitweise nach links || shl(8,2) || 32&lt;br /&gt;
|-&lt;br /&gt;
| shr || Schiebe Ganzzahl bitweise nach rechts || shr(8,2) || 2&lt;br /&gt;
|-&lt;br /&gt;
| div || Ganzzahldivision, Ergebnis wird abgeschnitten || div(5,2) || 2&lt;br /&gt;
|-&lt;br /&gt;
| inv8  || bitweise Invertieren und die letzten 8 Bit bestimmen  || inv8(0b1001) || 0b11110110&lt;br /&gt;
|-&lt;br /&gt;
| inv16 || bitweise Invertieren und die letzten 16 Bit bestimmen || inv16(0xF0)  || 0xFF0F&lt;br /&gt;
|-&lt;br /&gt;
| inv32 || bitweise Invertieren und die letzten 32 Bit bestimmen || inv32(0xF0)  || 0bFFFFFF0F&lt;br /&gt;
|-&lt;br /&gt;
| inv64 || bitweise Invertieren und die letzten 64 Bit bestimmen || inv64(0xF0)  || 0bFFFFFFFFFFFFFF0F&lt;br /&gt;
|-&lt;br /&gt;
| byte  || Zahl in eine Ganzzahl wandeln und die letzten 8bit der Zahl Abschneiden, Einheit geht verloren  || byte(34.2) || 34&lt;br /&gt;
|-&lt;br /&gt;
| word  || Zahl in eine Ganzzahl wandeln und die letzten 16bit der Zahl Abschneiden, Einheit geht verloren || word(34.2) || 34&lt;br /&gt;
|-&lt;br /&gt;
| int   || Zahl in eine Ganzzahl wandeln und die letzten 32bit der Zahl Abschneiden, Einheit geht verloren || int(34.2) || 34&lt;br /&gt;
|-&lt;br /&gt;
| long  || Zahl in eine Ganzzahl wandeln , Einheit geht verloren || long(34.2) || 34&lt;br /&gt;
|-&lt;br /&gt;
| [[parity]]  || Paritätsberechnung : parity(Parität,Codewortlänge,Datenwort[,Datenwort,....]) || parity(even,7,&amp;quot;xy&amp;quot;) || &lt;br /&gt;
|-&lt;br /&gt;
| [[blockparity]]  || Kreuz oder Blockparität : blockparity(Parität,Codewortlänge,Codewortanzahl,Datenwort[,Datenwort,....]) || blockparity(even,7,3,&amp;quot;abc&amp;quot;) || &lt;br /&gt;
|-&lt;br /&gt;
| [[bcd]]  || Wandelt in eine Long-Zahl in ein Feld aus BCD-kodierten Zahlen um || bcd(124) || [1,2,4]&lt;br /&gt;
|-&lt;br /&gt;
| [[code]] || Code aus mehreren Codeworten zusammensetzen : code(Codewortlänge,Datenwort[,Datenwort,....]) || code(5,4,3,5) || 0b1000001100101&lt;br /&gt;
|-&lt;br /&gt;
| [[hamming]] || Bestimmt den Hamming-Abstand von mehreren Codeworten || hamming(1,2,4,8,16) || 2&lt;br /&gt;
|-&lt;br /&gt;
| [[komplement]] ||  Bildet das Zweierkomplement mit einer negativen Zahl mit einer bestimmten Bitanzahl, fehlt die Bitanzahl, so wird ein 32Bit-2er-komplement gebildet || komplement(-5,8) || 0b11111011&lt;br /&gt;
|-&lt;br /&gt;
| [[bitstream]] || Erzeugt aus einer Ganzzahl einen Bitstrom als String mit einer definierten Anzahl von Bit (MSB werden nötigenfalls mit 0 gefüllt) : bitstream(Daten,Bitanzahl) || bitstream(0x184,12) || &amp;quot;000110000100&amp;quot;&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Funktionen für rationale und Ganzzahlen===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| kgV || berechnet das kleinste gemeinsame Vielfache von mehreren Zahlen || kgV(3,10) || 30&lt;br /&gt;
|-&lt;br /&gt;
| ggT || berechnet den größten gemeinsamen Teiler von mehreren Zahlen || ggT(12,10) || 2&lt;br /&gt;
|- &lt;br /&gt;
| isprim || prüft ob die angegebene Zahl eine Primzahl ist || isprim(13) || true&lt;br /&gt;
|-&lt;br /&gt;
| prims || zerlegt eine Ganzzahl in ihre Primfaktoren || prims(12) || [2,2,3]&lt;br /&gt;
|-&lt;br /&gt;
| defracmix || zerlegt eine rationale Zahl in einen gemischten Bruch aus ganzzahligem Summanden, Zähler und Nenner als Menge&amp;lt;br&amp;gt;Die erhaltene Menge kann mit dem Format-Modfier &#039;&#039;&#039;frac&#039;&#039;&#039; als gemischter Bruch dargestellt werden (siehe [[Zahlendarstellung]]) || defracmix(14/12)&amp;lt;br&amp;gt;defracmix(-15/12)&amp;lt;br&amp;gt;defracmix(3/12) || [1,2/12]&amp;lt;br&amp;gt;[-1,3,12]&amp;lt;br&amp;gt;[0,3,12] &lt;br /&gt;
|-&lt;br /&gt;
| defrac || zerlegt eine rationale Zahl in Zähler und Nenner als Menge &amp;lt;br&amp;gt;Die erhaltene Menge kann mit dem Format-Modfier &#039;&#039;&#039;frac&#039;&#039;&#039; als gemischter Bruch dargestellt werden || defrac(14/12) || [13,12]&lt;br /&gt;
|-&lt;br /&gt;
| frac || erzeugt aus einer Menge aus 2 oder 3 Elementen (von defrac) eine rationale Zahl || frac([3,7])&amp;lt;br&amp;gt;frac([1,2,3]) || 3/7 &amp;lt;br&amp;gt; 5/3&lt;br /&gt;
|-&lt;br /&gt;
| mod || Mathematische Implementierung von [https://de.wikipedia.org/wiki/Division_mit_Rest#Modulo modulo]: Divisionsrest einer Division mit ganzzahligem Ergebnis || mod(5,2) &amp;lt;br&amp;gt; mod(6.2,2.5) &amp;lt;br&amp;gt; mod(-4,3) || 1&amp;lt;br&amp;gt;1.2 &amp;lt;br&amp;gt; 2&lt;br /&gt;
|-&lt;br /&gt;
| mod2 || Symmetrische Implementierung von [https://de.wikipedia.org/wiki/Division_mit_Rest#Modulo modulo]: Divisionsrest einer Division mit ganzzahligem Ergebnis &amp;lt;br&amp;gt;Der Unterschied zu mod liegt in der Behandlung von negativen Zahlen des ersten Arguments &amp;lt;br&amp;gt;Siehe auch Divisionsrest des Parser-Operators % [[Berechnungen#arithmetische_Operatoren]] || mod2(5,2) &amp;lt;br&amp;gt; mod2(6.2,2.5) &amp;lt;br&amp;gt; mod2(-4,3) || 1&amp;lt;br&amp;gt;1.2 &amp;lt;br&amp;gt; -1&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===boolsche Funktionen===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| eq || gleich || eq(4,4) || true&lt;br /&gt;
|-&lt;br /&gt;
| eqruntime || symbolischer Vergleich, welcher &#039;&#039;&#039;symbolisch erst bei der Ergebnisberechnung&#039;&#039;&#039; ausgeführt wird. Muss verwendet werden, wenn bei Vergleichen symbolische Antworten von Schülern (Q0,Q1,...) verwendet werden.  || eqruntime(x+3*y,3*y+x) || true&lt;br /&gt;
|-&lt;br /&gt;
| ne || ungleich || ne(6,4) || true&lt;br /&gt;
|-&lt;br /&gt;
| ge || größer gleich || ge(6,4) || true&lt;br /&gt;
|-&lt;br /&gt;
| le || kleiner gleich || le(6,4) || false&lt;br /&gt;
|-&lt;br /&gt;
| gt || größer || gt(6,4) || true&lt;br /&gt;
|-&lt;br /&gt;
| lt || kleiner || lt(6,4) || false&lt;br /&gt;
|-&lt;br /&gt;
| between || prüft ob Parameter1 kleiner als Parameter2 und Parameter2 kleiner als Parameter 3 || between(3,4,5) || true&lt;br /&gt;
|-&lt;br /&gt;
| land || logisches UND || land(a&amp;lt;b,b&amp;lt;c) || &lt;br /&gt;
|-&lt;br /&gt;
| lor  || logisches ODER || lor(a&amp;lt;b,b&amp;lt;c) || &lt;br /&gt;
|-&lt;br /&gt;
| not  || logisches NICHT. Vorsicht ein symbolisches Ergebnis von Maxima liefert not als Prefix-Operator, welcher vom Parser nicht unterstützt wird ( Verwende statt dessen &#039;&#039;&#039;lnot&#039;&#039;&#039; ) || not(a&amp;lt;b) || &lt;br /&gt;
|-&lt;br /&gt;
| lnot  || logisches NICHT, wie not jedoch wird es von Maxima nicht ausgewertet || lnot(a&amp;lt;b) || &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===arithmetische Funktionen===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| double || Zahl in eine Gleitkommazahl umwandeln, die Einheit geht dabei verloren || double(3.4V) || 3.4&lt;br /&gt;
|-&lt;br /&gt;
| numeric || verwirft die Einheit, wenn eine vorhanden ist und liefert nur den Zahlenwert || numeric(2.3mA) &amp;lt;br&amp;gt; numeric(5%)|| 0.0023 &amp;lt;br&amp;gt; 5&lt;br /&gt;
|-&lt;br /&gt;
| unit || gibt die SI-Einheit mit dem Zahlenwert 1 zurück || unit(3.1kA) &amp;lt;br&amp;gt; unit(5%) || 1A &amp;lt;br&amp;gt; 1%&lt;br /&gt;
|-&lt;br /&gt;
| cround  || Rundet die Zahl kaufmännisch, der zweite Parameter gibt die Anzahl der Kommastellen an, ohne 2.Parameter wird auf Ganzzahlen gerundet, bei komplexen Zahlen wird Betrag und Winkel in Grad gerundet. || cround(23.535,2)&amp;lt;br&amp;gt;cround(2.435arg34.5364°,1) || 23.54&amp;lt;br&amp;gt;2.4arg34.5°&lt;br /&gt;
|-&lt;br /&gt;
| ccround  || Rundet die Zahl kaufmännisch, der zweite Parameter gibt die Anzahl der Kommastellen an, bei komplexe Zahlen wird Real und Imaginärteil gerundet. || ccround(2.4534+5.645*%i,2) || 2.45+5.65i&lt;br /&gt;
|-&lt;br /&gt;
| round  || Rundet die Zahl kaufmännisch, aus Kompatibilitätsgründen zu Maxima hat round nur einen Parameter || round(23.535) || 24&lt;br /&gt;
|-&lt;br /&gt;
| ground || Rundet die Zahl auf die im zweiten Parameter angegebenen gültigen Ziffern || ground(2453.43,2) || 2500&lt;br /&gt;
|-&lt;br /&gt;
| floor  || Rundet auf die größte ganze Zahl, welche kleiner oder gleich x ist || floor(24.5) || 24&lt;br /&gt;
|-&lt;br /&gt;
| trunc  || Schneidet die Zahl nach dem Komma ab || trunc(24.5) || 24&lt;br /&gt;
|-&lt;br /&gt;
| ceiling || ceiling(x) Rundet auf die kleinste ganze Zahl, welche größer oder gleich x ist || ceiling(13.2) || 14&lt;br /&gt;
|-&lt;br /&gt;
| pow || Potenzfunktion || pow(2,3) || 8&lt;br /&gt;
|-&lt;br /&gt;
| par || Parallelschaltung von Widerständen || par(x,y) || x*y/(x+y)&lt;br /&gt;
|-&lt;br /&gt;
| min  || Minimum von mehrere Werten suchen || min(3,5,1) || 1&lt;br /&gt;
|-&lt;br /&gt;
| max  || Maximum von mehreren Werten suchen || max(3,5,1) ||  5&lt;br /&gt;
|-&lt;br /&gt;
| random  || Zufallszahl aus einem definierten Zahlenbereich random(minimal,maximal)&amp;lt;br&amp;gt;VORSICHT! Die Zufallszahl wird bei jedem Aufruf neu berechnet, weshalb sich der Wert bei jedem Anzeigevorgang einer Frage ändert. Sollte sich der berechnete Wert für eine Schülerangabe zwischen Fragestellung und Ergebniskontrolle nicht ändern dürfen (ist der Normalfall) muss man einen &#039;&#039;&#039;Datensatz statt einer Zufallszahl&#039;&#039;&#039; verwenden! &amp;lt;br&amp;gt; Zufallszahlen haben in der Ergebnisberechnung keinen Sinn, und sollten maximal für angezeigte zufällige Werte verwendet werden! || random(2,8) ||  3.4532&lt;br /&gt;
|-&lt;br /&gt;
| randomC  || komplexe Zufallszahl aus einem definierten Zahlenbereich für den Betrag&amp;lt;br&amp;gt;VORSICHT! Die Zufallszahl wird bei jedem Aufruf neu berechnet!  || randomC(2,8) ||  3.4532arg40.3°&lt;br /&gt;
|-&lt;br /&gt;
| signum  || Liefert das Vorzeichen einer Zahl (-1,0,1). Bei einer komplexen Zahl das Vorzeichen des Realteils. || signum(-4) || -1&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Maxima-basierte Funktionen ===&lt;br /&gt;
* Diese Funktionen funktionieren nur wenn Maxima installiert ist und werden immer an Maxima gesendet, auch wenn der interne Parser aktiviert ist.&lt;br /&gt;
* Weiters werden sie bei der Ausgabe als TeX-Formel auch korrekt mit LaTeX gesetzt.&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| integrate || Berechnet das unbestimmte oder bestimmte Integral einer Funktion. || integrate(x^2,x) &amp;lt;br&amp;gt; integrate(x^2,x,0,2) || x^3/3 &amp;lt;br&amp;gt; 8/3  &lt;br /&gt;
|-&lt;br /&gt;
| diff || Berechnet die Ableitung einer Funktion.  || diff(x^2,x)&amp;lt;br&amp;gt;diff(3*x^2,x,2) || x &amp;lt;br&amp;gt; 6&lt;br /&gt;
|-&lt;br /&gt;
| tomaxima || Führt die Berechnung aller Parameter von links nach rechts hintereinander mit Maxima aus. Das Ergebnis ist dann das Ergebnis des letzten Parameters. || tomaxima(y:x^2,y+2) || x^2+2&lt;br /&gt;
|-&lt;br /&gt;
| laplace || Bestimmt die Laplace-Transformierte einer Funktion. || laplace(sin(t),t,s) || 1/(1+s^2)&lt;br /&gt;
|-&lt;br /&gt;
| ilt || Bestimmt die inverse Laplace-Transformierte eine Laplace-Funktion || ilt(1/(1+s),s,t) || e^(-t)&lt;br /&gt;
|-&lt;br /&gt;
| sum || Summenbildung || sum(1/k,k,1,2) || 3/2&lt;br /&gt;
|-&lt;br /&gt;
| product || Produktbildung || product(1/k,k,1,3) || 1/6&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===erweiterte arithmetische Funktionen===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| sigma || Sprungfunktion: sigma(x) liefert 0 für x&amp;lt;0 und 1 für x&amp;gt;=0 || sigma(243.3) || 1&lt;br /&gt;
|-&lt;br /&gt;
| pulse || Rechteckfunktion: &amp;lt;br&amp;gt;pulse(x,x0) ist gleich 1 für x0 &amp;lt; x &amp;lt; x0 + 1, sonst 0&amp;lt;br&amp;gt;pulse(x,x0,L) ist gleich 1 für x0 &amp;lt; x &amp;lt; x0 + L, sonst 0&amp;lt;br&amp;gt;[[Datei:pulse.png|300px]] || pulse(x,2,4) || [[Datei:pulse_x_2_4.png|100px]]&lt;br /&gt;
|-&lt;br /&gt;
| interpol || Interpolationsfunktion zwischen mehreren Stützpunkten in einem Koordinatensystem. &amp;lt;br&amp;gt; interpol(WerteX,WerteY,x) || interpol([0,1,2],[0,3,3],1.5) || 3&lt;br /&gt;
|-&lt;br /&gt;
| periodic || Erzeugt aus einer beliebigen Funktion zwischen 0 und Periodendauer eine periodische Funktion &amp;lt;br&amp;gt; periodic(Variable,Periodendauer,Funktion)&amp;lt;br&amp;gt; periodic(Variable,Periodendauer,Funktionsperiodendauer,Funktion) || ch1(t):periodic(t,5ms,2&#039;Vms-2&#039;*t^2) &amp;lt;br&amp;gt; ch1(t):periodic(t,5ms,1,2V*t^2) || :[[Datei:ClipCapIt-190318-113524.PNG|100px]] &amp;lt;br&amp;gt; :[[Datei:ClipCapIt-190318-113644.PNG|100px]]&lt;br /&gt;
|-&lt;br /&gt;
| numint || numerische Integration &amp;lt;br&amp;gt; numint(untereGrenze,obereGrenze,funktion,Variable)&amp;lt;br&amp;gt; numint(untereGrenze,obereGrenze,funktion,Variable,punkteAnzahl) || numint(0,2pi,sin(t),t) || 0&lt;br /&gt;
|-&lt;br /&gt;
| numdif || numerisches Differenzieren einer Funktion &amp;quot;funktion&amp;quot; nach einer Variablen &amp;quot;Variable&amp;quot; an der Stelle &amp;quot;position&amp;quot; mit einer Differenz der Variablen von &amp;quot;differenz&amp;quot; &amp;lt;br&amp;gt; numdif(position,funktion,Variable,differenz) || numdif(0,sin(t),t,0.01) || 1&lt;br /&gt;
|-&lt;br /&gt;
| solve || löst eine Gleichung oder ein Gleichungssystem nach einer oder mehrerer Variablen || solve([2*x+y=3,x-y=0],[x,y]) || [ [ x=1,y=1 ] ]&lt;br /&gt;
|-&lt;br /&gt;
| solvevalue || löst eine Gleichung oder ein Gleichungssystem nach einer Variablen und liefert genau die erste Lösung wenn sie numerisch berechenbar ist || solvevalue([ 2*x+y=3,x-y=0 ],[ x,y ],x)  || 1&lt;br /&gt;
|-&lt;br /&gt;
| newton || Bestimmt eine Nullstelle einer Funktion nach dem Newton-Verfahren. Der erste Parameter ist ein Ausdruck in einer Variablen, der zweite Parameter ist der Startwert. || newton(x^2-4,4) || 2&lt;br /&gt;
|-&lt;br /&gt;
| cnewton || Bestimmt eine komplexe Nullstelle einer Funktion nach dem Newton-Verfahren. Der erste Parameter ist ein Ausdruck in einer Variablen, der zweite Parameter ist der komplexe Startwert. || newton(x^2+4,4) || 2*%i&lt;br /&gt;
|-&lt;br /&gt;
| newtonall || Bestimmt alle Nullstellen einer Funktion mit einem Betrag des Funktionsparameters kleiner als ein definierter Wert nach dem Newton-Verfahren. Der erste Parameter ist ein Ausdruck in einer Variablen, der zweite Parameter ist der maximale Betrag des Funktionsparameters. Das Ergebnis ist immer ein Vektor mit den nach aufsteigendem Funktionswert sortierten Nullstellen. || newton(x^2-4,4) || [-2,2]&lt;br /&gt;
|-&lt;br /&gt;
| cnewtonall || Bestimmt alle komplexen Nullstellen einer Funktion mit einem Betrag des Funktionsparameters kleiner als ein definierter Wert nach dem Newton-Verfahren. Der erste Parameter ist ein Ausdruck in einer Variablen, der zweite Parameter ist der maximale Betrag des Funktionsparameters. Das Ergebnis ist immer ein Vektor mit den Nullstellen. || newton(x^2+4,4) || [-2*%i,2*%i]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Stringfunktionen===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| dechex || Zahl in eine Ganzzahl wandeln und als Hexadezimal-String ausgeben || dexhex(12) || &amp;quot;0xC&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| chr || Bestimmt die Zeichen mit dem ASC-II-Code der Long-Parameter und setzt daraus einen String zusammen. || chr(0x65,105) || &amp;quot;ei&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| val || Bestimmt den ASC-II-Code des ersten Zeichens welches als String-Parameter übergeben wurde.|| val(&amp;quot;a&amp;quot;) || 97&lt;br /&gt;
|-&lt;br /&gt;
| strcat || Fügt mehrere Strings zusammen.|| strcat(&amp;quot;a&amp;quot;,&amp;quot;b&amp;quot;) || &amp;quot;ab&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===trigonometrische Funktionen===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| sin || Sinus || sin(%pi/2) || 1&lt;br /&gt;
|-&lt;br /&gt;
| cos || Cosinus || cos(%pi/2) || 0&lt;br /&gt;
|-&lt;br /&gt;
| tan || Tangens || tan(%pi/4) || 1&lt;br /&gt;
|-&lt;br /&gt;
| asin || Arcus-Sinus || asin(1) || %pi/2&lt;br /&gt;
|-&lt;br /&gt;
| arcsin || Arcus-Sinus || asin(1) || %pi/2&lt;br /&gt;
|-&lt;br /&gt;
| acos || Arcus-Cosinus || acos(1) || 0&lt;br /&gt;
|-&lt;br /&gt;
| arccos || Arcus-Cosinus || acos(1) || 0&lt;br /&gt;
|-&lt;br /&gt;
| atan || Arcus-Tangens || atan(1) || %pi/4&lt;br /&gt;
|-&lt;br /&gt;
| arctan || Arcus-Tangens || arctan(1) || %pi/4&lt;br /&gt;
|-&lt;br /&gt;
| atan2 || Arcus-Tangens atan2(y,x)=arctan(y/x) || atan2(-2,-2) || -%pi*3/4&lt;br /&gt;
|-&lt;br /&gt;
| arctan2 || Arcus-Tangens arctan2(y,x)=arctan(y/x) || arctan2(-2,-2) || -%pi*3/4&lt;br /&gt;
|-&lt;br /&gt;
| sinh || Sinus-Hyperbolicus || sinh(1) || 1.1752012&lt;br /&gt;
|-&lt;br /&gt;
| cosh || Cosinus-Hyperbolicus || cosh(1) || 1.5430806&lt;br /&gt;
|-&lt;br /&gt;
| tanh || Tangens-Hyperbolicus || tanh(1) || 0.7615941&lt;br /&gt;
|-&lt;br /&gt;
| coth || Cotangens-Hyperbolicus || coth(1) || 1.313035&lt;br /&gt;
|-&lt;br /&gt;
| asinh || Area-Sinus-Hyperbolicus || asinh(1.1752012) || 1&lt;br /&gt;
|-&lt;br /&gt;
| acosh || Area-Cosinus-Hyperbolicus || acosh(1.5430806) || 1&lt;br /&gt;
|-&lt;br /&gt;
| atanh || Area-Tangens-Hyperbolicus || atanh(0.7615941) || 1&lt;br /&gt;
|-&lt;br /&gt;
| acoth || Area-Cotangens-Hyperbolicus || acoth(1.313035) || 1&lt;br /&gt;
|-&lt;br /&gt;
| [[csin]] || Erzeugt aus einer komplexen Zahl (Effektivwert) und einer Frequenz einen Sinusfunktion in der Zeit || csin(U) || sqrt(2)*cabs(U)*sin(2*pi*f*t+carg(U))&lt;br /&gt;
|-&lt;br /&gt;
| [[quadrant]] || Liefert den Quadranten eines Winkels mit einer Toleranzangabe. || quadrant(20°,5°) || 1&lt;br /&gt;
|-&lt;br /&gt;
| argnorm || Wandelt einen Winkel auf den Bereich von 0°-360° || argnorm(-50°) || 310°&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Exponentialfunktionen===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| pow || Potenzfunktion || pow(2,3) || 8&lt;br /&gt;
|-&lt;br /&gt;
| exp|| Exponentialfunktion || exp(1) || %e&lt;br /&gt;
|-&lt;br /&gt;
| log || natürlicher Logarythmus || log(%e) || 1&lt;br /&gt;
|-&lt;br /&gt;
| ln || natürlicher Logarythmus || ln(%e) || 1&lt;br /&gt;
|-&lt;br /&gt;
| log10 || Logarythmus zur Basis 10 || log10(100) || 2&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===komplexe Zahlen===&lt;br /&gt;
Die Funktionen zu komplexen Zahlen werden (anders als in Maxima) nur ausgewertet wenn das Ergebnis numerisch berechenbar ist, ansonsten bleibt die Funktion symbolisch erhalten.&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| abs || Liefert den Absolutbetrag einer komplexen Zahl || abs(3+4*%i) || 5&lt;br /&gt;
|-&lt;br /&gt;
| cabs || Liefert den Absolutbetrag einer komplexen Zahl || cabs(3+4*%i) || 5&lt;br /&gt;
|-&lt;br /&gt;
| carg || Liefert das Argument einer komplexen Zahl || carg(4*%e^(3*%i)) || 3&lt;br /&gt;
|-&lt;br /&gt;
| realpart || Liefert den Realteil einer komplexen Zahl || realpart(3+4*%i) || 3&lt;br /&gt;
|-&lt;br /&gt;
| imagpart || Liefert den Imaginärteil einer komplexen Zahl || imagpart(3+4*%i) || 4&lt;br /&gt;
|-&lt;br /&gt;
| conjugate || Liefert die konjugiert komplexe Zahl einer komplexen Zahl || conjugate(3+4*%i) || 3-4*%i&lt;br /&gt;
|-&lt;br /&gt;
| rectform || hat in LeTTo keine Relevanz, da die Zahlendarstellung bei der Ausgabe definiert wird wie zB.: {=3arg2;karti} ||  || &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Polynome===&lt;br /&gt;
Polynome mit reellen Koeffizienten in einer Variablen können mit folgenden Funktionen erstellt und verarbeitet werden. Für die interne Verarbeitung wird hierzu ein eigener Polynom-Datentyp verwendet.&lt;br /&gt;
&lt;br /&gt;
siehe auch [[Zahlendarstellung#f.C3.BCr_Polynome_und_gebrochen_rationale_Funktionen_mit_numerischen_Koeffizienten_in_einer_Variablen_k.C3.B6nnen_folgende_Parameter_angegeben_werden|Zahlendarstellung Polynome]]&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| polynom(p) || Erzeugt aus einem Ausdruck welcher genau eine Variable besitzen muss ein Polynom in dieser Variablen || polynom(1+x) || 1+x²&lt;br /&gt;
|-&lt;br /&gt;
| polynom(p,var) || Erzeugt aus einem Ausdruck ein Polynom in einer definierten Variablen. Ist p ein gültiger Polynom-Ausdruck mit reelen Koeffizienten in der Variablen var wird das Polynom erzeugt, ansonsten bleibt die Funktion erhalten. || polynom(1+a*x^2,x) &amp;lt;br&amp;gt; polynom(1+2*x^2,x) || polynom(1+a*x^2,x)&amp;lt;br&amp;gt;1+2*x²&lt;br /&gt;
|-&lt;br /&gt;
| polynom(p,var,&amp;quot;einheit&amp;quot;) || Erzeugt ein Polynom in der Variablen var, mit der Einheit &amp;quot;einheit&amp;quot; für die Polynomvariable. Die Einheit muss als String in Doppelhochkomma angegeben werden! Das Polynom p muss entweder ohne Einheiten oder mit den korrekten Einheiten angegeben werden! || polynom(1+2*p^2,p,&amp;quot;s-1&amp;quot;) &amp;lt;br&amp;gt; polynom(1+2&#039;s2&#039;*p^2,p,&amp;quot;s-1&amp;quot;) || 1+2&#039;s2&#039;*p^2 &amp;lt;br&amp;gt;1+2&#039;s2&#039;*p^2&lt;br /&gt;
|-&lt;br /&gt;
| factfrompolynom(p) || Erzeugt aus einem Polynom einen Vektor mit den Polynomfaktoren. Erste Zeile Zählerfaktoren, zweite Zeile Nennerfaktoren, dritte Zeile Polynomvariable, vierte Zeile Einheit der Polynomvariable|| factfrompolynom(polynom((2+x)/(1+2*x))) || [[1,0.5],[0.5,1],&amp;quot;x&amp;quot;,&amp;quot;&amp;quot;]&lt;br /&gt;
|-&lt;br /&gt;
| polynomfromfact(f) || Erzeugt aus einer Faktoren-Liste, welche mit factfrompolynom erstellt wurde ein neues Polynom || polynomfromfact([[1,0.5],[0.5,1],&amp;quot;x&amp;quot;,&amp;quot;&amp;quot;]) || (2+x)/(1+2*x)&lt;br /&gt;
|- &lt;br /&gt;
| polynomfromfact(zähler,nenner,var,einheit) || Erzeugt aus Zähler und Nenner Faktor-Vektoren ein neues Polynom || polynomfromfact([1,0.5],[0.5,1],x,&amp;quot;&amp;quot;) || (2+x)/(1+2*x)&lt;br /&gt;
|- &lt;br /&gt;
| nullfrompolynom(p) || Erzeugt aus einem Polynom einen Vektor mit den PolynomNullstellen und Polstellen. Erste Zeile gemeinsamer Faktor, zweite Zeile Nullstellen, dritte Zeile Polstellen, vierte Zeile Polynomvariable|| nullfrompolynom(polynom((2+x)/(1+2*x))) || [0.5,[-2],[-0.5],x]&lt;br /&gt;
|-&lt;br /&gt;
| polynomfromnull(n) || Erzeugt aus einer Nullstellen-Polstellen-Liste, welche mit nullfrompolynom erstellt wurde ein neues Polynom || polynomfromnull([0.5,[-2],[-0.5],x]) || (2+x)/(1+2*x)&lt;br /&gt;
|- &lt;br /&gt;
| polynomfromnull(faktor,nullstellen,polstellen,var) || Erzeugt aus einer Faktor-Vektoren ein neues Polynom || polynomfromnull(0.5,[-2],[-0.5],x) || (2+x)/(1+2*x)&lt;br /&gt;
|-  &lt;br /&gt;
| polynomk(p) || Bestimmt den Faktor, welcher vom Polynom herausgehoben werden kann, so dass die höchste Potenz der Polynomvariable den Multiplikator Eins hat. || polynomk(polynom((2+x)/(1+2*x))) || 0.5&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===statistische Funktionen===&lt;br /&gt;
Die Funktionen funktionieren nur ohne Einheiten.&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| factorial || Liefert die Fakultät einer positiven ganzen Zahl || factorial(5) || 120&lt;br /&gt;
|-&lt;br /&gt;
| binomial || Liefert den Binomialkoeffizienten von zwei positiven ganzen Zahlen || binomial(5,2) || 10&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Mengen-Funktionen===&lt;br /&gt;
Mengen werden intern als Vektoren verarbeitet und sind deshalb auch direkt durch Vektoren ersetzbar. Auch alle Vektor-Funktionen sind somit auch auf Mengen anwendbar und umgekehrt.&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis || ab Rev&lt;br /&gt;
|-&lt;br /&gt;
| setget || Liefert ein Element einer Menge oder einer Matrix (Menge von Mengen) || setget([12,13,14],1) &amp;lt;br&amp;gt; setget(matrix([9,2],[3,4]),0,1) || 13 &amp;lt;br&amp;gt; 2 &lt;br /&gt;
|-&lt;br /&gt;
| setset || setzt ein Element einer Menge oder einer Matrix (Menge von Mengen) || setset([12,13,14],1,35) &amp;lt;br&amp;gt; setset(matrix([9,2],[3,4]),0,0,-9) || [12,35,14] &amp;lt;br&amp;gt; [[-9,2],[3,4]]&lt;br /&gt;
|-&lt;br /&gt;
| setlength || liefert die Anzahl der Elemente einer Liste, Menge oder eines Vektors || setlength([3,6,54,34,3,54]) || 6 &lt;br /&gt;
|- &lt;br /&gt;
| setinsert || fügt ein Element in eine Menge an eine gegebene Stelle ein || setinsert([12,13,14],1,25) || [12,25,13,14]&lt;br /&gt;
|-&lt;br /&gt;
| setremove || löscht ein Element einer Menge || setremove([12,13,14],1) || [12,14]&lt;br /&gt;
|-&lt;br /&gt;
| setapply || wendet einen Ausdruck oder Funktion auf alle Elemente einer Menge an || setapply(y,[1,2,3],y*2) || [2,4,6] || 5965&lt;br /&gt;
|-&lt;br /&gt;
| setmedian || Liefert den Median einer Menge || setmedian([4,3,1,5,6]) || 4&lt;br /&gt;
|-&lt;br /&gt;
| setboxplot || Liefert die Werte des Boxplot einer Menge (Minimum, unteres Quartil, Median, oberes Quartil, Maximum) als Vektor verwendbar für das [[Plot#definierte_Zeichenelemente|Plot-Plugin]] || setboxplot([1,2,3,10,8,9]) || [1,2,5.5,9,10]&lt;br /&gt;
|-&lt;br /&gt;
| setsort || Sortiert die Elemente einer Menge aufsteigend || setsort([3,-3,2,0,5,2]) || [-3,0,2,2,3,5]&lt;br /&gt;
|-&lt;br /&gt;
| setsortnd || Sortiert die Elemente einer Menge aufsteigend und entfernt alle mehrfach vorkommenden Elemente || setsortnd([31,-3,2,31,0,5,2]) || [-3,0,2,5,31]&lt;br /&gt;
|-&lt;br /&gt;
| setcount || Bestimmt die Anzahl wie oft ein Element in einer Menge vorkommt oder die Anzahl der Elemente der Menge || setcount([31,-3,2,31,0,5,2],31) &amp;lt;br&amp;gt; setcount([2,5,3,6]) || 2 &amp;lt;br&amp;gt; 4&lt;br /&gt;
|-&lt;br /&gt;
| setmodus || Liefert das Element einer Menge, welches am öftesten vorkommt oder die Elemente als Menge wenn mehrere Elemente gleich oft vorkommen || setmodus([3,-3,2,0,5,2]) || 2&lt;br /&gt;
|-&lt;br /&gt;
| setreverse || Dreht die Reihenfolge einer Menge um || setreverse([3,-3,2,0,5,2]) || [2,5,0,2,-3,3]&lt;br /&gt;
|-&lt;br /&gt;
| setnd || Löscht alle Duplikate aus der Menge || setnd([3,-3,2,0,5,2]) || [3,-3,2,0,5]&lt;br /&gt;
|-&lt;br /&gt;
| setshuffle || Mischt eine Menge in eine andere Reihenfolge. VORSICHT, ohne zweiten Parameter (ganze Zahl) ändert sich die Reihenfolge bei jedem mal neu Laden automatisch und ist nicht nachvollziehbar, weshalb sie dann für Schülerbeispiele nicht einsetzbar ist! Daher ist es für eine praktische Anwendung in einem Schülerbeispiel &#039;&#039;&#039;erforderlich&#039;&#039;&#039;, wenn der zweite Parameter beispielsweise über einen Integer-Datensatz-Wert (z. B. zwischen 0 und 1000) festgelegt ist.|| setshuffle([3,-3,2,0,5,2],5) || [2,3,−3,2,0,5] || 6082&lt;br /&gt;
|-&lt;br /&gt;
| setmittel || Bestimmt den Mittelwert einer Menge || setmittel([1,3,2,4]) || 2.5&lt;br /&gt;
|-&lt;br /&gt;
| setgeomittel || Bestimmt das geometrische Mittelwert einer Menge aus positiven reellen Zahlen || setgeomittel([10,20,30]) || 18.171206&lt;br /&gt;
|-&lt;br /&gt;
| setvarianz || Bestimmt die empirische Varianz einer Menge || setvarianz([3,1,2,5,4]) || ((3-3)^2+(1-3)^2+(2-3)^2+(5-3)^2+(4-3)^2)/5=2&lt;br /&gt;
|-&lt;br /&gt;
| setquadratmittel || Bestimmt den quadratischen Mittelwert einer Menge || setquadratmittel([10,20,30]) || 21.6025&lt;br /&gt;
|-&lt;br /&gt;
| setsum || Bestimmt die Summe aller Werte einer Menge || setsum([1,3,2,4]) || 10&lt;br /&gt;
|-&lt;br /&gt;
| setprod || Bestimmt das Produkt aller Werte einer Menge || setprod([1,3,2,4]) || 24&lt;br /&gt;
|-&lt;br /&gt;
| setunion || Fügt mehrere Mengen zu einer neuen Menge zusammen || setunion([1,3,2,4],[3,7]) || {1,3,2,4,3,7}&lt;br /&gt;
|-&lt;br /&gt;
| setunionnd || Fügt mehrere Mengen zu einer neuen Menge zusammen, sortiert diese und entfernt alle mehrfachen Elemente || setunionnd([1,3,2,4],[3,7]) || {1,2,3,4,7}&lt;br /&gt;
|-&lt;br /&gt;
| setcut || Bildet die Schnittmenge aus mehreren Mengen || setcut([1,3,2,4],[3,7]) || {3}&lt;br /&gt;
|-&lt;br /&gt;
| setcompare || vergleicht zwei Mengen miteinander, wobei die Reihenfolge egal ist  || setcompare([1,3,2,4],[3,7]) &amp;lt;br&amp;gt; setcompare([1,3,2],[1,2,3]) &amp;lt;br&amp;gt; setcompare([1,3,2],[1,3,2,3]) &amp;lt;br&amp;gt; setcompare([1,2,3],[1,2,3])  || false &amp;lt;br&amp;gt; true &amp;lt;br&amp;gt; false &amp;lt;br&amp;gt; true&lt;br /&gt;
|-&lt;br /&gt;
| setcomparend || vergleicht zwei Mengen miteinander, wobei die Reihenfolge egal ist und doppelte Werte als einfach behandelt werden. || setcomparend([1,3,2,4],[3,7]) &amp;lt;br&amp;gt; setcomparend([1,3,2],[1,2,3]) &amp;lt;br&amp;gt; setcomparend([1,3,2],[1,3,2,3]) &amp;lt;br&amp;gt; setcomparend([1,2,3],[1,2,3])  || false &amp;lt;br&amp;gt; true &amp;lt;br&amp;gt; true &amp;lt;br&amp;gt; true&lt;br /&gt;
|-&lt;br /&gt;
| setpartof || prüft ob die erste Menge eine Teilmenge der zweite Menge ist wobei die Reihenfolge egal ist aber mehrfache Werte berücksichtigt werden  || setpartof([1,4],[1,3,7]) &amp;lt;br&amp;gt; setpartof([1,3],[1,2,3]) &amp;lt;br&amp;gt; setpartof([1,3,3],[1,3,5,7]) &amp;lt;br&amp;gt; setpartof([1,4,4],[1,2,3,4])  || false &amp;lt;br&amp;gt; true &amp;lt;br&amp;gt; false &amp;lt;br&amp;gt; false&lt;br /&gt;
|-&lt;br /&gt;
| setpartofnd || prüft ob die erste Menge eine Teilmenge der zweite Menge ist wobei die Reihenfolge und mehrfache Werte egal sind  || setpartofnd([1,4],[1,3,7]) &amp;lt;br&amp;gt; setpartofnd([1,3],[1,2,3]) &amp;lt;br&amp;gt; setpartofnd([1,3,3],[1,3,5,7]) &amp;lt;br&amp;gt; setpartofnd([1,4,4],[1,2,3,4])  || false &amp;lt;br&amp;gt; true &amp;lt;br&amp;gt; true &amp;lt;br&amp;gt; true&lt;br /&gt;
|-&lt;br /&gt;
| setgetmin || Liefert den kleinsten Wert einer Menge || setgetmin([1,3,-2,4]) || -2&lt;br /&gt;
|-&lt;br /&gt;
| setgetmax || Liefert den größten Wert einer Menge || setgetmax([1,3,-2,4]) || 4&lt;br /&gt;
|-&lt;br /&gt;
| setremovefirst || Entfernt den ersten Wert einer Menge || setremovefirst([1,3,-2,4]) || {3,-2,4}&lt;br /&gt;
|-&lt;br /&gt;
| setremovelast || Entfernt den letzten Wert einer Menge || setremovelast([1,3,-2,4]) || {1,3,-2}&lt;br /&gt;
|-&lt;br /&gt;
| setgetfirst || Liefert den ersten Wert einer Menge || setgetfirst([1,3,-2,4]) || 1&lt;br /&gt;
|-&lt;br /&gt;
| setgetlast || Liefert den letzten Wert einer Menge || setgetlast([1,3,-2,4]) || 4&lt;br /&gt;
|-&lt;br /&gt;
| setsub || setsub(M,x,y) Liefert eine Teilmenge von M der Elemente vom index x bis zum Index y || setsub([1,3,-2,4],1,2) || {3,-2}&lt;br /&gt;
|-&lt;br /&gt;
| setmakelist || setmakelist(f,x,start,stop) setzt in den Ausdruck f für x die Werte von start bis stop mit einer Schrittweite von 1 ein. || setmakelist(x^2,x,1,4) || [ 1,4,9,16 ]&lt;br /&gt;
|-&lt;br /&gt;
| || setmakelist(f,x,start,stop,schrittweite) setzt in den Ausdruck f für x die Werte von start bis stop mit dem Abstand schrittweite ein. || setmakelist(x^2,x,1,2,0.5) || [ 1,2.25,4 ]&lt;br /&gt;
|-&lt;br /&gt;
| || setmakelist(f,x,set) setzt die Werte des Vektors set in den Ausdruck f für x ein. || setmakelist(x^2,x,[3,1,2])  ||[ 9,1,4 ]&lt;br /&gt;
|-&lt;br /&gt;
| foreach || Führt für jedes Element eine Berechnung aus und verbindet die Ergebnisse mit der Aggregatfunktion || foreach([2,-3,5,-6],p,cabs(p),&amp;quot;+&amp;quot;) || 16 || 6075 &lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Punkte-Mengen-Funktionen ===&lt;br /&gt;
Bei der Eingabe mit dem Plot-Plugin werden Punkte-Mengen als Matrizen in der Form [[x1,y1],[x2,y2],[y3,y3]] für die gespeicherten Punkte welcher der Schüler eingegeben hat verwendet.&lt;br /&gt;
&lt;br /&gt;
Um die Verarbeitung der Eingaben zu erleichtern kann man die Funktionen beginnend mit pv verwenden.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis || ab Rev&lt;br /&gt;
|-&lt;br /&gt;
| pvabs || Bestimmt den Betrag eines Punktes oder aller Ortsvektoren zu den Punkten. || pvabs([[2,3],[4,5],[6,3],[-2,4]]) &amp;lt;br&amp;gt; pvabs([[2,3],[4,5],[6,3],[-2,4]],1) ||  [3.6056,6.4031,6.7082,4.4721] &amp;lt;br&amp;gt; 6.4031 || 6077&lt;br /&gt;
|-&lt;br /&gt;
| pvarg || Bestimmt den Winkel eines Punktes oder aller Ortsvektoren zu den Punkten. || pvarg([[2,3],[4,5],[6,3],[-2,4]]) &amp;lt;br&amp;gt; pvarg([[2,3],[4,5],[6,3],[-2,4]],1) || [0.98279,0.89606,0.46365,2.0344] &amp;lt;br&amp;gt; 0.89606 || 6077&lt;br /&gt;
|-&lt;br /&gt;
| pvget || Liefert einen Punkt der Punkteliste. || pvget([[2,3],[4,5],[6,3],[-2,4]],1) || [4,5] || 6077&lt;br /&gt;
|-&lt;br /&gt;
| pvgetx || Bestimmt die x-Koordinate eines Punktes oder aller Punkte. || pvgetx([[2,3],[4,5],[6,3],[-2,4]]) &amp;lt;br&amp;gt; pvgetx([[2,3],[4,5],[6,3],[-2,4]],1) || [2,4,6,-2]&amp;lt;br&amp;gt;4 || 6077&lt;br /&gt;
|-&lt;br /&gt;
| pvgety || Bestimmt die y-Koordinate eines Punktes oder aller Punkte. || pvgety([[2,3],[4,5],[6,3],[-2,4]]) &amp;lt;br&amp;gt; pvgety([[2,3],[4,5],[6,3],[-2,4]],1) || [3,5,3,4]&amp;lt;br&amp;gt;3 || 6077&lt;br /&gt;
|-&lt;br /&gt;
| pvlineabs || Bestimmt aus dem n-ten Punktepaar den Absolutbetrag des Abstandes. || pvlineabs([[2,3],[4,5],[6,3],[-2,4]])&amp;lt;br&amp;gt;pvlineabs([[2,3],[4,5],[6,3],[-2,4]],0) || [2.8284,8.0623]&amp;lt;br&amp;gt;2.82842712475 || 6075 &lt;br /&gt;
|-&lt;br /&gt;
| pvlinearg || Bestimmt aus dem n-ten Punktepaar den Winkel der Strecke zur x-Achse || pvlinearg([[2,3],[4,5],[6,3],[-2,4]])&amp;lt;br&amp;gt;pvlinearg([[2,3],[4,5],[6,3],[-2,4]],0) || [45°,172.87°]&amp;lt;br&amp;gt;45° || 6075 &lt;br /&gt;
|-&lt;br /&gt;
| pvlinek || Bestimmt die Steigung der zugehörigen Geraden dem n-ten Punktepaar || pvlinek([[2,3],[4,5],[6,3],[-2,4]])&amp;lt;br&amp;gt;pvlinek([[2,3],[4,5],[6,3],[-2,4]],0) ||  [1,−0.125]&amp;lt;br&amp;gt;1 || 6075 &lt;br /&gt;
|-&lt;br /&gt;
| pvlined || Bestimmt den Schnittpunkt einer Geraden durch das n-te Punktepaar mit der y-Achse || pvlined([[2,3],[4,5],[6,3],[-2,4]])&amp;lt;br&amp;gt;pvlined([[2,3],[4,5],[6,3],[-2,4]],0) || [1,3.75] &amp;lt;br&amp;gt;1 || 6075 &lt;br /&gt;
|-&lt;br /&gt;
| pvline || Bestimmt die Geradengleichung einer Geraden durch das n-te Punktepaar || pvline([[2,3],[4,5],[6,3],[-2,4]])&amp;lt;br&amp;gt;pvline([[2,3],[4,5],[6,3],[-2,4]],0) || [y=1+x,y=3.75−0.125⋅x]&amp;lt;br&amp;gt;y=x+1 || 6075 &lt;br /&gt;
|-&lt;br /&gt;
| pvpoints || Bestimmt die Anzahl der Punkte || pvpoints([[2,3],[4,5],[6,3],[-2,4]]) || 4 || 6075 &lt;br /&gt;
|-&lt;br /&gt;
| pvvect || Bestimmt einen Vector aus dem n-te Punktepaar || pvvect([[2,3],[4,5],[6,3],[-2,4]],0) || [2,2] || 6075 &lt;br /&gt;
|-&lt;br /&gt;
| pvsortx || Sortiert die Punkte nach steigender x-Koordinate || pvsortx([[2,3],[4,5],[6,3],[−2,4],[−3,5],[−7,−9]]) || [[−7,−9],[−3,5],[−2,4],[2,3],[4,5],[6,3]] ||6077 &lt;br /&gt;
|-&lt;br /&gt;
| pvsorty || Sortiert die Punkte nach steigender y-Koordinate || pvsorty([[2,3],[4,5],[6,3],[−2,4],[−3,5],[−7,−9]]) || [[−7,−9],[2,3],[6,3],[−2,4],[4,5],[−3,5]] ||6077&lt;br /&gt;
|-&lt;br /&gt;
| pvsortabs || Sortiert die Punkte nach steigendem Absolutbetrag des Ortsvektors || pvsortabs([[2,3],[4,5],[6,3],[−2,4],[−3,5],[−7,−9]]) ||  [[2,3],[−2,4],[−3,5],[4,5],[6,3],[−7,−9]] ||6077&lt;br /&gt;
|-&lt;br /&gt;
| pvsortarg || Sortiert die Punkte nach steigendem Winkel des Ortsvektors (-pi bis pi) || pvsortarg([[2,3],[4,5],[6,3],[−2,4],[−3,5],[−7,−9]]) ||  [[−7,−9],[6,3],[4,5],[2,3],[−2,4],[−3,5]] ||6077&lt;br /&gt;
|-&lt;br /&gt;
| pvsortlinex || Sortiert Punktepaare nach steigender x-Koordinate der kleineren x-Koordinate des Paares. || pvsortlinex([[2,3],[4,5],[6,3],[−2,4],[−3,5],[−7,−9]]) || [[−3,5],[−7,−9],[6,3],[−2,4],[2,3],[4,5]] ||6077 &lt;br /&gt;
|-&lt;br /&gt;
| pvsortliney || Sortiert Punktepaare nach steigender y-Koordinate der kleineren y-Koordinate des Paares. || pvsortliney([[2,3],[4,5],[6,3],[−2,4],[−3,5],[−7,−9]]) ||  [[−3,5],[−7,−9],[2,3],[4,5],[6,3],[−2,4]] ||6077 &lt;br /&gt;
|-&lt;br /&gt;
| pvsortlineabs || Sortiert Punktepaare nach steigendem Betrag der Linienlänge. || pvsortlineabs([[2,3],[4,5],[6,3],[−2,4],[−3,5],[−7,−9]]) || [[2,3],[4,5],[6,3],[−2,4],[−3,5],[−7,−9]] || 6077&lt;br /&gt;
|-&lt;br /&gt;
| pvsortlinearg || Sortiert Punktepaare nach steigendem Winkel der Linienrichtung. || pvsortlinearg([[2,3],[4,5],[6,3],[−2,4],[−3,5],[−7,−9]]) || [[−3,5],[−7,−9],[2,3],[4,5],[6,3],[−2,4]] || 6077&lt;br /&gt;
|-&lt;br /&gt;
| pvequals || Prüft ob zwei Punktevektoren gleich sind. Die Genauigkeit wird als dritter Parameter angegeben, oder bei einem Antwortfeld von der Antworttoleranz genommen. Prozentangaben der Genauigkeit beziehen sich auf die Breite bzw. Höhe des Punktefeldes im karthesischen Koordinatensystem. || pvequals([[2,3],[4,5],[6,3],[-2,4],[-3,5],[-7,-9]],[[2.01,3],[4,5],[6.01,3],[-2,3.99],[-3,5],[-7,-9]],2%) || true || 6077&lt;br /&gt;
|-&lt;br /&gt;
| pvhaspoint || Prüft ob sich ein Punkt innerhalb des Punktefeldes befindet. Die Genauigkeit kann wie bei pvequals als dritter Parameter angegeben werden. || pvhaspoint([[2,3],[4,5],[6,3],[-2,4],[-3,5],[-7,-9]],[4,5],2%) || true || 6077&lt;br /&gt;
|-&lt;br /&gt;
| pvhasline || Prüft ob sich eine Linie innerhalb des Punktefeldes von Linien befindet. Die Genauigkeit kann wie bei pvequals als dritter Parameter angegeben werden. || pvhaspoint([[2,3],[4,5],[6,3],[-2,4],[-3,5],[-7,-9]],[[6,3],[-2,4]],2%) || true || 6078&lt;br /&gt;
|-&lt;br /&gt;
| pvforeachline || Führt für jedes Punktepaar eine Berechnung aus und verbindet die Ergebnisse mit der Aggregatfunktion || pvforeachline([[2,3],[4,5],[6,3],[-2,4]],p,pvlineabs(p),&amp;quot;+&amp;quot;) || 10.890684873 || 6075 &lt;br /&gt;
|-&lt;br /&gt;
| pvfunc || Erzeugt aus einer Funktionen in einer Variablen (x-Achse) eine Punktmatrix der Funktionswerte (y-Achse). pvfunc(funktion,variable,minx,maxx,deltax) || pvfunc(x^2,x,-2,2,0.5) || [[−2,4],[−1.5,2.25],[−1,1],[−0.5,0.25],[0,0],[0.5,0.25],[1,1],[1.5,2.25]] || 6080&lt;br /&gt;
|-&lt;br /&gt;
| pvcompare || Vergleicht einen Referenz-Linienzug mit einem eingegebenen Linienzug unter Berücksichtigung der Toleranz.&amp;lt;br&amp;gt; pvcompare(Referenz,Eingabe)&amp;lt;br&amp;gt; pvcompare(Referenz,Eingabe,Toleranz)&amp;lt;br&amp;gt; pvcompare(Referenz,Eingabe,MinX,MaxX,MinY,MaxY) &amp;lt;br&amp;gt; pvcompare(Referenz,Eingabe,MinX,MaxX,MinY,MaxY,Toleranz) || pvcompare([[0,0],[1,1],[2,1],[3,0]],[[0,0],[1,1],[2,1],[3,0]],0,3,-5,5) || true  || 6080&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Typ-Funktionen===&lt;br /&gt;
Werden nur dann ausgewertet wenn der Parameter ein numerischer Wert oder eine Menge ist.&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| isset || Prüft ob es sich um eine Menge handelt. || isset([12,13,14]) || true &lt;br /&gt;
|-&lt;br /&gt;
| issetnumeric || Prüft ob es sich um eine Menge aus reellen Zahlen handelt. || issetnumeric([12,13.4,14]) || true &lt;br /&gt;
|-&lt;br /&gt;
| issetlong || Prüft ob es sich um eine Menge aus ganzen Zahlen handelt. || issetlong([12,13,14]) || true &lt;br /&gt;
|-&lt;br /&gt;
| islong || Prüft ob es sich um eine ganze Zahl handelt. || islong(12) || true &lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Algebra===&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;Hinweis:&#039;&#039; Die Indizes eines Vektors oder einer Matrix werden in Letto ausgehend von 0 weg gezählt.  &lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| matrix || erzeugt aus mehreren gleich langen Vektoren eine Matrix || matrix([1,2],[3,4]) || [[1,2],[3,4]]&lt;br /&gt;
|-&lt;br /&gt;
| inv || invertiert eine quadratische Matrix oder bildet 1/x || inv(matrix([1,2],[3,4])) || [[-2,1],[3/2,-1/2]]&lt;br /&gt;
|-&lt;br /&gt;
| vget || liefert ein Element eines Vektors oder einer Matrix [https://www.youtube.com/watch?v=T82YIt3e8ac Video] || vget([12,13,14],1) &amp;lt;br&amp;gt; vget(matrix([9,2],[3,4]),0,1) || 13 &amp;lt;br&amp;gt; 2 &lt;br /&gt;
|-&lt;br /&gt;
| vgetmaxima || liefert ein Element eines Vektors oder einer Matrix wobei der Index (wie bei Maxima) bei 1 startet. || vgetmaxima([12,13,14],1) || 12 &lt;br /&gt;
|-&lt;br /&gt;
| vset || setzt ein Element eines Vektors oder einer Matrix || vset([12,13,14],1,35) &amp;lt;br&amp;gt; vset(matrix([9,2],[3,4]),0,0,-9) || [12,35,14] &amp;lt;br&amp;gt; [[-9,2],[3,4]]&lt;br /&gt;
|-&lt;br /&gt;
| vsetmaxima || setzt ein Element eines Vektors oder einer Matrix wobei der Index (wie bei Maxima) bei 1 startet. || vsetmaxima([12,13,14],1,35) || [35,13,14]&lt;br /&gt;
|-&lt;br /&gt;
| vinsert || fügt ein Element in einen Vektor an eine gegebene Stelle ein || vinsert([12,13,14],1,25) || [12,25,13,14]&lt;br /&gt;
|-&lt;br /&gt;
| vremove || löscht ein Element eines Vektors [https://www.youtube.com/watch?v=T82YIt3e8ac Video] || vremove([12,13,14],1) || [12,14]&lt;br /&gt;
|-&lt;br /&gt;
| vabs || Berechnet den Betrag eines Vektors || vabs([3,4]) || 5&lt;br /&gt;
|-&lt;br /&gt;
| vin || Berechnet das innere Produkt von 2 Vektoren || vin([1,2,3],[4,5,6]) || 32&lt;br /&gt;
|-&lt;br /&gt;
| vex || Berechnet das ex-Produkt von 2 Vektoren im 3-dimensionalen Raum || vex([1,2,3],[4,5,6]) || [-3,6,-3]&lt;br /&gt;
|-&lt;br /&gt;
| mrows || liefert die Anzahl der Zeilen einer Matrix || mrows([[3,4,4],[3,6,54,34,3,54]]) || 2&lt;br /&gt;
|-&lt;br /&gt;
| mcols || liefert die Anzahl der Spalten einer Matrix || mcols([[3,4,4],[3,6,54,34,3,54]]) || 6 &lt;br /&gt;
|- &lt;br /&gt;
| mprod || Bildet das Matrixprodukt aus zwei Matrizen || mprod([[1,2],[3,4]],[[5,6],[7,8]]) || [[19,22],[43,50]]&lt;br /&gt;
|-&lt;br /&gt;
| mtrans || Bildet die transponierte Matrix || mtrans([[1,2],[3,4]]) || [[1,3],[2,4]]&lt;br /&gt;
|-&lt;br /&gt;
| minv || Bildet die inverse Matrix || minv([[1,2],[3,4]]) || [[-2,1],[3/2,-1/2]]&lt;br /&gt;
|-&lt;br /&gt;
| mdet || Bildet die Determinante einer quadratischen Matrix || mdet([[1,2],[3,4]]) || -2&lt;br /&gt;
|-&lt;br /&gt;
| vindex || vindex(v,x) liefert den Index des Elementes eines Vektors, welcher am nächsten bei x liegt || vindex([10,30,70],40) || 1 &lt;br /&gt;
|-&lt;br /&gt;
| vindexup || vindexup(v,x) liefert den Index des Elementes eines Vektors, welcher größer oder gleich x ist || vindexup([10,30,70],40) || 2 &lt;br /&gt;
|-&lt;br /&gt;
| vindexdown || vindexdown(v,x) liefert den Index des Elementes eines Vektors, welcher kleiner oder gleich x ist || vindexdown([10,30,70],60) || 1&lt;br /&gt;
|-&lt;br /&gt;
| verweis || verweis(M,x,n) liefert den Wert der n-ten Spalte (ohne Angabe von n die 2.Spalte) einer Matrix M wo x dem Wert in der ersten Spalte am nächsten liegt || verweis([[10,33],[20,77],[30,99]],21) || 77&lt;br /&gt;
|-&lt;br /&gt;
| verweisup || verweisup(M,x,n) liefert den Wert der n-ten Spalte (ohne Angabe von n die 2.Spalte) einer Matrix M wo x dem Wert in der ersten Spalte am nächsten liegt || verweisup([[10,33],[20,77],[30,99]],21) || 99&lt;br /&gt;
|-&lt;br /&gt;
| verweisdown || verweisdown(M,x,n) liefert den Wert der n-ten Spalte (ohne Angabe von n die 2.Spalte) einer Matrix M wo x dem Wert in der ersten Spalte am nächsten liegt || verweisdown([[10,33],[20,77],[30,99]],27,1) || 77&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Variable===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| kill || löscht Variable aus dem Variablenspeicher || kill(x,y) &amp;lt;br&amp;gt; kill(allbut(y)) &amp;lt;br&amp;gt; kill(all) || löscht die Variablen x und y &amp;lt;br&amp;gt; löscht alle Variablen mit Ausnahme von y &amp;lt;br&amp;gt; löscht alle Variable&lt;br /&gt;
|-&lt;br /&gt;
| allbut || Liefert eine Liste aller Variablen des Parsers als Menge(Vektor) mit Ausnahme der als Parameter angegebenen Variablen || allbut(x,y) || [a,b,c]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Auswertung und Programmierung===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis || Revision&lt;br /&gt;
|-&lt;br /&gt;
| ev || Auswertung eines Ausdruckes, als Parameter können Gleichungen angegeben werden, welche dann in den Ausdruck eingesetzt werden || ev(x*y,y=4) || x*4&lt;br /&gt;
|-&lt;br /&gt;
| evruntime || Auswertung eines Ausdruckes, als Parameter können Gleichungen angegeben werden, welche dann in den Ausdruck eingesetzt werden. Das &#039;&#039;&#039;Einsetzen erfolgt erst bei der Ergebnisberechnung&#039;&#039;&#039;! || evruntime(x*y,y=4) || x*4&lt;br /&gt;
|-&lt;br /&gt;
| [[nv]] || Auswertung eines Ausdruckes, als Parameter können Gleichungen angegeben werden, welche dann in den Ausdruck eingesetzt werden. Im Gegensatz zu ev werden bestehende Variable nur in den Gleichungen, aber nicht im Ausdruck selbst eingesetzt! || nv(x*y,y=4) || x*4&lt;br /&gt;
|-&lt;br /&gt;
| [[if]] || Bedingungsfunktion if(bedingung,wahrwert,falschwert) || if(4&amp;lt;6,10,12) || 10&lt;br /&gt;
|-&lt;br /&gt;
| [[if|wenn]] || Bedingungsfunktion wenn(bedingung,wahrwert,falschwert). Im Prinzip identisch wie if, jedoch kann if mit Maxima nicht verwendet werden. || wenn(4&amp;lt;6,10,12) || 10&lt;br /&gt;
|-&lt;br /&gt;
| plugin || Ruft die Berechnungsmethode des Plugins, welches als erster Stringparameter angegeben werden muss auf und übergibt die weiteren Parameter an die Berechnungsmethode des Plugins.  || plugin(&amp;quot;plugin1&amp;quot;,3) || führt die Berechnung des Plugins mit dem Namen &amp;quot;plugin1&amp;quot; mit dem Parameter 3 aus. &lt;br /&gt;
|-&lt;br /&gt;
| symbolic || Bei allen Variablen innerhalb von symbolic werden nur nicht-numerische Werte eingesetzt! Wird vor allem im Angabtext bei {= } verwendet || symbolic(x^2+2) || x^2+2&lt;br /&gt;
|-&lt;br /&gt;
| runtime || Bei dieser Funktion wird &#039;&#039;&#039;erst bei der Berechnung der Frageantwort, nach dem Einsetzen der Datensätze&#039;&#039;&#039; das &#039;&#039;&#039;komplette Maxima-Feld&#039;&#039;&#039; mit dem internen &#039;&#039;&#039;Parser&#039;&#039;&#039; durchgerechnet und danach der Parameter-Ausdruck berechnet. Dadurch kann man bei komplizierten Berechnungen eine sehr aufwendige symbolische Berechnung verhindern! || runtime(U) || &lt;br /&gt;
|-&lt;br /&gt;
| dataset || liefert alle Datensätze einer Datensatz-Definition in einem Vektor || dataset(x) || &lt;br /&gt;
|-&lt;br /&gt;
| parse || Wenn der Parameter ein String ist wird dieser String mit dem Parser interpretiert || parse(&amp;quot;2+3&amp;quot;) || 5&lt;br /&gt;
|-&lt;br /&gt;
| foreach || Führt für jedes Element einer Menge eine Berechnung aus und verbindet die Ergebnisse mit der Aggregatfunktion || foreach([2,-3,5,-6],p,cabs(p),&amp;quot;+&amp;quot;) || 16 || 6075 &lt;br /&gt;
|-&lt;br /&gt;
| pvforeachline || Führt für jedes Punktepaar einer Punktemenge eine Berechnung aus und verbindet die Ergebnisse mit der Aggregatfunktion || pvforeachline([[2,3],[4,5],[6,3],[-2,4]],p,pvlineabs(p),&amp;quot;+&amp;quot;) || 10.890684873 || 6075 &lt;br /&gt;
|-&lt;br /&gt;
| forloop || Führt eine Zählschleife aus forloop(Variable,Startwert,Wiederholbedingung,Inkrement,Ausdruck,Aggregatsfunktion). &amp;lt;br&amp;gt;Ohne Aggregatsfunktion wird ein Feld mit den Ergebnissen der Schleifeniterationen geliefert. || forloop(i,1,i&amp;lt;7,i++,i,&amp;quot;+&amp;quot;)&amp;lt;br&amp;gt;forloop(i,1,i&amp;lt;7,i:i+2,i) || 21&amp;lt;br&amp;gt;[1,3,5] || 6077&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Optimierung der Ausdrücke===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| opt   || Ausdruck wird vollständig optimiert, die Funktion wird ausgewertet und ist danach nicht mehr vorhanden. Nur bei der Verwendung des internen Parser sinnvoll. || opt(x+x) || 2*x&lt;br /&gt;
|-&lt;br /&gt;
| ratsimp || Ausdruck wird vollständig optimiert, die Funktion wird ausgewertet und ist danach nicht mehr vorhanden (wie opt, wird jedoch auch von Maxima ausgewertet) || ratsimp(x+x) || 2*x&lt;br /&gt;
|-&lt;br /&gt;
| noopt || Ausdruck wird nicht optimiert, bleibt also so erhalten wie angegeben. Die Funktion an sich geht aber verloren. || noopt(2+3) || 2+3&lt;br /&gt;
|-&lt;br /&gt;
| nopt || Ausdruck wird nicht optimiert, bleibt also so erhalten wie angegeben. Die Funktion bleibt erhalten und wird erst bei der Lösungsberechnung oder durch opt() entfernt. || noopt(2+3) || 2+3&lt;br /&gt;
|-&lt;br /&gt;
| lopt || Im Maximafeld bleibt die Funktion ohne Funktion erhalten, im Ergebnis {=  wird die Funktion entfernt und in der Lösung wird nach dem Einsetzen der Werte der Ausdruck vollständig optimiert. || lopt(x+3)  || lopt(x+3)  &lt;br /&gt;
|-&lt;br /&gt;
| lnoopt || Im Maximafeld bleibt die Funktion ohne Funktion erhalten, im Ergebnis {=  wird die Funktion entfernt und in der Lösung wird nach dem Einsetzen der Werte der Ausdruck nicht mehr optimiert. || lnoopt(x+3+2)  || lnoopt(x+5) &lt;br /&gt;
|-&lt;br /&gt;
| loptnumeric || Im Maximafeld bleibt die Funktion ohne Funktion erhalten, im Ergebnis {=  wird die Funktion entfernt und in der Lösung wird nach dem Einsetzen der Werte der Ausdruck nur numerisch optimiert. || loptnumeric(x+y)  || loptnumeric(x+y)&lt;br /&gt;
|-&lt;br /&gt;
| aopt || Bei Maxima und Lösung geht die Funktion verloren, nur innerhalb von noopt bleibt sie erhalten. Bei der Anzeige führt sie zur Optimierung das Ausdruckes nach Einsetzen der Datensätze. || aopt(x)  || x&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Anzeige und Lösungsberechnung===&lt;br /&gt;
Diese Funktionen haben entweder einen oder zwei Parameter. Der erste Parameter stellt die darzustellende Funktion dar, der zweite Parameter, welcher eine Ganzzahl sein muss, gibt an, wie die Darstellung erfolgen soll. Wird der 2.Parameter weggelassen, so wird er als 0 interpretiert.&lt;br /&gt;
* 0 Bei Berechnungen hat die Funktion keine Wirkung, bleibt aber als Funktion erhalten. Bei Lösung und Anzeige wird die Funktion ausgewertet&lt;br /&gt;
* 1 Wirkt nur bei Lösung, bei Berechnungen bleibt die Funktion erhalten&lt;br /&gt;
* 2 Wirkt nur bei Anzeige, bei Berechnungen bleibt die Funktion erhalten&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| viewpow || Gibt alle Wurzeln als Potenzen aus, und stellt alle Potenzen im Nenner als negativen Exponenten im Zähler dar || viewpow(sqrt(x)) || x^(1/2)&lt;br /&gt;
|-&lt;br /&gt;
| viewsqrt || Gibt Potenzen welche als Wurzel darstellbar sind auch als als Wurzeln mit der Funktion sqrt oder root aus || viewsqrt(x^(1/2)) || sqrt(x)&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Spezialfunktionen LeTTo ===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| points || Berechnet die erreichbare Gesamtpunkteanzahl einer Frage || points() || 2&lt;br /&gt;
|-&lt;br /&gt;
| points || Berechnet die erreichbare Punkteanzahl einer Teilfrage. Als Parameter wird die Fragenummer als Ganzzahl angegeben. || points(0) || 1&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Spezialfunktionen Technik===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| color || Widerstandsfarbcode berechnen.&amp;lt;br&amp;gt;1. Parameter muss ein Double sein&amp;lt;br&amp;gt; 2.Parameter sind die Anzahl der Farbringe&amp;lt;br&amp;gt; 3.Parameter ist der Modus (0..2-St,1..3St,2..Deutsch,3..2StEng,4..3StEng,5..Englisch || color(120,3,2) || braun,rot,braun&lt;br /&gt;
|-&lt;br /&gt;
| parsecolor || Wandelt einen String mit einem Widerstandsfarbcode in einen Double-Wert || parsecolor(&amp;quot;br-rt-br&amp;quot;) || 120&lt;br /&gt;
|-&lt;br /&gt;
| ip || Wandelt eine Long-Zahl in einen String als IP-Adresse um, oder 4 Byte-Zahlen in eine Long Zahl als IP-32-bit-Adresse || ip(1534536453)&amp;lt;br&amp;gt;ip(10,20,30,40) || &amp;quot;91.119.43.5&amp;quot;&amp;lt;br&amp;gt;169090600&lt;br /&gt;
|-&lt;br /&gt;
| parseip || Wandelt einen String mit einer IP-Adresse in einen Long-Wert || parseip(&amp;quot;91.119.43.5&amp;quot;) || 1534536453&lt;br /&gt;
|-&lt;br /&gt;
| e12 || rundet einen Zahlenwert auf den nächstliegenden Wert der [[Normreihe]] E12.&amp;lt;br&amp;gt;Die Rundung erfolgt geometrisch d.h. der Quotient zwischen Normwert und zu rundendem Wert wird minimiert. || e12(700Ohm) || 680Ohm&lt;br /&gt;
|-&lt;br /&gt;
| e12up || rundet einen Zahlenwert auf den nächstgrößerern Wert der [[Normreihe]] E12 || e12(670Ohm) || 680Ohm&lt;br /&gt;
|-&lt;br /&gt;
| e12down || rundet einen Zahlenwert auf den nächstkleineren Wert der [[Normreihe]] E12 || e12(700Ohm) || 680Ohm&lt;br /&gt;
|-&lt;br /&gt;
| ise12 || prüft ob der als Parameter übergebenen Wert ein Wert der [[Normreihe]] E12 ist.|| ise12(680Ohm) || true&lt;br /&gt;
|-&lt;br /&gt;
| norm || rundet einen Zahlenwert auf den nächstliegenden Wert einer gegebenen Wertereihe oder [[Normreihe]].&amp;lt;br&amp;gt;Die Rundung erfolgt geometrisch wenn es sich um eine logarithmisch aufgeteilte Normreihe handelt, oder sonst linear. || norm(700Ohm,E12) || 680Ohm&lt;br /&gt;
|-&lt;br /&gt;
| normup || rundet einen Zahlenwert auf den nächstgrößerern Wert einer gegebenen Wertereihe oder [[Normreihe]]. || normup(730Ohm,[1,3,5,8]) || 800Ohm&lt;br /&gt;
|-&lt;br /&gt;
| normdown || rundet einen Zahlenwert auf den nächstkleineren Wert einer gegebenen Wertereihe oder [[Normreihe]]. || normdown(700Ohm,E12) || 680Ohm&lt;br /&gt;
|-&lt;br /&gt;
| isnorm || prüft ob der als Parameter übergebenen Wert ein Wert einer gegebenen Wertereihe oder [[Normreihe]] ist. || isnorm(680Ohm,E12) || true&lt;br /&gt;
|}&lt;br /&gt;
===Raumzeiger für elektrische Maschinen===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| [[svphtosv]](a,b,c) || berechnet aus den Stranggrößen (a,b,c) einen komplexen Raumzeiger || svphtosv(0.5,0.5,-1) || 1arg60°&lt;br /&gt;
|-&lt;br /&gt;
| [[svsvtoph]](sv)&amp;lt;br&amp;gt;svsvtoph(sv,index) || berechnet aus einem komplexen Rauzeiger die Phasengrößen &amp;lt;br&amp;gt; berechnet aus einem komplexen Rauzeiger die Phasengrößen, index selektiert Stranggröße als Rückgabewert || svsvtoph(1arg60°)&amp;lt;br&amp;gt; svsvtoph(1arg60°,3)|| [0.5,0.5,-1] &amp;lt;br&amp;gt; -1&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=Ergebnisvorschau=&lt;br /&gt;
Aufruf dieses Dialoges über den [[Datei:ClipCapIt-180904-181443.PNG|25px]]-Button aus dem [[Toolbar]].&lt;br /&gt;
&lt;br /&gt;
Die Berechnungen aus dem Maxima-Feld bei der [[Beispiele Bearbeiten|Fragendefinition]] können auch über den [[Datei:ClipCapIt-180904-182120.PNG|25px]]-Button durchgeführt werden. Hier wird die Berechnung durchgeführt und das Lösungsfeld ausgefüllt, aber der Rechengang wird nicht angezeigt. &lt;br /&gt;
:[[Datei:ClipCapIt-180904-181415.PNG|400px]]&lt;br /&gt;
&lt;br /&gt;
Beim Fehlersuchen oder bei komplexen Berechnungen kann es aber hilfreich sein, den ganzen Maxima-Lösungsweg zu sehen, dies ist über den [[Datei:ClipCapIt-180904-181443.PNG|25px]]-Button möchlich.&lt;br /&gt;
&lt;br /&gt;
[[Kategorie:Berechnung]]&lt;/div&gt;</summary>
		<author><name>Ckral</name></author>
	</entry>
	<entry>
		<id>https://wiki.letto.at/wiki/index.php?title=Berechnungen&amp;diff=3240</id>
		<title>Berechnungen</title>
		<link rel="alternate" type="text/html" href="https://wiki.letto.at/wiki/index.php?title=Berechnungen&amp;diff=3240"/>
		<updated>2022-11-10T11:06:49Z</updated>

		<summary type="html">&lt;p&gt;Ckral: /* Mengen-Funktionen */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Allgemeines =&lt;br /&gt;
Berechnungen werden in mehreren Bereichen der Frageerstellung verwendet und bilden die Basis für [[Fragetypen#Berechnungsfrage|Berechnungsfrage]] und [[Fragetypen#Mehrfachberechnungsfrage|Mehrfachberechnungsfrage]].&lt;br /&gt;
&lt;br /&gt;
Alle Berechnungen unterstützen [[Einheit|Einheiten]] und symbolische Auswertung.&lt;br /&gt;
&lt;br /&gt;
=Grundsätzlicher Aufbau der Ergebnis-Berechnung bei Fragen mit Berechnungen=&lt;br /&gt;
[[Datei:BerechnungSchema.png|mini|hochkant=2.0|Schema der Berechnung]]&lt;br /&gt;
Die Berechnung und die Beurteilung einer Frage teilt sich in 3 grundsätzliche Schritte:&lt;br /&gt;
* Berechnnug der geschlossenen Lösung (Formel) aus den Maxima-Feldern &lt;br /&gt;
* Berechnung des Ergebnisses einer Frage durch Einsetzen der Zahlenwerte aus den Datensätzen in die geschlossene Lösung&lt;br /&gt;
* Beurteilung der Schülereingabe durch Vergleich mit dem Ergebnis&lt;br /&gt;
&lt;br /&gt;
=Konstante=&lt;br /&gt;
Alle Konstante welche in Letto definiert sind beginnen mit einem Prozentzeichen. Verwendet man den Variablennamen ohne Prozenzzeichen, so wird die Konstante wie eine Variable mit dem Wert der Konstanten verwendet.&lt;br /&gt;
&lt;br /&gt;
Liste der definierten Konstanten:&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%&amp;quot; &lt;br /&gt;
| Name || Wert || Beschreibung&lt;br /&gt;
|-&lt;br /&gt;
| %i || i || komplexer Parameter als Lösung der Gleichung x^2=-1&lt;br /&gt;
|-&lt;br /&gt;
| %j || i || komplexer Parameter als Lösung der Gleichung x^2=-1&amp;lt;br&amp;gt;&amp;lt;b&amp;gt;Wichtig:&amp;lt;/b&amp;gt; Wir nur vom Parser unterstützt, nicht von Maxima&lt;br /&gt;
|-&lt;br /&gt;
| %e || 2.718281828459045 || Eulersche Zahl &lt;br /&gt;
|-&lt;br /&gt;
| %pi || 3.141592653589793 || Kreiszahl&lt;br /&gt;
|-&lt;br /&gt;
| %mu0 || magnetische Feldkonstante || 4*%pi*1E-7&#039;Vs/Am&#039;&lt;br /&gt;
|-&lt;br /&gt;
| %m0 || magnetische Feldkonstante (alt, wird bald entfernt werden) || 4*%pi*1E-7&#039;Vs/Am&#039;&lt;br /&gt;
|-&lt;br /&gt;
| %epsilon0 || elektrische Feldkonstante || 8.85418781762039E-12&#039;As/Vm&#039;&lt;br /&gt;
|-&lt;br /&gt;
| %e0 || elektrische Feldkonstante (alt, wird bald entfernt werden) || 8.85418781762039E-12&#039;As/Vm&#039;&lt;br /&gt;
|-&lt;br /&gt;
| %c0 || Lichtgeschwindigkeit || 299792458&#039;m/s&#039;&lt;br /&gt;
|-&lt;br /&gt;
| %Qe || Elementarladung || 1.602176620898E-19As&lt;br /&gt;
|-&lt;br /&gt;
| %g  || Erdbeschleunigung || 9.81&#039;m/s^2&#039;&lt;br /&gt;
|-&lt;br /&gt;
| %NA || Avogadro Konstante || 6.02214085774E23/mol&lt;br /&gt;
|-&lt;br /&gt;
| %k  || Stefan Bolzman Konstante || 1.3806485279E-23&#039;J/K&#039;&lt;br /&gt;
|-&lt;br /&gt;
| %R0 || Universelle Gaskonstante || 8.314459848&#039;J/Kmol&#039;&lt;br /&gt;
|-&lt;br /&gt;
| %h || planksches Wirkungsquantum || 6.6260704081E-34Js&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=Berechnung mit Maxima=&lt;br /&gt;
* Maxima wird &#039;&#039;&#039;nur für symbolische Berechnungen&#039;&#039;&#039; bei der Erstellung von Beispielen verwendet. Hierbei wird, wie schon oberhalb im Schema angegeben, zuerst die Moodle.mac geladen, dann das [[Beispielsammlung Editieren#Maxima-Feld|Maxima-Feld]] berechnet und anschließend die Maxima-Felder aller Teilfragen. Das Ergebnis der Berechnung wird dann als symbolischer Ausdruck im Lösungfeld eingetragen.&lt;br /&gt;
* Da zum Zeitpunkt der &#039;&#039;&#039;Maxima-Berechnung keine Datensätze&#039;&#039;&#039; vorhanden sind, kann keine numerische Berechnung in Maxima durchgeführt werden, welche die [[Datensätze]] benötigt. Dies muss der interne Parser zum Zeitpunkt des Online-Test-Laufes erledigen. Numerische Berechnungen, welche der interne Parser nicht kann können deshalb auch nicht mit Maxima berechnet werden.&lt;br /&gt;
* Da das Lösungsfeld, welches mit Maxima berechnet wird symbolisch ausgewertet wird, können in Maxima sämtliche symbolischen Berechnungsverfahren angewendet werden, welche ein symbolisches Ergebnis liefern und keine numerischen Werte der Datensätze benötigen.&lt;br /&gt;
* Reicht im Maximafeld die Zeilenlänge nicht aus ist es möglich einen defninierten Zeilenumbruch zu realisieren. Schreiben Sie dazu &amp;quot;\&amp;quot; (einfacher Backslash) am Ende der Zeile.  &lt;br /&gt;
* &#039;&#039;&#039;Funktionsdeklarationen&#039;&#039;&#039; wie &#039;&#039;&#039;f(x):=&#039;&#039;&#039;x^2 mit Doppelpunkt-Ist-Gleich sind im Maxima-Feld nur eingeschränkt bis gar &#039;&#039;&#039;nicht verwendbar&#039;&#039;&#039;, da sie vom Parser nicht unterstützt werden.&lt;br /&gt;
* &#039;&#039;&#039;Mengen von Maxima&#039;&#039;&#039; sind in LeTTo n&#039;&#039;&#039;icht verwendbar&#039;&#039;&#039;. LeTTo verwender hierzu eigene Funktionen des Parsers welche mit &amp;quot;set&amp;quot; beginnen und auf Vektoren basieren.&lt;br /&gt;
&lt;br /&gt;
=Berechnung mit dem internen Parser=&lt;br /&gt;
* Der interne Parser kann durch Wahl der Checkbox &amp;quot;Parser&amp;quot; anstatt von Maxima für die Berechnung des Maxima-Feldes verwendet werden. &lt;br /&gt;
* Jedenfalls wird der Parser zur Test-Laufzeit für die Berechnung des Ergebnisses einer Frage aus Lösung und Datensätzen und zum Berechnen der Schülereingabe verwendet.&lt;br /&gt;
&lt;br /&gt;
==Operatoren==&lt;br /&gt;
=== VORSICHT mit MAXIMA ===&lt;br /&gt;
* Einige Operatoren sind in &#039;&#039;&#039;Maxima anders&#039;&#039;&#039;, oder &#039;&#039;&#039;nicht definiert&#039;&#039;&#039;. Möchte man im Maximafeld die Operatoren des Parsers-verwenden, so muss das gesamte Maxima-Feld &#039;&#039;&#039;mit dem Parser gerechnet&#039;&#039;&#039; werden. Man verliert dadurch jedoch die Vorteile der Maxima-Berechnung.&lt;br /&gt;
* Alternativ kann man statt der Operatoren auch &#039;&#039;&#039;Funktionen verwenden&#039;&#039;&#039; (zB: ne() statt != ). Diese werden dann von Maxima zwar nicht ausgewertet, die Berechnung bleibt aber trotzdem korrekt und kann mit Maxima durchgeführt werden.&lt;br /&gt;
* Es gibt einige Funktionen welche in &#039;&#039;&#039;Maxima existieren&#039;&#039;&#039; aber im &#039;&#039;&#039;Parser nicht, oder mit anderem Syntax&#039;&#039;&#039;.&lt;br /&gt;
** Wenn diese von Maxima nicht ausgewertet werden können, da sie &#039;&#039;&#039;Datensätze&#039;&#039;&#039; enthalten welche zu Auswertezeitpunkt von Maxima noch &#039;&#039;&#039;nicht mit Werten belegt&#039;&#039;&#039; sind, &#039;&#039;&#039;dürfen sie in der Berechnung nicht verwendet werden&#039;&#039;&#039;, da der Parser dann damit nichts anfangen kann.&lt;br /&gt;
** Solche Funktionen haben entweder im Parser eine alternative Schreibweise welche auch mit Maxima verwendet werden kann (z.B.: wenn), oder sie können prinzipell nicht verwendet werden. (Für wichtige Funktionsweisen könnte man in zukünftigen Versionen neue Funktionalitäten in den Parser einbauen, die die gewünschte Funktion erfüllen)&lt;br /&gt;
** Ein weiter Möglichkeit für die Verwendung solcher Funktionen ist der Verzicht auf Datensätze in diesen Funktionen, damit diese Funktion beim Auswerten des Maxima-Feldes bereits ausgewertet werden kann und somit der Parser davon nichts mehr sieht.&lt;br /&gt;
** zB:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
if then&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Infix Operatoren===&lt;br /&gt;
====arithmetische Operatoren====&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Operator || Priorität || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| + || 40 || Addition || 4+5 || 9 &lt;br /&gt;
|-&lt;br /&gt;
| - || 40 || Subtraktion || 6-2 || 4&lt;br /&gt;
|-&lt;br /&gt;
| * || 50 || Multiplikation || 4*5 || 20&lt;br /&gt;
|-&lt;br /&gt;
| / || 51 || Division || 20/4 || 5&lt;br /&gt;
|-&lt;br /&gt;
| % || 51 || Divisionsrest || 104%20 || 4&lt;br /&gt;
|-&lt;br /&gt;
| / / || 60 || Parallelschaltung || x / / y || x*y/(x+y)&lt;br /&gt;
|-&lt;br /&gt;
| ^ || 90 || Potenz || 2^3 || 8&lt;br /&gt;
|-&lt;br /&gt;
| .*. || 200 || Operator der intern für eine fehlende bindende Multiplikation verwendet wird || 4x || 4*x&lt;br /&gt;
|-&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
====Bitoperatoren====&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Operator || Priorität || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
||  |  || 20 || Bitweise oder logisches ODER ||| 9|5 &amp;lt;br&amp;gt; true|false || 13 &amp;lt;br&amp;gt;true&lt;br /&gt;
|-&lt;br /&gt;
| or || 20 || Bitweise oder logisches ODER || 9 or 5 || 13&lt;br /&gt;
|-&lt;br /&gt;
| &amp;amp;  || 21 || Bitweise oder logisches UND  || 13&amp;amp;10 || 8&lt;br /&gt;
|-&lt;br /&gt;
| and || 21 || Bitweise oder logisches UND  || 13 and 10 || 8&lt;br /&gt;
|-&lt;br /&gt;
| xor || 22 || Bitweise oder logisches exklusiv oder XOR  || 13 xor 10 || 7&lt;br /&gt;
|-&lt;br /&gt;
| imp || 23 || Bitweise oder logisches impliziert IMP || 13 imp 10 || 8&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;&amp;lt;  || 35 || Bitweise links schieben  || 5&amp;lt;&amp;lt;2 || 20&lt;br /&gt;
|-&lt;br /&gt;
| &amp;gt;&amp;gt;  || 35 || Bitweise rechts schieben || 8&amp;gt;&amp;gt;2 || 2&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
====Vergleichsoperatoren====&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Operator || Priorität || Beschreibung || Beispiel&lt;br /&gt;
|-&lt;br /&gt;
| =  || 3 || Gleichungsoperator || x=y&lt;br /&gt;
|-&lt;br /&gt;
| == || 30 || Gleichungsoperator || x==y&lt;br /&gt;
|-&lt;br /&gt;
| != || 30 || Ungleichungsoperator || x!=y&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt; || 32 || Kleiner || x&amp;lt;y&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;= || 32 || Kleiner gleich || x&amp;lt;=y&lt;br /&gt;
|-&lt;br /&gt;
| &amp;gt; || 32 || größer || x&amp;gt;y&lt;br /&gt;
|-&lt;br /&gt;
| &amp;gt;= || 32 || größer gleich || x&amp;gt;=y&lt;br /&gt;
|}&lt;br /&gt;
====Organisative Operatoren====&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Operator || Priorität || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| , || 0 || Listen-Trennzeichen || x,y ||&lt;br /&gt;
|-&lt;br /&gt;
| $ || 1 || Trennzeichen zwischen mehreren Berechnungen || ||&lt;br /&gt;
|-&lt;br /&gt;
| ; || 1 || Trennzeichen zwischen mehreren Berechnungen || ||&lt;br /&gt;
|-&lt;br /&gt;
| : || 2 || Zuweisung an eine Variablen auf der linken Seite || x:5 || &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Prefix Operatoren===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Operator || Priorität || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| + || 45 || positives Vorzeichen || +5 || 5&lt;br /&gt;
|-&lt;br /&gt;
| - || 45 || negatives Vorzeichen || -(-5) || 5&lt;br /&gt;
|-&lt;br /&gt;
| ~ || 95  || bitweise Inversion einer 64bit-Ganzzahl || ~0x0F0F || 0xFFFFFFFFFFFFF0F0&lt;br /&gt;
|-&lt;br /&gt;
| ! || 120 || logisches NOT || !(3&amp;lt;4) || false&lt;br /&gt;
|-&lt;br /&gt;
| ++ || 130 || Inkrement von Ganzzahlen || ++x || erhöht x um eins und gibt das Ergebnis nach der Erhöhung zurück&lt;br /&gt;
|-&lt;br /&gt;
| -- || 130 || Dekrement von Ganzzahlen || --x || vermindert x um eins und gibt das Ergebnis nach der Verminderung zurück&lt;br /&gt;
|-&lt;br /&gt;
| % || 200 || Prefix für Namen, welche als Konstante definiert sind || %pi || 3.141592653589793&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Suffix Operatoren===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Operator || Priorität || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| ++ || 135 || Inkrement von Ganzzahlen || x++ || erhöht x um eins und gibt den Variablenwert vor der Erhöhung zurück&lt;br /&gt;
|-&lt;br /&gt;
| -- || 135 || Dekrement von Ganzzahlen || x-- || vermindert x um eins und gibt den Variablenwert vor der Verminderung zurück&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==Klammern==&lt;br /&gt;
* () runde Klammern werden für mathematische Ausdrücke zur Klammerung verwendet&lt;br /&gt;
* {} geschwungene Klammer werden im Angabetext für die Namen der Datensätze verwendet&lt;br /&gt;
* [] eckige Klammern werden für Vektoren und Matrizen verwendet&lt;br /&gt;
&lt;br /&gt;
==Funktionen==&lt;br /&gt;
===Funktionen für Ganzzahlen===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| band || bitweises UND || band(4,12) || 4&lt;br /&gt;
|-&lt;br /&gt;
| bor  || bitweises ODER || bor(4,1) || 5&lt;br /&gt;
|-&lt;br /&gt;
| bxor || bitweises EXKLUSIV ODER || band(4,5) || 1&lt;br /&gt;
|-&lt;br /&gt;
| bimp || bitweises Parameter1 impliziert Parameter2 || bimp(13,10) || 8&lt;br /&gt;
|-&lt;br /&gt;
| binv || bitweises NICHT mit 8 bit || binv(0x0F) || 0xF0&lt;br /&gt;
|-&lt;br /&gt;
| shl || Schiebe Ganzzahl bitweise nach links || shl(8,2) || 32&lt;br /&gt;
|-&lt;br /&gt;
| shr || Schiebe Ganzzahl bitweise nach rechts || shr(8,2) || 2&lt;br /&gt;
|-&lt;br /&gt;
| div || Ganzzahldivision, Ergebnis wird abgeschnitten || div(5,2) || 2&lt;br /&gt;
|-&lt;br /&gt;
| inv8  || bitweise Invertieren und die letzten 8 Bit bestimmen  || inv8(0b1001) || 0b11110110&lt;br /&gt;
|-&lt;br /&gt;
| inv16 || bitweise Invertieren und die letzten 16 Bit bestimmen || inv16(0xF0)  || 0xFF0F&lt;br /&gt;
|-&lt;br /&gt;
| inv32 || bitweise Invertieren und die letzten 32 Bit bestimmen || inv32(0xF0)  || 0bFFFFFF0F&lt;br /&gt;
|-&lt;br /&gt;
| inv64 || bitweise Invertieren und die letzten 64 Bit bestimmen || inv64(0xF0)  || 0bFFFFFFFFFFFFFF0F&lt;br /&gt;
|-&lt;br /&gt;
| byte  || Zahl in eine Ganzzahl wandeln und die letzten 8bit der Zahl Abschneiden, Einheit geht verloren  || byte(34.2) || 34&lt;br /&gt;
|-&lt;br /&gt;
| word  || Zahl in eine Ganzzahl wandeln und die letzten 16bit der Zahl Abschneiden, Einheit geht verloren || word(34.2) || 34&lt;br /&gt;
|-&lt;br /&gt;
| int   || Zahl in eine Ganzzahl wandeln und die letzten 32bit der Zahl Abschneiden, Einheit geht verloren || int(34.2) || 34&lt;br /&gt;
|-&lt;br /&gt;
| long  || Zahl in eine Ganzzahl wandeln , Einheit geht verloren || long(34.2) || 34&lt;br /&gt;
|-&lt;br /&gt;
| [[parity]]  || Paritätsberechnung : parity(Parität,Codewortlänge,Datenwort[,Datenwort,....]) || parity(even,7,&amp;quot;xy&amp;quot;) || &lt;br /&gt;
|-&lt;br /&gt;
| [[blockparity]]  || Kreuz oder Blockparität : blockparity(Parität,Codewortlänge,Codewortanzahl,Datenwort[,Datenwort,....]) || blockparity(even,7,3,&amp;quot;abc&amp;quot;) || &lt;br /&gt;
|-&lt;br /&gt;
| [[bcd]]  || Wandelt in eine Long-Zahl in ein Feld aus BCD-kodierten Zahlen um || bcd(124) || [1,2,4]&lt;br /&gt;
|-&lt;br /&gt;
| [[code]] || Code aus mehreren Codeworten zusammensetzen : code(Codewortlänge,Datenwort[,Datenwort,....]) || code(5,4,3,5) || 0b1000001100101&lt;br /&gt;
|-&lt;br /&gt;
| [[hamming]] || Bestimmt den Hamming-Abstand von mehreren Codeworten || hamming(1,2,4,8,16) || 2&lt;br /&gt;
|-&lt;br /&gt;
| [[komplement]] ||  Bildet das Zweierkomplement mit einer negativen Zahl mit einer bestimmten Bitanzahl, fehlt die Bitanzahl, so wird ein 32Bit-2er-komplement gebildet || komplement(-5,8) || 0b11111011&lt;br /&gt;
|-&lt;br /&gt;
| [[bitstream]] || Erzeugt aus einer Ganzzahl einen Bitstrom als String mit einer definierten Anzahl von Bit (MSB werden nötigenfalls mit 0 gefüllt) : bitstream(Daten,Bitanzahl) || bitstream(0x184,12) || &amp;quot;000110000100&amp;quot;&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Funktionen für rationale und Ganzzahlen===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| kgV || berechnet das kleinste gemeinsame Vielfache von mehreren Zahlen || kgV(3,10) || 30&lt;br /&gt;
|-&lt;br /&gt;
| ggT || berechnet den größten gemeinsamen Teiler von mehreren Zahlen || ggT(12,10) || 2&lt;br /&gt;
|- &lt;br /&gt;
| isprim || prüft ob die angegebene Zahl eine Primzahl ist || isprim(13) || true&lt;br /&gt;
|-&lt;br /&gt;
| prims || zerlegt eine Ganzzahl in ihre Primfaktoren || prims(12) || [2,2,3]&lt;br /&gt;
|-&lt;br /&gt;
| defracmix || zerlegt eine rationale Zahl in einen gemischten Bruch aus ganzzahligem Summanden, Zähler und Nenner als Menge&amp;lt;br&amp;gt;Die erhaltene Menge kann mit dem Format-Modfier &#039;&#039;&#039;frac&#039;&#039;&#039; als gemischter Bruch dargestellt werden (siehe [[Zahlendarstellung]]) || defracmix(14/12)&amp;lt;br&amp;gt;defracmix(-15/12)&amp;lt;br&amp;gt;defracmix(3/12) || [1,2/12]&amp;lt;br&amp;gt;[-1,3,12]&amp;lt;br&amp;gt;[0,3,12] &lt;br /&gt;
|-&lt;br /&gt;
| defrac || zerlegt eine rationale Zahl in Zähler und Nenner als Menge &amp;lt;br&amp;gt;Die erhaltene Menge kann mit dem Format-Modfier &#039;&#039;&#039;frac&#039;&#039;&#039; als gemischter Bruch dargestellt werden || defrac(14/12) || [13,12]&lt;br /&gt;
|-&lt;br /&gt;
| frac || erzeugt aus einer Menge aus 2 oder 3 Elementen (von defrac) eine rationale Zahl || frac([3,7])&amp;lt;br&amp;gt;frac([1,2,3]) || 3/7 &amp;lt;br&amp;gt; 5/3&lt;br /&gt;
|-&lt;br /&gt;
| mod || Mathematische Implementierung von [https://de.wikipedia.org/wiki/Division_mit_Rest#Modulo modulo]: Divisionsrest einer Division mit ganzzahligem Ergebnis || mod(5,2) &amp;lt;br&amp;gt; mod(6.2,2.5) &amp;lt;br&amp;gt; mod(-4,3) || 1&amp;lt;br&amp;gt;1.2 &amp;lt;br&amp;gt; 2&lt;br /&gt;
|-&lt;br /&gt;
| mod2 || Symmetrische Implementierung von [https://de.wikipedia.org/wiki/Division_mit_Rest#Modulo modulo]: Divisionsrest einer Division mit ganzzahligem Ergebnis &amp;lt;br&amp;gt;Der Unterschied zu mod liegt in der Behandlung von negativen Zahlen des ersten Arguments &amp;lt;br&amp;gt;Siehe auch Divisionsrest des Parser-Operators % [[Berechnungen#arithmetische_Operatoren]] || mod2(5,2) &amp;lt;br&amp;gt; mod2(6.2,2.5) &amp;lt;br&amp;gt; mod2(-4,3) || 1&amp;lt;br&amp;gt;1.2 &amp;lt;br&amp;gt; -1&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===boolsche Funktionen===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| eq || gleich || eq(4,4) || true&lt;br /&gt;
|-&lt;br /&gt;
| eqruntime || symbolischer Vergleich, welcher &#039;&#039;&#039;symbolisch erst bei der Ergebnisberechnung&#039;&#039;&#039; ausgeführt wird. Muss verwendet werden, wenn bei Vergleichen symbolische Antworten von Schülern (Q0,Q1,...) verwendet werden.  || eqruntime(x+3*y,3*y+x) || true&lt;br /&gt;
|-&lt;br /&gt;
| ne || ungleich || ne(6,4) || true&lt;br /&gt;
|-&lt;br /&gt;
| ge || größer gleich || ge(6,4) || true&lt;br /&gt;
|-&lt;br /&gt;
| le || kleiner gleich || le(6,4) || false&lt;br /&gt;
|-&lt;br /&gt;
| gt || größer || gt(6,4) || true&lt;br /&gt;
|-&lt;br /&gt;
| lt || kleiner || lt(6,4) || false&lt;br /&gt;
|-&lt;br /&gt;
| between || prüft ob Parameter1 kleiner als Parameter2 und Parameter2 kleiner als Parameter 3 || between(3,4,5) || true&lt;br /&gt;
|-&lt;br /&gt;
| land || logisches UND || land(a&amp;lt;b,b&amp;lt;c) || &lt;br /&gt;
|-&lt;br /&gt;
| lor  || logisches ODER || lor(a&amp;lt;b,b&amp;lt;c) || &lt;br /&gt;
|-&lt;br /&gt;
| not  || logisches NICHT. Vorsicht ein symbolisches Ergebnis von Maxima liefert not als Prefix-Operator, welcher vom Parser nicht unterstützt wird ( Verwende statt dessen &#039;&#039;&#039;lnot&#039;&#039;&#039; ) || not(a&amp;lt;b) || &lt;br /&gt;
|-&lt;br /&gt;
| lnot  || logisches NICHT, wie not jedoch wird es von Maxima nicht ausgewertet || lnot(a&amp;lt;b) || &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===arithmetische Funktionen===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| double || Zahl in eine Gleitkommazahl umwandeln, die Einheit geht dabei verloren || double(3.4V) || 3.4&lt;br /&gt;
|-&lt;br /&gt;
| numeric || verwirft die Einheit, wenn eine vorhanden ist und liefert nur den Zahlenwert || numeric(2.3mA) &amp;lt;br&amp;gt; numeric(5%)|| 0.0023 &amp;lt;br&amp;gt; 5&lt;br /&gt;
|-&lt;br /&gt;
| unit || gibt die SI-Einheit mit dem Zahlenwert 1 zurück || unit(3.1kA) &amp;lt;br&amp;gt; unit(5%) || 1A &amp;lt;br&amp;gt; 1%&lt;br /&gt;
|-&lt;br /&gt;
| cround  || Rundet die Zahl kaufmännisch, der zweite Parameter gibt die Anzahl der Kommastellen an, ohne 2.Parameter wird auf Ganzzahlen gerundet, bei komplexen Zahlen wird Betrag und Winkel in Grad gerundet. || cround(23.535,2)&amp;lt;br&amp;gt;cround(2.435arg34.5364°,1) || 23.54&amp;lt;br&amp;gt;2.4arg34.5°&lt;br /&gt;
|-&lt;br /&gt;
| ccround  || Rundet die Zahl kaufmännisch, der zweite Parameter gibt die Anzahl der Kommastellen an, bei komplexe Zahlen wird Real und Imaginärteil gerundet. || ccround(2.4534+5.645*%i,2) || 2.45+5.65i&lt;br /&gt;
|-&lt;br /&gt;
| round  || Rundet die Zahl kaufmännisch, aus Kompatibilitätsgründen zu Maxima hat round nur einen Parameter || round(23.535) || 24&lt;br /&gt;
|-&lt;br /&gt;
| ground || Rundet die Zahl auf die im zweiten Parameter angegebenen gültigen Ziffern || ground(2453.43,2) || 2500&lt;br /&gt;
|-&lt;br /&gt;
| floor  || Rundet auf die größte ganze Zahl, welche kleiner oder gleich x ist || floor(24.5) || 24&lt;br /&gt;
|-&lt;br /&gt;
| trunc  || Schneidet die Zahl nach dem Komma ab || trunc(24.5) || 24&lt;br /&gt;
|-&lt;br /&gt;
| ceiling || ceiling(x) Rundet auf die kleinste ganze Zahl, welche größer oder gleich x ist || ceiling(13.2) || 14&lt;br /&gt;
|-&lt;br /&gt;
| pow || Potenzfunktion || pow(2,3) || 8&lt;br /&gt;
|-&lt;br /&gt;
| par || Parallelschaltung von Widerständen || par(x,y) || x*y/(x+y)&lt;br /&gt;
|-&lt;br /&gt;
| min  || Minimum von mehrere Werten suchen || min(3,5,1) || 1&lt;br /&gt;
|-&lt;br /&gt;
| max  || Maximum von mehreren Werten suchen || max(3,5,1) ||  5&lt;br /&gt;
|-&lt;br /&gt;
| random  || Zufallszahl aus einem definierten Zahlenbereich random(minimal,maximal)&amp;lt;br&amp;gt;VORSICHT! Die Zufallszahl wird bei jedem Aufruf neu berechnet, weshalb sich der Wert bei jedem Anzeigevorgang einer Frage ändert. Sollte sich der berechnete Wert für eine Schülerangabe zwischen Fragestellung und Ergebniskontrolle nicht ändern dürfen (ist der Normalfall) muss man einen &#039;&#039;&#039;Datensatz statt einer Zufallszahl&#039;&#039;&#039; verwenden! &amp;lt;br&amp;gt; Zufallszahlen haben in der Ergebnisberechnung keinen Sinn, und sollten maximal für angezeigte zufällige Werte verwendet werden! || random(2,8) ||  3.4532&lt;br /&gt;
|-&lt;br /&gt;
| randomC  || komplexe Zufallszahl aus einem definierten Zahlenbereich für den Betrag&amp;lt;br&amp;gt;VORSICHT! Die Zufallszahl wird bei jedem Aufruf neu berechnet!  || randomC(2,8) ||  3.4532arg40.3°&lt;br /&gt;
|-&lt;br /&gt;
| signum  || Liefert das Vorzeichen einer Zahl (-1,0,1). Bei einer komplexen Zahl das Vorzeichen des Realteils. || signum(-4) || -1&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Maxima-basierte Funktionen ===&lt;br /&gt;
* Diese Funktionen funktionieren nur wenn Maxima installiert ist und werden immer an Maxima gesendet, auch wenn der interne Parser aktiviert ist.&lt;br /&gt;
* Weiters werden sie bei der Ausgabe als TeX-Formel auch korrekt mit LaTeX gesetzt.&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| integrate || Berechnet das unbestimmte oder bestimmte Integral einer Funktion. || integrate(x^2,x) &amp;lt;br&amp;gt; integrate(x^2,x,0,2) || x^3/3 &amp;lt;br&amp;gt; 8/3  &lt;br /&gt;
|-&lt;br /&gt;
| diff || Berechnet die Ableitung einer Funktion.  || diff(x^2,x)&amp;lt;br&amp;gt;diff(3*x^2,x,2) || x &amp;lt;br&amp;gt; 6&lt;br /&gt;
|-&lt;br /&gt;
| tomaxima || Führt die Berechnung aller Parameter von links nach rechts hintereinander mit Maxima aus. Das Ergebnis ist dann das Ergebnis des letzten Parameters. || tomaxima(y:x^2,y+2) || x^2+2&lt;br /&gt;
|-&lt;br /&gt;
| laplace || Bestimmt die Laplace-Transformierte einer Funktion. || laplace(sin(t),t,s) || 1/(1+s^2)&lt;br /&gt;
|-&lt;br /&gt;
| ilt || Bestimmt die inverse Laplace-Transformierte eine Laplace-Funktion || ilt(1/(1+s),s,t) || e^(-t)&lt;br /&gt;
|-&lt;br /&gt;
| sum || Summenbildung || sum(1/k,k,1,2) || 3/2&lt;br /&gt;
|-&lt;br /&gt;
| product || Produktbildung || product(1/k,k,1,3) || 1/6&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===erweiterte arithmetische Funktionen===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| sigma || Sprungfunktion: sigma(x) liefert 0 für x&amp;lt;0 und 1 für x&amp;gt;=0 || sigma(243.3) || 1&lt;br /&gt;
|-&lt;br /&gt;
| pulse || Rechteckfunktion: &amp;lt;br&amp;gt;pulse(x,x0) ist gleich 1 für x0 &amp;lt; x &amp;lt; x0 + 1, sonst 0&amp;lt;br&amp;gt;pulse(x,x0,L) ist gleich 1 für x0 &amp;lt; x &amp;lt; x0 + L, sonst 0&amp;lt;br&amp;gt;[[Datei:pulse.png|300px]] || pulse(x,2,4) || [[Datei:pulse_x_2_4.png|100px]]&lt;br /&gt;
|-&lt;br /&gt;
| interpol || Interpolationsfunktion zwischen mehreren Stützpunkten in einem Koordinatensystem. &amp;lt;br&amp;gt; interpol(WerteX,WerteY,x) || interpol([0,1,2],[0,3,3],1.5) || 3&lt;br /&gt;
|-&lt;br /&gt;
| periodic || Erzeugt aus einer beliebigen Funktion zwischen 0 und Periodendauer eine periodische Funktion &amp;lt;br&amp;gt; periodic(Variable,Periodendauer,Funktion)&amp;lt;br&amp;gt; periodic(Variable,Periodendauer,Funktionsperiodendauer,Funktion) || ch1(t):periodic(t,5ms,2&#039;Vms-2&#039;*t^2) &amp;lt;br&amp;gt; ch1(t):periodic(t,5ms,1,2V*t^2) || :[[Datei:ClipCapIt-190318-113524.PNG|100px]] &amp;lt;br&amp;gt; :[[Datei:ClipCapIt-190318-113644.PNG|100px]]&lt;br /&gt;
|-&lt;br /&gt;
| numint || numerische Integration &amp;lt;br&amp;gt; numint(untereGrenze,obereGrenze,funktion,Variable)&amp;lt;br&amp;gt; numint(untereGrenze,obereGrenze,funktion,Variable,punkteAnzahl) || numint(0,2pi,sin(t),t) || 0&lt;br /&gt;
|-&lt;br /&gt;
| numdif || numerisches Differenzieren einer Funktion &amp;quot;funktion&amp;quot; nach einer Variablen &amp;quot;Variable&amp;quot; an der Stelle &amp;quot;position&amp;quot; mit einer Differenz der Variablen von &amp;quot;differenz&amp;quot; &amp;lt;br&amp;gt; numdif(position,funktion,Variable,differenz) || numdif(0,sin(t),t,0.01) || 1&lt;br /&gt;
|-&lt;br /&gt;
| solve || löst eine Gleichung oder ein Gleichungssystem nach einer oder mehrerer Variablen || solve([2*x+y=3,x-y=0],[x,y]) || [ [ x=1,y=1 ] ]&lt;br /&gt;
|-&lt;br /&gt;
| solvevalue || löst eine Gleichung oder ein Gleichungssystem nach einer Variablen und liefert genau die erste Lösung wenn sie numerisch berechenbar ist || solvevalue([ 2*x+y=3,x-y=0 ],[ x,y ],x)  || 1&lt;br /&gt;
|-&lt;br /&gt;
| newton || Bestimmt eine Nullstelle einer Funktion nach dem Newton-Verfahren. Der erste Parameter ist ein Ausdruck in einer Variablen, der zweite Parameter ist der Startwert. || newton(x^2-4,4) || 2&lt;br /&gt;
|-&lt;br /&gt;
| cnewton || Bestimmt eine komplexe Nullstelle einer Funktion nach dem Newton-Verfahren. Der erste Parameter ist ein Ausdruck in einer Variablen, der zweite Parameter ist der komplexe Startwert. || newton(x^2+4,4) || 2*%i&lt;br /&gt;
|-&lt;br /&gt;
| newtonall || Bestimmt alle Nullstellen einer Funktion mit einem Betrag des Funktionsparameters kleiner als ein definierter Wert nach dem Newton-Verfahren. Der erste Parameter ist ein Ausdruck in einer Variablen, der zweite Parameter ist der maximale Betrag des Funktionsparameters. Das Ergebnis ist immer ein Vektor mit den nach aufsteigendem Funktionswert sortierten Nullstellen. || newton(x^2-4,4) || [-2,2]&lt;br /&gt;
|-&lt;br /&gt;
| cnewtonall || Bestimmt alle komplexen Nullstellen einer Funktion mit einem Betrag des Funktionsparameters kleiner als ein definierter Wert nach dem Newton-Verfahren. Der erste Parameter ist ein Ausdruck in einer Variablen, der zweite Parameter ist der maximale Betrag des Funktionsparameters. Das Ergebnis ist immer ein Vektor mit den Nullstellen. || newton(x^2+4,4) || [-2*%i,2*%i]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Stringfunktionen===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| dechex || Zahl in eine Ganzzahl wandeln und als Hexadezimal-String ausgeben || dexhex(12) || &amp;quot;0xC&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| chr || Bestimmt die Zeichen mit dem ASC-II-Code der Long-Parameter und setzt daraus einen String zusammen. || chr(0x65,105) || &amp;quot;ei&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| val || Bestimmt den ASC-II-Code des ersten Zeichens welches als String-Parameter übergeben wurde.|| val(&amp;quot;a&amp;quot;) || 97&lt;br /&gt;
|-&lt;br /&gt;
| strcat || Fügt mehrere Strings zusammen.|| strcat(&amp;quot;a&amp;quot;,&amp;quot;b&amp;quot;) || &amp;quot;ab&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===trigonometrische Funktionen===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| sin || Sinus || sin(%pi/2) || 1&lt;br /&gt;
|-&lt;br /&gt;
| cos || Cosinus || cos(%pi/2) || 0&lt;br /&gt;
|-&lt;br /&gt;
| tan || Tangens || tan(%pi/4) || 1&lt;br /&gt;
|-&lt;br /&gt;
| asin || Arcus-Sinus || asin(1) || %pi/2&lt;br /&gt;
|-&lt;br /&gt;
| arcsin || Arcus-Sinus || asin(1) || %pi/2&lt;br /&gt;
|-&lt;br /&gt;
| acos || Arcus-Cosinus || acos(1) || 0&lt;br /&gt;
|-&lt;br /&gt;
| arccos || Arcus-Cosinus || acos(1) || 0&lt;br /&gt;
|-&lt;br /&gt;
| atan || Arcus-Tangens || atan(1) || %pi/4&lt;br /&gt;
|-&lt;br /&gt;
| arctan || Arcus-Tangens || arctan(1) || %pi/4&lt;br /&gt;
|-&lt;br /&gt;
| atan2 || Arcus-Tangens atan2(y,x)=arctan(y/x) || atan2(-2,-2) || -%pi*3/4&lt;br /&gt;
|-&lt;br /&gt;
| arctan2 || Arcus-Tangens arctan2(y,x)=arctan(y/x) || arctan2(-2,-2) || -%pi*3/4&lt;br /&gt;
|-&lt;br /&gt;
| sinh || Sinus-Hyperbolicus || sinh(1) || 1.1752012&lt;br /&gt;
|-&lt;br /&gt;
| cosh || Cosinus-Hyperbolicus || cosh(1) || 1.5430806&lt;br /&gt;
|-&lt;br /&gt;
| tanh || Tangens-Hyperbolicus || tanh(1) || 0.7615941&lt;br /&gt;
|-&lt;br /&gt;
| coth || Cotangens-Hyperbolicus || coth(1) || 1.313035&lt;br /&gt;
|-&lt;br /&gt;
| asinh || Area-Sinus-Hyperbolicus || asinh(1.1752012) || 1&lt;br /&gt;
|-&lt;br /&gt;
| acosh || Area-Cosinus-Hyperbolicus || acosh(1.5430806) || 1&lt;br /&gt;
|-&lt;br /&gt;
| atanh || Area-Tangens-Hyperbolicus || atanh(0.7615941) || 1&lt;br /&gt;
|-&lt;br /&gt;
| acoth || Area-Cotangens-Hyperbolicus || acoth(1.313035) || 1&lt;br /&gt;
|-&lt;br /&gt;
| [[csin]] || Erzeugt aus einer komplexen Zahl (Effektivwert) und einer Frequenz einen Sinusfunktion in der Zeit || csin(U) || sqrt(2)*cabs(U)*sin(2*pi*f*t+carg(U))&lt;br /&gt;
|-&lt;br /&gt;
| [[quadrant]] || Liefert den Quadranten eines Winkels mit einer Toleranzangabe. || quadrant(20°,5°) || 1&lt;br /&gt;
|-&lt;br /&gt;
| argnorm || Wandelt einen Winkel auf den Bereich von 0°-360° || argnorm(-50°) || 310°&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Exponentialfunktionen===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| pow || Potenzfunktion || pow(2,3) || 8&lt;br /&gt;
|-&lt;br /&gt;
| exp|| Exponentialfunktion || exp(1) || %e&lt;br /&gt;
|-&lt;br /&gt;
| log || natürlicher Logarythmus || log(%e) || 1&lt;br /&gt;
|-&lt;br /&gt;
| ln || natürlicher Logarythmus || ln(%e) || 1&lt;br /&gt;
|-&lt;br /&gt;
| log10 || Logarythmus zur Basis 10 || log10(100) || 2&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===komplexe Zahlen===&lt;br /&gt;
Die Funktionen zu komplexen Zahlen werden (anders als in Maxima) nur ausgewertet wenn das Ergebnis numerisch berechenbar ist, ansonsten bleibt die Funktion symbolisch erhalten.&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| abs || Liefert den Absolutbetrag einer komplexen Zahl || abs(3+4*%i) || 5&lt;br /&gt;
|-&lt;br /&gt;
| cabs || Liefert den Absolutbetrag einer komplexen Zahl || cabs(3+4*%i) || 5&lt;br /&gt;
|-&lt;br /&gt;
| carg || Liefert das Argument einer komplexen Zahl || carg(4*%e^(3*%i)) || 3&lt;br /&gt;
|-&lt;br /&gt;
| realpart || Liefert den Realteil einer komplexen Zahl || realpart(3+4*%i) || 3&lt;br /&gt;
|-&lt;br /&gt;
| imagpart || Liefert den Imaginärteil einer komplexen Zahl || imagpart(3+4*%i) || 4&lt;br /&gt;
|-&lt;br /&gt;
| conjugate || Liefert die konjugiert komplexe Zahl einer komplexen Zahl || conjugate(3+4*%i) || 3-4*%i&lt;br /&gt;
|-&lt;br /&gt;
| rectform || hat in LeTTo keine Relevanz, da die Zahlendarstellung bei der Ausgabe definiert wird wie zB.: {=3arg2;karti} ||  || &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Polynome===&lt;br /&gt;
Polynome mit reellen Koeffizienten in einer Variablen können mit folgenden Funktionen erstellt und verarbeitet werden. Für die interne Verarbeitung wird hierzu ein eigener Polynom-Datentyp verwendet.&lt;br /&gt;
&lt;br /&gt;
siehe auch [[Zahlendarstellung#f.C3.BCr_Polynome_und_gebrochen_rationale_Funktionen_mit_numerischen_Koeffizienten_in_einer_Variablen_k.C3.B6nnen_folgende_Parameter_angegeben_werden|Zahlendarstellung Polynome]]&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| polynom(p) || Erzeugt aus einem Ausdruck welcher genau eine Variable besitzen muss ein Polynom in dieser Variablen || polynom(1+x) || 1+x²&lt;br /&gt;
|-&lt;br /&gt;
| polynom(p,var) || Erzeugt aus einem Ausdruck ein Polynom in einer definierten Variablen. Ist p ein gültiger Polynom-Ausdruck mit reelen Koeffizienten in der Variablen var wird das Polynom erzeugt, ansonsten bleibt die Funktion erhalten. || polynom(1+a*x^2,x) &amp;lt;br&amp;gt; polynom(1+2*x^2,x) || polynom(1+a*x^2,x)&amp;lt;br&amp;gt;1+2*x²&lt;br /&gt;
|-&lt;br /&gt;
| polynom(p,var,&amp;quot;einheit&amp;quot;) || Erzeugt ein Polynom in der Variablen var, mit der Einheit &amp;quot;einheit&amp;quot; für die Polynomvariable. Die Einheit muss als String in Doppelhochkomma angegeben werden! Das Polynom p muss entweder ohne Einheiten oder mit den korrekten Einheiten angegeben werden! || polynom(1+2*p^2,p,&amp;quot;s-1&amp;quot;) &amp;lt;br&amp;gt; polynom(1+2&#039;s2&#039;*p^2,p,&amp;quot;s-1&amp;quot;) || 1+2&#039;s2&#039;*p^2 &amp;lt;br&amp;gt;1+2&#039;s2&#039;*p^2&lt;br /&gt;
|-&lt;br /&gt;
| factfrompolynom(p) || Erzeugt aus einem Polynom einen Vektor mit den Polynomfaktoren. Erste Zeile Zählerfaktoren, zweite Zeile Nennerfaktoren, dritte Zeile Polynomvariable, vierte Zeile Einheit der Polynomvariable|| factfrompolynom(polynom((2+x)/(1+2*x))) || [[1,0.5],[0.5,1],&amp;quot;x&amp;quot;,&amp;quot;&amp;quot;]&lt;br /&gt;
|-&lt;br /&gt;
| polynomfromfact(f) || Erzeugt aus einer Faktoren-Liste, welche mit factfrompolynom erstellt wurde ein neues Polynom || polynomfromfact([[1,0.5],[0.5,1],&amp;quot;x&amp;quot;,&amp;quot;&amp;quot;]) || (2+x)/(1+2*x)&lt;br /&gt;
|- &lt;br /&gt;
| polynomfromfact(zähler,nenner,var,einheit) || Erzeugt aus Zähler und Nenner Faktor-Vektoren ein neues Polynom || polynomfromfact([1,0.5],[0.5,1],x,&amp;quot;&amp;quot;) || (2+x)/(1+2*x)&lt;br /&gt;
|- &lt;br /&gt;
| nullfrompolynom(p) || Erzeugt aus einem Polynom einen Vektor mit den PolynomNullstellen und Polstellen. Erste Zeile gemeinsamer Faktor, zweite Zeile Nullstellen, dritte Zeile Polstellen, vierte Zeile Polynomvariable|| nullfrompolynom(polynom((2+x)/(1+2*x))) || [0.5,[-2],[-0.5],x]&lt;br /&gt;
|-&lt;br /&gt;
| polynomfromnull(n) || Erzeugt aus einer Nullstellen-Polstellen-Liste, welche mit nullfrompolynom erstellt wurde ein neues Polynom || polynomfromnull([0.5,[-2],[-0.5],x]) || (2+x)/(1+2*x)&lt;br /&gt;
|- &lt;br /&gt;
| polynomfromnull(faktor,nullstellen,polstellen,var) || Erzeugt aus einer Faktor-Vektoren ein neues Polynom || polynomfromnull(0.5,[-2],[-0.5],x) || (2+x)/(1+2*x)&lt;br /&gt;
|-  &lt;br /&gt;
| polynomk(p) || Bestimmt den Faktor, welcher vom Polynom herausgehoben werden kann, so dass die höchste Potenz der Polynomvariable den Multiplikator Eins hat. || polynomk(polynom((2+x)/(1+2*x))) || 0.5&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===statistische Funktionen===&lt;br /&gt;
Die Funktionen funktionieren nur ohne Einheiten.&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| factorial || Liefert die Fakultät einer positiven ganzen Zahl || factorial(5) || 120&lt;br /&gt;
|-&lt;br /&gt;
| binomial || Liefert den Binomialkoeffizienten von zwei positiven ganzen Zahlen || binomial(5,2) || 10&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Mengen-Funktionen===&lt;br /&gt;
Mengen werden intern als Vektoren verarbeitet und sind deshalb auch direkt durch Vektoren ersetzbar. Auch alle Vektor-Funktionen sind somit auch auf Mengen anwendbar und umgekehrt.&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis || ab Rev&lt;br /&gt;
|-&lt;br /&gt;
| setget || Liefert ein Element einer Menge oder einer Matrix (Menge von Mengen) || setget([12,13,14],1) &amp;lt;br&amp;gt; setget(matrix([9,2],[3,4]),0,1) || 13 &amp;lt;br&amp;gt; 2 &lt;br /&gt;
|-&lt;br /&gt;
| setset || setzt ein Element einer Menge oder einer Matrix (Menge von Mengen) || setset([12,13,14],1,35) &amp;lt;br&amp;gt; setset(matrix([9,2],[3,4]),0,0,-9) || [12,35,14] &amp;lt;br&amp;gt; [[-9,2],[3,4]]&lt;br /&gt;
|-&lt;br /&gt;
| setlength || liefert die Anzahl der Elemente einer Liste, Menge oder eines Vektors || setlength([3,6,54,34,3,54]) || 6 &lt;br /&gt;
|- &lt;br /&gt;
| setinsert || fügt ein Element in eine Menge an eine gegebene Stelle ein || setinsert([12,13,14],1,25) || [12,25,13,14]&lt;br /&gt;
|-&lt;br /&gt;
| setremove || löscht ein Element einer Menge || setremove([12,13,14],1) || [12,14]&lt;br /&gt;
|-&lt;br /&gt;
| setapply || wendet einen Ausdruck oder Funktion auf alle Elemente einer Menge an || setapply(y,[1,2,3],y*2) || [2,4,6] || 5965&lt;br /&gt;
|-&lt;br /&gt;
| setmedian || Liefert den Median einer Menge || setmedian([4,3,1,5,6]) || 4&lt;br /&gt;
|-&lt;br /&gt;
| setboxplot || Liefert die Werte des Boxplot einer Menge (Minimum, unteres Quartil, Median, oberes Quartil, Maximum) als Vektor verwendbar für das [[Plot#definierte_Zeichenelemente|Plot-Plugin]] || setboxplot([1,2,3,10,8,9]) || [1,2,5.5,9,10]&lt;br /&gt;
|-&lt;br /&gt;
| setsort || Sortiert die Elemente einer Menge aufsteigend || setsort([3,-3,2,0,5,2]) || [-3,0,2,2,3,5]&lt;br /&gt;
|-&lt;br /&gt;
| setsortnd || Sortiert die Elemente einer Menge aufsteigend und entfernt alle mehrfach vorkommenden Elemente || setsortnd([31,-3,2,31,0,5,2]) || [-3,0,2,5,31]&lt;br /&gt;
|-&lt;br /&gt;
| setcount || Bestimmt die Anzahl wie oft ein Element in einer Menge vorkommt oder die Anzahl der Elemente der Menge || setcount([31,-3,2,31,0,5,2],31) &amp;lt;br&amp;gt; setcount([2,5,3,6]) || 2 &amp;lt;br&amp;gt; 4&lt;br /&gt;
|-&lt;br /&gt;
| setmodus || Liefert das Element einer Menge, welches am öftesten vorkommt oder die Elemente als Menge wenn mehrere Elemente gleich oft vorkommen || setmodus([3,-3,2,0,5,2]) || 2&lt;br /&gt;
|-&lt;br /&gt;
| setreverse || Dreht die Reihenfolge einer Menge um || setreverse([3,-3,2,0,5,2]) || [2,5,0,2,-3,3]&lt;br /&gt;
|-&lt;br /&gt;
| setnd || Löscht alle Duplikate aus der Menge || setnd([3,-3,2,0,5,2]) || [3,-3,2,0,5]&lt;br /&gt;
|-&lt;br /&gt;
| setshuffle || Mischt eine Menge in eine andere Reihenfolge. VORSICHT, ohne zweiten Parameter (ganze Zahl) ändert sich die Reihenfolge bei jedem mal neu Laden automatisch und ist nicht nachvollziehbar, weshalb sie dann für Schülerbeispiele nicht einsetzbar ist! Daher ist es für eine praktische Anwendung in einem Schülerbeispiel **erforderlich**, wenn der zweite Parameter beispielsweise über einen Integer-Datensatz-Wert (z. B. zwischen 0 und 1000) festgelegt ist.|| setshuffle([3,-3,2,0,5,2],5) || [2,3,−3,2,0,5] || 6082&lt;br /&gt;
|-&lt;br /&gt;
| setmittel || Bestimmt den Mittelwert einer Menge || setmittel([1,3,2,4]) || 2.5&lt;br /&gt;
|-&lt;br /&gt;
| setgeomittel || Bestimmt das geometrische Mittelwert einer Menge aus positiven reellen Zahlen || setgeomittel([10,20,30]) || 18.171206&lt;br /&gt;
|-&lt;br /&gt;
| setvarianz || Bestimmt die empirische Varianz einer Menge || setvarianz([3,1,2,5,4]) || ((3-3)^2+(1-3)^2+(2-3)^2+(5-3)^2+(4-3)^2)/5=2&lt;br /&gt;
|-&lt;br /&gt;
| setquadratmittel || Bestimmt den quadratischen Mittelwert einer Menge || setquadratmittel([10,20,30]) || 21.6025&lt;br /&gt;
|-&lt;br /&gt;
| setsum || Bestimmt die Summe aller Werte einer Menge || setsum([1,3,2,4]) || 10&lt;br /&gt;
|-&lt;br /&gt;
| setprod || Bestimmt das Produkt aller Werte einer Menge || setprod([1,3,2,4]) || 24&lt;br /&gt;
|-&lt;br /&gt;
| setunion || Fügt mehrere Mengen zu einer neuen Menge zusammen || setunion([1,3,2,4],[3,7]) || {1,3,2,4,3,7}&lt;br /&gt;
|-&lt;br /&gt;
| setunionnd || Fügt mehrere Mengen zu einer neuen Menge zusammen, sortiert diese und entfernt alle mehrfachen Elemente || setunionnd([1,3,2,4],[3,7]) || {1,2,3,4,7}&lt;br /&gt;
|-&lt;br /&gt;
| setcut || Bildet die Schnittmenge aus mehreren Mengen || setcut([1,3,2,4],[3,7]) || {3}&lt;br /&gt;
|-&lt;br /&gt;
| setcompare || vergleicht zwei Mengen miteinander, wobei die Reihenfolge egal ist  || setcompare([1,3,2,4],[3,7]) &amp;lt;br&amp;gt; setcompare([1,3,2],[1,2,3]) &amp;lt;br&amp;gt; setcompare([1,3,2],[1,3,2,3]) &amp;lt;br&amp;gt; setcompare([1,2,3],[1,2,3])  || false &amp;lt;br&amp;gt; true &amp;lt;br&amp;gt; false &amp;lt;br&amp;gt; true&lt;br /&gt;
|-&lt;br /&gt;
| setcomparend || vergleicht zwei Mengen miteinander, wobei die Reihenfolge egal ist und doppelte Werte als einfach behandelt werden. || setcomparend([1,3,2,4],[3,7]) &amp;lt;br&amp;gt; setcomparend([1,3,2],[1,2,3]) &amp;lt;br&amp;gt; setcomparend([1,3,2],[1,3,2,3]) &amp;lt;br&amp;gt; setcomparend([1,2,3],[1,2,3])  || false &amp;lt;br&amp;gt; true &amp;lt;br&amp;gt; true &amp;lt;br&amp;gt; true&lt;br /&gt;
|-&lt;br /&gt;
| setpartof || prüft ob die erste Menge eine Teilmenge der zweite Menge ist wobei die Reihenfolge egal ist aber mehrfache Werte berücksichtigt werden  || setpartof([1,4],[1,3,7]) &amp;lt;br&amp;gt; setpartof([1,3],[1,2,3]) &amp;lt;br&amp;gt; setpartof([1,3,3],[1,3,5,7]) &amp;lt;br&amp;gt; setpartof([1,4,4],[1,2,3,4])  || false &amp;lt;br&amp;gt; true &amp;lt;br&amp;gt; false &amp;lt;br&amp;gt; false&lt;br /&gt;
|-&lt;br /&gt;
| setpartofnd || prüft ob die erste Menge eine Teilmenge der zweite Menge ist wobei die Reihenfolge und mehrfache Werte egal sind  || setpartofnd([1,4],[1,3,7]) &amp;lt;br&amp;gt; setpartofnd([1,3],[1,2,3]) &amp;lt;br&amp;gt; setpartofnd([1,3,3],[1,3,5,7]) &amp;lt;br&amp;gt; setpartofnd([1,4,4],[1,2,3,4])  || false &amp;lt;br&amp;gt; true &amp;lt;br&amp;gt; true &amp;lt;br&amp;gt; true&lt;br /&gt;
|-&lt;br /&gt;
| setgetmin || Liefert den kleinsten Wert einer Menge || setgetmin([1,3,-2,4]) || -2&lt;br /&gt;
|-&lt;br /&gt;
| setgetmax || Liefert den größten Wert einer Menge || setgetmax([1,3,-2,4]) || 4&lt;br /&gt;
|-&lt;br /&gt;
| setremovefirst || Entfernt den ersten Wert einer Menge || setremovefirst([1,3,-2,4]) || {3,-2,4}&lt;br /&gt;
|-&lt;br /&gt;
| setremovelast || Entfernt den letzten Wert einer Menge || setremovelast([1,3,-2,4]) || {1,3,-2}&lt;br /&gt;
|-&lt;br /&gt;
| setgetfirst || Liefert den ersten Wert einer Menge || setgetfirst([1,3,-2,4]) || 1&lt;br /&gt;
|-&lt;br /&gt;
| setgetlast || Liefert den letzten Wert einer Menge || setgetlast([1,3,-2,4]) || 4&lt;br /&gt;
|-&lt;br /&gt;
| setsub || setsub(M,x,y) Liefert eine Teilmenge von M der Elemente vom index x bis zum Index y || setsub([1,3,-2,4],1,2) || {3,-2}&lt;br /&gt;
|-&lt;br /&gt;
| setmakelist || setmakelist(f,x,start,stop) setzt in den Ausdruck f für x die Werte von start bis stop mit einer Schrittweite von 1 ein. || setmakelist(x^2,x,1,4) || [ 1,4,9,16 ]&lt;br /&gt;
|-&lt;br /&gt;
| || setmakelist(f,x,start,stop,schrittweite) setzt in den Ausdruck f für x die Werte von start bis stop mit dem Abstand schrittweite ein. || setmakelist(x^2,x,1,2,0.5) || [ 1,2.25,4 ]&lt;br /&gt;
|-&lt;br /&gt;
| || setmakelist(f,x,set) setzt die Werte des Vektors set in den Ausdruck f für x ein. || setmakelist(x^2,x,[3,1,2])  ||[ 9,1,4 ]&lt;br /&gt;
|-&lt;br /&gt;
| foreach || Führt für jedes Element eine Berechnung aus und verbindet die Ergebnisse mit der Aggregatfunktion || foreach([2,-3,5,-6],p,cabs(p),&amp;quot;+&amp;quot;) || 16 || 6075 &lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Punkte-Mengen-Funktionen ===&lt;br /&gt;
Bei der Eingabe mit dem Plot-Plugin werden Punkte-Mengen als Matrizen in der Form [[x1,y1],[x2,y2],[y3,y3]] für die gespeicherten Punkte welcher der Schüler eingegeben hat verwendet.&lt;br /&gt;
&lt;br /&gt;
Um die Verarbeitung der Eingaben zu erleichtern kann man die Funktionen beginnend mit pv verwenden.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis || ab Rev&lt;br /&gt;
|-&lt;br /&gt;
| pvabs || Bestimmt den Betrag eines Punktes oder aller Ortsvektoren zu den Punkten. || pvabs([[2,3],[4,5],[6,3],[-2,4]]) &amp;lt;br&amp;gt; pvabs([[2,3],[4,5],[6,3],[-2,4]],1) ||  [3.6056,6.4031,6.7082,4.4721] &amp;lt;br&amp;gt; 6.4031 || 6077&lt;br /&gt;
|-&lt;br /&gt;
| pvarg || Bestimmt den Winkel eines Punktes oder aller Ortsvektoren zu den Punkten. || pvarg([[2,3],[4,5],[6,3],[-2,4]]) &amp;lt;br&amp;gt; pvarg([[2,3],[4,5],[6,3],[-2,4]],1) || [0.98279,0.89606,0.46365,2.0344] &amp;lt;br&amp;gt; 0.89606 || 6077&lt;br /&gt;
|-&lt;br /&gt;
| pvget || Liefert einen Punkt der Punkteliste. || pvget([[2,3],[4,5],[6,3],[-2,4]],1) || [4,5] || 6077&lt;br /&gt;
|-&lt;br /&gt;
| pvgetx || Bestimmt die x-Koordinate eines Punktes oder aller Punkte. || pvgetx([[2,3],[4,5],[6,3],[-2,4]]) &amp;lt;br&amp;gt; pvgetx([[2,3],[4,5],[6,3],[-2,4]],1) || [2,4,6,-2]&amp;lt;br&amp;gt;4 || 6077&lt;br /&gt;
|-&lt;br /&gt;
| pvgety || Bestimmt die y-Koordinate eines Punktes oder aller Punkte. || pvgety([[2,3],[4,5],[6,3],[-2,4]]) &amp;lt;br&amp;gt; pvgety([[2,3],[4,5],[6,3],[-2,4]],1) || [3,5,3,4]&amp;lt;br&amp;gt;3 || 6077&lt;br /&gt;
|-&lt;br /&gt;
| pvlineabs || Bestimmt aus dem n-ten Punktepaar den Absolutbetrag des Abstandes. || pvlineabs([[2,3],[4,5],[6,3],[-2,4]])&amp;lt;br&amp;gt;pvlineabs([[2,3],[4,5],[6,3],[-2,4]],0) || [2.8284,8.0623]&amp;lt;br&amp;gt;2.82842712475 || 6075 &lt;br /&gt;
|-&lt;br /&gt;
| pvlinearg || Bestimmt aus dem n-ten Punktepaar den Winkel der Strecke zur x-Achse || pvlinearg([[2,3],[4,5],[6,3],[-2,4]])&amp;lt;br&amp;gt;pvlinearg([[2,3],[4,5],[6,3],[-2,4]],0) || [45°,172.87°]&amp;lt;br&amp;gt;45° || 6075 &lt;br /&gt;
|-&lt;br /&gt;
| pvlinek || Bestimmt die Steigung der zugehörigen Geraden dem n-ten Punktepaar || pvlinek([[2,3],[4,5],[6,3],[-2,4]])&amp;lt;br&amp;gt;pvlinek([[2,3],[4,5],[6,3],[-2,4]],0) ||  [1,−0.125]&amp;lt;br&amp;gt;1 || 6075 &lt;br /&gt;
|-&lt;br /&gt;
| pvlined || Bestimmt den Schnittpunkt einer Geraden durch das n-te Punktepaar mit der y-Achse || pvlined([[2,3],[4,5],[6,3],[-2,4]])&amp;lt;br&amp;gt;pvlined([[2,3],[4,5],[6,3],[-2,4]],0) || [1,3.75] &amp;lt;br&amp;gt;1 || 6075 &lt;br /&gt;
|-&lt;br /&gt;
| pvline || Bestimmt die Geradengleichung einer Geraden durch das n-te Punktepaar || pvline([[2,3],[4,5],[6,3],[-2,4]])&amp;lt;br&amp;gt;pvline([[2,3],[4,5],[6,3],[-2,4]],0) || [y=1+x,y=3.75−0.125⋅x]&amp;lt;br&amp;gt;y=x+1 || 6075 &lt;br /&gt;
|-&lt;br /&gt;
| pvpoints || Bestimmt die Anzahl der Punkte || pvpoints([[2,3],[4,5],[6,3],[-2,4]]) || 4 || 6075 &lt;br /&gt;
|-&lt;br /&gt;
| pvvect || Bestimmt einen Vector aus dem n-te Punktepaar || pvvect([[2,3],[4,5],[6,3],[-2,4]],0) || [2,2] || 6075 &lt;br /&gt;
|-&lt;br /&gt;
| pvsortx || Sortiert die Punkte nach steigender x-Koordinate || pvsortx([[2,3],[4,5],[6,3],[−2,4],[−3,5],[−7,−9]]) || [[−7,−9],[−3,5],[−2,4],[2,3],[4,5],[6,3]] ||6077 &lt;br /&gt;
|-&lt;br /&gt;
| pvsorty || Sortiert die Punkte nach steigender y-Koordinate || pvsorty([[2,3],[4,5],[6,3],[−2,4],[−3,5],[−7,−9]]) || [[−7,−9],[2,3],[6,3],[−2,4],[4,5],[−3,5]] ||6077&lt;br /&gt;
|-&lt;br /&gt;
| pvsortabs || Sortiert die Punkte nach steigendem Absolutbetrag des Ortsvektors || pvsortabs([[2,3],[4,5],[6,3],[−2,4],[−3,5],[−7,−9]]) ||  [[2,3],[−2,4],[−3,5],[4,5],[6,3],[−7,−9]] ||6077&lt;br /&gt;
|-&lt;br /&gt;
| pvsortarg || Sortiert die Punkte nach steigendem Winkel des Ortsvektors (-pi bis pi) || pvsortarg([[2,3],[4,5],[6,3],[−2,4],[−3,5],[−7,−9]]) ||  [[−7,−9],[6,3],[4,5],[2,3],[−2,4],[−3,5]] ||6077&lt;br /&gt;
|-&lt;br /&gt;
| pvsortlinex || Sortiert Punktepaare nach steigender x-Koordinate der kleineren x-Koordinate des Paares. || pvsortlinex([[2,3],[4,5],[6,3],[−2,4],[−3,5],[−7,−9]]) || [[−3,5],[−7,−9],[6,3],[−2,4],[2,3],[4,5]] ||6077 &lt;br /&gt;
|-&lt;br /&gt;
| pvsortliney || Sortiert Punktepaare nach steigender y-Koordinate der kleineren y-Koordinate des Paares. || pvsortliney([[2,3],[4,5],[6,3],[−2,4],[−3,5],[−7,−9]]) ||  [[−3,5],[−7,−9],[2,3],[4,5],[6,3],[−2,4]] ||6077 &lt;br /&gt;
|-&lt;br /&gt;
| pvsortlineabs || Sortiert Punktepaare nach steigendem Betrag der Linienlänge. || pvsortlineabs([[2,3],[4,5],[6,3],[−2,4],[−3,5],[−7,−9]]) || [[2,3],[4,5],[6,3],[−2,4],[−3,5],[−7,−9]] || 6077&lt;br /&gt;
|-&lt;br /&gt;
| pvsortlinearg || Sortiert Punktepaare nach steigendem Winkel der Linienrichtung. || pvsortlinearg([[2,3],[4,5],[6,3],[−2,4],[−3,5],[−7,−9]]) || [[−3,5],[−7,−9],[2,3],[4,5],[6,3],[−2,4]] || 6077&lt;br /&gt;
|-&lt;br /&gt;
| pvequals || Prüft ob zwei Punktevektoren gleich sind. Die Genauigkeit wird als dritter Parameter angegeben, oder bei einem Antwortfeld von der Antworttoleranz genommen. Prozentangaben der Genauigkeit beziehen sich auf die Breite bzw. Höhe des Punktefeldes im karthesischen Koordinatensystem. || pvequals([[2,3],[4,5],[6,3],[-2,4],[-3,5],[-7,-9]],[[2.01,3],[4,5],[6.01,3],[-2,3.99],[-3,5],[-7,-9]],2%) || true || 6077&lt;br /&gt;
|-&lt;br /&gt;
| pvhaspoint || Prüft ob sich ein Punkt innerhalb des Punktefeldes befindet. Die Genauigkeit kann wie bei pvequals als dritter Parameter angegeben werden. || pvhaspoint([[2,3],[4,5],[6,3],[-2,4],[-3,5],[-7,-9]],[4,5],2%) || true || 6077&lt;br /&gt;
|-&lt;br /&gt;
| pvhasline || Prüft ob sich eine Linie innerhalb des Punktefeldes von Linien befindet. Die Genauigkeit kann wie bei pvequals als dritter Parameter angegeben werden. || pvhaspoint([[2,3],[4,5],[6,3],[-2,4],[-3,5],[-7,-9]],[[6,3],[-2,4]],2%) || true || 6078&lt;br /&gt;
|-&lt;br /&gt;
| pvforeachline || Führt für jedes Punktepaar eine Berechnung aus und verbindet die Ergebnisse mit der Aggregatfunktion || pvforeachline([[2,3],[4,5],[6,3],[-2,4]],p,pvlineabs(p),&amp;quot;+&amp;quot;) || 10.890684873 || 6075 &lt;br /&gt;
|-&lt;br /&gt;
| pvfunc || Erzeugt aus einer Funktionen in einer Variablen (x-Achse) eine Punktmatrix der Funktionswerte (y-Achse). pvfunc(funktion,variable,minx,maxx,deltax) || pvfunc(x^2,x,-2,2,0.5) || [[−2,4],[−1.5,2.25],[−1,1],[−0.5,0.25],[0,0],[0.5,0.25],[1,1],[1.5,2.25]] || 6080&lt;br /&gt;
|-&lt;br /&gt;
| pvcompare || Vergleicht einen Referenz-Linienzug mit einem eingegebenen Linienzug unter Berücksichtigung der Toleranz.&amp;lt;br&amp;gt; pvcompare(Referenz,Eingabe)&amp;lt;br&amp;gt; pvcompare(Referenz,Eingabe,Toleranz)&amp;lt;br&amp;gt; pvcompare(Referenz,Eingabe,MinX,MaxX,MinY,MaxY) &amp;lt;br&amp;gt; pvcompare(Referenz,Eingabe,MinX,MaxX,MinY,MaxY,Toleranz) || pvcompare([[0,0],[1,1],[2,1],[3,0]],[[0,0],[1,1],[2,1],[3,0]],0,3,-5,5) || true  || 6080&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Typ-Funktionen===&lt;br /&gt;
Werden nur dann ausgewertet wenn der Parameter ein numerischer Wert oder eine Menge ist.&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| isset || Prüft ob es sich um eine Menge handelt. || isset([12,13,14]) || true &lt;br /&gt;
|-&lt;br /&gt;
| issetnumeric || Prüft ob es sich um eine Menge aus reellen Zahlen handelt. || issetnumeric([12,13.4,14]) || true &lt;br /&gt;
|-&lt;br /&gt;
| issetlong || Prüft ob es sich um eine Menge aus ganzen Zahlen handelt. || issetlong([12,13,14]) || true &lt;br /&gt;
|-&lt;br /&gt;
| islong || Prüft ob es sich um eine ganze Zahl handelt. || islong(12) || true &lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Algebra===&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;Hinweis:&#039;&#039; Die Indizes eines Vektors oder einer Matrix werden in Letto ausgehend von 0 weg gezählt.  &lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| matrix || erzeugt aus mehreren gleich langen Vektoren eine Matrix || matrix([1,2],[3,4]) || [[1,2],[3,4]]&lt;br /&gt;
|-&lt;br /&gt;
| inv || invertiert eine quadratische Matrix oder bildet 1/x || inv(matrix([1,2],[3,4])) || [[-2,1],[3/2,-1/2]]&lt;br /&gt;
|-&lt;br /&gt;
| vget || liefert ein Element eines Vektors oder einer Matrix [https://www.youtube.com/watch?v=T82YIt3e8ac Video] || vget([12,13,14],1) &amp;lt;br&amp;gt; vget(matrix([9,2],[3,4]),0,1) || 13 &amp;lt;br&amp;gt; 2 &lt;br /&gt;
|-&lt;br /&gt;
| vgetmaxima || liefert ein Element eines Vektors oder einer Matrix wobei der Index (wie bei Maxima) bei 1 startet. || vgetmaxima([12,13,14],1) || 12 &lt;br /&gt;
|-&lt;br /&gt;
| vset || setzt ein Element eines Vektors oder einer Matrix || vset([12,13,14],1,35) &amp;lt;br&amp;gt; vset(matrix([9,2],[3,4]),0,0,-9) || [12,35,14] &amp;lt;br&amp;gt; [[-9,2],[3,4]]&lt;br /&gt;
|-&lt;br /&gt;
| vsetmaxima || setzt ein Element eines Vektors oder einer Matrix wobei der Index (wie bei Maxima) bei 1 startet. || vsetmaxima([12,13,14],1,35) || [35,13,14]&lt;br /&gt;
|-&lt;br /&gt;
| vinsert || fügt ein Element in einen Vektor an eine gegebene Stelle ein || vinsert([12,13,14],1,25) || [12,25,13,14]&lt;br /&gt;
|-&lt;br /&gt;
| vremove || löscht ein Element eines Vektors [https://www.youtube.com/watch?v=T82YIt3e8ac Video] || vremove([12,13,14],1) || [12,14]&lt;br /&gt;
|-&lt;br /&gt;
| vabs || Berechnet den Betrag eines Vektors || vabs([3,4]) || 5&lt;br /&gt;
|-&lt;br /&gt;
| vin || Berechnet das innere Produkt von 2 Vektoren || vin([1,2,3],[4,5,6]) || 32&lt;br /&gt;
|-&lt;br /&gt;
| vex || Berechnet das ex-Produkt von 2 Vektoren im 3-dimensionalen Raum || vex([1,2,3],[4,5,6]) || [-3,6,-3]&lt;br /&gt;
|-&lt;br /&gt;
| mrows || liefert die Anzahl der Zeilen einer Matrix || mrows([[3,4,4],[3,6,54,34,3,54]]) || 2&lt;br /&gt;
|-&lt;br /&gt;
| mcols || liefert die Anzahl der Spalten einer Matrix || mcols([[3,4,4],[3,6,54,34,3,54]]) || 6 &lt;br /&gt;
|- &lt;br /&gt;
| mprod || Bildet das Matrixprodukt aus zwei Matrizen || mprod([[1,2],[3,4]],[[5,6],[7,8]]) || [[19,22],[43,50]]&lt;br /&gt;
|-&lt;br /&gt;
| mtrans || Bildet die transponierte Matrix || mtrans([[1,2],[3,4]]) || [[1,3],[2,4]]&lt;br /&gt;
|-&lt;br /&gt;
| minv || Bildet die inverse Matrix || minv([[1,2],[3,4]]) || [[-2,1],[3/2,-1/2]]&lt;br /&gt;
|-&lt;br /&gt;
| mdet || Bildet die Determinante einer quadratischen Matrix || mdet([[1,2],[3,4]]) || -2&lt;br /&gt;
|-&lt;br /&gt;
| vindex || vindex(v,x) liefert den Index des Elementes eines Vektors, welcher am nächsten bei x liegt || vindex([10,30,70],40) || 1 &lt;br /&gt;
|-&lt;br /&gt;
| vindexup || vindexup(v,x) liefert den Index des Elementes eines Vektors, welcher größer oder gleich x ist || vindexup([10,30,70],40) || 2 &lt;br /&gt;
|-&lt;br /&gt;
| vindexdown || vindexdown(v,x) liefert den Index des Elementes eines Vektors, welcher kleiner oder gleich x ist || vindexdown([10,30,70],60) || 1&lt;br /&gt;
|-&lt;br /&gt;
| verweis || verweis(M,x,n) liefert den Wert der n-ten Spalte (ohne Angabe von n die 2.Spalte) einer Matrix M wo x dem Wert in der ersten Spalte am nächsten liegt || verweis([[10,33],[20,77],[30,99]],21) || 77&lt;br /&gt;
|-&lt;br /&gt;
| verweisup || verweisup(M,x,n) liefert den Wert der n-ten Spalte (ohne Angabe von n die 2.Spalte) einer Matrix M wo x dem Wert in der ersten Spalte am nächsten liegt || verweisup([[10,33],[20,77],[30,99]],21) || 99&lt;br /&gt;
|-&lt;br /&gt;
| verweisdown || verweisdown(M,x,n) liefert den Wert der n-ten Spalte (ohne Angabe von n die 2.Spalte) einer Matrix M wo x dem Wert in der ersten Spalte am nächsten liegt || verweisdown([[10,33],[20,77],[30,99]],27,1) || 77&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Variable===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| kill || löscht Variable aus dem Variablenspeicher || kill(x,y) &amp;lt;br&amp;gt; kill(allbut(y)) &amp;lt;br&amp;gt; kill(all) || löscht die Variablen x und y &amp;lt;br&amp;gt; löscht alle Variablen mit Ausnahme von y &amp;lt;br&amp;gt; löscht alle Variable&lt;br /&gt;
|-&lt;br /&gt;
| allbut || Liefert eine Liste aller Variablen des Parsers als Menge(Vektor) mit Ausnahme der als Parameter angegebenen Variablen || allbut(x,y) || [a,b,c]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Auswertung und Programmierung===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis || Revision&lt;br /&gt;
|-&lt;br /&gt;
| ev || Auswertung eines Ausdruckes, als Parameter können Gleichungen angegeben werden, welche dann in den Ausdruck eingesetzt werden || ev(x*y,y=4) || x*4&lt;br /&gt;
|-&lt;br /&gt;
| evruntime || Auswertung eines Ausdruckes, als Parameter können Gleichungen angegeben werden, welche dann in den Ausdruck eingesetzt werden. Das &#039;&#039;&#039;Einsetzen erfolgt erst bei der Ergebnisberechnung&#039;&#039;&#039;! || evruntime(x*y,y=4) || x*4&lt;br /&gt;
|-&lt;br /&gt;
| [[nv]] || Auswertung eines Ausdruckes, als Parameter können Gleichungen angegeben werden, welche dann in den Ausdruck eingesetzt werden. Im Gegensatz zu ev werden bestehende Variable nur in den Gleichungen, aber nicht im Ausdruck selbst eingesetzt! || nv(x*y,y=4) || x*4&lt;br /&gt;
|-&lt;br /&gt;
| [[if]] || Bedingungsfunktion if(bedingung,wahrwert,falschwert) || if(4&amp;lt;6,10,12) || 10&lt;br /&gt;
|-&lt;br /&gt;
| [[if|wenn]] || Bedingungsfunktion wenn(bedingung,wahrwert,falschwert). Im Prinzip identisch wie if, jedoch kann if mit Maxima nicht verwendet werden. || wenn(4&amp;lt;6,10,12) || 10&lt;br /&gt;
|-&lt;br /&gt;
| plugin || Ruft die Berechnungsmethode des Plugins, welches als erster Stringparameter angegeben werden muss auf und übergibt die weiteren Parameter an die Berechnungsmethode des Plugins.  || plugin(&amp;quot;plugin1&amp;quot;,3) || führt die Berechnung des Plugins mit dem Namen &amp;quot;plugin1&amp;quot; mit dem Parameter 3 aus. &lt;br /&gt;
|-&lt;br /&gt;
| symbolic || Bei allen Variablen innerhalb von symbolic werden nur nicht-numerische Werte eingesetzt! Wird vor allem im Angabtext bei {= } verwendet || symbolic(x^2+2) || x^2+2&lt;br /&gt;
|-&lt;br /&gt;
| runtime || Bei dieser Funktion wird &#039;&#039;&#039;erst bei der Berechnung der Frageantwort, nach dem Einsetzen der Datensätze&#039;&#039;&#039; das &#039;&#039;&#039;komplette Maxima-Feld&#039;&#039;&#039; mit dem internen &#039;&#039;&#039;Parser&#039;&#039;&#039; durchgerechnet und danach der Parameter-Ausdruck berechnet. Dadurch kann man bei komplizierten Berechnungen eine sehr aufwendige symbolische Berechnung verhindern! || runtime(U) || &lt;br /&gt;
|-&lt;br /&gt;
| dataset || liefert alle Datensätze einer Datensatz-Definition in einem Vektor || dataset(x) || &lt;br /&gt;
|-&lt;br /&gt;
| parse || Wenn der Parameter ein String ist wird dieser String mit dem Parser interpretiert || parse(&amp;quot;2+3&amp;quot;) || 5&lt;br /&gt;
|-&lt;br /&gt;
| foreach || Führt für jedes Element einer Menge eine Berechnung aus und verbindet die Ergebnisse mit der Aggregatfunktion || foreach([2,-3,5,-6],p,cabs(p),&amp;quot;+&amp;quot;) || 16 || 6075 &lt;br /&gt;
|-&lt;br /&gt;
| pvforeachline || Führt für jedes Punktepaar einer Punktemenge eine Berechnung aus und verbindet die Ergebnisse mit der Aggregatfunktion || pvforeachline([[2,3],[4,5],[6,3],[-2,4]],p,pvlineabs(p),&amp;quot;+&amp;quot;) || 10.890684873 || 6075 &lt;br /&gt;
|-&lt;br /&gt;
| forloop || Führt eine Zählschleife aus forloop(Variable,Startwert,Wiederholbedingung,Inkrement,Ausdruck,Aggregatsfunktion). &amp;lt;br&amp;gt;Ohne Aggregatsfunktion wird ein Feld mit den Ergebnissen der Schleifeniterationen geliefert. || forloop(i,1,i&amp;lt;7,i++,i,&amp;quot;+&amp;quot;)&amp;lt;br&amp;gt;forloop(i,1,i&amp;lt;7,i:i+2,i) || 21&amp;lt;br&amp;gt;[1,3,5] || 6077&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Optimierung der Ausdrücke===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| opt   || Ausdruck wird vollständig optimiert, die Funktion wird ausgewertet und ist danach nicht mehr vorhanden. Nur bei der Verwendung des internen Parser sinnvoll. || opt(x+x) || 2*x&lt;br /&gt;
|-&lt;br /&gt;
| ratsimp || Ausdruck wird vollständig optimiert, die Funktion wird ausgewertet und ist danach nicht mehr vorhanden (wie opt, wird jedoch auch von Maxima ausgewertet) || ratsimp(x+x) || 2*x&lt;br /&gt;
|-&lt;br /&gt;
| noopt || Ausdruck wird nicht optimiert, bleibt also so erhalten wie angegeben. Die Funktion an sich geht aber verloren. || noopt(2+3) || 2+3&lt;br /&gt;
|-&lt;br /&gt;
| nopt || Ausdruck wird nicht optimiert, bleibt also so erhalten wie angegeben. Die Funktion bleibt erhalten und wird erst bei der Lösungsberechnung oder durch opt() entfernt. || noopt(2+3) || 2+3&lt;br /&gt;
|-&lt;br /&gt;
| lopt || Im Maximafeld bleibt die Funktion ohne Funktion erhalten, im Ergebnis {=  wird die Funktion entfernt und in der Lösung wird nach dem Einsetzen der Werte der Ausdruck vollständig optimiert. || lopt(x+3)  || lopt(x+3)  &lt;br /&gt;
|-&lt;br /&gt;
| lnoopt || Im Maximafeld bleibt die Funktion ohne Funktion erhalten, im Ergebnis {=  wird die Funktion entfernt und in der Lösung wird nach dem Einsetzen der Werte der Ausdruck nicht mehr optimiert. || lnoopt(x+3+2)  || lnoopt(x+5) &lt;br /&gt;
|-&lt;br /&gt;
| loptnumeric || Im Maximafeld bleibt die Funktion ohne Funktion erhalten, im Ergebnis {=  wird die Funktion entfernt und in der Lösung wird nach dem Einsetzen der Werte der Ausdruck nur numerisch optimiert. || loptnumeric(x+y)  || loptnumeric(x+y)&lt;br /&gt;
|-&lt;br /&gt;
| aopt || Bei Maxima und Lösung geht die Funktion verloren, nur innerhalb von noopt bleibt sie erhalten. Bei der Anzeige führt sie zur Optimierung das Ausdruckes nach Einsetzen der Datensätze. || aopt(x)  || x&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Anzeige und Lösungsberechnung===&lt;br /&gt;
Diese Funktionen haben entweder einen oder zwei Parameter. Der erste Parameter stellt die darzustellende Funktion dar, der zweite Parameter, welcher eine Ganzzahl sein muss, gibt an, wie die Darstellung erfolgen soll. Wird der 2.Parameter weggelassen, so wird er als 0 interpretiert.&lt;br /&gt;
* 0 Bei Berechnungen hat die Funktion keine Wirkung, bleibt aber als Funktion erhalten. Bei Lösung und Anzeige wird die Funktion ausgewertet&lt;br /&gt;
* 1 Wirkt nur bei Lösung, bei Berechnungen bleibt die Funktion erhalten&lt;br /&gt;
* 2 Wirkt nur bei Anzeige, bei Berechnungen bleibt die Funktion erhalten&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| viewpow || Gibt alle Wurzeln als Potenzen aus, und stellt alle Potenzen im Nenner als negativen Exponenten im Zähler dar || viewpow(sqrt(x)) || x^(1/2)&lt;br /&gt;
|-&lt;br /&gt;
| viewsqrt || Gibt Potenzen welche als Wurzel darstellbar sind auch als als Wurzeln mit der Funktion sqrt oder root aus || viewsqrt(x^(1/2)) || sqrt(x)&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Spezialfunktionen LeTTo ===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| points || Berechnet die erreichbare Gesamtpunkteanzahl einer Frage || points() || 2&lt;br /&gt;
|-&lt;br /&gt;
| points || Berechnet die erreichbare Punkteanzahl einer Teilfrage. Als Parameter wird die Fragenummer als Ganzzahl angegeben. || points(0) || 1&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Spezialfunktionen Technik===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| color || Widerstandsfarbcode berechnen.&amp;lt;br&amp;gt;1. Parameter muss ein Double sein&amp;lt;br&amp;gt; 2.Parameter sind die Anzahl der Farbringe&amp;lt;br&amp;gt; 3.Parameter ist der Modus (0..2-St,1..3St,2..Deutsch,3..2StEng,4..3StEng,5..Englisch || color(120,3,2) || braun,rot,braun&lt;br /&gt;
|-&lt;br /&gt;
| parsecolor || Wandelt einen String mit einem Widerstandsfarbcode in einen Double-Wert || parsecolor(&amp;quot;br-rt-br&amp;quot;) || 120&lt;br /&gt;
|-&lt;br /&gt;
| ip || Wandelt eine Long-Zahl in einen String als IP-Adresse um, oder 4 Byte-Zahlen in eine Long Zahl als IP-32-bit-Adresse || ip(1534536453)&amp;lt;br&amp;gt;ip(10,20,30,40) || &amp;quot;91.119.43.5&amp;quot;&amp;lt;br&amp;gt;169090600&lt;br /&gt;
|-&lt;br /&gt;
| parseip || Wandelt einen String mit einer IP-Adresse in einen Long-Wert || parseip(&amp;quot;91.119.43.5&amp;quot;) || 1534536453&lt;br /&gt;
|-&lt;br /&gt;
| e12 || rundet einen Zahlenwert auf den nächstliegenden Wert der [[Normreihe]] E12.&amp;lt;br&amp;gt;Die Rundung erfolgt geometrisch d.h. der Quotient zwischen Normwert und zu rundendem Wert wird minimiert. || e12(700Ohm) || 680Ohm&lt;br /&gt;
|-&lt;br /&gt;
| e12up || rundet einen Zahlenwert auf den nächstgrößerern Wert der [[Normreihe]] E12 || e12(670Ohm) || 680Ohm&lt;br /&gt;
|-&lt;br /&gt;
| e12down || rundet einen Zahlenwert auf den nächstkleineren Wert der [[Normreihe]] E12 || e12(700Ohm) || 680Ohm&lt;br /&gt;
|-&lt;br /&gt;
| ise12 || prüft ob der als Parameter übergebenen Wert ein Wert der [[Normreihe]] E12 ist.|| ise12(680Ohm) || true&lt;br /&gt;
|-&lt;br /&gt;
| norm || rundet einen Zahlenwert auf den nächstliegenden Wert einer gegebenen Wertereihe oder [[Normreihe]].&amp;lt;br&amp;gt;Die Rundung erfolgt geometrisch wenn es sich um eine logarithmisch aufgeteilte Normreihe handelt, oder sonst linear. || norm(700Ohm,E12) || 680Ohm&lt;br /&gt;
|-&lt;br /&gt;
| normup || rundet einen Zahlenwert auf den nächstgrößerern Wert einer gegebenen Wertereihe oder [[Normreihe]]. || normup(730Ohm,[1,3,5,8]) || 800Ohm&lt;br /&gt;
|-&lt;br /&gt;
| normdown || rundet einen Zahlenwert auf den nächstkleineren Wert einer gegebenen Wertereihe oder [[Normreihe]]. || normdown(700Ohm,E12) || 680Ohm&lt;br /&gt;
|-&lt;br /&gt;
| isnorm || prüft ob der als Parameter übergebenen Wert ein Wert einer gegebenen Wertereihe oder [[Normreihe]] ist. || isnorm(680Ohm,E12) || true&lt;br /&gt;
|}&lt;br /&gt;
===Raumzeiger für elektrische Maschinen===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| [[svphtosv]](a,b,c) || berechnet aus den Stranggrößen (a,b,c) einen komplexen Raumzeiger || svphtosv(0.5,0.5,-1) || 1arg60°&lt;br /&gt;
|-&lt;br /&gt;
| [[svsvtoph]](sv)&amp;lt;br&amp;gt;svsvtoph(sv,index) || berechnet aus einem komplexen Rauzeiger die Phasengrößen &amp;lt;br&amp;gt; berechnet aus einem komplexen Rauzeiger die Phasengrößen, index selektiert Stranggröße als Rückgabewert || svsvtoph(1arg60°)&amp;lt;br&amp;gt; svsvtoph(1arg60°,3)|| [0.5,0.5,-1] &amp;lt;br&amp;gt; -1&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=Ergebnisvorschau=&lt;br /&gt;
Aufruf dieses Dialoges über den [[Datei:ClipCapIt-180904-181443.PNG|25px]]-Button aus dem [[Toolbar]].&lt;br /&gt;
&lt;br /&gt;
Die Berechnungen aus dem Maxima-Feld bei der [[Beispiele Bearbeiten|Fragendefinition]] können auch über den [[Datei:ClipCapIt-180904-182120.PNG|25px]]-Button durchgeführt werden. Hier wird die Berechnung durchgeführt und das Lösungsfeld ausgefüllt, aber der Rechengang wird nicht angezeigt. &lt;br /&gt;
:[[Datei:ClipCapIt-180904-181415.PNG|400px]]&lt;br /&gt;
&lt;br /&gt;
Beim Fehlersuchen oder bei komplexen Berechnungen kann es aber hilfreich sein, den ganzen Maxima-Lösungsweg zu sehen, dies ist über den [[Datei:ClipCapIt-180904-181443.PNG|25px]]-Button möchlich.&lt;br /&gt;
&lt;br /&gt;
[[Kategorie:Berechnung]]&lt;/div&gt;</summary>
		<author><name>Ckral</name></author>
	</entry>
	<entry>
		<id>https://wiki.letto.at/wiki/index.php?title=Berechnungen&amp;diff=3239</id>
		<title>Berechnungen</title>
		<link rel="alternate" type="text/html" href="https://wiki.letto.at/wiki/index.php?title=Berechnungen&amp;diff=3239"/>
		<updated>2022-11-10T11:06:13Z</updated>

		<summary type="html">&lt;p&gt;Ckral: Ergänzung zum zweiten Parameter von von setshuffle&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Allgemeines =&lt;br /&gt;
Berechnungen werden in mehreren Bereichen der Frageerstellung verwendet und bilden die Basis für [[Fragetypen#Berechnungsfrage|Berechnungsfrage]] und [[Fragetypen#Mehrfachberechnungsfrage|Mehrfachberechnungsfrage]].&lt;br /&gt;
&lt;br /&gt;
Alle Berechnungen unterstützen [[Einheit|Einheiten]] und symbolische Auswertung.&lt;br /&gt;
&lt;br /&gt;
=Grundsätzlicher Aufbau der Ergebnis-Berechnung bei Fragen mit Berechnungen=&lt;br /&gt;
[[Datei:BerechnungSchema.png|mini|hochkant=2.0|Schema der Berechnung]]&lt;br /&gt;
Die Berechnung und die Beurteilung einer Frage teilt sich in 3 grundsätzliche Schritte:&lt;br /&gt;
* Berechnnug der geschlossenen Lösung (Formel) aus den Maxima-Feldern &lt;br /&gt;
* Berechnung des Ergebnisses einer Frage durch Einsetzen der Zahlenwerte aus den Datensätzen in die geschlossene Lösung&lt;br /&gt;
* Beurteilung der Schülereingabe durch Vergleich mit dem Ergebnis&lt;br /&gt;
&lt;br /&gt;
=Konstante=&lt;br /&gt;
Alle Konstante welche in Letto definiert sind beginnen mit einem Prozentzeichen. Verwendet man den Variablennamen ohne Prozenzzeichen, so wird die Konstante wie eine Variable mit dem Wert der Konstanten verwendet.&lt;br /&gt;
&lt;br /&gt;
Liste der definierten Konstanten:&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%&amp;quot; &lt;br /&gt;
| Name || Wert || Beschreibung&lt;br /&gt;
|-&lt;br /&gt;
| %i || i || komplexer Parameter als Lösung der Gleichung x^2=-1&lt;br /&gt;
|-&lt;br /&gt;
| %j || i || komplexer Parameter als Lösung der Gleichung x^2=-1&amp;lt;br&amp;gt;&amp;lt;b&amp;gt;Wichtig:&amp;lt;/b&amp;gt; Wir nur vom Parser unterstützt, nicht von Maxima&lt;br /&gt;
|-&lt;br /&gt;
| %e || 2.718281828459045 || Eulersche Zahl &lt;br /&gt;
|-&lt;br /&gt;
| %pi || 3.141592653589793 || Kreiszahl&lt;br /&gt;
|-&lt;br /&gt;
| %mu0 || magnetische Feldkonstante || 4*%pi*1E-7&#039;Vs/Am&#039;&lt;br /&gt;
|-&lt;br /&gt;
| %m0 || magnetische Feldkonstante (alt, wird bald entfernt werden) || 4*%pi*1E-7&#039;Vs/Am&#039;&lt;br /&gt;
|-&lt;br /&gt;
| %epsilon0 || elektrische Feldkonstante || 8.85418781762039E-12&#039;As/Vm&#039;&lt;br /&gt;
|-&lt;br /&gt;
| %e0 || elektrische Feldkonstante (alt, wird bald entfernt werden) || 8.85418781762039E-12&#039;As/Vm&#039;&lt;br /&gt;
|-&lt;br /&gt;
| %c0 || Lichtgeschwindigkeit || 299792458&#039;m/s&#039;&lt;br /&gt;
|-&lt;br /&gt;
| %Qe || Elementarladung || 1.602176620898E-19As&lt;br /&gt;
|-&lt;br /&gt;
| %g  || Erdbeschleunigung || 9.81&#039;m/s^2&#039;&lt;br /&gt;
|-&lt;br /&gt;
| %NA || Avogadro Konstante || 6.02214085774E23/mol&lt;br /&gt;
|-&lt;br /&gt;
| %k  || Stefan Bolzman Konstante || 1.3806485279E-23&#039;J/K&#039;&lt;br /&gt;
|-&lt;br /&gt;
| %R0 || Universelle Gaskonstante || 8.314459848&#039;J/Kmol&#039;&lt;br /&gt;
|-&lt;br /&gt;
| %h || planksches Wirkungsquantum || 6.6260704081E-34Js&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=Berechnung mit Maxima=&lt;br /&gt;
* Maxima wird &#039;&#039;&#039;nur für symbolische Berechnungen&#039;&#039;&#039; bei der Erstellung von Beispielen verwendet. Hierbei wird, wie schon oberhalb im Schema angegeben, zuerst die Moodle.mac geladen, dann das [[Beispielsammlung Editieren#Maxima-Feld|Maxima-Feld]] berechnet und anschließend die Maxima-Felder aller Teilfragen. Das Ergebnis der Berechnung wird dann als symbolischer Ausdruck im Lösungfeld eingetragen.&lt;br /&gt;
* Da zum Zeitpunkt der &#039;&#039;&#039;Maxima-Berechnung keine Datensätze&#039;&#039;&#039; vorhanden sind, kann keine numerische Berechnung in Maxima durchgeführt werden, welche die [[Datensätze]] benötigt. Dies muss der interne Parser zum Zeitpunkt des Online-Test-Laufes erledigen. Numerische Berechnungen, welche der interne Parser nicht kann können deshalb auch nicht mit Maxima berechnet werden.&lt;br /&gt;
* Da das Lösungsfeld, welches mit Maxima berechnet wird symbolisch ausgewertet wird, können in Maxima sämtliche symbolischen Berechnungsverfahren angewendet werden, welche ein symbolisches Ergebnis liefern und keine numerischen Werte der Datensätze benötigen.&lt;br /&gt;
* Reicht im Maximafeld die Zeilenlänge nicht aus ist es möglich einen defninierten Zeilenumbruch zu realisieren. Schreiben Sie dazu &amp;quot;\&amp;quot; (einfacher Backslash) am Ende der Zeile.  &lt;br /&gt;
* &#039;&#039;&#039;Funktionsdeklarationen&#039;&#039;&#039; wie &#039;&#039;&#039;f(x):=&#039;&#039;&#039;x^2 mit Doppelpunkt-Ist-Gleich sind im Maxima-Feld nur eingeschränkt bis gar &#039;&#039;&#039;nicht verwendbar&#039;&#039;&#039;, da sie vom Parser nicht unterstützt werden.&lt;br /&gt;
* &#039;&#039;&#039;Mengen von Maxima&#039;&#039;&#039; sind in LeTTo n&#039;&#039;&#039;icht verwendbar&#039;&#039;&#039;. LeTTo verwender hierzu eigene Funktionen des Parsers welche mit &amp;quot;set&amp;quot; beginnen und auf Vektoren basieren.&lt;br /&gt;
&lt;br /&gt;
=Berechnung mit dem internen Parser=&lt;br /&gt;
* Der interne Parser kann durch Wahl der Checkbox &amp;quot;Parser&amp;quot; anstatt von Maxima für die Berechnung des Maxima-Feldes verwendet werden. &lt;br /&gt;
* Jedenfalls wird der Parser zur Test-Laufzeit für die Berechnung des Ergebnisses einer Frage aus Lösung und Datensätzen und zum Berechnen der Schülereingabe verwendet.&lt;br /&gt;
&lt;br /&gt;
==Operatoren==&lt;br /&gt;
=== VORSICHT mit MAXIMA ===&lt;br /&gt;
* Einige Operatoren sind in &#039;&#039;&#039;Maxima anders&#039;&#039;&#039;, oder &#039;&#039;&#039;nicht definiert&#039;&#039;&#039;. Möchte man im Maximafeld die Operatoren des Parsers-verwenden, so muss das gesamte Maxima-Feld &#039;&#039;&#039;mit dem Parser gerechnet&#039;&#039;&#039; werden. Man verliert dadurch jedoch die Vorteile der Maxima-Berechnung.&lt;br /&gt;
* Alternativ kann man statt der Operatoren auch &#039;&#039;&#039;Funktionen verwenden&#039;&#039;&#039; (zB: ne() statt != ). Diese werden dann von Maxima zwar nicht ausgewertet, die Berechnung bleibt aber trotzdem korrekt und kann mit Maxima durchgeführt werden.&lt;br /&gt;
* Es gibt einige Funktionen welche in &#039;&#039;&#039;Maxima existieren&#039;&#039;&#039; aber im &#039;&#039;&#039;Parser nicht, oder mit anderem Syntax&#039;&#039;&#039;.&lt;br /&gt;
** Wenn diese von Maxima nicht ausgewertet werden können, da sie &#039;&#039;&#039;Datensätze&#039;&#039;&#039; enthalten welche zu Auswertezeitpunkt von Maxima noch &#039;&#039;&#039;nicht mit Werten belegt&#039;&#039;&#039; sind, &#039;&#039;&#039;dürfen sie in der Berechnung nicht verwendet werden&#039;&#039;&#039;, da der Parser dann damit nichts anfangen kann.&lt;br /&gt;
** Solche Funktionen haben entweder im Parser eine alternative Schreibweise welche auch mit Maxima verwendet werden kann (z.B.: wenn), oder sie können prinzipell nicht verwendet werden. (Für wichtige Funktionsweisen könnte man in zukünftigen Versionen neue Funktionalitäten in den Parser einbauen, die die gewünschte Funktion erfüllen)&lt;br /&gt;
** Ein weiter Möglichkeit für die Verwendung solcher Funktionen ist der Verzicht auf Datensätze in diesen Funktionen, damit diese Funktion beim Auswerten des Maxima-Feldes bereits ausgewertet werden kann und somit der Parser davon nichts mehr sieht.&lt;br /&gt;
** zB:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
if then&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Infix Operatoren===&lt;br /&gt;
====arithmetische Operatoren====&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Operator || Priorität || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| + || 40 || Addition || 4+5 || 9 &lt;br /&gt;
|-&lt;br /&gt;
| - || 40 || Subtraktion || 6-2 || 4&lt;br /&gt;
|-&lt;br /&gt;
| * || 50 || Multiplikation || 4*5 || 20&lt;br /&gt;
|-&lt;br /&gt;
| / || 51 || Division || 20/4 || 5&lt;br /&gt;
|-&lt;br /&gt;
| % || 51 || Divisionsrest || 104%20 || 4&lt;br /&gt;
|-&lt;br /&gt;
| / / || 60 || Parallelschaltung || x / / y || x*y/(x+y)&lt;br /&gt;
|-&lt;br /&gt;
| ^ || 90 || Potenz || 2^3 || 8&lt;br /&gt;
|-&lt;br /&gt;
| .*. || 200 || Operator der intern für eine fehlende bindende Multiplikation verwendet wird || 4x || 4*x&lt;br /&gt;
|-&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
====Bitoperatoren====&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Operator || Priorität || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
||  |  || 20 || Bitweise oder logisches ODER ||| 9|5 &amp;lt;br&amp;gt; true|false || 13 &amp;lt;br&amp;gt;true&lt;br /&gt;
|-&lt;br /&gt;
| or || 20 || Bitweise oder logisches ODER || 9 or 5 || 13&lt;br /&gt;
|-&lt;br /&gt;
| &amp;amp;  || 21 || Bitweise oder logisches UND  || 13&amp;amp;10 || 8&lt;br /&gt;
|-&lt;br /&gt;
| and || 21 || Bitweise oder logisches UND  || 13 and 10 || 8&lt;br /&gt;
|-&lt;br /&gt;
| xor || 22 || Bitweise oder logisches exklusiv oder XOR  || 13 xor 10 || 7&lt;br /&gt;
|-&lt;br /&gt;
| imp || 23 || Bitweise oder logisches impliziert IMP || 13 imp 10 || 8&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;&amp;lt;  || 35 || Bitweise links schieben  || 5&amp;lt;&amp;lt;2 || 20&lt;br /&gt;
|-&lt;br /&gt;
| &amp;gt;&amp;gt;  || 35 || Bitweise rechts schieben || 8&amp;gt;&amp;gt;2 || 2&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
====Vergleichsoperatoren====&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Operator || Priorität || Beschreibung || Beispiel&lt;br /&gt;
|-&lt;br /&gt;
| =  || 3 || Gleichungsoperator || x=y&lt;br /&gt;
|-&lt;br /&gt;
| == || 30 || Gleichungsoperator || x==y&lt;br /&gt;
|-&lt;br /&gt;
| != || 30 || Ungleichungsoperator || x!=y&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt; || 32 || Kleiner || x&amp;lt;y&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;= || 32 || Kleiner gleich || x&amp;lt;=y&lt;br /&gt;
|-&lt;br /&gt;
| &amp;gt; || 32 || größer || x&amp;gt;y&lt;br /&gt;
|-&lt;br /&gt;
| &amp;gt;= || 32 || größer gleich || x&amp;gt;=y&lt;br /&gt;
|}&lt;br /&gt;
====Organisative Operatoren====&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Operator || Priorität || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| , || 0 || Listen-Trennzeichen || x,y ||&lt;br /&gt;
|-&lt;br /&gt;
| $ || 1 || Trennzeichen zwischen mehreren Berechnungen || ||&lt;br /&gt;
|-&lt;br /&gt;
| ; || 1 || Trennzeichen zwischen mehreren Berechnungen || ||&lt;br /&gt;
|-&lt;br /&gt;
| : || 2 || Zuweisung an eine Variablen auf der linken Seite || x:5 || &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Prefix Operatoren===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Operator || Priorität || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| + || 45 || positives Vorzeichen || +5 || 5&lt;br /&gt;
|-&lt;br /&gt;
| - || 45 || negatives Vorzeichen || -(-5) || 5&lt;br /&gt;
|-&lt;br /&gt;
| ~ || 95  || bitweise Inversion einer 64bit-Ganzzahl || ~0x0F0F || 0xFFFFFFFFFFFFF0F0&lt;br /&gt;
|-&lt;br /&gt;
| ! || 120 || logisches NOT || !(3&amp;lt;4) || false&lt;br /&gt;
|-&lt;br /&gt;
| ++ || 130 || Inkrement von Ganzzahlen || ++x || erhöht x um eins und gibt das Ergebnis nach der Erhöhung zurück&lt;br /&gt;
|-&lt;br /&gt;
| -- || 130 || Dekrement von Ganzzahlen || --x || vermindert x um eins und gibt das Ergebnis nach der Verminderung zurück&lt;br /&gt;
|-&lt;br /&gt;
| % || 200 || Prefix für Namen, welche als Konstante definiert sind || %pi || 3.141592653589793&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Suffix Operatoren===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Operator || Priorität || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| ++ || 135 || Inkrement von Ganzzahlen || x++ || erhöht x um eins und gibt den Variablenwert vor der Erhöhung zurück&lt;br /&gt;
|-&lt;br /&gt;
| -- || 135 || Dekrement von Ganzzahlen || x-- || vermindert x um eins und gibt den Variablenwert vor der Verminderung zurück&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==Klammern==&lt;br /&gt;
* () runde Klammern werden für mathematische Ausdrücke zur Klammerung verwendet&lt;br /&gt;
* {} geschwungene Klammer werden im Angabetext für die Namen der Datensätze verwendet&lt;br /&gt;
* [] eckige Klammern werden für Vektoren und Matrizen verwendet&lt;br /&gt;
&lt;br /&gt;
==Funktionen==&lt;br /&gt;
===Funktionen für Ganzzahlen===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| band || bitweises UND || band(4,12) || 4&lt;br /&gt;
|-&lt;br /&gt;
| bor  || bitweises ODER || bor(4,1) || 5&lt;br /&gt;
|-&lt;br /&gt;
| bxor || bitweises EXKLUSIV ODER || band(4,5) || 1&lt;br /&gt;
|-&lt;br /&gt;
| bimp || bitweises Parameter1 impliziert Parameter2 || bimp(13,10) || 8&lt;br /&gt;
|-&lt;br /&gt;
| binv || bitweises NICHT mit 8 bit || binv(0x0F) || 0xF0&lt;br /&gt;
|-&lt;br /&gt;
| shl || Schiebe Ganzzahl bitweise nach links || shl(8,2) || 32&lt;br /&gt;
|-&lt;br /&gt;
| shr || Schiebe Ganzzahl bitweise nach rechts || shr(8,2) || 2&lt;br /&gt;
|-&lt;br /&gt;
| div || Ganzzahldivision, Ergebnis wird abgeschnitten || div(5,2) || 2&lt;br /&gt;
|-&lt;br /&gt;
| inv8  || bitweise Invertieren und die letzten 8 Bit bestimmen  || inv8(0b1001) || 0b11110110&lt;br /&gt;
|-&lt;br /&gt;
| inv16 || bitweise Invertieren und die letzten 16 Bit bestimmen || inv16(0xF0)  || 0xFF0F&lt;br /&gt;
|-&lt;br /&gt;
| inv32 || bitweise Invertieren und die letzten 32 Bit bestimmen || inv32(0xF0)  || 0bFFFFFF0F&lt;br /&gt;
|-&lt;br /&gt;
| inv64 || bitweise Invertieren und die letzten 64 Bit bestimmen || inv64(0xF0)  || 0bFFFFFFFFFFFFFF0F&lt;br /&gt;
|-&lt;br /&gt;
| byte  || Zahl in eine Ganzzahl wandeln und die letzten 8bit der Zahl Abschneiden, Einheit geht verloren  || byte(34.2) || 34&lt;br /&gt;
|-&lt;br /&gt;
| word  || Zahl in eine Ganzzahl wandeln und die letzten 16bit der Zahl Abschneiden, Einheit geht verloren || word(34.2) || 34&lt;br /&gt;
|-&lt;br /&gt;
| int   || Zahl in eine Ganzzahl wandeln und die letzten 32bit der Zahl Abschneiden, Einheit geht verloren || int(34.2) || 34&lt;br /&gt;
|-&lt;br /&gt;
| long  || Zahl in eine Ganzzahl wandeln , Einheit geht verloren || long(34.2) || 34&lt;br /&gt;
|-&lt;br /&gt;
| [[parity]]  || Paritätsberechnung : parity(Parität,Codewortlänge,Datenwort[,Datenwort,....]) || parity(even,7,&amp;quot;xy&amp;quot;) || &lt;br /&gt;
|-&lt;br /&gt;
| [[blockparity]]  || Kreuz oder Blockparität : blockparity(Parität,Codewortlänge,Codewortanzahl,Datenwort[,Datenwort,....]) || blockparity(even,7,3,&amp;quot;abc&amp;quot;) || &lt;br /&gt;
|-&lt;br /&gt;
| [[bcd]]  || Wandelt in eine Long-Zahl in ein Feld aus BCD-kodierten Zahlen um || bcd(124) || [1,2,4]&lt;br /&gt;
|-&lt;br /&gt;
| [[code]] || Code aus mehreren Codeworten zusammensetzen : code(Codewortlänge,Datenwort[,Datenwort,....]) || code(5,4,3,5) || 0b1000001100101&lt;br /&gt;
|-&lt;br /&gt;
| [[hamming]] || Bestimmt den Hamming-Abstand von mehreren Codeworten || hamming(1,2,4,8,16) || 2&lt;br /&gt;
|-&lt;br /&gt;
| [[komplement]] ||  Bildet das Zweierkomplement mit einer negativen Zahl mit einer bestimmten Bitanzahl, fehlt die Bitanzahl, so wird ein 32Bit-2er-komplement gebildet || komplement(-5,8) || 0b11111011&lt;br /&gt;
|-&lt;br /&gt;
| [[bitstream]] || Erzeugt aus einer Ganzzahl einen Bitstrom als String mit einer definierten Anzahl von Bit (MSB werden nötigenfalls mit 0 gefüllt) : bitstream(Daten,Bitanzahl) || bitstream(0x184,12) || &amp;quot;000110000100&amp;quot;&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Funktionen für rationale und Ganzzahlen===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| kgV || berechnet das kleinste gemeinsame Vielfache von mehreren Zahlen || kgV(3,10) || 30&lt;br /&gt;
|-&lt;br /&gt;
| ggT || berechnet den größten gemeinsamen Teiler von mehreren Zahlen || ggT(12,10) || 2&lt;br /&gt;
|- &lt;br /&gt;
| isprim || prüft ob die angegebene Zahl eine Primzahl ist || isprim(13) || true&lt;br /&gt;
|-&lt;br /&gt;
| prims || zerlegt eine Ganzzahl in ihre Primfaktoren || prims(12) || [2,2,3]&lt;br /&gt;
|-&lt;br /&gt;
| defracmix || zerlegt eine rationale Zahl in einen gemischten Bruch aus ganzzahligem Summanden, Zähler und Nenner als Menge&amp;lt;br&amp;gt;Die erhaltene Menge kann mit dem Format-Modfier &#039;&#039;&#039;frac&#039;&#039;&#039; als gemischter Bruch dargestellt werden (siehe [[Zahlendarstellung]]) || defracmix(14/12)&amp;lt;br&amp;gt;defracmix(-15/12)&amp;lt;br&amp;gt;defracmix(3/12) || [1,2/12]&amp;lt;br&amp;gt;[-1,3,12]&amp;lt;br&amp;gt;[0,3,12] &lt;br /&gt;
|-&lt;br /&gt;
| defrac || zerlegt eine rationale Zahl in Zähler und Nenner als Menge &amp;lt;br&amp;gt;Die erhaltene Menge kann mit dem Format-Modfier &#039;&#039;&#039;frac&#039;&#039;&#039; als gemischter Bruch dargestellt werden || defrac(14/12) || [13,12]&lt;br /&gt;
|-&lt;br /&gt;
| frac || erzeugt aus einer Menge aus 2 oder 3 Elementen (von defrac) eine rationale Zahl || frac([3,7])&amp;lt;br&amp;gt;frac([1,2,3]) || 3/7 &amp;lt;br&amp;gt; 5/3&lt;br /&gt;
|-&lt;br /&gt;
| mod || Mathematische Implementierung von [https://de.wikipedia.org/wiki/Division_mit_Rest#Modulo modulo]: Divisionsrest einer Division mit ganzzahligem Ergebnis || mod(5,2) &amp;lt;br&amp;gt; mod(6.2,2.5) &amp;lt;br&amp;gt; mod(-4,3) || 1&amp;lt;br&amp;gt;1.2 &amp;lt;br&amp;gt; 2&lt;br /&gt;
|-&lt;br /&gt;
| mod2 || Symmetrische Implementierung von [https://de.wikipedia.org/wiki/Division_mit_Rest#Modulo modulo]: Divisionsrest einer Division mit ganzzahligem Ergebnis &amp;lt;br&amp;gt;Der Unterschied zu mod liegt in der Behandlung von negativen Zahlen des ersten Arguments &amp;lt;br&amp;gt;Siehe auch Divisionsrest des Parser-Operators % [[Berechnungen#arithmetische_Operatoren]] || mod2(5,2) &amp;lt;br&amp;gt; mod2(6.2,2.5) &amp;lt;br&amp;gt; mod2(-4,3) || 1&amp;lt;br&amp;gt;1.2 &amp;lt;br&amp;gt; -1&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===boolsche Funktionen===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| eq || gleich || eq(4,4) || true&lt;br /&gt;
|-&lt;br /&gt;
| eqruntime || symbolischer Vergleich, welcher &#039;&#039;&#039;symbolisch erst bei der Ergebnisberechnung&#039;&#039;&#039; ausgeführt wird. Muss verwendet werden, wenn bei Vergleichen symbolische Antworten von Schülern (Q0,Q1,...) verwendet werden.  || eqruntime(x+3*y,3*y+x) || true&lt;br /&gt;
|-&lt;br /&gt;
| ne || ungleich || ne(6,4) || true&lt;br /&gt;
|-&lt;br /&gt;
| ge || größer gleich || ge(6,4) || true&lt;br /&gt;
|-&lt;br /&gt;
| le || kleiner gleich || le(6,4) || false&lt;br /&gt;
|-&lt;br /&gt;
| gt || größer || gt(6,4) || true&lt;br /&gt;
|-&lt;br /&gt;
| lt || kleiner || lt(6,4) || false&lt;br /&gt;
|-&lt;br /&gt;
| between || prüft ob Parameter1 kleiner als Parameter2 und Parameter2 kleiner als Parameter 3 || between(3,4,5) || true&lt;br /&gt;
|-&lt;br /&gt;
| land || logisches UND || land(a&amp;lt;b,b&amp;lt;c) || &lt;br /&gt;
|-&lt;br /&gt;
| lor  || logisches ODER || lor(a&amp;lt;b,b&amp;lt;c) || &lt;br /&gt;
|-&lt;br /&gt;
| not  || logisches NICHT. Vorsicht ein symbolisches Ergebnis von Maxima liefert not als Prefix-Operator, welcher vom Parser nicht unterstützt wird ( Verwende statt dessen &#039;&#039;&#039;lnot&#039;&#039;&#039; ) || not(a&amp;lt;b) || &lt;br /&gt;
|-&lt;br /&gt;
| lnot  || logisches NICHT, wie not jedoch wird es von Maxima nicht ausgewertet || lnot(a&amp;lt;b) || &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===arithmetische Funktionen===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| double || Zahl in eine Gleitkommazahl umwandeln, die Einheit geht dabei verloren || double(3.4V) || 3.4&lt;br /&gt;
|-&lt;br /&gt;
| numeric || verwirft die Einheit, wenn eine vorhanden ist und liefert nur den Zahlenwert || numeric(2.3mA) &amp;lt;br&amp;gt; numeric(5%)|| 0.0023 &amp;lt;br&amp;gt; 5&lt;br /&gt;
|-&lt;br /&gt;
| unit || gibt die SI-Einheit mit dem Zahlenwert 1 zurück || unit(3.1kA) &amp;lt;br&amp;gt; unit(5%) || 1A &amp;lt;br&amp;gt; 1%&lt;br /&gt;
|-&lt;br /&gt;
| cround  || Rundet die Zahl kaufmännisch, der zweite Parameter gibt die Anzahl der Kommastellen an, ohne 2.Parameter wird auf Ganzzahlen gerundet, bei komplexen Zahlen wird Betrag und Winkel in Grad gerundet. || cround(23.535,2)&amp;lt;br&amp;gt;cround(2.435arg34.5364°,1) || 23.54&amp;lt;br&amp;gt;2.4arg34.5°&lt;br /&gt;
|-&lt;br /&gt;
| ccround  || Rundet die Zahl kaufmännisch, der zweite Parameter gibt die Anzahl der Kommastellen an, bei komplexe Zahlen wird Real und Imaginärteil gerundet. || ccround(2.4534+5.645*%i,2) || 2.45+5.65i&lt;br /&gt;
|-&lt;br /&gt;
| round  || Rundet die Zahl kaufmännisch, aus Kompatibilitätsgründen zu Maxima hat round nur einen Parameter || round(23.535) || 24&lt;br /&gt;
|-&lt;br /&gt;
| ground || Rundet die Zahl auf die im zweiten Parameter angegebenen gültigen Ziffern || ground(2453.43,2) || 2500&lt;br /&gt;
|-&lt;br /&gt;
| floor  || Rundet auf die größte ganze Zahl, welche kleiner oder gleich x ist || floor(24.5) || 24&lt;br /&gt;
|-&lt;br /&gt;
| trunc  || Schneidet die Zahl nach dem Komma ab || trunc(24.5) || 24&lt;br /&gt;
|-&lt;br /&gt;
| ceiling || ceiling(x) Rundet auf die kleinste ganze Zahl, welche größer oder gleich x ist || ceiling(13.2) || 14&lt;br /&gt;
|-&lt;br /&gt;
| pow || Potenzfunktion || pow(2,3) || 8&lt;br /&gt;
|-&lt;br /&gt;
| par || Parallelschaltung von Widerständen || par(x,y) || x*y/(x+y)&lt;br /&gt;
|-&lt;br /&gt;
| min  || Minimum von mehrere Werten suchen || min(3,5,1) || 1&lt;br /&gt;
|-&lt;br /&gt;
| max  || Maximum von mehreren Werten suchen || max(3,5,1) ||  5&lt;br /&gt;
|-&lt;br /&gt;
| random  || Zufallszahl aus einem definierten Zahlenbereich random(minimal,maximal)&amp;lt;br&amp;gt;VORSICHT! Die Zufallszahl wird bei jedem Aufruf neu berechnet, weshalb sich der Wert bei jedem Anzeigevorgang einer Frage ändert. Sollte sich der berechnete Wert für eine Schülerangabe zwischen Fragestellung und Ergebniskontrolle nicht ändern dürfen (ist der Normalfall) muss man einen &#039;&#039;&#039;Datensatz statt einer Zufallszahl&#039;&#039;&#039; verwenden! &amp;lt;br&amp;gt; Zufallszahlen haben in der Ergebnisberechnung keinen Sinn, und sollten maximal für angezeigte zufällige Werte verwendet werden! || random(2,8) ||  3.4532&lt;br /&gt;
|-&lt;br /&gt;
| randomC  || komplexe Zufallszahl aus einem definierten Zahlenbereich für den Betrag&amp;lt;br&amp;gt;VORSICHT! Die Zufallszahl wird bei jedem Aufruf neu berechnet!  || randomC(2,8) ||  3.4532arg40.3°&lt;br /&gt;
|-&lt;br /&gt;
| signum  || Liefert das Vorzeichen einer Zahl (-1,0,1). Bei einer komplexen Zahl das Vorzeichen des Realteils. || signum(-4) || -1&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Maxima-basierte Funktionen ===&lt;br /&gt;
* Diese Funktionen funktionieren nur wenn Maxima installiert ist und werden immer an Maxima gesendet, auch wenn der interne Parser aktiviert ist.&lt;br /&gt;
* Weiters werden sie bei der Ausgabe als TeX-Formel auch korrekt mit LaTeX gesetzt.&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| integrate || Berechnet das unbestimmte oder bestimmte Integral einer Funktion. || integrate(x^2,x) &amp;lt;br&amp;gt; integrate(x^2,x,0,2) || x^3/3 &amp;lt;br&amp;gt; 8/3  &lt;br /&gt;
|-&lt;br /&gt;
| diff || Berechnet die Ableitung einer Funktion.  || diff(x^2,x)&amp;lt;br&amp;gt;diff(3*x^2,x,2) || x &amp;lt;br&amp;gt; 6&lt;br /&gt;
|-&lt;br /&gt;
| tomaxima || Führt die Berechnung aller Parameter von links nach rechts hintereinander mit Maxima aus. Das Ergebnis ist dann das Ergebnis des letzten Parameters. || tomaxima(y:x^2,y+2) || x^2+2&lt;br /&gt;
|-&lt;br /&gt;
| laplace || Bestimmt die Laplace-Transformierte einer Funktion. || laplace(sin(t),t,s) || 1/(1+s^2)&lt;br /&gt;
|-&lt;br /&gt;
| ilt || Bestimmt die inverse Laplace-Transformierte eine Laplace-Funktion || ilt(1/(1+s),s,t) || e^(-t)&lt;br /&gt;
|-&lt;br /&gt;
| sum || Summenbildung || sum(1/k,k,1,2) || 3/2&lt;br /&gt;
|-&lt;br /&gt;
| product || Produktbildung || product(1/k,k,1,3) || 1/6&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===erweiterte arithmetische Funktionen===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| sigma || Sprungfunktion: sigma(x) liefert 0 für x&amp;lt;0 und 1 für x&amp;gt;=0 || sigma(243.3) || 1&lt;br /&gt;
|-&lt;br /&gt;
| pulse || Rechteckfunktion: &amp;lt;br&amp;gt;pulse(x,x0) ist gleich 1 für x0 &amp;lt; x &amp;lt; x0 + 1, sonst 0&amp;lt;br&amp;gt;pulse(x,x0,L) ist gleich 1 für x0 &amp;lt; x &amp;lt; x0 + L, sonst 0&amp;lt;br&amp;gt;[[Datei:pulse.png|300px]] || pulse(x,2,4) || [[Datei:pulse_x_2_4.png|100px]]&lt;br /&gt;
|-&lt;br /&gt;
| interpol || Interpolationsfunktion zwischen mehreren Stützpunkten in einem Koordinatensystem. &amp;lt;br&amp;gt; interpol(WerteX,WerteY,x) || interpol([0,1,2],[0,3,3],1.5) || 3&lt;br /&gt;
|-&lt;br /&gt;
| periodic || Erzeugt aus einer beliebigen Funktion zwischen 0 und Periodendauer eine periodische Funktion &amp;lt;br&amp;gt; periodic(Variable,Periodendauer,Funktion)&amp;lt;br&amp;gt; periodic(Variable,Periodendauer,Funktionsperiodendauer,Funktion) || ch1(t):periodic(t,5ms,2&#039;Vms-2&#039;*t^2) &amp;lt;br&amp;gt; ch1(t):periodic(t,5ms,1,2V*t^2) || :[[Datei:ClipCapIt-190318-113524.PNG|100px]] &amp;lt;br&amp;gt; :[[Datei:ClipCapIt-190318-113644.PNG|100px]]&lt;br /&gt;
|-&lt;br /&gt;
| numint || numerische Integration &amp;lt;br&amp;gt; numint(untereGrenze,obereGrenze,funktion,Variable)&amp;lt;br&amp;gt; numint(untereGrenze,obereGrenze,funktion,Variable,punkteAnzahl) || numint(0,2pi,sin(t),t) || 0&lt;br /&gt;
|-&lt;br /&gt;
| numdif || numerisches Differenzieren einer Funktion &amp;quot;funktion&amp;quot; nach einer Variablen &amp;quot;Variable&amp;quot; an der Stelle &amp;quot;position&amp;quot; mit einer Differenz der Variablen von &amp;quot;differenz&amp;quot; &amp;lt;br&amp;gt; numdif(position,funktion,Variable,differenz) || numdif(0,sin(t),t,0.01) || 1&lt;br /&gt;
|-&lt;br /&gt;
| solve || löst eine Gleichung oder ein Gleichungssystem nach einer oder mehrerer Variablen || solve([2*x+y=3,x-y=0],[x,y]) || [ [ x=1,y=1 ] ]&lt;br /&gt;
|-&lt;br /&gt;
| solvevalue || löst eine Gleichung oder ein Gleichungssystem nach einer Variablen und liefert genau die erste Lösung wenn sie numerisch berechenbar ist || solvevalue([ 2*x+y=3,x-y=0 ],[ x,y ],x)  || 1&lt;br /&gt;
|-&lt;br /&gt;
| newton || Bestimmt eine Nullstelle einer Funktion nach dem Newton-Verfahren. Der erste Parameter ist ein Ausdruck in einer Variablen, der zweite Parameter ist der Startwert. || newton(x^2-4,4) || 2&lt;br /&gt;
|-&lt;br /&gt;
| cnewton || Bestimmt eine komplexe Nullstelle einer Funktion nach dem Newton-Verfahren. Der erste Parameter ist ein Ausdruck in einer Variablen, der zweite Parameter ist der komplexe Startwert. || newton(x^2+4,4) || 2*%i&lt;br /&gt;
|-&lt;br /&gt;
| newtonall || Bestimmt alle Nullstellen einer Funktion mit einem Betrag des Funktionsparameters kleiner als ein definierter Wert nach dem Newton-Verfahren. Der erste Parameter ist ein Ausdruck in einer Variablen, der zweite Parameter ist der maximale Betrag des Funktionsparameters. Das Ergebnis ist immer ein Vektor mit den nach aufsteigendem Funktionswert sortierten Nullstellen. || newton(x^2-4,4) || [-2,2]&lt;br /&gt;
|-&lt;br /&gt;
| cnewtonall || Bestimmt alle komplexen Nullstellen einer Funktion mit einem Betrag des Funktionsparameters kleiner als ein definierter Wert nach dem Newton-Verfahren. Der erste Parameter ist ein Ausdruck in einer Variablen, der zweite Parameter ist der maximale Betrag des Funktionsparameters. Das Ergebnis ist immer ein Vektor mit den Nullstellen. || newton(x^2+4,4) || [-2*%i,2*%i]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Stringfunktionen===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| dechex || Zahl in eine Ganzzahl wandeln und als Hexadezimal-String ausgeben || dexhex(12) || &amp;quot;0xC&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| chr || Bestimmt die Zeichen mit dem ASC-II-Code der Long-Parameter und setzt daraus einen String zusammen. || chr(0x65,105) || &amp;quot;ei&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| val || Bestimmt den ASC-II-Code des ersten Zeichens welches als String-Parameter übergeben wurde.|| val(&amp;quot;a&amp;quot;) || 97&lt;br /&gt;
|-&lt;br /&gt;
| strcat || Fügt mehrere Strings zusammen.|| strcat(&amp;quot;a&amp;quot;,&amp;quot;b&amp;quot;) || &amp;quot;ab&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===trigonometrische Funktionen===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| sin || Sinus || sin(%pi/2) || 1&lt;br /&gt;
|-&lt;br /&gt;
| cos || Cosinus || cos(%pi/2) || 0&lt;br /&gt;
|-&lt;br /&gt;
| tan || Tangens || tan(%pi/4) || 1&lt;br /&gt;
|-&lt;br /&gt;
| asin || Arcus-Sinus || asin(1) || %pi/2&lt;br /&gt;
|-&lt;br /&gt;
| arcsin || Arcus-Sinus || asin(1) || %pi/2&lt;br /&gt;
|-&lt;br /&gt;
| acos || Arcus-Cosinus || acos(1) || 0&lt;br /&gt;
|-&lt;br /&gt;
| arccos || Arcus-Cosinus || acos(1) || 0&lt;br /&gt;
|-&lt;br /&gt;
| atan || Arcus-Tangens || atan(1) || %pi/4&lt;br /&gt;
|-&lt;br /&gt;
| arctan || Arcus-Tangens || arctan(1) || %pi/4&lt;br /&gt;
|-&lt;br /&gt;
| atan2 || Arcus-Tangens atan2(y,x)=arctan(y/x) || atan2(-2,-2) || -%pi*3/4&lt;br /&gt;
|-&lt;br /&gt;
| arctan2 || Arcus-Tangens arctan2(y,x)=arctan(y/x) || arctan2(-2,-2) || -%pi*3/4&lt;br /&gt;
|-&lt;br /&gt;
| sinh || Sinus-Hyperbolicus || sinh(1) || 1.1752012&lt;br /&gt;
|-&lt;br /&gt;
| cosh || Cosinus-Hyperbolicus || cosh(1) || 1.5430806&lt;br /&gt;
|-&lt;br /&gt;
| tanh || Tangens-Hyperbolicus || tanh(1) || 0.7615941&lt;br /&gt;
|-&lt;br /&gt;
| coth || Cotangens-Hyperbolicus || coth(1) || 1.313035&lt;br /&gt;
|-&lt;br /&gt;
| asinh || Area-Sinus-Hyperbolicus || asinh(1.1752012) || 1&lt;br /&gt;
|-&lt;br /&gt;
| acosh || Area-Cosinus-Hyperbolicus || acosh(1.5430806) || 1&lt;br /&gt;
|-&lt;br /&gt;
| atanh || Area-Tangens-Hyperbolicus || atanh(0.7615941) || 1&lt;br /&gt;
|-&lt;br /&gt;
| acoth || Area-Cotangens-Hyperbolicus || acoth(1.313035) || 1&lt;br /&gt;
|-&lt;br /&gt;
| [[csin]] || Erzeugt aus einer komplexen Zahl (Effektivwert) und einer Frequenz einen Sinusfunktion in der Zeit || csin(U) || sqrt(2)*cabs(U)*sin(2*pi*f*t+carg(U))&lt;br /&gt;
|-&lt;br /&gt;
| [[quadrant]] || Liefert den Quadranten eines Winkels mit einer Toleranzangabe. || quadrant(20°,5°) || 1&lt;br /&gt;
|-&lt;br /&gt;
| argnorm || Wandelt einen Winkel auf den Bereich von 0°-360° || argnorm(-50°) || 310°&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Exponentialfunktionen===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| pow || Potenzfunktion || pow(2,3) || 8&lt;br /&gt;
|-&lt;br /&gt;
| exp|| Exponentialfunktion || exp(1) || %e&lt;br /&gt;
|-&lt;br /&gt;
| log || natürlicher Logarythmus || log(%e) || 1&lt;br /&gt;
|-&lt;br /&gt;
| ln || natürlicher Logarythmus || ln(%e) || 1&lt;br /&gt;
|-&lt;br /&gt;
| log10 || Logarythmus zur Basis 10 || log10(100) || 2&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===komplexe Zahlen===&lt;br /&gt;
Die Funktionen zu komplexen Zahlen werden (anders als in Maxima) nur ausgewertet wenn das Ergebnis numerisch berechenbar ist, ansonsten bleibt die Funktion symbolisch erhalten.&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| abs || Liefert den Absolutbetrag einer komplexen Zahl || abs(3+4*%i) || 5&lt;br /&gt;
|-&lt;br /&gt;
| cabs || Liefert den Absolutbetrag einer komplexen Zahl || cabs(3+4*%i) || 5&lt;br /&gt;
|-&lt;br /&gt;
| carg || Liefert das Argument einer komplexen Zahl || carg(4*%e^(3*%i)) || 3&lt;br /&gt;
|-&lt;br /&gt;
| realpart || Liefert den Realteil einer komplexen Zahl || realpart(3+4*%i) || 3&lt;br /&gt;
|-&lt;br /&gt;
| imagpart || Liefert den Imaginärteil einer komplexen Zahl || imagpart(3+4*%i) || 4&lt;br /&gt;
|-&lt;br /&gt;
| conjugate || Liefert die konjugiert komplexe Zahl einer komplexen Zahl || conjugate(3+4*%i) || 3-4*%i&lt;br /&gt;
|-&lt;br /&gt;
| rectform || hat in LeTTo keine Relevanz, da die Zahlendarstellung bei der Ausgabe definiert wird wie zB.: {=3arg2;karti} ||  || &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Polynome===&lt;br /&gt;
Polynome mit reellen Koeffizienten in einer Variablen können mit folgenden Funktionen erstellt und verarbeitet werden. Für die interne Verarbeitung wird hierzu ein eigener Polynom-Datentyp verwendet.&lt;br /&gt;
&lt;br /&gt;
siehe auch [[Zahlendarstellung#f.C3.BCr_Polynome_und_gebrochen_rationale_Funktionen_mit_numerischen_Koeffizienten_in_einer_Variablen_k.C3.B6nnen_folgende_Parameter_angegeben_werden|Zahlendarstellung Polynome]]&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| polynom(p) || Erzeugt aus einem Ausdruck welcher genau eine Variable besitzen muss ein Polynom in dieser Variablen || polynom(1+x) || 1+x²&lt;br /&gt;
|-&lt;br /&gt;
| polynom(p,var) || Erzeugt aus einem Ausdruck ein Polynom in einer definierten Variablen. Ist p ein gültiger Polynom-Ausdruck mit reelen Koeffizienten in der Variablen var wird das Polynom erzeugt, ansonsten bleibt die Funktion erhalten. || polynom(1+a*x^2,x) &amp;lt;br&amp;gt; polynom(1+2*x^2,x) || polynom(1+a*x^2,x)&amp;lt;br&amp;gt;1+2*x²&lt;br /&gt;
|-&lt;br /&gt;
| polynom(p,var,&amp;quot;einheit&amp;quot;) || Erzeugt ein Polynom in der Variablen var, mit der Einheit &amp;quot;einheit&amp;quot; für die Polynomvariable. Die Einheit muss als String in Doppelhochkomma angegeben werden! Das Polynom p muss entweder ohne Einheiten oder mit den korrekten Einheiten angegeben werden! || polynom(1+2*p^2,p,&amp;quot;s-1&amp;quot;) &amp;lt;br&amp;gt; polynom(1+2&#039;s2&#039;*p^2,p,&amp;quot;s-1&amp;quot;) || 1+2&#039;s2&#039;*p^2 &amp;lt;br&amp;gt;1+2&#039;s2&#039;*p^2&lt;br /&gt;
|-&lt;br /&gt;
| factfrompolynom(p) || Erzeugt aus einem Polynom einen Vektor mit den Polynomfaktoren. Erste Zeile Zählerfaktoren, zweite Zeile Nennerfaktoren, dritte Zeile Polynomvariable, vierte Zeile Einheit der Polynomvariable|| factfrompolynom(polynom((2+x)/(1+2*x))) || [[1,0.5],[0.5,1],&amp;quot;x&amp;quot;,&amp;quot;&amp;quot;]&lt;br /&gt;
|-&lt;br /&gt;
| polynomfromfact(f) || Erzeugt aus einer Faktoren-Liste, welche mit factfrompolynom erstellt wurde ein neues Polynom || polynomfromfact([[1,0.5],[0.5,1],&amp;quot;x&amp;quot;,&amp;quot;&amp;quot;]) || (2+x)/(1+2*x)&lt;br /&gt;
|- &lt;br /&gt;
| polynomfromfact(zähler,nenner,var,einheit) || Erzeugt aus Zähler und Nenner Faktor-Vektoren ein neues Polynom || polynomfromfact([1,0.5],[0.5,1],x,&amp;quot;&amp;quot;) || (2+x)/(1+2*x)&lt;br /&gt;
|- &lt;br /&gt;
| nullfrompolynom(p) || Erzeugt aus einem Polynom einen Vektor mit den PolynomNullstellen und Polstellen. Erste Zeile gemeinsamer Faktor, zweite Zeile Nullstellen, dritte Zeile Polstellen, vierte Zeile Polynomvariable|| nullfrompolynom(polynom((2+x)/(1+2*x))) || [0.5,[-2],[-0.5],x]&lt;br /&gt;
|-&lt;br /&gt;
| polynomfromnull(n) || Erzeugt aus einer Nullstellen-Polstellen-Liste, welche mit nullfrompolynom erstellt wurde ein neues Polynom || polynomfromnull([0.5,[-2],[-0.5],x]) || (2+x)/(1+2*x)&lt;br /&gt;
|- &lt;br /&gt;
| polynomfromnull(faktor,nullstellen,polstellen,var) || Erzeugt aus einer Faktor-Vektoren ein neues Polynom || polynomfromnull(0.5,[-2],[-0.5],x) || (2+x)/(1+2*x)&lt;br /&gt;
|-  &lt;br /&gt;
| polynomk(p) || Bestimmt den Faktor, welcher vom Polynom herausgehoben werden kann, so dass die höchste Potenz der Polynomvariable den Multiplikator Eins hat. || polynomk(polynom((2+x)/(1+2*x))) || 0.5&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===statistische Funktionen===&lt;br /&gt;
Die Funktionen funktionieren nur ohne Einheiten.&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| factorial || Liefert die Fakultät einer positiven ganzen Zahl || factorial(5) || 120&lt;br /&gt;
|-&lt;br /&gt;
| binomial || Liefert den Binomialkoeffizienten von zwei positiven ganzen Zahlen || binomial(5,2) || 10&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Mengen-Funktionen===&lt;br /&gt;
Mengen werden intern als Vektoren verarbeitet und sind deshalb auch direkt durch Vektoren ersetzbar. Auch alle Vektor-Funktionen sind somit auch auf Mengen anwendbar und umgekehrt.&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis || ab Rev&lt;br /&gt;
|-&lt;br /&gt;
| setget || Liefert ein Element einer Menge oder einer Matrix (Menge von Mengen) || setget([12,13,14],1) &amp;lt;br&amp;gt; setget(matrix([9,2],[3,4]),0,1) || 13 &amp;lt;br&amp;gt; 2 &lt;br /&gt;
|-&lt;br /&gt;
| setset || setzt ein Element einer Menge oder einer Matrix (Menge von Mengen) || setset([12,13,14],1,35) &amp;lt;br&amp;gt; setset(matrix([9,2],[3,4]),0,0,-9) || [12,35,14] &amp;lt;br&amp;gt; [[-9,2],[3,4]]&lt;br /&gt;
|-&lt;br /&gt;
| setlength || liefert die Anzahl der Elemente einer Liste, Menge oder eines Vektors || setlength([3,6,54,34,3,54]) || 6 &lt;br /&gt;
|- &lt;br /&gt;
| setinsert || fügt ein Element in eine Menge an eine gegebene Stelle ein || setinsert([12,13,14],1,25) || [12,25,13,14]&lt;br /&gt;
|-&lt;br /&gt;
| setremove || löscht ein Element einer Menge || setremove([12,13,14],1) || [12,14]&lt;br /&gt;
|-&lt;br /&gt;
| setapply || wendet einen Ausdruck oder Funktion auf alle Elemente einer Menge an || setapply(y,[1,2,3],y*2) || [2,4,6] || 5965&lt;br /&gt;
|-&lt;br /&gt;
| setmedian || Liefert den Median einer Menge || setmedian([4,3,1,5,6]) || 4&lt;br /&gt;
|-&lt;br /&gt;
| setboxplot || Liefert die Werte des Boxplot einer Menge (Minimum, unteres Quartil, Median, oberes Quartil, Maximum) als Vektor verwendbar für das [[Plot#definierte_Zeichenelemente|Plot-Plugin]] || setboxplot([1,2,3,10,8,9]) || [1,2,5.5,9,10]&lt;br /&gt;
|-&lt;br /&gt;
| setsort || Sortiert die Elemente einer Menge aufsteigend || setsort([3,-3,2,0,5,2]) || [-3,0,2,2,3,5]&lt;br /&gt;
|-&lt;br /&gt;
| setsortnd || Sortiert die Elemente einer Menge aufsteigend und entfernt alle mehrfach vorkommenden Elemente || setsortnd([31,-3,2,31,0,5,2]) || [-3,0,2,5,31]&lt;br /&gt;
|-&lt;br /&gt;
| setcount || Bestimmt die Anzahl wie oft ein Element in einer Menge vorkommt oder die Anzahl der Elemente der Menge || setcount([31,-3,2,31,0,5,2],31) &amp;lt;br&amp;gt; setcount([2,5,3,6]) || 2 &amp;lt;br&amp;gt; 4&lt;br /&gt;
|-&lt;br /&gt;
| setmodus || Liefert das Element einer Menge, welches am öftesten vorkommt oder die Elemente als Menge wenn mehrere Elemente gleich oft vorkommen || setmodus([3,-3,2,0,5,2]) || 2&lt;br /&gt;
|-&lt;br /&gt;
| setreverse || Dreht die Reihenfolge einer Menge um || setreverse([3,-3,2,0,5,2]) || [2,5,0,2,-3,3]&lt;br /&gt;
|-&lt;br /&gt;
| setnd || Löscht alle Duplikate aus der Menge || setnd([3,-3,2,0,5,2]) || [3,-3,2,0,5]&lt;br /&gt;
|-&lt;br /&gt;
| setshuffle || Mischt eine Menge in eine andere Reihenfolge. VORSICHT, ohne zweiten Parameter (ganze Zahl) ändert sich die Reihenfolge bei jedem mal neu Laden automatisch und ist nicht nachvollziehbar, weshalb sie dann für Schülerbeispiele nicht einsetzbar ist! Daher ist es für eine praktische Anwendung in einem Schülerbeispiel **erforderlich**, wenn der zweite Parameter beispielsweise über einen Integer-Datensatz-Wert (z.B zwischen 0 und 1000) festgelegt ist.|| setshuffle([3,-3,2,0,5,2],5) || [2,3,−3,2,0,5] || 6082&lt;br /&gt;
|-&lt;br /&gt;
| setmittel || Bestimmt den Mittelwert einer Menge || setmittel([1,3,2,4]) || 2.5&lt;br /&gt;
|-&lt;br /&gt;
| setgeomittel || Bestimmt das geometrische Mittelwert einer Menge aus positiven reellen Zahlen || setgeomittel([10,20,30]) || 18.171206&lt;br /&gt;
|-&lt;br /&gt;
| setvarianz || Bestimmt die empirische Varianz einer Menge || setvarianz([3,1,2,5,4]) || ((3-3)^2+(1-3)^2+(2-3)^2+(5-3)^2+(4-3)^2)/5=2&lt;br /&gt;
|-&lt;br /&gt;
| setquadratmittel || Bestimmt den quadratischen Mittelwert einer Menge || setquadratmittel([10,20,30]) || 21.6025&lt;br /&gt;
|-&lt;br /&gt;
| setsum || Bestimmt die Summe aller Werte einer Menge || setsum([1,3,2,4]) || 10&lt;br /&gt;
|-&lt;br /&gt;
| setprod || Bestimmt das Produkt aller Werte einer Menge || setprod([1,3,2,4]) || 24&lt;br /&gt;
|-&lt;br /&gt;
| setunion || Fügt mehrere Mengen zu einer neuen Menge zusammen || setunion([1,3,2,4],[3,7]) || {1,3,2,4,3,7}&lt;br /&gt;
|-&lt;br /&gt;
| setunionnd || Fügt mehrere Mengen zu einer neuen Menge zusammen, sortiert diese und entfernt alle mehrfachen Elemente || setunionnd([1,3,2,4],[3,7]) || {1,2,3,4,7}&lt;br /&gt;
|-&lt;br /&gt;
| setcut || Bildet die Schnittmenge aus mehreren Mengen || setcut([1,3,2,4],[3,7]) || {3}&lt;br /&gt;
|-&lt;br /&gt;
| setcompare || vergleicht zwei Mengen miteinander, wobei die Reihenfolge egal ist  || setcompare([1,3,2,4],[3,7]) &amp;lt;br&amp;gt; setcompare([1,3,2],[1,2,3]) &amp;lt;br&amp;gt; setcompare([1,3,2],[1,3,2,3]) &amp;lt;br&amp;gt; setcompare([1,2,3],[1,2,3])  || false &amp;lt;br&amp;gt; true &amp;lt;br&amp;gt; false &amp;lt;br&amp;gt; true&lt;br /&gt;
|-&lt;br /&gt;
| setcomparend || vergleicht zwei Mengen miteinander, wobei die Reihenfolge egal ist und doppelte Werte als einfach behandelt werden. || setcomparend([1,3,2,4],[3,7]) &amp;lt;br&amp;gt; setcomparend([1,3,2],[1,2,3]) &amp;lt;br&amp;gt; setcomparend([1,3,2],[1,3,2,3]) &amp;lt;br&amp;gt; setcomparend([1,2,3],[1,2,3])  || false &amp;lt;br&amp;gt; true &amp;lt;br&amp;gt; true &amp;lt;br&amp;gt; true&lt;br /&gt;
|-&lt;br /&gt;
| setpartof || prüft ob die erste Menge eine Teilmenge der zweite Menge ist wobei die Reihenfolge egal ist aber mehrfache Werte berücksichtigt werden  || setpartof([1,4],[1,3,7]) &amp;lt;br&amp;gt; setpartof([1,3],[1,2,3]) &amp;lt;br&amp;gt; setpartof([1,3,3],[1,3,5,7]) &amp;lt;br&amp;gt; setpartof([1,4,4],[1,2,3,4])  || false &amp;lt;br&amp;gt; true &amp;lt;br&amp;gt; false &amp;lt;br&amp;gt; false&lt;br /&gt;
|-&lt;br /&gt;
| setpartofnd || prüft ob die erste Menge eine Teilmenge der zweite Menge ist wobei die Reihenfolge und mehrfache Werte egal sind  || setpartofnd([1,4],[1,3,7]) &amp;lt;br&amp;gt; setpartofnd([1,3],[1,2,3]) &amp;lt;br&amp;gt; setpartofnd([1,3,3],[1,3,5,7]) &amp;lt;br&amp;gt; setpartofnd([1,4,4],[1,2,3,4])  || false &amp;lt;br&amp;gt; true &amp;lt;br&amp;gt; true &amp;lt;br&amp;gt; true&lt;br /&gt;
|-&lt;br /&gt;
| setgetmin || Liefert den kleinsten Wert einer Menge || setgetmin([1,3,-2,4]) || -2&lt;br /&gt;
|-&lt;br /&gt;
| setgetmax || Liefert den größten Wert einer Menge || setgetmax([1,3,-2,4]) || 4&lt;br /&gt;
|-&lt;br /&gt;
| setremovefirst || Entfernt den ersten Wert einer Menge || setremovefirst([1,3,-2,4]) || {3,-2,4}&lt;br /&gt;
|-&lt;br /&gt;
| setremovelast || Entfernt den letzten Wert einer Menge || setremovelast([1,3,-2,4]) || {1,3,-2}&lt;br /&gt;
|-&lt;br /&gt;
| setgetfirst || Liefert den ersten Wert einer Menge || setgetfirst([1,3,-2,4]) || 1&lt;br /&gt;
|-&lt;br /&gt;
| setgetlast || Liefert den letzten Wert einer Menge || setgetlast([1,3,-2,4]) || 4&lt;br /&gt;
|-&lt;br /&gt;
| setsub || setsub(M,x,y) Liefert eine Teilmenge von M der Elemente vom index x bis zum Index y || setsub([1,3,-2,4],1,2) || {3,-2}&lt;br /&gt;
|-&lt;br /&gt;
| setmakelist || setmakelist(f,x,start,stop) setzt in den Ausdruck f für x die Werte von start bis stop mit einer Schrittweite von 1 ein. || setmakelist(x^2,x,1,4) || [ 1,4,9,16 ]&lt;br /&gt;
|-&lt;br /&gt;
| || setmakelist(f,x,start,stop,schrittweite) setzt in den Ausdruck f für x die Werte von start bis stop mit dem Abstand schrittweite ein. || setmakelist(x^2,x,1,2,0.5) || [ 1,2.25,4 ]&lt;br /&gt;
|-&lt;br /&gt;
| || setmakelist(f,x,set) setzt die Werte des Vektors set in den Ausdruck f für x ein. || setmakelist(x^2,x,[3,1,2])  ||[ 9,1,4 ]&lt;br /&gt;
|-&lt;br /&gt;
| foreach || Führt für jedes Element eine Berechnung aus und verbindet die Ergebnisse mit der Aggregatfunktion || foreach([2,-3,5,-6],p,cabs(p),&amp;quot;+&amp;quot;) || 16 || 6075 &lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Punkte-Mengen-Funktionen ===&lt;br /&gt;
Bei der Eingabe mit dem Plot-Plugin werden Punkte-Mengen als Matrizen in der Form [[x1,y1],[x2,y2],[y3,y3]] für die gespeicherten Punkte welcher der Schüler eingegeben hat verwendet.&lt;br /&gt;
&lt;br /&gt;
Um die Verarbeitung der Eingaben zu erleichtern kann man die Funktionen beginnend mit pv verwenden.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis || ab Rev&lt;br /&gt;
|-&lt;br /&gt;
| pvabs || Bestimmt den Betrag eines Punktes oder aller Ortsvektoren zu den Punkten. || pvabs([[2,3],[4,5],[6,3],[-2,4]]) &amp;lt;br&amp;gt; pvabs([[2,3],[4,5],[6,3],[-2,4]],1) ||  [3.6056,6.4031,6.7082,4.4721] &amp;lt;br&amp;gt; 6.4031 || 6077&lt;br /&gt;
|-&lt;br /&gt;
| pvarg || Bestimmt den Winkel eines Punktes oder aller Ortsvektoren zu den Punkten. || pvarg([[2,3],[4,5],[6,3],[-2,4]]) &amp;lt;br&amp;gt; pvarg([[2,3],[4,5],[6,3],[-2,4]],1) || [0.98279,0.89606,0.46365,2.0344] &amp;lt;br&amp;gt; 0.89606 || 6077&lt;br /&gt;
|-&lt;br /&gt;
| pvget || Liefert einen Punkt der Punkteliste. || pvget([[2,3],[4,5],[6,3],[-2,4]],1) || [4,5] || 6077&lt;br /&gt;
|-&lt;br /&gt;
| pvgetx || Bestimmt die x-Koordinate eines Punktes oder aller Punkte. || pvgetx([[2,3],[4,5],[6,3],[-2,4]]) &amp;lt;br&amp;gt; pvgetx([[2,3],[4,5],[6,3],[-2,4]],1) || [2,4,6,-2]&amp;lt;br&amp;gt;4 || 6077&lt;br /&gt;
|-&lt;br /&gt;
| pvgety || Bestimmt die y-Koordinate eines Punktes oder aller Punkte. || pvgety([[2,3],[4,5],[6,3],[-2,4]]) &amp;lt;br&amp;gt; pvgety([[2,3],[4,5],[6,3],[-2,4]],1) || [3,5,3,4]&amp;lt;br&amp;gt;3 || 6077&lt;br /&gt;
|-&lt;br /&gt;
| pvlineabs || Bestimmt aus dem n-ten Punktepaar den Absolutbetrag des Abstandes. || pvlineabs([[2,3],[4,5],[6,3],[-2,4]])&amp;lt;br&amp;gt;pvlineabs([[2,3],[4,5],[6,3],[-2,4]],0) || [2.8284,8.0623]&amp;lt;br&amp;gt;2.82842712475 || 6075 &lt;br /&gt;
|-&lt;br /&gt;
| pvlinearg || Bestimmt aus dem n-ten Punktepaar den Winkel der Strecke zur x-Achse || pvlinearg([[2,3],[4,5],[6,3],[-2,4]])&amp;lt;br&amp;gt;pvlinearg([[2,3],[4,5],[6,3],[-2,4]],0) || [45°,172.87°]&amp;lt;br&amp;gt;45° || 6075 &lt;br /&gt;
|-&lt;br /&gt;
| pvlinek || Bestimmt die Steigung der zugehörigen Geraden dem n-ten Punktepaar || pvlinek([[2,3],[4,5],[6,3],[-2,4]])&amp;lt;br&amp;gt;pvlinek([[2,3],[4,5],[6,3],[-2,4]],0) ||  [1,−0.125]&amp;lt;br&amp;gt;1 || 6075 &lt;br /&gt;
|-&lt;br /&gt;
| pvlined || Bestimmt den Schnittpunkt einer Geraden durch das n-te Punktepaar mit der y-Achse || pvlined([[2,3],[4,5],[6,3],[-2,4]])&amp;lt;br&amp;gt;pvlined([[2,3],[4,5],[6,3],[-2,4]],0) || [1,3.75] &amp;lt;br&amp;gt;1 || 6075 &lt;br /&gt;
|-&lt;br /&gt;
| pvline || Bestimmt die Geradengleichung einer Geraden durch das n-te Punktepaar || pvline([[2,3],[4,5],[6,3],[-2,4]])&amp;lt;br&amp;gt;pvline([[2,3],[4,5],[6,3],[-2,4]],0) || [y=1+x,y=3.75−0.125⋅x]&amp;lt;br&amp;gt;y=x+1 || 6075 &lt;br /&gt;
|-&lt;br /&gt;
| pvpoints || Bestimmt die Anzahl der Punkte || pvpoints([[2,3],[4,5],[6,3],[-2,4]]) || 4 || 6075 &lt;br /&gt;
|-&lt;br /&gt;
| pvvect || Bestimmt einen Vector aus dem n-te Punktepaar || pvvect([[2,3],[4,5],[6,3],[-2,4]],0) || [2,2] || 6075 &lt;br /&gt;
|-&lt;br /&gt;
| pvsortx || Sortiert die Punkte nach steigender x-Koordinate || pvsortx([[2,3],[4,5],[6,3],[−2,4],[−3,5],[−7,−9]]) || [[−7,−9],[−3,5],[−2,4],[2,3],[4,5],[6,3]] ||6077 &lt;br /&gt;
|-&lt;br /&gt;
| pvsorty || Sortiert die Punkte nach steigender y-Koordinate || pvsorty([[2,3],[4,5],[6,3],[−2,4],[−3,5],[−7,−9]]) || [[−7,−9],[2,3],[6,3],[−2,4],[4,5],[−3,5]] ||6077&lt;br /&gt;
|-&lt;br /&gt;
| pvsortabs || Sortiert die Punkte nach steigendem Absolutbetrag des Ortsvektors || pvsortabs([[2,3],[4,5],[6,3],[−2,4],[−3,5],[−7,−9]]) ||  [[2,3],[−2,4],[−3,5],[4,5],[6,3],[−7,−9]] ||6077&lt;br /&gt;
|-&lt;br /&gt;
| pvsortarg || Sortiert die Punkte nach steigendem Winkel des Ortsvektors (-pi bis pi) || pvsortarg([[2,3],[4,5],[6,3],[−2,4],[−3,5],[−7,−9]]) ||  [[−7,−9],[6,3],[4,5],[2,3],[−2,4],[−3,5]] ||6077&lt;br /&gt;
|-&lt;br /&gt;
| pvsortlinex || Sortiert Punktepaare nach steigender x-Koordinate der kleineren x-Koordinate des Paares. || pvsortlinex([[2,3],[4,5],[6,3],[−2,4],[−3,5],[−7,−9]]) || [[−3,5],[−7,−9],[6,3],[−2,4],[2,3],[4,5]] ||6077 &lt;br /&gt;
|-&lt;br /&gt;
| pvsortliney || Sortiert Punktepaare nach steigender y-Koordinate der kleineren y-Koordinate des Paares. || pvsortliney([[2,3],[4,5],[6,3],[−2,4],[−3,5],[−7,−9]]) ||  [[−3,5],[−7,−9],[2,3],[4,5],[6,3],[−2,4]] ||6077 &lt;br /&gt;
|-&lt;br /&gt;
| pvsortlineabs || Sortiert Punktepaare nach steigendem Betrag der Linienlänge. || pvsortlineabs([[2,3],[4,5],[6,3],[−2,4],[−3,5],[−7,−9]]) || [[2,3],[4,5],[6,3],[−2,4],[−3,5],[−7,−9]] || 6077&lt;br /&gt;
|-&lt;br /&gt;
| pvsortlinearg || Sortiert Punktepaare nach steigendem Winkel der Linienrichtung. || pvsortlinearg([[2,3],[4,5],[6,3],[−2,4],[−3,5],[−7,−9]]) || [[−3,5],[−7,−9],[2,3],[4,5],[6,3],[−2,4]] || 6077&lt;br /&gt;
|-&lt;br /&gt;
| pvequals || Prüft ob zwei Punktevektoren gleich sind. Die Genauigkeit wird als dritter Parameter angegeben, oder bei einem Antwortfeld von der Antworttoleranz genommen. Prozentangaben der Genauigkeit beziehen sich auf die Breite bzw. Höhe des Punktefeldes im karthesischen Koordinatensystem. || pvequals([[2,3],[4,5],[6,3],[-2,4],[-3,5],[-7,-9]],[[2.01,3],[4,5],[6.01,3],[-2,3.99],[-3,5],[-7,-9]],2%) || true || 6077&lt;br /&gt;
|-&lt;br /&gt;
| pvhaspoint || Prüft ob sich ein Punkt innerhalb des Punktefeldes befindet. Die Genauigkeit kann wie bei pvequals als dritter Parameter angegeben werden. || pvhaspoint([[2,3],[4,5],[6,3],[-2,4],[-3,5],[-7,-9]],[4,5],2%) || true || 6077&lt;br /&gt;
|-&lt;br /&gt;
| pvhasline || Prüft ob sich eine Linie innerhalb des Punktefeldes von Linien befindet. Die Genauigkeit kann wie bei pvequals als dritter Parameter angegeben werden. || pvhaspoint([[2,3],[4,5],[6,3],[-2,4],[-3,5],[-7,-9]],[[6,3],[-2,4]],2%) || true || 6078&lt;br /&gt;
|-&lt;br /&gt;
| pvforeachline || Führt für jedes Punktepaar eine Berechnung aus und verbindet die Ergebnisse mit der Aggregatfunktion || pvforeachline([[2,3],[4,5],[6,3],[-2,4]],p,pvlineabs(p),&amp;quot;+&amp;quot;) || 10.890684873 || 6075 &lt;br /&gt;
|-&lt;br /&gt;
| pvfunc || Erzeugt aus einer Funktionen in einer Variablen (x-Achse) eine Punktmatrix der Funktionswerte (y-Achse). pvfunc(funktion,variable,minx,maxx,deltax) || pvfunc(x^2,x,-2,2,0.5) || [[−2,4],[−1.5,2.25],[−1,1],[−0.5,0.25],[0,0],[0.5,0.25],[1,1],[1.5,2.25]] || 6080&lt;br /&gt;
|-&lt;br /&gt;
| pvcompare || Vergleicht einen Referenz-Linienzug mit einem eingegebenen Linienzug unter Berücksichtigung der Toleranz.&amp;lt;br&amp;gt; pvcompare(Referenz,Eingabe)&amp;lt;br&amp;gt; pvcompare(Referenz,Eingabe,Toleranz)&amp;lt;br&amp;gt; pvcompare(Referenz,Eingabe,MinX,MaxX,MinY,MaxY) &amp;lt;br&amp;gt; pvcompare(Referenz,Eingabe,MinX,MaxX,MinY,MaxY,Toleranz) || pvcompare([[0,0],[1,1],[2,1],[3,0]],[[0,0],[1,1],[2,1],[3,0]],0,3,-5,5) || true  || 6080&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Typ-Funktionen===&lt;br /&gt;
Werden nur dann ausgewertet wenn der Parameter ein numerischer Wert oder eine Menge ist.&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| isset || Prüft ob es sich um eine Menge handelt. || isset([12,13,14]) || true &lt;br /&gt;
|-&lt;br /&gt;
| issetnumeric || Prüft ob es sich um eine Menge aus reellen Zahlen handelt. || issetnumeric([12,13.4,14]) || true &lt;br /&gt;
|-&lt;br /&gt;
| issetlong || Prüft ob es sich um eine Menge aus ganzen Zahlen handelt. || issetlong([12,13,14]) || true &lt;br /&gt;
|-&lt;br /&gt;
| islong || Prüft ob es sich um eine ganze Zahl handelt. || islong(12) || true &lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Algebra===&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;Hinweis:&#039;&#039; Die Indizes eines Vektors oder einer Matrix werden in Letto ausgehend von 0 weg gezählt.  &lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| matrix || erzeugt aus mehreren gleich langen Vektoren eine Matrix || matrix([1,2],[3,4]) || [[1,2],[3,4]]&lt;br /&gt;
|-&lt;br /&gt;
| inv || invertiert eine quadratische Matrix oder bildet 1/x || inv(matrix([1,2],[3,4])) || [[-2,1],[3/2,-1/2]]&lt;br /&gt;
|-&lt;br /&gt;
| vget || liefert ein Element eines Vektors oder einer Matrix [https://www.youtube.com/watch?v=T82YIt3e8ac Video] || vget([12,13,14],1) &amp;lt;br&amp;gt; vget(matrix([9,2],[3,4]),0,1) || 13 &amp;lt;br&amp;gt; 2 &lt;br /&gt;
|-&lt;br /&gt;
| vgetmaxima || liefert ein Element eines Vektors oder einer Matrix wobei der Index (wie bei Maxima) bei 1 startet. || vgetmaxima([12,13,14],1) || 12 &lt;br /&gt;
|-&lt;br /&gt;
| vset || setzt ein Element eines Vektors oder einer Matrix || vset([12,13,14],1,35) &amp;lt;br&amp;gt; vset(matrix([9,2],[3,4]),0,0,-9) || [12,35,14] &amp;lt;br&amp;gt; [[-9,2],[3,4]]&lt;br /&gt;
|-&lt;br /&gt;
| vsetmaxima || setzt ein Element eines Vektors oder einer Matrix wobei der Index (wie bei Maxima) bei 1 startet. || vsetmaxima([12,13,14],1,35) || [35,13,14]&lt;br /&gt;
|-&lt;br /&gt;
| vinsert || fügt ein Element in einen Vektor an eine gegebene Stelle ein || vinsert([12,13,14],1,25) || [12,25,13,14]&lt;br /&gt;
|-&lt;br /&gt;
| vremove || löscht ein Element eines Vektors [https://www.youtube.com/watch?v=T82YIt3e8ac Video] || vremove([12,13,14],1) || [12,14]&lt;br /&gt;
|-&lt;br /&gt;
| vabs || Berechnet den Betrag eines Vektors || vabs([3,4]) || 5&lt;br /&gt;
|-&lt;br /&gt;
| vin || Berechnet das innere Produkt von 2 Vektoren || vin([1,2,3],[4,5,6]) || 32&lt;br /&gt;
|-&lt;br /&gt;
| vex || Berechnet das ex-Produkt von 2 Vektoren im 3-dimensionalen Raum || vex([1,2,3],[4,5,6]) || [-3,6,-3]&lt;br /&gt;
|-&lt;br /&gt;
| mrows || liefert die Anzahl der Zeilen einer Matrix || mrows([[3,4,4],[3,6,54,34,3,54]]) || 2&lt;br /&gt;
|-&lt;br /&gt;
| mcols || liefert die Anzahl der Spalten einer Matrix || mcols([[3,4,4],[3,6,54,34,3,54]]) || 6 &lt;br /&gt;
|- &lt;br /&gt;
| mprod || Bildet das Matrixprodukt aus zwei Matrizen || mprod([[1,2],[3,4]],[[5,6],[7,8]]) || [[19,22],[43,50]]&lt;br /&gt;
|-&lt;br /&gt;
| mtrans || Bildet die transponierte Matrix || mtrans([[1,2],[3,4]]) || [[1,3],[2,4]]&lt;br /&gt;
|-&lt;br /&gt;
| minv || Bildet die inverse Matrix || minv([[1,2],[3,4]]) || [[-2,1],[3/2,-1/2]]&lt;br /&gt;
|-&lt;br /&gt;
| mdet || Bildet die Determinante einer quadratischen Matrix || mdet([[1,2],[3,4]]) || -2&lt;br /&gt;
|-&lt;br /&gt;
| vindex || vindex(v,x) liefert den Index des Elementes eines Vektors, welcher am nächsten bei x liegt || vindex([10,30,70],40) || 1 &lt;br /&gt;
|-&lt;br /&gt;
| vindexup || vindexup(v,x) liefert den Index des Elementes eines Vektors, welcher größer oder gleich x ist || vindexup([10,30,70],40) || 2 &lt;br /&gt;
|-&lt;br /&gt;
| vindexdown || vindexdown(v,x) liefert den Index des Elementes eines Vektors, welcher kleiner oder gleich x ist || vindexdown([10,30,70],60) || 1&lt;br /&gt;
|-&lt;br /&gt;
| verweis || verweis(M,x,n) liefert den Wert der n-ten Spalte (ohne Angabe von n die 2.Spalte) einer Matrix M wo x dem Wert in der ersten Spalte am nächsten liegt || verweis([[10,33],[20,77],[30,99]],21) || 77&lt;br /&gt;
|-&lt;br /&gt;
| verweisup || verweisup(M,x,n) liefert den Wert der n-ten Spalte (ohne Angabe von n die 2.Spalte) einer Matrix M wo x dem Wert in der ersten Spalte am nächsten liegt || verweisup([[10,33],[20,77],[30,99]],21) || 99&lt;br /&gt;
|-&lt;br /&gt;
| verweisdown || verweisdown(M,x,n) liefert den Wert der n-ten Spalte (ohne Angabe von n die 2.Spalte) einer Matrix M wo x dem Wert in der ersten Spalte am nächsten liegt || verweisdown([[10,33],[20,77],[30,99]],27,1) || 77&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Variable===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| kill || löscht Variable aus dem Variablenspeicher || kill(x,y) &amp;lt;br&amp;gt; kill(allbut(y)) &amp;lt;br&amp;gt; kill(all) || löscht die Variablen x und y &amp;lt;br&amp;gt; löscht alle Variablen mit Ausnahme von y &amp;lt;br&amp;gt; löscht alle Variable&lt;br /&gt;
|-&lt;br /&gt;
| allbut || Liefert eine Liste aller Variablen des Parsers als Menge(Vektor) mit Ausnahme der als Parameter angegebenen Variablen || allbut(x,y) || [a,b,c]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Auswertung und Programmierung===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis || Revision&lt;br /&gt;
|-&lt;br /&gt;
| ev || Auswertung eines Ausdruckes, als Parameter können Gleichungen angegeben werden, welche dann in den Ausdruck eingesetzt werden || ev(x*y,y=4) || x*4&lt;br /&gt;
|-&lt;br /&gt;
| evruntime || Auswertung eines Ausdruckes, als Parameter können Gleichungen angegeben werden, welche dann in den Ausdruck eingesetzt werden. Das &#039;&#039;&#039;Einsetzen erfolgt erst bei der Ergebnisberechnung&#039;&#039;&#039;! || evruntime(x*y,y=4) || x*4&lt;br /&gt;
|-&lt;br /&gt;
| [[nv]] || Auswertung eines Ausdruckes, als Parameter können Gleichungen angegeben werden, welche dann in den Ausdruck eingesetzt werden. Im Gegensatz zu ev werden bestehende Variable nur in den Gleichungen, aber nicht im Ausdruck selbst eingesetzt! || nv(x*y,y=4) || x*4&lt;br /&gt;
|-&lt;br /&gt;
| [[if]] || Bedingungsfunktion if(bedingung,wahrwert,falschwert) || if(4&amp;lt;6,10,12) || 10&lt;br /&gt;
|-&lt;br /&gt;
| [[if|wenn]] || Bedingungsfunktion wenn(bedingung,wahrwert,falschwert). Im Prinzip identisch wie if, jedoch kann if mit Maxima nicht verwendet werden. || wenn(4&amp;lt;6,10,12) || 10&lt;br /&gt;
|-&lt;br /&gt;
| plugin || Ruft die Berechnungsmethode des Plugins, welches als erster Stringparameter angegeben werden muss auf und übergibt die weiteren Parameter an die Berechnungsmethode des Plugins.  || plugin(&amp;quot;plugin1&amp;quot;,3) || führt die Berechnung des Plugins mit dem Namen &amp;quot;plugin1&amp;quot; mit dem Parameter 3 aus. &lt;br /&gt;
|-&lt;br /&gt;
| symbolic || Bei allen Variablen innerhalb von symbolic werden nur nicht-numerische Werte eingesetzt! Wird vor allem im Angabtext bei {= } verwendet || symbolic(x^2+2) || x^2+2&lt;br /&gt;
|-&lt;br /&gt;
| runtime || Bei dieser Funktion wird &#039;&#039;&#039;erst bei der Berechnung der Frageantwort, nach dem Einsetzen der Datensätze&#039;&#039;&#039; das &#039;&#039;&#039;komplette Maxima-Feld&#039;&#039;&#039; mit dem internen &#039;&#039;&#039;Parser&#039;&#039;&#039; durchgerechnet und danach der Parameter-Ausdruck berechnet. Dadurch kann man bei komplizierten Berechnungen eine sehr aufwendige symbolische Berechnung verhindern! || runtime(U) || &lt;br /&gt;
|-&lt;br /&gt;
| dataset || liefert alle Datensätze einer Datensatz-Definition in einem Vektor || dataset(x) || &lt;br /&gt;
|-&lt;br /&gt;
| parse || Wenn der Parameter ein String ist wird dieser String mit dem Parser interpretiert || parse(&amp;quot;2+3&amp;quot;) || 5&lt;br /&gt;
|-&lt;br /&gt;
| foreach || Führt für jedes Element einer Menge eine Berechnung aus und verbindet die Ergebnisse mit der Aggregatfunktion || foreach([2,-3,5,-6],p,cabs(p),&amp;quot;+&amp;quot;) || 16 || 6075 &lt;br /&gt;
|-&lt;br /&gt;
| pvforeachline || Führt für jedes Punktepaar einer Punktemenge eine Berechnung aus und verbindet die Ergebnisse mit der Aggregatfunktion || pvforeachline([[2,3],[4,5],[6,3],[-2,4]],p,pvlineabs(p),&amp;quot;+&amp;quot;) || 10.890684873 || 6075 &lt;br /&gt;
|-&lt;br /&gt;
| forloop || Führt eine Zählschleife aus forloop(Variable,Startwert,Wiederholbedingung,Inkrement,Ausdruck,Aggregatsfunktion). &amp;lt;br&amp;gt;Ohne Aggregatsfunktion wird ein Feld mit den Ergebnissen der Schleifeniterationen geliefert. || forloop(i,1,i&amp;lt;7,i++,i,&amp;quot;+&amp;quot;)&amp;lt;br&amp;gt;forloop(i,1,i&amp;lt;7,i:i+2,i) || 21&amp;lt;br&amp;gt;[1,3,5] || 6077&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Optimierung der Ausdrücke===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| opt   || Ausdruck wird vollständig optimiert, die Funktion wird ausgewertet und ist danach nicht mehr vorhanden. Nur bei der Verwendung des internen Parser sinnvoll. || opt(x+x) || 2*x&lt;br /&gt;
|-&lt;br /&gt;
| ratsimp || Ausdruck wird vollständig optimiert, die Funktion wird ausgewertet und ist danach nicht mehr vorhanden (wie opt, wird jedoch auch von Maxima ausgewertet) || ratsimp(x+x) || 2*x&lt;br /&gt;
|-&lt;br /&gt;
| noopt || Ausdruck wird nicht optimiert, bleibt also so erhalten wie angegeben. Die Funktion an sich geht aber verloren. || noopt(2+3) || 2+3&lt;br /&gt;
|-&lt;br /&gt;
| nopt || Ausdruck wird nicht optimiert, bleibt also so erhalten wie angegeben. Die Funktion bleibt erhalten und wird erst bei der Lösungsberechnung oder durch opt() entfernt. || noopt(2+3) || 2+3&lt;br /&gt;
|-&lt;br /&gt;
| lopt || Im Maximafeld bleibt die Funktion ohne Funktion erhalten, im Ergebnis {=  wird die Funktion entfernt und in der Lösung wird nach dem Einsetzen der Werte der Ausdruck vollständig optimiert. || lopt(x+3)  || lopt(x+3)  &lt;br /&gt;
|-&lt;br /&gt;
| lnoopt || Im Maximafeld bleibt die Funktion ohne Funktion erhalten, im Ergebnis {=  wird die Funktion entfernt und in der Lösung wird nach dem Einsetzen der Werte der Ausdruck nicht mehr optimiert. || lnoopt(x+3+2)  || lnoopt(x+5) &lt;br /&gt;
|-&lt;br /&gt;
| loptnumeric || Im Maximafeld bleibt die Funktion ohne Funktion erhalten, im Ergebnis {=  wird die Funktion entfernt und in der Lösung wird nach dem Einsetzen der Werte der Ausdruck nur numerisch optimiert. || loptnumeric(x+y)  || loptnumeric(x+y)&lt;br /&gt;
|-&lt;br /&gt;
| aopt || Bei Maxima und Lösung geht die Funktion verloren, nur innerhalb von noopt bleibt sie erhalten. Bei der Anzeige führt sie zur Optimierung das Ausdruckes nach Einsetzen der Datensätze. || aopt(x)  || x&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Anzeige und Lösungsberechnung===&lt;br /&gt;
Diese Funktionen haben entweder einen oder zwei Parameter. Der erste Parameter stellt die darzustellende Funktion dar, der zweite Parameter, welcher eine Ganzzahl sein muss, gibt an, wie die Darstellung erfolgen soll. Wird der 2.Parameter weggelassen, so wird er als 0 interpretiert.&lt;br /&gt;
* 0 Bei Berechnungen hat die Funktion keine Wirkung, bleibt aber als Funktion erhalten. Bei Lösung und Anzeige wird die Funktion ausgewertet&lt;br /&gt;
* 1 Wirkt nur bei Lösung, bei Berechnungen bleibt die Funktion erhalten&lt;br /&gt;
* 2 Wirkt nur bei Anzeige, bei Berechnungen bleibt die Funktion erhalten&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| viewpow || Gibt alle Wurzeln als Potenzen aus, und stellt alle Potenzen im Nenner als negativen Exponenten im Zähler dar || viewpow(sqrt(x)) || x^(1/2)&lt;br /&gt;
|-&lt;br /&gt;
| viewsqrt || Gibt Potenzen welche als Wurzel darstellbar sind auch als als Wurzeln mit der Funktion sqrt oder root aus || viewsqrt(x^(1/2)) || sqrt(x)&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Spezialfunktionen LeTTo ===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| points || Berechnet die erreichbare Gesamtpunkteanzahl einer Frage || points() || 2&lt;br /&gt;
|-&lt;br /&gt;
| points || Berechnet die erreichbare Punkteanzahl einer Teilfrage. Als Parameter wird die Fragenummer als Ganzzahl angegeben. || points(0) || 1&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Spezialfunktionen Technik===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| color || Widerstandsfarbcode berechnen.&amp;lt;br&amp;gt;1. Parameter muss ein Double sein&amp;lt;br&amp;gt; 2.Parameter sind die Anzahl der Farbringe&amp;lt;br&amp;gt; 3.Parameter ist der Modus (0..2-St,1..3St,2..Deutsch,3..2StEng,4..3StEng,5..Englisch || color(120,3,2) || braun,rot,braun&lt;br /&gt;
|-&lt;br /&gt;
| parsecolor || Wandelt einen String mit einem Widerstandsfarbcode in einen Double-Wert || parsecolor(&amp;quot;br-rt-br&amp;quot;) || 120&lt;br /&gt;
|-&lt;br /&gt;
| ip || Wandelt eine Long-Zahl in einen String als IP-Adresse um, oder 4 Byte-Zahlen in eine Long Zahl als IP-32-bit-Adresse || ip(1534536453)&amp;lt;br&amp;gt;ip(10,20,30,40) || &amp;quot;91.119.43.5&amp;quot;&amp;lt;br&amp;gt;169090600&lt;br /&gt;
|-&lt;br /&gt;
| parseip || Wandelt einen String mit einer IP-Adresse in einen Long-Wert || parseip(&amp;quot;91.119.43.5&amp;quot;) || 1534536453&lt;br /&gt;
|-&lt;br /&gt;
| e12 || rundet einen Zahlenwert auf den nächstliegenden Wert der [[Normreihe]] E12.&amp;lt;br&amp;gt;Die Rundung erfolgt geometrisch d.h. der Quotient zwischen Normwert und zu rundendem Wert wird minimiert. || e12(700Ohm) || 680Ohm&lt;br /&gt;
|-&lt;br /&gt;
| e12up || rundet einen Zahlenwert auf den nächstgrößerern Wert der [[Normreihe]] E12 || e12(670Ohm) || 680Ohm&lt;br /&gt;
|-&lt;br /&gt;
| e12down || rundet einen Zahlenwert auf den nächstkleineren Wert der [[Normreihe]] E12 || e12(700Ohm) || 680Ohm&lt;br /&gt;
|-&lt;br /&gt;
| ise12 || prüft ob der als Parameter übergebenen Wert ein Wert der [[Normreihe]] E12 ist.|| ise12(680Ohm) || true&lt;br /&gt;
|-&lt;br /&gt;
| norm || rundet einen Zahlenwert auf den nächstliegenden Wert einer gegebenen Wertereihe oder [[Normreihe]].&amp;lt;br&amp;gt;Die Rundung erfolgt geometrisch wenn es sich um eine logarithmisch aufgeteilte Normreihe handelt, oder sonst linear. || norm(700Ohm,E12) || 680Ohm&lt;br /&gt;
|-&lt;br /&gt;
| normup || rundet einen Zahlenwert auf den nächstgrößerern Wert einer gegebenen Wertereihe oder [[Normreihe]]. || normup(730Ohm,[1,3,5,8]) || 800Ohm&lt;br /&gt;
|-&lt;br /&gt;
| normdown || rundet einen Zahlenwert auf den nächstkleineren Wert einer gegebenen Wertereihe oder [[Normreihe]]. || normdown(700Ohm,E12) || 680Ohm&lt;br /&gt;
|-&lt;br /&gt;
| isnorm || prüft ob der als Parameter übergebenen Wert ein Wert einer gegebenen Wertereihe oder [[Normreihe]] ist. || isnorm(680Ohm,E12) || true&lt;br /&gt;
|}&lt;br /&gt;
===Raumzeiger für elektrische Maschinen===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| [[svphtosv]](a,b,c) || berechnet aus den Stranggrößen (a,b,c) einen komplexen Raumzeiger || svphtosv(0.5,0.5,-1) || 1arg60°&lt;br /&gt;
|-&lt;br /&gt;
| [[svsvtoph]](sv)&amp;lt;br&amp;gt;svsvtoph(sv,index) || berechnet aus einem komplexen Rauzeiger die Phasengrößen &amp;lt;br&amp;gt; berechnet aus einem komplexen Rauzeiger die Phasengrößen, index selektiert Stranggröße als Rückgabewert || svsvtoph(1arg60°)&amp;lt;br&amp;gt; svsvtoph(1arg60°,3)|| [0.5,0.5,-1] &amp;lt;br&amp;gt; -1&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=Ergebnisvorschau=&lt;br /&gt;
Aufruf dieses Dialoges über den [[Datei:ClipCapIt-180904-181443.PNG|25px]]-Button aus dem [[Toolbar]].&lt;br /&gt;
&lt;br /&gt;
Die Berechnungen aus dem Maxima-Feld bei der [[Beispiele Bearbeiten|Fragendefinition]] können auch über den [[Datei:ClipCapIt-180904-182120.PNG|25px]]-Button durchgeführt werden. Hier wird die Berechnung durchgeführt und das Lösungsfeld ausgefüllt, aber der Rechengang wird nicht angezeigt. &lt;br /&gt;
:[[Datei:ClipCapIt-180904-181415.PNG|400px]]&lt;br /&gt;
&lt;br /&gt;
Beim Fehlersuchen oder bei komplexen Berechnungen kann es aber hilfreich sein, den ganzen Maxima-Lösungsweg zu sehen, dies ist über den [[Datei:ClipCapIt-180904-181443.PNG|25px]]-Button möchlich.&lt;br /&gt;
&lt;br /&gt;
[[Kategorie:Berechnung]]&lt;/div&gt;</summary>
		<author><name>Ckral</name></author>
	</entry>
	<entry>
		<id>https://wiki.letto.at/wiki/index.php?title=Berechnungen&amp;diff=3238</id>
		<title>Berechnungen</title>
		<link rel="alternate" type="text/html" href="https://wiki.letto.at/wiki/index.php?title=Berechnungen&amp;diff=3238"/>
		<updated>2022-11-10T09:30:14Z</updated>

		<summary type="html">&lt;p&gt;Ckral: Falsches Resultat korrigiert&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Allgemeines =&lt;br /&gt;
Berechnungen werden in mehreren Bereichen der Frageerstellung verwendet und bilden die Basis für [[Fragetypen#Berechnungsfrage|Berechnungsfrage]] und [[Fragetypen#Mehrfachberechnungsfrage|Mehrfachberechnungsfrage]].&lt;br /&gt;
&lt;br /&gt;
Alle Berechnungen unterstützen [[Einheit|Einheiten]] und symbolische Auswertung.&lt;br /&gt;
&lt;br /&gt;
=Grundsätzlicher Aufbau der Ergebnis-Berechnung bei Fragen mit Berechnungen=&lt;br /&gt;
[[Datei:BerechnungSchema.png|mini|hochkant=2.0|Schema der Berechnung]]&lt;br /&gt;
Die Berechnung und die Beurteilung einer Frage teilt sich in 3 grundsätzliche Schritte:&lt;br /&gt;
* Berechnnug der geschlossenen Lösung (Formel) aus den Maxima-Feldern &lt;br /&gt;
* Berechnung des Ergebnisses einer Frage durch Einsetzen der Zahlenwerte aus den Datensätzen in die geschlossene Lösung&lt;br /&gt;
* Beurteilung der Schülereingabe durch Vergleich mit dem Ergebnis&lt;br /&gt;
&lt;br /&gt;
=Konstante=&lt;br /&gt;
Alle Konstante welche in Letto definiert sind beginnen mit einem Prozentzeichen. Verwendet man den Variablennamen ohne Prozenzzeichen, so wird die Konstante wie eine Variable mit dem Wert der Konstanten verwendet.&lt;br /&gt;
&lt;br /&gt;
Liste der definierten Konstanten:&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%&amp;quot; &lt;br /&gt;
| Name || Wert || Beschreibung&lt;br /&gt;
|-&lt;br /&gt;
| %i || i || komplexer Parameter als Lösung der Gleichung x^2=-1&lt;br /&gt;
|-&lt;br /&gt;
| %j || i || komplexer Parameter als Lösung der Gleichung x^2=-1&amp;lt;br&amp;gt;&amp;lt;b&amp;gt;Wichtig:&amp;lt;/b&amp;gt; Wir nur vom Parser unterstützt, nicht von Maxima&lt;br /&gt;
|-&lt;br /&gt;
| %e || 2.718281828459045 || Eulersche Zahl &lt;br /&gt;
|-&lt;br /&gt;
| %pi || 3.141592653589793 || Kreiszahl&lt;br /&gt;
|-&lt;br /&gt;
| %mu0 || magnetische Feldkonstante || 4*%pi*1E-7&#039;Vs/Am&#039;&lt;br /&gt;
|-&lt;br /&gt;
| %m0 || magnetische Feldkonstante (alt, wird bald entfernt werden) || 4*%pi*1E-7&#039;Vs/Am&#039;&lt;br /&gt;
|-&lt;br /&gt;
| %epsilon0 || elektrische Feldkonstante || 8.85418781762039E-12&#039;As/Vm&#039;&lt;br /&gt;
|-&lt;br /&gt;
| %e0 || elektrische Feldkonstante (alt, wird bald entfernt werden) || 8.85418781762039E-12&#039;As/Vm&#039;&lt;br /&gt;
|-&lt;br /&gt;
| %c0 || Lichtgeschwindigkeit || 299792458&#039;m/s&#039;&lt;br /&gt;
|-&lt;br /&gt;
| %Qe || Elementarladung || 1.602176620898E-19As&lt;br /&gt;
|-&lt;br /&gt;
| %g  || Erdbeschleunigung || 9.81&#039;m/s^2&#039;&lt;br /&gt;
|-&lt;br /&gt;
| %NA || Avogadro Konstante || 6.02214085774E23/mol&lt;br /&gt;
|-&lt;br /&gt;
| %k  || Stefan Bolzman Konstante || 1.3806485279E-23&#039;J/K&#039;&lt;br /&gt;
|-&lt;br /&gt;
| %R0 || Universelle Gaskonstante || 8.314459848&#039;J/Kmol&#039;&lt;br /&gt;
|-&lt;br /&gt;
| %h || planksches Wirkungsquantum || 6.6260704081E-34Js&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=Berechnung mit Maxima=&lt;br /&gt;
* Maxima wird &#039;&#039;&#039;nur für symbolische Berechnungen&#039;&#039;&#039; bei der Erstellung von Beispielen verwendet. Hierbei wird, wie schon oberhalb im Schema angegeben, zuerst die Moodle.mac geladen, dann das [[Beispielsammlung Editieren#Maxima-Feld|Maxima-Feld]] berechnet und anschließend die Maxima-Felder aller Teilfragen. Das Ergebnis der Berechnung wird dann als symbolischer Ausdruck im Lösungfeld eingetragen.&lt;br /&gt;
* Da zum Zeitpunkt der &#039;&#039;&#039;Maxima-Berechnung keine Datensätze&#039;&#039;&#039; vorhanden sind, kann keine numerische Berechnung in Maxima durchgeführt werden, welche die [[Datensätze]] benötigt. Dies muss der interne Parser zum Zeitpunkt des Online-Test-Laufes erledigen. Numerische Berechnungen, welche der interne Parser nicht kann können deshalb auch nicht mit Maxima berechnet werden.&lt;br /&gt;
* Da das Lösungsfeld, welches mit Maxima berechnet wird symbolisch ausgewertet wird, können in Maxima sämtliche symbolischen Berechnungsverfahren angewendet werden, welche ein symbolisches Ergebnis liefern und keine numerischen Werte der Datensätze benötigen.&lt;br /&gt;
* Reicht im Maximafeld die Zeilenlänge nicht aus ist es möglich einen defninierten Zeilenumbruch zu realisieren. Schreiben Sie dazu &amp;quot;\&amp;quot; (einfacher Backslash) am Ende der Zeile.  &lt;br /&gt;
* &#039;&#039;&#039;Funktionsdeklarationen&#039;&#039;&#039; wie &#039;&#039;&#039;f(x):=&#039;&#039;&#039;x^2 mit Doppelpunkt-Ist-Gleich sind im Maxima-Feld nur eingeschränkt bis gar &#039;&#039;&#039;nicht verwendbar&#039;&#039;&#039;, da sie vom Parser nicht unterstützt werden.&lt;br /&gt;
* &#039;&#039;&#039;Mengen von Maxima&#039;&#039;&#039; sind in LeTTo n&#039;&#039;&#039;icht verwendbar&#039;&#039;&#039;. LeTTo verwender hierzu eigene Funktionen des Parsers welche mit &amp;quot;set&amp;quot; beginnen und auf Vektoren basieren.&lt;br /&gt;
&lt;br /&gt;
=Berechnung mit dem internen Parser=&lt;br /&gt;
* Der interne Parser kann durch Wahl der Checkbox &amp;quot;Parser&amp;quot; anstatt von Maxima für die Berechnung des Maxima-Feldes verwendet werden. &lt;br /&gt;
* Jedenfalls wird der Parser zur Test-Laufzeit für die Berechnung des Ergebnisses einer Frage aus Lösung und Datensätzen und zum Berechnen der Schülereingabe verwendet.&lt;br /&gt;
&lt;br /&gt;
==Operatoren==&lt;br /&gt;
=== VORSICHT mit MAXIMA ===&lt;br /&gt;
* Einige Operatoren sind in &#039;&#039;&#039;Maxima anders&#039;&#039;&#039;, oder &#039;&#039;&#039;nicht definiert&#039;&#039;&#039;. Möchte man im Maximafeld die Operatoren des Parsers-verwenden, so muss das gesamte Maxima-Feld &#039;&#039;&#039;mit dem Parser gerechnet&#039;&#039;&#039; werden. Man verliert dadurch jedoch die Vorteile der Maxima-Berechnung.&lt;br /&gt;
* Alternativ kann man statt der Operatoren auch &#039;&#039;&#039;Funktionen verwenden&#039;&#039;&#039; (zB: ne() statt != ). Diese werden dann von Maxima zwar nicht ausgewertet, die Berechnung bleibt aber trotzdem korrekt und kann mit Maxima durchgeführt werden.&lt;br /&gt;
* Es gibt einige Funktionen welche in &#039;&#039;&#039;Maxima existieren&#039;&#039;&#039; aber im &#039;&#039;&#039;Parser nicht, oder mit anderem Syntax&#039;&#039;&#039;.&lt;br /&gt;
** Wenn diese von Maxima nicht ausgewertet werden können, da sie &#039;&#039;&#039;Datensätze&#039;&#039;&#039; enthalten welche zu Auswertezeitpunkt von Maxima noch &#039;&#039;&#039;nicht mit Werten belegt&#039;&#039;&#039; sind, &#039;&#039;&#039;dürfen sie in der Berechnung nicht verwendet werden&#039;&#039;&#039;, da der Parser dann damit nichts anfangen kann.&lt;br /&gt;
** Solche Funktionen haben entweder im Parser eine alternative Schreibweise welche auch mit Maxima verwendet werden kann (z.B.: wenn), oder sie können prinzipell nicht verwendet werden. (Für wichtige Funktionsweisen könnte man in zukünftigen Versionen neue Funktionalitäten in den Parser einbauen, die die gewünschte Funktion erfüllen)&lt;br /&gt;
** Ein weiter Möglichkeit für die Verwendung solcher Funktionen ist der Verzicht auf Datensätze in diesen Funktionen, damit diese Funktion beim Auswerten des Maxima-Feldes bereits ausgewertet werden kann und somit der Parser davon nichts mehr sieht.&lt;br /&gt;
** zB:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
if then&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Infix Operatoren===&lt;br /&gt;
====arithmetische Operatoren====&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Operator || Priorität || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| + || 40 || Addition || 4+5 || 9 &lt;br /&gt;
|-&lt;br /&gt;
| - || 40 || Subtraktion || 6-2 || 4&lt;br /&gt;
|-&lt;br /&gt;
| * || 50 || Multiplikation || 4*5 || 20&lt;br /&gt;
|-&lt;br /&gt;
| / || 51 || Division || 20/4 || 5&lt;br /&gt;
|-&lt;br /&gt;
| % || 51 || Divisionsrest || 104%20 || 4&lt;br /&gt;
|-&lt;br /&gt;
| / / || 60 || Parallelschaltung || x / / y || x*y/(x+y)&lt;br /&gt;
|-&lt;br /&gt;
| ^ || 90 || Potenz || 2^3 || 8&lt;br /&gt;
|-&lt;br /&gt;
| .*. || 200 || Operator der intern für eine fehlende bindende Multiplikation verwendet wird || 4x || 4*x&lt;br /&gt;
|-&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
====Bitoperatoren====&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Operator || Priorität || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
||  |  || 20 || Bitweise oder logisches ODER ||| 9|5 &amp;lt;br&amp;gt; true|false || 13 &amp;lt;br&amp;gt;true&lt;br /&gt;
|-&lt;br /&gt;
| or || 20 || Bitweise oder logisches ODER || 9 or 5 || 13&lt;br /&gt;
|-&lt;br /&gt;
| &amp;amp;  || 21 || Bitweise oder logisches UND  || 13&amp;amp;10 || 8&lt;br /&gt;
|-&lt;br /&gt;
| and || 21 || Bitweise oder logisches UND  || 13 and 10 || 8&lt;br /&gt;
|-&lt;br /&gt;
| xor || 22 || Bitweise oder logisches exklusiv oder XOR  || 13 xor 10 || 7&lt;br /&gt;
|-&lt;br /&gt;
| imp || 23 || Bitweise oder logisches impliziert IMP || 13 imp 10 || 8&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;&amp;lt;  || 35 || Bitweise links schieben  || 5&amp;lt;&amp;lt;2 || 20&lt;br /&gt;
|-&lt;br /&gt;
| &amp;gt;&amp;gt;  || 35 || Bitweise rechts schieben || 8&amp;gt;&amp;gt;2 || 2&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
====Vergleichsoperatoren====&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Operator || Priorität || Beschreibung || Beispiel&lt;br /&gt;
|-&lt;br /&gt;
| =  || 3 || Gleichungsoperator || x=y&lt;br /&gt;
|-&lt;br /&gt;
| == || 30 || Gleichungsoperator || x==y&lt;br /&gt;
|-&lt;br /&gt;
| != || 30 || Ungleichungsoperator || x!=y&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt; || 32 || Kleiner || x&amp;lt;y&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;= || 32 || Kleiner gleich || x&amp;lt;=y&lt;br /&gt;
|-&lt;br /&gt;
| &amp;gt; || 32 || größer || x&amp;gt;y&lt;br /&gt;
|-&lt;br /&gt;
| &amp;gt;= || 32 || größer gleich || x&amp;gt;=y&lt;br /&gt;
|}&lt;br /&gt;
====Organisative Operatoren====&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Operator || Priorität || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| , || 0 || Listen-Trennzeichen || x,y ||&lt;br /&gt;
|-&lt;br /&gt;
| $ || 1 || Trennzeichen zwischen mehreren Berechnungen || ||&lt;br /&gt;
|-&lt;br /&gt;
| ; || 1 || Trennzeichen zwischen mehreren Berechnungen || ||&lt;br /&gt;
|-&lt;br /&gt;
| : || 2 || Zuweisung an eine Variablen auf der linken Seite || x:5 || &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Prefix Operatoren===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Operator || Priorität || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| + || 45 || positives Vorzeichen || +5 || 5&lt;br /&gt;
|-&lt;br /&gt;
| - || 45 || negatives Vorzeichen || -(-5) || 5&lt;br /&gt;
|-&lt;br /&gt;
| ~ || 95  || bitweise Inversion einer 64bit-Ganzzahl || ~0x0F0F || 0xFFFFFFFFFFFFF0F0&lt;br /&gt;
|-&lt;br /&gt;
| ! || 120 || logisches NOT || !(3&amp;lt;4) || false&lt;br /&gt;
|-&lt;br /&gt;
| ++ || 130 || Inkrement von Ganzzahlen || ++x || erhöht x um eins und gibt das Ergebnis nach der Erhöhung zurück&lt;br /&gt;
|-&lt;br /&gt;
| -- || 130 || Dekrement von Ganzzahlen || --x || vermindert x um eins und gibt das Ergebnis nach der Verminderung zurück&lt;br /&gt;
|-&lt;br /&gt;
| % || 200 || Prefix für Namen, welche als Konstante definiert sind || %pi || 3.141592653589793&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Suffix Operatoren===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Operator || Priorität || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| ++ || 135 || Inkrement von Ganzzahlen || x++ || erhöht x um eins und gibt den Variablenwert vor der Erhöhung zurück&lt;br /&gt;
|-&lt;br /&gt;
| -- || 135 || Dekrement von Ganzzahlen || x-- || vermindert x um eins und gibt den Variablenwert vor der Verminderung zurück&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==Klammern==&lt;br /&gt;
* () runde Klammern werden für mathematische Ausdrücke zur Klammerung verwendet&lt;br /&gt;
* {} geschwungene Klammer werden im Angabetext für die Namen der Datensätze verwendet&lt;br /&gt;
* [] eckige Klammern werden für Vektoren und Matrizen verwendet&lt;br /&gt;
&lt;br /&gt;
==Funktionen==&lt;br /&gt;
===Funktionen für Ganzzahlen===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| band || bitweises UND || band(4,12) || 4&lt;br /&gt;
|-&lt;br /&gt;
| bor  || bitweises ODER || bor(4,1) || 5&lt;br /&gt;
|-&lt;br /&gt;
| bxor || bitweises EXKLUSIV ODER || band(4,5) || 1&lt;br /&gt;
|-&lt;br /&gt;
| bimp || bitweises Parameter1 impliziert Parameter2 || bimp(13,10) || 8&lt;br /&gt;
|-&lt;br /&gt;
| binv || bitweises NICHT mit 8 bit || binv(0x0F) || 0xF0&lt;br /&gt;
|-&lt;br /&gt;
| shl || Schiebe Ganzzahl bitweise nach links || shl(8,2) || 32&lt;br /&gt;
|-&lt;br /&gt;
| shr || Schiebe Ganzzahl bitweise nach rechts || shr(8,2) || 2&lt;br /&gt;
|-&lt;br /&gt;
| div || Ganzzahldivision, Ergebnis wird abgeschnitten || div(5,2) || 2&lt;br /&gt;
|-&lt;br /&gt;
| inv8  || bitweise Invertieren und die letzten 8 Bit bestimmen  || inv8(0b1001) || 0b11110110&lt;br /&gt;
|-&lt;br /&gt;
| inv16 || bitweise Invertieren und die letzten 16 Bit bestimmen || inv16(0xF0)  || 0xFF0F&lt;br /&gt;
|-&lt;br /&gt;
| inv32 || bitweise Invertieren und die letzten 32 Bit bestimmen || inv32(0xF0)  || 0bFFFFFF0F&lt;br /&gt;
|-&lt;br /&gt;
| inv64 || bitweise Invertieren und die letzten 64 Bit bestimmen || inv64(0xF0)  || 0bFFFFFFFFFFFFFF0F&lt;br /&gt;
|-&lt;br /&gt;
| byte  || Zahl in eine Ganzzahl wandeln und die letzten 8bit der Zahl Abschneiden, Einheit geht verloren  || byte(34.2) || 34&lt;br /&gt;
|-&lt;br /&gt;
| word  || Zahl in eine Ganzzahl wandeln und die letzten 16bit der Zahl Abschneiden, Einheit geht verloren || word(34.2) || 34&lt;br /&gt;
|-&lt;br /&gt;
| int   || Zahl in eine Ganzzahl wandeln und die letzten 32bit der Zahl Abschneiden, Einheit geht verloren || int(34.2) || 34&lt;br /&gt;
|-&lt;br /&gt;
| long  || Zahl in eine Ganzzahl wandeln , Einheit geht verloren || long(34.2) || 34&lt;br /&gt;
|-&lt;br /&gt;
| [[parity]]  || Paritätsberechnung : parity(Parität,Codewortlänge,Datenwort[,Datenwort,....]) || parity(even,7,&amp;quot;xy&amp;quot;) || &lt;br /&gt;
|-&lt;br /&gt;
| [[blockparity]]  || Kreuz oder Blockparität : blockparity(Parität,Codewortlänge,Codewortanzahl,Datenwort[,Datenwort,....]) || blockparity(even,7,3,&amp;quot;abc&amp;quot;) || &lt;br /&gt;
|-&lt;br /&gt;
| [[bcd]]  || Wandelt in eine Long-Zahl in ein Feld aus BCD-kodierten Zahlen um || bcd(124) || [1,2,4]&lt;br /&gt;
|-&lt;br /&gt;
| [[code]] || Code aus mehreren Codeworten zusammensetzen : code(Codewortlänge,Datenwort[,Datenwort,....]) || code(5,4,3,5) || 0b1000001100101&lt;br /&gt;
|-&lt;br /&gt;
| [[hamming]] || Bestimmt den Hamming-Abstand von mehreren Codeworten || hamming(1,2,4,8,16) || 2&lt;br /&gt;
|-&lt;br /&gt;
| [[komplement]] ||  Bildet das Zweierkomplement mit einer negativen Zahl mit einer bestimmten Bitanzahl, fehlt die Bitanzahl, so wird ein 32Bit-2er-komplement gebildet || komplement(-5,8) || 0b11111011&lt;br /&gt;
|-&lt;br /&gt;
| [[bitstream]] || Erzeugt aus einer Ganzzahl einen Bitstrom als String mit einer definierten Anzahl von Bit (MSB werden nötigenfalls mit 0 gefüllt) : bitstream(Daten,Bitanzahl) || bitstream(0x184,12) || &amp;quot;000110000100&amp;quot;&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Funktionen für rationale und Ganzzahlen===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| kgV || berechnet das kleinste gemeinsame Vielfache von mehreren Zahlen || kgV(3,10) || 30&lt;br /&gt;
|-&lt;br /&gt;
| ggT || berechnet den größten gemeinsamen Teiler von mehreren Zahlen || ggT(12,10) || 2&lt;br /&gt;
|- &lt;br /&gt;
| isprim || prüft ob die angegebene Zahl eine Primzahl ist || isprim(13) || true&lt;br /&gt;
|-&lt;br /&gt;
| prims || zerlegt eine Ganzzahl in ihre Primfaktoren || prims(12) || [2,2,3]&lt;br /&gt;
|-&lt;br /&gt;
| defracmix || zerlegt eine rationale Zahl in einen gemischten Bruch aus ganzzahligem Summanden, Zähler und Nenner als Menge&amp;lt;br&amp;gt;Die erhaltene Menge kann mit dem Format-Modfier &#039;&#039;&#039;frac&#039;&#039;&#039; als gemischter Bruch dargestellt werden (siehe [[Zahlendarstellung]]) || defracmix(14/12)&amp;lt;br&amp;gt;defracmix(-15/12)&amp;lt;br&amp;gt;defracmix(3/12) || [1,2/12]&amp;lt;br&amp;gt;[-1,3,12]&amp;lt;br&amp;gt;[0,3,12] &lt;br /&gt;
|-&lt;br /&gt;
| defrac || zerlegt eine rationale Zahl in Zähler und Nenner als Menge &amp;lt;br&amp;gt;Die erhaltene Menge kann mit dem Format-Modfier &#039;&#039;&#039;frac&#039;&#039;&#039; als gemischter Bruch dargestellt werden || defrac(14/12) || [13,12]&lt;br /&gt;
|-&lt;br /&gt;
| frac || erzeugt aus einer Menge aus 2 oder 3 Elementen (von defrac) eine rationale Zahl || frac([3,7])&amp;lt;br&amp;gt;frac([1,2,3]) || 3/7 &amp;lt;br&amp;gt; 5/3&lt;br /&gt;
|-&lt;br /&gt;
| mod || Mathematische Implementierung von [https://de.wikipedia.org/wiki/Division_mit_Rest#Modulo modulo]: Divisionsrest einer Division mit ganzzahligem Ergebnis || mod(5,2) &amp;lt;br&amp;gt; mod(6.2,2.5) &amp;lt;br&amp;gt; mod(-4,3) || 1&amp;lt;br&amp;gt;1.2 &amp;lt;br&amp;gt; 2&lt;br /&gt;
|-&lt;br /&gt;
| mod2 || Symmetrische Implementierung von [https://de.wikipedia.org/wiki/Division_mit_Rest#Modulo modulo]: Divisionsrest einer Division mit ganzzahligem Ergebnis &amp;lt;br&amp;gt;Der Unterschied zu mod liegt in der Behandlung von negativen Zahlen des ersten Arguments &amp;lt;br&amp;gt;Siehe auch Divisionsrest des Parser-Operators % [[Berechnungen#arithmetische_Operatoren]] || mod2(5,2) &amp;lt;br&amp;gt; mod2(6.2,2.5) &amp;lt;br&amp;gt; mod2(-4,3) || 1&amp;lt;br&amp;gt;1.2 &amp;lt;br&amp;gt; -1&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===boolsche Funktionen===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| eq || gleich || eq(4,4) || true&lt;br /&gt;
|-&lt;br /&gt;
| eqruntime || symbolischer Vergleich, welcher &#039;&#039;&#039;symbolisch erst bei der Ergebnisberechnung&#039;&#039;&#039; ausgeführt wird. Muss verwendet werden, wenn bei Vergleichen symbolische Antworten von Schülern (Q0,Q1,...) verwendet werden.  || eqruntime(x+3*y,3*y+x) || true&lt;br /&gt;
|-&lt;br /&gt;
| ne || ungleich || ne(6,4) || true&lt;br /&gt;
|-&lt;br /&gt;
| ge || größer gleich || ge(6,4) || true&lt;br /&gt;
|-&lt;br /&gt;
| le || kleiner gleich || le(6,4) || false&lt;br /&gt;
|-&lt;br /&gt;
| gt || größer || gt(6,4) || true&lt;br /&gt;
|-&lt;br /&gt;
| lt || kleiner || lt(6,4) || false&lt;br /&gt;
|-&lt;br /&gt;
| between || prüft ob Parameter1 kleiner als Parameter2 und Parameter2 kleiner als Parameter 3 || between(3,4,5) || true&lt;br /&gt;
|-&lt;br /&gt;
| land || logisches UND || land(a&amp;lt;b,b&amp;lt;c) || &lt;br /&gt;
|-&lt;br /&gt;
| lor  || logisches ODER || lor(a&amp;lt;b,b&amp;lt;c) || &lt;br /&gt;
|-&lt;br /&gt;
| not  || logisches NICHT. Vorsicht ein symbolisches Ergebnis von Maxima liefert not als Prefix-Operator, welcher vom Parser nicht unterstützt wird ( Verwende statt dessen &#039;&#039;&#039;lnot&#039;&#039;&#039; ) || not(a&amp;lt;b) || &lt;br /&gt;
|-&lt;br /&gt;
| lnot  || logisches NICHT, wie not jedoch wird es von Maxima nicht ausgewertet || lnot(a&amp;lt;b) || &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===arithmetische Funktionen===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| double || Zahl in eine Gleitkommazahl umwandeln, die Einheit geht dabei verloren || double(3.4V) || 3.4&lt;br /&gt;
|-&lt;br /&gt;
| numeric || verwirft die Einheit, wenn eine vorhanden ist und liefert nur den Zahlenwert || numeric(2.3mA) &amp;lt;br&amp;gt; numeric(5%)|| 0.0023 &amp;lt;br&amp;gt; 5&lt;br /&gt;
|-&lt;br /&gt;
| unit || gibt die SI-Einheit mit dem Zahlenwert 1 zurück || unit(3.1kA) &amp;lt;br&amp;gt; unit(5%) || 1A &amp;lt;br&amp;gt; 1%&lt;br /&gt;
|-&lt;br /&gt;
| cround  || Rundet die Zahl kaufmännisch, der zweite Parameter gibt die Anzahl der Kommastellen an, ohne 2.Parameter wird auf Ganzzahlen gerundet, bei komplexen Zahlen wird Betrag und Winkel in Grad gerundet. || cround(23.535,2)&amp;lt;br&amp;gt;cround(2.435arg34.5364°,1) || 23.54&amp;lt;br&amp;gt;2.4arg34.5°&lt;br /&gt;
|-&lt;br /&gt;
| ccround  || Rundet die Zahl kaufmännisch, der zweite Parameter gibt die Anzahl der Kommastellen an, bei komplexe Zahlen wird Real und Imaginärteil gerundet. || ccround(2.4534+5.645*%i,2) || 2.45+5.65i&lt;br /&gt;
|-&lt;br /&gt;
| round  || Rundet die Zahl kaufmännisch, aus Kompatibilitätsgründen zu Maxima hat round nur einen Parameter || round(23.535) || 24&lt;br /&gt;
|-&lt;br /&gt;
| ground || Rundet die Zahl auf die im zweiten Parameter angegebenen gültigen Ziffern || ground(2453.43,2) || 2500&lt;br /&gt;
|-&lt;br /&gt;
| floor  || Rundet auf die größte ganze Zahl, welche kleiner oder gleich x ist || floor(24.5) || 24&lt;br /&gt;
|-&lt;br /&gt;
| trunc  || Schneidet die Zahl nach dem Komma ab || trunc(24.5) || 24&lt;br /&gt;
|-&lt;br /&gt;
| ceiling || ceiling(x) Rundet auf die kleinste ganze Zahl, welche größer oder gleich x ist || ceiling(13.2) || 14&lt;br /&gt;
|-&lt;br /&gt;
| pow || Potenzfunktion || pow(2,3) || 8&lt;br /&gt;
|-&lt;br /&gt;
| par || Parallelschaltung von Widerständen || par(x,y) || x*y/(x+y)&lt;br /&gt;
|-&lt;br /&gt;
| min  || Minimum von mehrere Werten suchen || min(3,5,1) || 1&lt;br /&gt;
|-&lt;br /&gt;
| max  || Maximum von mehreren Werten suchen || max(3,5,1) ||  5&lt;br /&gt;
|-&lt;br /&gt;
| random  || Zufallszahl aus einem definierten Zahlenbereich random(minimal,maximal)&amp;lt;br&amp;gt;VORSICHT! Die Zufallszahl wird bei jedem Aufruf neu berechnet, weshalb sich der Wert bei jedem Anzeigevorgang einer Frage ändert. Sollte sich der berechnete Wert für eine Schülerangabe zwischen Fragestellung und Ergebniskontrolle nicht ändern dürfen (ist der Normalfall) muss man einen &#039;&#039;&#039;Datensatz statt einer Zufallszahl&#039;&#039;&#039; verwenden! &amp;lt;br&amp;gt; Zufallszahlen haben in der Ergebnisberechnung keinen Sinn, und sollten maximal für angezeigte zufällige Werte verwendet werden! || random(2,8) ||  3.4532&lt;br /&gt;
|-&lt;br /&gt;
| randomC  || komplexe Zufallszahl aus einem definierten Zahlenbereich für den Betrag&amp;lt;br&amp;gt;VORSICHT! Die Zufallszahl wird bei jedem Aufruf neu berechnet!  || randomC(2,8) ||  3.4532arg40.3°&lt;br /&gt;
|-&lt;br /&gt;
| signum  || Liefert das Vorzeichen einer Zahl (-1,0,1). Bei einer komplexen Zahl das Vorzeichen des Realteils. || signum(-4) || -1&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Maxima-basierte Funktionen ===&lt;br /&gt;
* Diese Funktionen funktionieren nur wenn Maxima installiert ist und werden immer an Maxima gesendet, auch wenn der interne Parser aktiviert ist.&lt;br /&gt;
* Weiters werden sie bei der Ausgabe als TeX-Formel auch korrekt mit LaTeX gesetzt.&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| integrate || Berechnet das unbestimmte oder bestimmte Integral einer Funktion. || integrate(x^2,x) &amp;lt;br&amp;gt; integrate(x^2,x,0,2) || x^3/3 &amp;lt;br&amp;gt; 8/3  &lt;br /&gt;
|-&lt;br /&gt;
| diff || Berechnet die Ableitung einer Funktion.  || diff(x^2,x)&amp;lt;br&amp;gt;diff(3*x^2,x,2) || x &amp;lt;br&amp;gt; 6&lt;br /&gt;
|-&lt;br /&gt;
| tomaxima || Führt die Berechnung aller Parameter von links nach rechts hintereinander mit Maxima aus. Das Ergebnis ist dann das Ergebnis des letzten Parameters. || tomaxima(y:x^2,y+2) || x^2+2&lt;br /&gt;
|-&lt;br /&gt;
| laplace || Bestimmt die Laplace-Transformierte einer Funktion. || laplace(sin(t),t,s) || 1/(1+s^2)&lt;br /&gt;
|-&lt;br /&gt;
| ilt || Bestimmt die inverse Laplace-Transformierte eine Laplace-Funktion || ilt(1/(1+s),s,t) || e^(-t)&lt;br /&gt;
|-&lt;br /&gt;
| sum || Summenbildung || sum(1/k,k,1,2) || 3/2&lt;br /&gt;
|-&lt;br /&gt;
| product || Produktbildung || product(1/k,k,1,3) || 1/6&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===erweiterte arithmetische Funktionen===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| sigma || Sprungfunktion: sigma(x) liefert 0 für x&amp;lt;0 und 1 für x&amp;gt;=0 || sigma(243.3) || 1&lt;br /&gt;
|-&lt;br /&gt;
| pulse || Rechteckfunktion: &amp;lt;br&amp;gt;pulse(x,x0) ist gleich 1 für x0 &amp;lt; x &amp;lt; x0 + 1, sonst 0&amp;lt;br&amp;gt;pulse(x,x0,L) ist gleich 1 für x0 &amp;lt; x &amp;lt; x0 + L, sonst 0&amp;lt;br&amp;gt;[[Datei:pulse.png|300px]] || pulse(x,2,4) || [[Datei:pulse_x_2_4.png|100px]]&lt;br /&gt;
|-&lt;br /&gt;
| interpol || Interpolationsfunktion zwischen mehreren Stützpunkten in einem Koordinatensystem. &amp;lt;br&amp;gt; interpol(WerteX,WerteY,x) || interpol([0,1,2],[0,3,3],1.5) || 3&lt;br /&gt;
|-&lt;br /&gt;
| periodic || Erzeugt aus einer beliebigen Funktion zwischen 0 und Periodendauer eine periodische Funktion &amp;lt;br&amp;gt; periodic(Variable,Periodendauer,Funktion)&amp;lt;br&amp;gt; periodic(Variable,Periodendauer,Funktionsperiodendauer,Funktion) || ch1(t):periodic(t,5ms,2&#039;Vms-2&#039;*t^2) &amp;lt;br&amp;gt; ch1(t):periodic(t,5ms,1,2V*t^2) || :[[Datei:ClipCapIt-190318-113524.PNG|100px]] &amp;lt;br&amp;gt; :[[Datei:ClipCapIt-190318-113644.PNG|100px]]&lt;br /&gt;
|-&lt;br /&gt;
| numint || numerische Integration &amp;lt;br&amp;gt; numint(untereGrenze,obereGrenze,funktion,Variable)&amp;lt;br&amp;gt; numint(untereGrenze,obereGrenze,funktion,Variable,punkteAnzahl) || numint(0,2pi,sin(t),t) || 0&lt;br /&gt;
|-&lt;br /&gt;
| numdif || numerisches Differenzieren einer Funktion &amp;quot;funktion&amp;quot; nach einer Variablen &amp;quot;Variable&amp;quot; an der Stelle &amp;quot;position&amp;quot; mit einer Differenz der Variablen von &amp;quot;differenz&amp;quot; &amp;lt;br&amp;gt; numdif(position,funktion,Variable,differenz) || numdif(0,sin(t),t,0.01) || 1&lt;br /&gt;
|-&lt;br /&gt;
| solve || löst eine Gleichung oder ein Gleichungssystem nach einer oder mehrerer Variablen || solve([2*x+y=3,x-y=0],[x,y]) || [ [ x=1,y=1 ] ]&lt;br /&gt;
|-&lt;br /&gt;
| solvevalue || löst eine Gleichung oder ein Gleichungssystem nach einer Variablen und liefert genau die erste Lösung wenn sie numerisch berechenbar ist || solvevalue([ 2*x+y=3,x-y=0 ],[ x,y ],x)  || 1&lt;br /&gt;
|-&lt;br /&gt;
| newton || Bestimmt eine Nullstelle einer Funktion nach dem Newton-Verfahren. Der erste Parameter ist ein Ausdruck in einer Variablen, der zweite Parameter ist der Startwert. || newton(x^2-4,4) || 2&lt;br /&gt;
|-&lt;br /&gt;
| cnewton || Bestimmt eine komplexe Nullstelle einer Funktion nach dem Newton-Verfahren. Der erste Parameter ist ein Ausdruck in einer Variablen, der zweite Parameter ist der komplexe Startwert. || newton(x^2+4,4) || 2*%i&lt;br /&gt;
|-&lt;br /&gt;
| newtonall || Bestimmt alle Nullstellen einer Funktion mit einem Betrag des Funktionsparameters kleiner als ein definierter Wert nach dem Newton-Verfahren. Der erste Parameter ist ein Ausdruck in einer Variablen, der zweite Parameter ist der maximale Betrag des Funktionsparameters. Das Ergebnis ist immer ein Vektor mit den nach aufsteigendem Funktionswert sortierten Nullstellen. || newton(x^2-4,4) || [-2,2]&lt;br /&gt;
|-&lt;br /&gt;
| cnewtonall || Bestimmt alle komplexen Nullstellen einer Funktion mit einem Betrag des Funktionsparameters kleiner als ein definierter Wert nach dem Newton-Verfahren. Der erste Parameter ist ein Ausdruck in einer Variablen, der zweite Parameter ist der maximale Betrag des Funktionsparameters. Das Ergebnis ist immer ein Vektor mit den Nullstellen. || newton(x^2+4,4) || [-2*%i,2*%i]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Stringfunktionen===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| dechex || Zahl in eine Ganzzahl wandeln und als Hexadezimal-String ausgeben || dexhex(12) || &amp;quot;0xC&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| chr || Bestimmt die Zeichen mit dem ASC-II-Code der Long-Parameter und setzt daraus einen String zusammen. || chr(0x65,105) || &amp;quot;ei&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| val || Bestimmt den ASC-II-Code des ersten Zeichens welches als String-Parameter übergeben wurde.|| val(&amp;quot;a&amp;quot;) || 97&lt;br /&gt;
|-&lt;br /&gt;
| strcat || Fügt mehrere Strings zusammen.|| strcat(&amp;quot;a&amp;quot;,&amp;quot;b&amp;quot;) || &amp;quot;ab&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===trigonometrische Funktionen===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| sin || Sinus || sin(%pi/2) || 1&lt;br /&gt;
|-&lt;br /&gt;
| cos || Cosinus || cos(%pi/2) || 0&lt;br /&gt;
|-&lt;br /&gt;
| tan || Tangens || tan(%pi/4) || 1&lt;br /&gt;
|-&lt;br /&gt;
| asin || Arcus-Sinus || asin(1) || %pi/2&lt;br /&gt;
|-&lt;br /&gt;
| arcsin || Arcus-Sinus || asin(1) || %pi/2&lt;br /&gt;
|-&lt;br /&gt;
| acos || Arcus-Cosinus || acos(1) || 0&lt;br /&gt;
|-&lt;br /&gt;
| arccos || Arcus-Cosinus || acos(1) || 0&lt;br /&gt;
|-&lt;br /&gt;
| atan || Arcus-Tangens || atan(1) || %pi/4&lt;br /&gt;
|-&lt;br /&gt;
| arctan || Arcus-Tangens || arctan(1) || %pi/4&lt;br /&gt;
|-&lt;br /&gt;
| atan2 || Arcus-Tangens atan2(y,x)=arctan(y/x) || atan2(-2,-2) || -%pi*3/4&lt;br /&gt;
|-&lt;br /&gt;
| arctan2 || Arcus-Tangens arctan2(y,x)=arctan(y/x) || arctan2(-2,-2) || -%pi*3/4&lt;br /&gt;
|-&lt;br /&gt;
| sinh || Sinus-Hyperbolicus || sinh(1) || 1.1752012&lt;br /&gt;
|-&lt;br /&gt;
| cosh || Cosinus-Hyperbolicus || cosh(1) || 1.5430806&lt;br /&gt;
|-&lt;br /&gt;
| tanh || Tangens-Hyperbolicus || tanh(1) || 0.7615941&lt;br /&gt;
|-&lt;br /&gt;
| coth || Cotangens-Hyperbolicus || coth(1) || 1.313035&lt;br /&gt;
|-&lt;br /&gt;
| asinh || Area-Sinus-Hyperbolicus || asinh(1.1752012) || 1&lt;br /&gt;
|-&lt;br /&gt;
| acosh || Area-Cosinus-Hyperbolicus || acosh(1.5430806) || 1&lt;br /&gt;
|-&lt;br /&gt;
| atanh || Area-Tangens-Hyperbolicus || atanh(0.7615941) || 1&lt;br /&gt;
|-&lt;br /&gt;
| acoth || Area-Cotangens-Hyperbolicus || acoth(1.313035) || 1&lt;br /&gt;
|-&lt;br /&gt;
| [[csin]] || Erzeugt aus einer komplexen Zahl (Effektivwert) und einer Frequenz einen Sinusfunktion in der Zeit || csin(U) || sqrt(2)*cabs(U)*sin(2*pi*f*t+carg(U))&lt;br /&gt;
|-&lt;br /&gt;
| [[quadrant]] || Liefert den Quadranten eines Winkels mit einer Toleranzangabe. || quadrant(20°,5°) || 1&lt;br /&gt;
|-&lt;br /&gt;
| argnorm || Wandelt einen Winkel auf den Bereich von 0°-360° || argnorm(-50°) || 310°&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Exponentialfunktionen===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| pow || Potenzfunktion || pow(2,3) || 8&lt;br /&gt;
|-&lt;br /&gt;
| exp|| Exponentialfunktion || exp(1) || %e&lt;br /&gt;
|-&lt;br /&gt;
| log || natürlicher Logarythmus || log(%e) || 1&lt;br /&gt;
|-&lt;br /&gt;
| ln || natürlicher Logarythmus || ln(%e) || 1&lt;br /&gt;
|-&lt;br /&gt;
| log10 || Logarythmus zur Basis 10 || log10(100) || 2&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===komplexe Zahlen===&lt;br /&gt;
Die Funktionen zu komplexen Zahlen werden (anders als in Maxima) nur ausgewertet wenn das Ergebnis numerisch berechenbar ist, ansonsten bleibt die Funktion symbolisch erhalten.&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| abs || Liefert den Absolutbetrag einer komplexen Zahl || abs(3+4*%i) || 5&lt;br /&gt;
|-&lt;br /&gt;
| cabs || Liefert den Absolutbetrag einer komplexen Zahl || cabs(3+4*%i) || 5&lt;br /&gt;
|-&lt;br /&gt;
| carg || Liefert das Argument einer komplexen Zahl || carg(4*%e^(3*%i)) || 3&lt;br /&gt;
|-&lt;br /&gt;
| realpart || Liefert den Realteil einer komplexen Zahl || realpart(3+4*%i) || 3&lt;br /&gt;
|-&lt;br /&gt;
| imagpart || Liefert den Imaginärteil einer komplexen Zahl || imagpart(3+4*%i) || 4&lt;br /&gt;
|-&lt;br /&gt;
| conjugate || Liefert die konjugiert komplexe Zahl einer komplexen Zahl || conjugate(3+4*%i) || 3-4*%i&lt;br /&gt;
|-&lt;br /&gt;
| rectform || hat in LeTTo keine Relevanz, da die Zahlendarstellung bei der Ausgabe definiert wird wie zB.: {=3arg2;karti} ||  || &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Polynome===&lt;br /&gt;
Polynome mit reellen Koeffizienten in einer Variablen können mit folgenden Funktionen erstellt und verarbeitet werden. Für die interne Verarbeitung wird hierzu ein eigener Polynom-Datentyp verwendet.&lt;br /&gt;
&lt;br /&gt;
siehe auch [[Zahlendarstellung#f.C3.BCr_Polynome_und_gebrochen_rationale_Funktionen_mit_numerischen_Koeffizienten_in_einer_Variablen_k.C3.B6nnen_folgende_Parameter_angegeben_werden|Zahlendarstellung Polynome]]&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| polynom(p) || Erzeugt aus einem Ausdruck welcher genau eine Variable besitzen muss ein Polynom in dieser Variablen || polynom(1+x) || 1+x²&lt;br /&gt;
|-&lt;br /&gt;
| polynom(p,var) || Erzeugt aus einem Ausdruck ein Polynom in einer definierten Variablen. Ist p ein gültiger Polynom-Ausdruck mit reelen Koeffizienten in der Variablen var wird das Polynom erzeugt, ansonsten bleibt die Funktion erhalten. || polynom(1+a*x^2,x) &amp;lt;br&amp;gt; polynom(1+2*x^2,x) || polynom(1+a*x^2,x)&amp;lt;br&amp;gt;1+2*x²&lt;br /&gt;
|-&lt;br /&gt;
| polynom(p,var,&amp;quot;einheit&amp;quot;) || Erzeugt ein Polynom in der Variablen var, mit der Einheit &amp;quot;einheit&amp;quot; für die Polynomvariable. Die Einheit muss als String in Doppelhochkomma angegeben werden! Das Polynom p muss entweder ohne Einheiten oder mit den korrekten Einheiten angegeben werden! || polynom(1+2*p^2,p,&amp;quot;s-1&amp;quot;) &amp;lt;br&amp;gt; polynom(1+2&#039;s2&#039;*p^2,p,&amp;quot;s-1&amp;quot;) || 1+2&#039;s2&#039;*p^2 &amp;lt;br&amp;gt;1+2&#039;s2&#039;*p^2&lt;br /&gt;
|-&lt;br /&gt;
| factfrompolynom(p) || Erzeugt aus einem Polynom einen Vektor mit den Polynomfaktoren. Erste Zeile Zählerfaktoren, zweite Zeile Nennerfaktoren, dritte Zeile Polynomvariable, vierte Zeile Einheit der Polynomvariable|| factfrompolynom(polynom((2+x)/(1+2*x))) || [[1,0.5],[0.5,1],&amp;quot;x&amp;quot;,&amp;quot;&amp;quot;]&lt;br /&gt;
|-&lt;br /&gt;
| polynomfromfact(f) || Erzeugt aus einer Faktoren-Liste, welche mit factfrompolynom erstellt wurde ein neues Polynom || polynomfromfact([[1,0.5],[0.5,1],&amp;quot;x&amp;quot;,&amp;quot;&amp;quot;]) || (2+x)/(1+2*x)&lt;br /&gt;
|- &lt;br /&gt;
| polynomfromfact(zähler,nenner,var,einheit) || Erzeugt aus Zähler und Nenner Faktor-Vektoren ein neues Polynom || polynomfromfact([1,0.5],[0.5,1],x,&amp;quot;&amp;quot;) || (2+x)/(1+2*x)&lt;br /&gt;
|- &lt;br /&gt;
| nullfrompolynom(p) || Erzeugt aus einem Polynom einen Vektor mit den PolynomNullstellen und Polstellen. Erste Zeile gemeinsamer Faktor, zweite Zeile Nullstellen, dritte Zeile Polstellen, vierte Zeile Polynomvariable|| nullfrompolynom(polynom((2+x)/(1+2*x))) || [0.5,[-2],[-0.5],x]&lt;br /&gt;
|-&lt;br /&gt;
| polynomfromnull(n) || Erzeugt aus einer Nullstellen-Polstellen-Liste, welche mit nullfrompolynom erstellt wurde ein neues Polynom || polynomfromnull([0.5,[-2],[-0.5],x]) || (2+x)/(1+2*x)&lt;br /&gt;
|- &lt;br /&gt;
| polynomfromnull(faktor,nullstellen,polstellen,var) || Erzeugt aus einer Faktor-Vektoren ein neues Polynom || polynomfromnull(0.5,[-2],[-0.5],x) || (2+x)/(1+2*x)&lt;br /&gt;
|-  &lt;br /&gt;
| polynomk(p) || Bestimmt den Faktor, welcher vom Polynom herausgehoben werden kann, so dass die höchste Potenz der Polynomvariable den Multiplikator Eins hat. || polynomk(polynom((2+x)/(1+2*x))) || 0.5&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===statistische Funktionen===&lt;br /&gt;
Die Funktionen funktionieren nur ohne Einheiten.&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| factorial || Liefert die Fakultät einer positiven ganzen Zahl || factorial(5) || 120&lt;br /&gt;
|-&lt;br /&gt;
| binomial || Liefert den Binomialkoeffizienten von zwei positiven ganzen Zahlen || binomial(5,2) || 10&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Mengen-Funktionen===&lt;br /&gt;
Mengen werden intern als Vektoren verarbeitet und sind deshalb auch direkt durch Vektoren ersetzbar. Auch alle Vektor-Funktionen sind somit auch auf Mengen anwendbar und umgekehrt.&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis || ab Rev&lt;br /&gt;
|-&lt;br /&gt;
| setget || Liefert ein Element einer Menge oder einer Matrix (Menge von Mengen) || setget([12,13,14],1) &amp;lt;br&amp;gt; setget(matrix([9,2],[3,4]),0,1) || 13 &amp;lt;br&amp;gt; 2 &lt;br /&gt;
|-&lt;br /&gt;
| setset || setzt ein Element einer Menge oder einer Matrix (Menge von Mengen) || setset([12,13,14],1,35) &amp;lt;br&amp;gt; setset(matrix([9,2],[3,4]),0,0,-9) || [12,35,14] &amp;lt;br&amp;gt; [[-9,2],[3,4]]&lt;br /&gt;
|-&lt;br /&gt;
| setlength || liefert die Anzahl der Elemente einer Liste, Menge oder eines Vektors || setlength([3,6,54,34,3,54]) || 6 &lt;br /&gt;
|- &lt;br /&gt;
| setinsert || fügt ein Element in eine Menge an eine gegebene Stelle ein || setinsert([12,13,14],1,25) || [12,25,13,14]&lt;br /&gt;
|-&lt;br /&gt;
| setremove || löscht ein Element einer Menge || setremove([12,13,14],1) || [12,14]&lt;br /&gt;
|-&lt;br /&gt;
| setapply || wendet einen Ausdruck oder Funktion auf alle Elemente einer Menge an || setapply(y,[1,2,3],y*2) || [2,4,6] || 5965&lt;br /&gt;
|-&lt;br /&gt;
| setmedian || Liefert den Median einer Menge || setmedian([4,3,1,5,6]) || 4&lt;br /&gt;
|-&lt;br /&gt;
| setboxplot || Liefert die Werte des Boxplot einer Menge (Minimum, unteres Quartil, Median, oberes Quartil, Maximum) als Vektor verwendbar für das [[Plot#definierte_Zeichenelemente|Plot-Plugin]] || setboxplot([1,2,3,10,8,9]) || [1,2,5.5,9,10]&lt;br /&gt;
|-&lt;br /&gt;
| setsort || Sortiert die Elemente einer Menge aufsteigend || setsort([3,-3,2,0,5,2]) || [-3,0,2,2,3,5]&lt;br /&gt;
|-&lt;br /&gt;
| setsortnd || Sortiert die Elemente einer Menge aufsteigend und entfernt alle mehrfach vorkommenden Elemente || setsortnd([31,-3,2,31,0,5,2]) || [-3,0,2,5,31]&lt;br /&gt;
|-&lt;br /&gt;
| setcount || Bestimmt die Anzahl wie oft ein Element in einer Menge vorkommt oder die Anzahl der Elemente der Menge || setcount([31,-3,2,31,0,5,2],31) &amp;lt;br&amp;gt; setcount([2,5,3,6]) || 2 &amp;lt;br&amp;gt; 4&lt;br /&gt;
|-&lt;br /&gt;
| setmodus || Liefert das Element einer Menge, welches am öftesten vorkommt oder die Elemente als Menge wenn mehrere Elemente gleich oft vorkommen || setmodus([3,-3,2,0,5,2]) || 2&lt;br /&gt;
|-&lt;br /&gt;
| setreverse || Dreht die Reihenfolge einer Menge um || setreverse([3,-3,2,0,5,2]) || [2,5,0,2,-3,3]&lt;br /&gt;
|-&lt;br /&gt;
| setnd || Löscht alle Duplikate aus der Menge || setnd([3,-3,2,0,5,2]) || [3,-3,2,0,5]&lt;br /&gt;
|-&lt;br /&gt;
| setshuffle || Mischt eine Menge in eine andere Reihenfolge. VORSICHT, ohne zweiten Parameter (ganze Zahl) ändert sich die Reihenfolge bei jedem mal neu Laden automatisch und ist nicht nachvollziehbar, weshalb sie dann für Schülerbeispiele nicht einsetzbar ist! || setshuffle([3,-3,2,0,5,2],5) || [2,3,−3,2,0,5] || 6082&lt;br /&gt;
|-&lt;br /&gt;
| setmittel || Bestimmt den Mittelwert einer Menge || setmittel([1,3,2,4]) || 2.5&lt;br /&gt;
|-&lt;br /&gt;
| setgeomittel || Bestimmt das geometrische Mittelwert einer Menge aus positiven reellen Zahlen || setgeomittel([10,20,30]) || 18.171206&lt;br /&gt;
|-&lt;br /&gt;
| setvarianz || Bestimmt die empirische Varianz einer Menge || setvarianz([3,1,2,5,4]) || ((3-3)^2+(1-3)^2+(2-3)^2+(5-3)^2+(4-3)^2)/5=2&lt;br /&gt;
|-&lt;br /&gt;
| setquadratmittel || Bestimmt den quadratischen Mittelwert einer Menge || setquadratmittel([10,20,30]) || 21.6025&lt;br /&gt;
|-&lt;br /&gt;
| setsum || Bestimmt die Summe aller Werte einer Menge || setsum([1,3,2,4]) || 10&lt;br /&gt;
|-&lt;br /&gt;
| setprod || Bestimmt das Produkt aller Werte einer Menge || setprod([1,3,2,4]) || 24&lt;br /&gt;
|-&lt;br /&gt;
| setunion || Fügt mehrere Mengen zu einer neuen Menge zusammen || setunion([1,3,2,4],[3,7]) || {1,3,2,4,3,7}&lt;br /&gt;
|-&lt;br /&gt;
| setunionnd || Fügt mehrere Mengen zu einer neuen Menge zusammen, sortiert diese und entfernt alle mehrfachen Elemente || setunionnd([1,3,2,4],[3,7]) || {1,2,3,4,7}&lt;br /&gt;
|-&lt;br /&gt;
| setcut || Bildet die Schnittmenge aus mehreren Mengen || setcut([1,3,2,4],[3,7]) || {3}&lt;br /&gt;
|-&lt;br /&gt;
| setcompare || vergleicht zwei Mengen miteinander, wobei die Reihenfolge egal ist  || setcompare([1,3,2,4],[3,7]) &amp;lt;br&amp;gt; setcompare([1,3,2],[1,2,3]) &amp;lt;br&amp;gt; setcompare([1,3,2],[1,3,2,3]) &amp;lt;br&amp;gt; setcompare([1,2,3],[1,2,3])  || false &amp;lt;br&amp;gt; true &amp;lt;br&amp;gt; false &amp;lt;br&amp;gt; true&lt;br /&gt;
|-&lt;br /&gt;
| setcomparend || vergleicht zwei Mengen miteinander, wobei die Reihenfolge egal ist und doppelte Werte als einfach behandelt werden. || setcomparend([1,3,2,4],[3,7]) &amp;lt;br&amp;gt; setcomparend([1,3,2],[1,2,3]) &amp;lt;br&amp;gt; setcomparend([1,3,2],[1,3,2,3]) &amp;lt;br&amp;gt; setcomparend([1,2,3],[1,2,3])  || false &amp;lt;br&amp;gt; true &amp;lt;br&amp;gt; true &amp;lt;br&amp;gt; true&lt;br /&gt;
|-&lt;br /&gt;
| setpartof || prüft ob die erste Menge eine Teilmenge der zweite Menge ist wobei die Reihenfolge egal ist aber mehrfache Werte berücksichtigt werden  || setpartof([1,4],[1,3,7]) &amp;lt;br&amp;gt; setpartof([1,3],[1,2,3]) &amp;lt;br&amp;gt; setpartof([1,3,3],[1,3,5,7]) &amp;lt;br&amp;gt; setpartof([1,4,4],[1,2,3,4])  || false &amp;lt;br&amp;gt; true &amp;lt;br&amp;gt; false &amp;lt;br&amp;gt; false&lt;br /&gt;
|-&lt;br /&gt;
| setpartofnd || prüft ob die erste Menge eine Teilmenge der zweite Menge ist wobei die Reihenfolge und mehrfache Werte egal sind  || setpartofnd([1,4],[1,3,7]) &amp;lt;br&amp;gt; setpartofnd([1,3],[1,2,3]) &amp;lt;br&amp;gt; setpartofnd([1,3,3],[1,3,5,7]) &amp;lt;br&amp;gt; setpartofnd([1,4,4],[1,2,3,4])  || false &amp;lt;br&amp;gt; true &amp;lt;br&amp;gt; true &amp;lt;br&amp;gt; true&lt;br /&gt;
|-&lt;br /&gt;
| setgetmin || Liefert den kleinsten Wert einer Menge || setgetmin([1,3,-2,4]) || -2&lt;br /&gt;
|-&lt;br /&gt;
| setgetmax || Liefert den größten Wert einer Menge || setgetmax([1,3,-2,4]) || 4&lt;br /&gt;
|-&lt;br /&gt;
| setremovefirst || Entfernt den ersten Wert einer Menge || setremovefirst([1,3,-2,4]) || {3,-2,4}&lt;br /&gt;
|-&lt;br /&gt;
| setremovelast || Entfernt den letzten Wert einer Menge || setremovelast([1,3,-2,4]) || {1,3,-2}&lt;br /&gt;
|-&lt;br /&gt;
| setgetfirst || Liefert den ersten Wert einer Menge || setgetfirst([1,3,-2,4]) || 1&lt;br /&gt;
|-&lt;br /&gt;
| setgetlast || Liefert den letzten Wert einer Menge || setgetlast([1,3,-2,4]) || 4&lt;br /&gt;
|-&lt;br /&gt;
| setsub || setsub(M,x,y) Liefert eine Teilmenge von M der Elemente vom index x bis zum Index y || setsub([1,3,-2,4],1,2) || {3,-2}&lt;br /&gt;
|-&lt;br /&gt;
| setmakelist || setmakelist(f,x,start,stop) setzt in den Ausdruck f für x die Werte von start bis stop mit einer Schrittweite von 1 ein. || setmakelist(x^2,x,1,4) || [ 1,4,9,16 ]&lt;br /&gt;
|-&lt;br /&gt;
| || setmakelist(f,x,start,stop,schrittweite) setzt in den Ausdruck f für x die Werte von start bis stop mit dem Abstand schrittweite ein. || setmakelist(x^2,x,1,2,0.5) || [ 1,2.25,4 ]&lt;br /&gt;
|-&lt;br /&gt;
| || setmakelist(f,x,set) setzt die Werte des Vektors set in den Ausdruck f für x ein. || setmakelist(x^2,x,[3,1,2])  ||[ 9,1,4 ]&lt;br /&gt;
|-&lt;br /&gt;
| foreach || Führt für jedes Element eine Berechnung aus und verbindet die Ergebnisse mit der Aggregatfunktion || foreach([2,-3,5,-6],p,cabs(p),&amp;quot;+&amp;quot;) || 16 || 6075 &lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Punkte-Mengen-Funktionen ===&lt;br /&gt;
Bei der Eingabe mit dem Plot-Plugin werden Punkte-Mengen als Matrizen in der Form [[x1,y1],[x2,y2],[y3,y3]] für die gespeicherten Punkte welcher der Schüler eingegeben hat verwendet.&lt;br /&gt;
&lt;br /&gt;
Um die Verarbeitung der Eingaben zu erleichtern kann man die Funktionen beginnend mit pv verwenden.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis || ab Rev&lt;br /&gt;
|-&lt;br /&gt;
| pvabs || Bestimmt den Betrag eines Punktes oder aller Ortsvektoren zu den Punkten. || pvabs([[2,3],[4,5],[6,3],[-2,4]]) &amp;lt;br&amp;gt; pvabs([[2,3],[4,5],[6,3],[-2,4]],1) ||  [3.6056,6.4031,6.7082,4.4721] &amp;lt;br&amp;gt; 6.4031 || 6077&lt;br /&gt;
|-&lt;br /&gt;
| pvarg || Bestimmt den Winkel eines Punktes oder aller Ortsvektoren zu den Punkten. || pvarg([[2,3],[4,5],[6,3],[-2,4]]) &amp;lt;br&amp;gt; pvarg([[2,3],[4,5],[6,3],[-2,4]],1) || [0.98279,0.89606,0.46365,2.0344] &amp;lt;br&amp;gt; 0.89606 || 6077&lt;br /&gt;
|-&lt;br /&gt;
| pvget || Liefert einen Punkt der Punkteliste. || pvget([[2,3],[4,5],[6,3],[-2,4]],1) || [4,5] || 6077&lt;br /&gt;
|-&lt;br /&gt;
| pvgetx || Bestimmt die x-Koordinate eines Punktes oder aller Punkte. || pvgetx([[2,3],[4,5],[6,3],[-2,4]]) &amp;lt;br&amp;gt; pvgetx([[2,3],[4,5],[6,3],[-2,4]],1) || [2,4,6,-2]&amp;lt;br&amp;gt;4 || 6077&lt;br /&gt;
|-&lt;br /&gt;
| pvgety || Bestimmt die y-Koordinate eines Punktes oder aller Punkte. || pvgety([[2,3],[4,5],[6,3],[-2,4]]) &amp;lt;br&amp;gt; pvgety([[2,3],[4,5],[6,3],[-2,4]],1) || [3,5,3,4]&amp;lt;br&amp;gt;3 || 6077&lt;br /&gt;
|-&lt;br /&gt;
| pvlineabs || Bestimmt aus dem n-ten Punktepaar den Absolutbetrag des Abstandes. || pvlineabs([[2,3],[4,5],[6,3],[-2,4]])&amp;lt;br&amp;gt;pvlineabs([[2,3],[4,5],[6,3],[-2,4]],0) || [2.8284,8.0623]&amp;lt;br&amp;gt;2.82842712475 || 6075 &lt;br /&gt;
|-&lt;br /&gt;
| pvlinearg || Bestimmt aus dem n-ten Punktepaar den Winkel der Strecke zur x-Achse || pvlinearg([[2,3],[4,5],[6,3],[-2,4]])&amp;lt;br&amp;gt;pvlinearg([[2,3],[4,5],[6,3],[-2,4]],0) || [45°,172.87°]&amp;lt;br&amp;gt;45° || 6075 &lt;br /&gt;
|-&lt;br /&gt;
| pvlinek || Bestimmt die Steigung der zugehörigen Geraden dem n-ten Punktepaar || pvlinek([[2,3],[4,5],[6,3],[-2,4]])&amp;lt;br&amp;gt;pvlinek([[2,3],[4,5],[6,3],[-2,4]],0) ||  [1,−0.125]&amp;lt;br&amp;gt;1 || 6075 &lt;br /&gt;
|-&lt;br /&gt;
| pvlined || Bestimmt den Schnittpunkt einer Geraden durch das n-te Punktepaar mit der y-Achse || pvlined([[2,3],[4,5],[6,3],[-2,4]])&amp;lt;br&amp;gt;pvlined([[2,3],[4,5],[6,3],[-2,4]],0) || [1,3.75] &amp;lt;br&amp;gt;1 || 6075 &lt;br /&gt;
|-&lt;br /&gt;
| pvline || Bestimmt die Geradengleichung einer Geraden durch das n-te Punktepaar || pvline([[2,3],[4,5],[6,3],[-2,4]])&amp;lt;br&amp;gt;pvline([[2,3],[4,5],[6,3],[-2,4]],0) || [y=1+x,y=3.75−0.125⋅x]&amp;lt;br&amp;gt;y=x+1 || 6075 &lt;br /&gt;
|-&lt;br /&gt;
| pvpoints || Bestimmt die Anzahl der Punkte || pvpoints([[2,3],[4,5],[6,3],[-2,4]]) || 4 || 6075 &lt;br /&gt;
|-&lt;br /&gt;
| pvvect || Bestimmt einen Vector aus dem n-te Punktepaar || pvvect([[2,3],[4,5],[6,3],[-2,4]],0) || [2,2] || 6075 &lt;br /&gt;
|-&lt;br /&gt;
| pvsortx || Sortiert die Punkte nach steigender x-Koordinate || pvsortx([[2,3],[4,5],[6,3],[−2,4],[−3,5],[−7,−9]]) || [[−7,−9],[−3,5],[−2,4],[2,3],[4,5],[6,3]] ||6077 &lt;br /&gt;
|-&lt;br /&gt;
| pvsorty || Sortiert die Punkte nach steigender y-Koordinate || pvsorty([[2,3],[4,5],[6,3],[−2,4],[−3,5],[−7,−9]]) || [[−7,−9],[2,3],[6,3],[−2,4],[4,5],[−3,5]] ||6077&lt;br /&gt;
|-&lt;br /&gt;
| pvsortabs || Sortiert die Punkte nach steigendem Absolutbetrag des Ortsvektors || pvsortabs([[2,3],[4,5],[6,3],[−2,4],[−3,5],[−7,−9]]) ||  [[2,3],[−2,4],[−3,5],[4,5],[6,3],[−7,−9]] ||6077&lt;br /&gt;
|-&lt;br /&gt;
| pvsortarg || Sortiert die Punkte nach steigendem Winkel des Ortsvektors (-pi bis pi) || pvsortarg([[2,3],[4,5],[6,3],[−2,4],[−3,5],[−7,−9]]) ||  [[−7,−9],[6,3],[4,5],[2,3],[−2,4],[−3,5]] ||6077&lt;br /&gt;
|-&lt;br /&gt;
| pvsortlinex || Sortiert Punktepaare nach steigender x-Koordinate der kleineren x-Koordinate des Paares. || pvsortlinex([[2,3],[4,5],[6,3],[−2,4],[−3,5],[−7,−9]]) || [[−3,5],[−7,−9],[6,3],[−2,4],[2,3],[4,5]] ||6077 &lt;br /&gt;
|-&lt;br /&gt;
| pvsortliney || Sortiert Punktepaare nach steigender y-Koordinate der kleineren y-Koordinate des Paares. || pvsortliney([[2,3],[4,5],[6,3],[−2,4],[−3,5],[−7,−9]]) ||  [[−3,5],[−7,−9],[2,3],[4,5],[6,3],[−2,4]] ||6077 &lt;br /&gt;
|-&lt;br /&gt;
| pvsortlineabs || Sortiert Punktepaare nach steigendem Betrag der Linienlänge. || pvsortlineabs([[2,3],[4,5],[6,3],[−2,4],[−3,5],[−7,−9]]) || [[2,3],[4,5],[6,3],[−2,4],[−3,5],[−7,−9]] || 6077&lt;br /&gt;
|-&lt;br /&gt;
| pvsortlinearg || Sortiert Punktepaare nach steigendem Winkel der Linienrichtung. || pvsortlinearg([[2,3],[4,5],[6,3],[−2,4],[−3,5],[−7,−9]]) || [[−3,5],[−7,−9],[2,3],[4,5],[6,3],[−2,4]] || 6077&lt;br /&gt;
|-&lt;br /&gt;
| pvequals || Prüft ob zwei Punktevektoren gleich sind. Die Genauigkeit wird als dritter Parameter angegeben, oder bei einem Antwortfeld von der Antworttoleranz genommen. Prozentangaben der Genauigkeit beziehen sich auf die Breite bzw. Höhe des Punktefeldes im karthesischen Koordinatensystem. || pvequals([[2,3],[4,5],[6,3],[-2,4],[-3,5],[-7,-9]],[[2.01,3],[4,5],[6.01,3],[-2,3.99],[-3,5],[-7,-9]],2%) || true || 6077&lt;br /&gt;
|-&lt;br /&gt;
| pvhaspoint || Prüft ob sich ein Punkt innerhalb des Punktefeldes befindet. Die Genauigkeit kann wie bei pvequals als dritter Parameter angegeben werden. || pvhaspoint([[2,3],[4,5],[6,3],[-2,4],[-3,5],[-7,-9]],[4,5],2%) || true || 6077&lt;br /&gt;
|-&lt;br /&gt;
| pvhasline || Prüft ob sich eine Linie innerhalb des Punktefeldes von Linien befindet. Die Genauigkeit kann wie bei pvequals als dritter Parameter angegeben werden. || pvhaspoint([[2,3],[4,5],[6,3],[-2,4],[-3,5],[-7,-9]],[[6,3],[-2,4]],2%) || true || 6078&lt;br /&gt;
|-&lt;br /&gt;
| pvforeachline || Führt für jedes Punktepaar eine Berechnung aus und verbindet die Ergebnisse mit der Aggregatfunktion || pvforeachline([[2,3],[4,5],[6,3],[-2,4]],p,pvlineabs(p),&amp;quot;+&amp;quot;) || 10.890684873 || 6075 &lt;br /&gt;
|-&lt;br /&gt;
| pvfunc || Erzeugt aus einer Funktionen in einer Variablen (x-Achse) eine Punktmatrix der Funktionswerte (y-Achse). pvfunc(funktion,variable,minx,maxx,deltax) || pvfunc(x^2,x,-2,2,0.5) || [[−2,4],[−1.5,2.25],[−1,1],[−0.5,0.25],[0,0],[0.5,0.25],[1,1],[1.5,2.25]] || 6080&lt;br /&gt;
|-&lt;br /&gt;
| pvcompare || Vergleicht einen Referenz-Linienzug mit einem eingegebenen Linienzug unter Berücksichtigung der Toleranz.&amp;lt;br&amp;gt; pvcompare(Referenz,Eingabe)&amp;lt;br&amp;gt; pvcompare(Referenz,Eingabe,Toleranz)&amp;lt;br&amp;gt; pvcompare(Referenz,Eingabe,MinX,MaxX,MinY,MaxY) &amp;lt;br&amp;gt; pvcompare(Referenz,Eingabe,MinX,MaxX,MinY,MaxY,Toleranz) || pvcompare([[0,0],[1,1],[2,1],[3,0]],[[0,0],[1,1],[2,1],[3,0]],0,3,-5,5) || true  || 6080&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Typ-Funktionen===&lt;br /&gt;
Werden nur dann ausgewertet wenn der Parameter ein numerischer Wert oder eine Menge ist.&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| isset || Prüft ob es sich um eine Menge handelt. || isset([12,13,14]) || true &lt;br /&gt;
|-&lt;br /&gt;
| issetnumeric || Prüft ob es sich um eine Menge aus reellen Zahlen handelt. || issetnumeric([12,13.4,14]) || true &lt;br /&gt;
|-&lt;br /&gt;
| issetlong || Prüft ob es sich um eine Menge aus ganzen Zahlen handelt. || issetlong([12,13,14]) || true &lt;br /&gt;
|-&lt;br /&gt;
| islong || Prüft ob es sich um eine ganze Zahl handelt. || islong(12) || true &lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Algebra===&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;Hinweis:&#039;&#039; Die Indizes eines Vektors oder einer Matrix werden in Letto ausgehend von 0 weg gezählt.  &lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| matrix || erzeugt aus mehreren gleich langen Vektoren eine Matrix || matrix([1,2],[3,4]) || [[1,2],[3,4]]&lt;br /&gt;
|-&lt;br /&gt;
| inv || invertiert eine quadratische Matrix oder bildet 1/x || inv(matrix([1,2],[3,4])) || [[-2,1],[3/2,-1/2]]&lt;br /&gt;
|-&lt;br /&gt;
| vget || liefert ein Element eines Vektors oder einer Matrix [https://www.youtube.com/watch?v=T82YIt3e8ac Video] || vget([12,13,14],1) &amp;lt;br&amp;gt; vget(matrix([9,2],[3,4]),0,1) || 13 &amp;lt;br&amp;gt; 2 &lt;br /&gt;
|-&lt;br /&gt;
| vgetmaxima || liefert ein Element eines Vektors oder einer Matrix wobei der Index (wie bei Maxima) bei 1 startet. || vgetmaxima([12,13,14],1) || 12 &lt;br /&gt;
|-&lt;br /&gt;
| vset || setzt ein Element eines Vektors oder einer Matrix || vset([12,13,14],1,35) &amp;lt;br&amp;gt; vset(matrix([9,2],[3,4]),0,0,-9) || [12,35,14] &amp;lt;br&amp;gt; [[-9,2],[3,4]]&lt;br /&gt;
|-&lt;br /&gt;
| vsetmaxima || setzt ein Element eines Vektors oder einer Matrix wobei der Index (wie bei Maxima) bei 1 startet. || vsetmaxima([12,13,14],1,35) || [35,13,14]&lt;br /&gt;
|-&lt;br /&gt;
| vinsert || fügt ein Element in einen Vektor an eine gegebene Stelle ein || vinsert([12,13,14],1,25) || [12,25,13,14]&lt;br /&gt;
|-&lt;br /&gt;
| vremove || löscht ein Element eines Vektors [https://www.youtube.com/watch?v=T82YIt3e8ac Video] || vremove([12,13,14],1) || [12,14]&lt;br /&gt;
|-&lt;br /&gt;
| vabs || Berechnet den Betrag eines Vektors || vabs([3,4]) || 5&lt;br /&gt;
|-&lt;br /&gt;
| vin || Berechnet das innere Produkt von 2 Vektoren || vin([1,2,3],[4,5,6]) || 32&lt;br /&gt;
|-&lt;br /&gt;
| vex || Berechnet das ex-Produkt von 2 Vektoren im 3-dimensionalen Raum || vex([1,2,3],[4,5,6]) || [-3,6,-3]&lt;br /&gt;
|-&lt;br /&gt;
| mrows || liefert die Anzahl der Zeilen einer Matrix || mrows([[3,4,4],[3,6,54,34,3,54]]) || 2&lt;br /&gt;
|-&lt;br /&gt;
| mcols || liefert die Anzahl der Spalten einer Matrix || mcols([[3,4,4],[3,6,54,34,3,54]]) || 6 &lt;br /&gt;
|- &lt;br /&gt;
| mprod || Bildet das Matrixprodukt aus zwei Matrizen || mprod([[1,2],[3,4]],[[5,6],[7,8]]) || [[19,22],[43,50]]&lt;br /&gt;
|-&lt;br /&gt;
| mtrans || Bildet die transponierte Matrix || mtrans([[1,2],[3,4]]) || [[1,3],[2,4]]&lt;br /&gt;
|-&lt;br /&gt;
| minv || Bildet die inverse Matrix || minv([[1,2],[3,4]]) || [[-2,1],[3/2,-1/2]]&lt;br /&gt;
|-&lt;br /&gt;
| mdet || Bildet die Determinante einer quadratischen Matrix || mdet([[1,2],[3,4]]) || -2&lt;br /&gt;
|-&lt;br /&gt;
| vindex || vindex(v,x) liefert den Index des Elementes eines Vektors, welcher am nächsten bei x liegt || vindex([10,30,70],40) || 1 &lt;br /&gt;
|-&lt;br /&gt;
| vindexup || vindexup(v,x) liefert den Index des Elementes eines Vektors, welcher größer oder gleich x ist || vindexup([10,30,70],40) || 2 &lt;br /&gt;
|-&lt;br /&gt;
| vindexdown || vindexdown(v,x) liefert den Index des Elementes eines Vektors, welcher kleiner oder gleich x ist || vindexdown([10,30,70],60) || 1&lt;br /&gt;
|-&lt;br /&gt;
| verweis || verweis(M,x,n) liefert den Wert der n-ten Spalte (ohne Angabe von n die 2.Spalte) einer Matrix M wo x dem Wert in der ersten Spalte am nächsten liegt || verweis([[10,33],[20,77],[30,99]],21) || 77&lt;br /&gt;
|-&lt;br /&gt;
| verweisup || verweisup(M,x,n) liefert den Wert der n-ten Spalte (ohne Angabe von n die 2.Spalte) einer Matrix M wo x dem Wert in der ersten Spalte am nächsten liegt || verweisup([[10,33],[20,77],[30,99]],21) || 99&lt;br /&gt;
|-&lt;br /&gt;
| verweisdown || verweisdown(M,x,n) liefert den Wert der n-ten Spalte (ohne Angabe von n die 2.Spalte) einer Matrix M wo x dem Wert in der ersten Spalte am nächsten liegt || verweisdown([[10,33],[20,77],[30,99]],27,1) || 77&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Variable===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| kill || löscht Variable aus dem Variablenspeicher || kill(x,y) &amp;lt;br&amp;gt; kill(allbut(y)) &amp;lt;br&amp;gt; kill(all) || löscht die Variablen x und y &amp;lt;br&amp;gt; löscht alle Variablen mit Ausnahme von y &amp;lt;br&amp;gt; löscht alle Variable&lt;br /&gt;
|-&lt;br /&gt;
| allbut || Liefert eine Liste aller Variablen des Parsers als Menge(Vektor) mit Ausnahme der als Parameter angegebenen Variablen || allbut(x,y) || [a,b,c]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Auswertung und Programmierung===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis || Revision&lt;br /&gt;
|-&lt;br /&gt;
| ev || Auswertung eines Ausdruckes, als Parameter können Gleichungen angegeben werden, welche dann in den Ausdruck eingesetzt werden || ev(x*y,y=4) || x*4&lt;br /&gt;
|-&lt;br /&gt;
| evruntime || Auswertung eines Ausdruckes, als Parameter können Gleichungen angegeben werden, welche dann in den Ausdruck eingesetzt werden. Das &#039;&#039;&#039;Einsetzen erfolgt erst bei der Ergebnisberechnung&#039;&#039;&#039;! || evruntime(x*y,y=4) || x*4&lt;br /&gt;
|-&lt;br /&gt;
| [[nv]] || Auswertung eines Ausdruckes, als Parameter können Gleichungen angegeben werden, welche dann in den Ausdruck eingesetzt werden. Im Gegensatz zu ev werden bestehende Variable nur in den Gleichungen, aber nicht im Ausdruck selbst eingesetzt! || nv(x*y,y=4) || x*4&lt;br /&gt;
|-&lt;br /&gt;
| [[if]] || Bedingungsfunktion if(bedingung,wahrwert,falschwert) || if(4&amp;lt;6,10,12) || 10&lt;br /&gt;
|-&lt;br /&gt;
| [[if|wenn]] || Bedingungsfunktion wenn(bedingung,wahrwert,falschwert). Im Prinzip identisch wie if, jedoch kann if mit Maxima nicht verwendet werden. || wenn(4&amp;lt;6,10,12) || 10&lt;br /&gt;
|-&lt;br /&gt;
| plugin || Ruft die Berechnungsmethode des Plugins, welches als erster Stringparameter angegeben werden muss auf und übergibt die weiteren Parameter an die Berechnungsmethode des Plugins.  || plugin(&amp;quot;plugin1&amp;quot;,3) || führt die Berechnung des Plugins mit dem Namen &amp;quot;plugin1&amp;quot; mit dem Parameter 3 aus. &lt;br /&gt;
|-&lt;br /&gt;
| symbolic || Bei allen Variablen innerhalb von symbolic werden nur nicht-numerische Werte eingesetzt! Wird vor allem im Angabtext bei {= } verwendet || symbolic(x^2+2) || x^2+2&lt;br /&gt;
|-&lt;br /&gt;
| runtime || Bei dieser Funktion wird &#039;&#039;&#039;erst bei der Berechnung der Frageantwort, nach dem Einsetzen der Datensätze&#039;&#039;&#039; das &#039;&#039;&#039;komplette Maxima-Feld&#039;&#039;&#039; mit dem internen &#039;&#039;&#039;Parser&#039;&#039;&#039; durchgerechnet und danach der Parameter-Ausdruck berechnet. Dadurch kann man bei komplizierten Berechnungen eine sehr aufwendige symbolische Berechnung verhindern! || runtime(U) || &lt;br /&gt;
|-&lt;br /&gt;
| dataset || liefert alle Datensätze einer Datensatz-Definition in einem Vektor || dataset(x) || &lt;br /&gt;
|-&lt;br /&gt;
| parse || Wenn der Parameter ein String ist wird dieser String mit dem Parser interpretiert || parse(&amp;quot;2+3&amp;quot;) || 5&lt;br /&gt;
|-&lt;br /&gt;
| foreach || Führt für jedes Element einer Menge eine Berechnung aus und verbindet die Ergebnisse mit der Aggregatfunktion || foreach([2,-3,5,-6],p,cabs(p),&amp;quot;+&amp;quot;) || 16 || 6075 &lt;br /&gt;
|-&lt;br /&gt;
| pvforeachline || Führt für jedes Punktepaar einer Punktemenge eine Berechnung aus und verbindet die Ergebnisse mit der Aggregatfunktion || pvforeachline([[2,3],[4,5],[6,3],[-2,4]],p,pvlineabs(p),&amp;quot;+&amp;quot;) || 10.890684873 || 6075 &lt;br /&gt;
|-&lt;br /&gt;
| forloop || Führt eine Zählschleife aus forloop(Variable,Startwert,Wiederholbedingung,Inkrement,Ausdruck,Aggregatsfunktion). &amp;lt;br&amp;gt;Ohne Aggregatsfunktion wird ein Feld mit den Ergebnissen der Schleifeniterationen geliefert. || forloop(i,1,i&amp;lt;7,i++,i,&amp;quot;+&amp;quot;)&amp;lt;br&amp;gt;forloop(i,1,i&amp;lt;7,i:i+2,i) || 21&amp;lt;br&amp;gt;[1,3,5] || 6077&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Optimierung der Ausdrücke===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| opt   || Ausdruck wird vollständig optimiert, die Funktion wird ausgewertet und ist danach nicht mehr vorhanden. Nur bei der Verwendung des internen Parser sinnvoll. || opt(x+x) || 2*x&lt;br /&gt;
|-&lt;br /&gt;
| ratsimp || Ausdruck wird vollständig optimiert, die Funktion wird ausgewertet und ist danach nicht mehr vorhanden (wie opt, wird jedoch auch von Maxima ausgewertet) || ratsimp(x+x) || 2*x&lt;br /&gt;
|-&lt;br /&gt;
| noopt || Ausdruck wird nicht optimiert, bleibt also so erhalten wie angegeben. Die Funktion an sich geht aber verloren. || noopt(2+3) || 2+3&lt;br /&gt;
|-&lt;br /&gt;
| nopt || Ausdruck wird nicht optimiert, bleibt also so erhalten wie angegeben. Die Funktion bleibt erhalten und wird erst bei der Lösungsberechnung oder durch opt() entfernt. || noopt(2+3) || 2+3&lt;br /&gt;
|-&lt;br /&gt;
| lopt || Im Maximafeld bleibt die Funktion ohne Funktion erhalten, im Ergebnis {=  wird die Funktion entfernt und in der Lösung wird nach dem Einsetzen der Werte der Ausdruck vollständig optimiert. || lopt(x+3)  || lopt(x+3)  &lt;br /&gt;
|-&lt;br /&gt;
| lnoopt || Im Maximafeld bleibt die Funktion ohne Funktion erhalten, im Ergebnis {=  wird die Funktion entfernt und in der Lösung wird nach dem Einsetzen der Werte der Ausdruck nicht mehr optimiert. || lnoopt(x+3+2)  || lnoopt(x+5) &lt;br /&gt;
|-&lt;br /&gt;
| loptnumeric || Im Maximafeld bleibt die Funktion ohne Funktion erhalten, im Ergebnis {=  wird die Funktion entfernt und in der Lösung wird nach dem Einsetzen der Werte der Ausdruck nur numerisch optimiert. || loptnumeric(x+y)  || loptnumeric(x+y)&lt;br /&gt;
|-&lt;br /&gt;
| aopt || Bei Maxima und Lösung geht die Funktion verloren, nur innerhalb von noopt bleibt sie erhalten. Bei der Anzeige führt sie zur Optimierung das Ausdruckes nach Einsetzen der Datensätze. || aopt(x)  || x&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Anzeige und Lösungsberechnung===&lt;br /&gt;
Diese Funktionen haben entweder einen oder zwei Parameter. Der erste Parameter stellt die darzustellende Funktion dar, der zweite Parameter, welcher eine Ganzzahl sein muss, gibt an, wie die Darstellung erfolgen soll. Wird der 2.Parameter weggelassen, so wird er als 0 interpretiert.&lt;br /&gt;
* 0 Bei Berechnungen hat die Funktion keine Wirkung, bleibt aber als Funktion erhalten. Bei Lösung und Anzeige wird die Funktion ausgewertet&lt;br /&gt;
* 1 Wirkt nur bei Lösung, bei Berechnungen bleibt die Funktion erhalten&lt;br /&gt;
* 2 Wirkt nur bei Anzeige, bei Berechnungen bleibt die Funktion erhalten&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| viewpow || Gibt alle Wurzeln als Potenzen aus, und stellt alle Potenzen im Nenner als negativen Exponenten im Zähler dar || viewpow(sqrt(x)) || x^(1/2)&lt;br /&gt;
|-&lt;br /&gt;
| viewsqrt || Gibt Potenzen welche als Wurzel darstellbar sind auch als als Wurzeln mit der Funktion sqrt oder root aus || viewsqrt(x^(1/2)) || sqrt(x)&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Spezialfunktionen LeTTo ===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| points || Berechnet die erreichbare Gesamtpunkteanzahl einer Frage || points() || 2&lt;br /&gt;
|-&lt;br /&gt;
| points || Berechnet die erreichbare Punkteanzahl einer Teilfrage. Als Parameter wird die Fragenummer als Ganzzahl angegeben. || points(0) || 1&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Spezialfunktionen Technik===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| color || Widerstandsfarbcode berechnen.&amp;lt;br&amp;gt;1. Parameter muss ein Double sein&amp;lt;br&amp;gt; 2.Parameter sind die Anzahl der Farbringe&amp;lt;br&amp;gt; 3.Parameter ist der Modus (0..2-St,1..3St,2..Deutsch,3..2StEng,4..3StEng,5..Englisch || color(120,3,2) || braun,rot,braun&lt;br /&gt;
|-&lt;br /&gt;
| parsecolor || Wandelt einen String mit einem Widerstandsfarbcode in einen Double-Wert || parsecolor(&amp;quot;br-rt-br&amp;quot;) || 120&lt;br /&gt;
|-&lt;br /&gt;
| ip || Wandelt eine Long-Zahl in einen String als IP-Adresse um, oder 4 Byte-Zahlen in eine Long Zahl als IP-32-bit-Adresse || ip(1534536453)&amp;lt;br&amp;gt;ip(10,20,30,40) || &amp;quot;91.119.43.5&amp;quot;&amp;lt;br&amp;gt;169090600&lt;br /&gt;
|-&lt;br /&gt;
| parseip || Wandelt einen String mit einer IP-Adresse in einen Long-Wert || parseip(&amp;quot;91.119.43.5&amp;quot;) || 1534536453&lt;br /&gt;
|-&lt;br /&gt;
| e12 || rundet einen Zahlenwert auf den nächstliegenden Wert der [[Normreihe]] E12.&amp;lt;br&amp;gt;Die Rundung erfolgt geometrisch d.h. der Quotient zwischen Normwert und zu rundendem Wert wird minimiert. || e12(700Ohm) || 680Ohm&lt;br /&gt;
|-&lt;br /&gt;
| e12up || rundet einen Zahlenwert auf den nächstgrößerern Wert der [[Normreihe]] E12 || e12(670Ohm) || 680Ohm&lt;br /&gt;
|-&lt;br /&gt;
| e12down || rundet einen Zahlenwert auf den nächstkleineren Wert der [[Normreihe]] E12 || e12(700Ohm) || 680Ohm&lt;br /&gt;
|-&lt;br /&gt;
| ise12 || prüft ob der als Parameter übergebenen Wert ein Wert der [[Normreihe]] E12 ist.|| ise12(680Ohm) || true&lt;br /&gt;
|-&lt;br /&gt;
| norm || rundet einen Zahlenwert auf den nächstliegenden Wert einer gegebenen Wertereihe oder [[Normreihe]].&amp;lt;br&amp;gt;Die Rundung erfolgt geometrisch wenn es sich um eine logarithmisch aufgeteilte Normreihe handelt, oder sonst linear. || norm(700Ohm,E12) || 680Ohm&lt;br /&gt;
|-&lt;br /&gt;
| normup || rundet einen Zahlenwert auf den nächstgrößerern Wert einer gegebenen Wertereihe oder [[Normreihe]]. || normup(730Ohm,[1,3,5,8]) || 800Ohm&lt;br /&gt;
|-&lt;br /&gt;
| normdown || rundet einen Zahlenwert auf den nächstkleineren Wert einer gegebenen Wertereihe oder [[Normreihe]]. || normdown(700Ohm,E12) || 680Ohm&lt;br /&gt;
|-&lt;br /&gt;
| isnorm || prüft ob der als Parameter übergebenen Wert ein Wert einer gegebenen Wertereihe oder [[Normreihe]] ist. || isnorm(680Ohm,E12) || true&lt;br /&gt;
|}&lt;br /&gt;
===Raumzeiger für elektrische Maschinen===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| [[svphtosv]](a,b,c) || berechnet aus den Stranggrößen (a,b,c) einen komplexen Raumzeiger || svphtosv(0.5,0.5,-1) || 1arg60°&lt;br /&gt;
|-&lt;br /&gt;
| [[svsvtoph]](sv)&amp;lt;br&amp;gt;svsvtoph(sv,index) || berechnet aus einem komplexen Rauzeiger die Phasengrößen &amp;lt;br&amp;gt; berechnet aus einem komplexen Rauzeiger die Phasengrößen, index selektiert Stranggröße als Rückgabewert || svsvtoph(1arg60°)&amp;lt;br&amp;gt; svsvtoph(1arg60°,3)|| [0.5,0.5,-1] &amp;lt;br&amp;gt; -1&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=Ergebnisvorschau=&lt;br /&gt;
Aufruf dieses Dialoges über den [[Datei:ClipCapIt-180904-181443.PNG|25px]]-Button aus dem [[Toolbar]].&lt;br /&gt;
&lt;br /&gt;
Die Berechnungen aus dem Maxima-Feld bei der [[Beispiele Bearbeiten|Fragendefinition]] können auch über den [[Datei:ClipCapIt-180904-182120.PNG|25px]]-Button durchgeführt werden. Hier wird die Berechnung durchgeführt und das Lösungsfeld ausgefüllt, aber der Rechengang wird nicht angezeigt. &lt;br /&gt;
:[[Datei:ClipCapIt-180904-181415.PNG|400px]]&lt;br /&gt;
&lt;br /&gt;
Beim Fehlersuchen oder bei komplexen Berechnungen kann es aber hilfreich sein, den ganzen Maxima-Lösungsweg zu sehen, dies ist über den [[Datei:ClipCapIt-180904-181443.PNG|25px]]-Button möchlich.&lt;br /&gt;
&lt;br /&gt;
[[Kategorie:Berechnung]]&lt;/div&gt;</summary>
		<author><name>Ckral</name></author>
	</entry>
	<entry>
		<id>https://wiki.letto.at/wiki/index.php?title=Wsr&amp;diff=3129</id>
		<title>Wsr</title>
		<link rel="alternate" type="text/html" href="https://wiki.letto.at/wiki/index.php?title=Wsr&amp;diff=3129"/>
		<updated>2022-08-21T17:29:10Z</updated>

		<summary type="html">&lt;p&gt;Ckral: Da es logisch ist: Winkel der komplexen Spannung UP1 im Radiantenmaß =&amp;gt; Winkel der komplexen Spannung UP1&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Plugin WSR=&lt;br /&gt;
&lt;br /&gt;
Zeichnet lineare elektrische Schaltungen und liefert auch das mathematische Modell in Form von Maxima-Befehlen.&lt;br /&gt;
&lt;br /&gt;
==Definition der Schaltung==&lt;br /&gt;
===Schaltungselemente===&lt;br /&gt;
Die Schaltung wird im Plugindialog über einen String(Zeichenkette) definiert, wobei folgende Zeichen definiert sind:&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Name || Bedeutung || Symbol&lt;br /&gt;
|-&lt;br /&gt;
| R || Widerstand || :[[Datei:ClipCapIt-181123-103129.PNG]]&lt;br /&gt;
|-&lt;br /&gt;
| Z || komplexe Impedanz von der Frequenz unabhängig || :[[Datei:ClipCapIt-181123-103129.PNG]]&lt;br /&gt;
|-&lt;br /&gt;
| C || Kondensator || :[[Datei:ClipCapIt-181123-103156.PNG]]&lt;br /&gt;
|-&lt;br /&gt;
| L || Induktivität || :[[Datei:ClipCapIt-181127-205320.PNG]]&lt;br /&gt;
|-&lt;br /&gt;
| LL || Leerlauf oder Unterbrechung || :[[Datei:ClipCapIt-181127-091706.PNG]]&lt;br /&gt;
|-&lt;br /&gt;
| KS || Drahtbrücke oder Kurzschluss || :[[Datei:ClipCapIt-181127-091730.PNG]]&lt;br /&gt;
|-&lt;br /&gt;
| DB || Drahtbrücke ohne besondere Funktion || :[[Datei:ClipCapIt-181127-091730.PNG]]&lt;br /&gt;
|-&lt;br /&gt;
| U || Spannungsquelle || :[[Datei:ClipCapIt-181127-091816.PNG]]&lt;br /&gt;
|-&lt;br /&gt;
| UR || Spannungsquelle in Rückwärtsrichtung || :[[Datei:ClipCapIt-181127-091844.PNG]]&lt;br /&gt;
|-&lt;br /&gt;
| UW || Wechselspannungsquelle || :[[Datei:ClipCapIt-181127-091904.PNG]]&lt;br /&gt;
|-&lt;br /&gt;
| UWR || Wechselspannungsquelle in Rückwärtsrichtung || :[[Datei:ClipCapIt-181127-092800.PNG]]&lt;br /&gt;
|-&lt;br /&gt;
| BAT || Batterie als Spannungsquelle || :[[Datei:ClipCapIt-181127-100455.PNG]]&lt;br /&gt;
|-&lt;br /&gt;
| BATR || Batterie als Spannungsquelle in Rückwärtsrichtung || :[[Datei:ClipCapIt-181127-100522.PNG]]&lt;br /&gt;
|-&lt;br /&gt;
| I || Stromquelle || :[[Datei:ClipCapIt-181127-100611.PNG]] &lt;br /&gt;
|-&lt;br /&gt;
| IR || Stromquelle in Rückwärtsrichtung || :[[Datei:ClipCapIt-181127-100715.PNG]]&lt;br /&gt;
|-&lt;br /&gt;
| A || Amperemeter || :[[Datei:ClipCapIt-181127-100748.PNG]]&lt;br /&gt;
|-&lt;br /&gt;
| AR || Amperemeter in Rückwärtsrichtung || :[[Datei:ClipCapIt-181127-100829.PNG]]&lt;br /&gt;
|-&lt;br /&gt;
| V || Voltmeter || :[[Datei:ClipCapIt-181127-100902.PNG]]&lt;br /&gt;
|-&lt;br /&gt;
| VR || Voltmeter in Rückwärtsrichtung || :[[Datei:ClipCapIt-181127-103105.PNG]]&lt;br /&gt;
|-&lt;br /&gt;
| Par(R,R) || Parallelschaltung von zwei Widerständen || :[[Datei:ClipCapIt-181127-103152.PNG]]&lt;br /&gt;
|-&lt;br /&gt;
| Ser(R,R) || Serienschaltung von zwei Widerständen || :[[Datei:ClipCapIt-181127-103220.PNG]]&lt;br /&gt;
|-&lt;br /&gt;
| B(R1,R2,R3,R4,R5) || Brückenschaltung von 5 Bauelementen || :[[Datei:ClipCapIt-181127-103314.PNG]]&lt;br /&gt;
|-&lt;br /&gt;
| B(R) || Brückenschaltung von 5 Widerständen mit verschiedenen Werten || :[[Datei:ClipCapIt-181127-103314.PNG]]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Die Verschaltung der Bauelement erfolgt über die folgenden Operatoren:&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Operator || Priorität || Bedeutung &lt;br /&gt;
|-&lt;br /&gt;
| * || 15 || Parallelschaltung&lt;br /&gt;
|-&lt;br /&gt;
| + || 10 || Serienschaltung&lt;br /&gt;
|-&lt;br /&gt;
| ? ||    || Wird nach einem Bauteil ein Fragezeichen gesetzt, so wird der Bauteil in der Angabe nicht angegeben und der Bauteilwert wird in der Schaltung nicht gezeichnet&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Zusammenschaltung von Zweipolen===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Schaltung || Bedeutung || Beispiel || Bild&lt;br /&gt;
|+&lt;br /&gt;
| einzelner Zweipol als Serienschaltung || Wird horizontal dargestellt und ohne Beistrich definiert || R+C || &lt;br /&gt;
:[[Datei:ClipCapIt-181123-102901.PNG]]&lt;br /&gt;
|+&lt;br /&gt;
| einzelner Zweipol als Parallelschaltung || Wird horizontal dargestellt und ohne Beistrich definiert || R*C ||&lt;br /&gt;
:[[Datei:ClipCapIt-181127-210445.PNG]]&lt;br /&gt;
|+&lt;br /&gt;
| senkrechter Zweipol || führt bei einigen Berechnungen noch zu Fehlern! || ,R+C || &lt;br /&gt;
:[[Datei:ClipCapIt-181123-103043.PNG]]&lt;br /&gt;
|+&lt;br /&gt;
| Links offene Schaltung mit einer Eingangsspannung Ue und zwei Bauteilen || beginnt mit einem Komma  || ,R,C || &lt;br /&gt;
:[[Datei:ClipCapIt-181127-210517.PNG]]&lt;br /&gt;
|+&lt;br /&gt;
| Spannungsquelle mit zwei Bauteilen || || U,R,C || :[[Datei:ClipCapIt-181127-210707.PNG]]&lt;br /&gt;
|+&lt;br /&gt;
| Vierpol || || ,R,C,, || :[[Datei:ClipCapIt-181127-210817.PNG]]&lt;br /&gt;
|+&lt;br /&gt;
| Vierpol mit 3 Elementen || || ,R1,R2,R3, || :[[Datei:ClipCapIt-181127-210922.PNG]]&lt;br /&gt;
|+&lt;br /&gt;
| Vierpol als T-Glied || || ,R1,R2,,R3,LL || :[[Datei:ClipCapIt-181127-211052.PNG]]&lt;br /&gt;
|+&lt;br /&gt;
| Vierpol als Pi-Glied || || ,,R1,,R2,R3,, || :[[Datei:ClipCapIt-181127-211158.PNG]]&lt;br /&gt;
|+&lt;br /&gt;
| Zweipol mit mehreren Elementen || || ,R1,R2,R3,R4,R5,R6 || :[[Datei:ClipCapIt-181127-211246.PNG]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===angezeigte Spannungen und Ströme===&lt;br /&gt;
* Die angezeigten Ströme und Spannung können nach der Schaltungsdefinition durch einen Strichpunkt getrennt erfolgen. &lt;br /&gt;
* Sie werden einfach durch Beistrich getrennt angegeben&lt;br /&gt;
Folgenden Definitionen sind hierbei möglich:&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Operator || Beispiel || Bedeutung &lt;br /&gt;
|-&lt;br /&gt;
| ohne Operator || UR1 || der Spannungspfeil für R1 wird gezeichnet&lt;br /&gt;
|-&lt;br /&gt;
| u || || alle Spannungs- und Strompfeile werden unterstrichen&lt;br /&gt;
|-&lt;br /&gt;
| _ || UC1_ || Das Größensymbol wird in der Schaltung unterstrichen&lt;br /&gt;
|-&lt;br /&gt;
| - || Ue- || Der Pfeil wird in der Schaltung nicht mehr gezeichnet&lt;br /&gt;
|-&lt;br /&gt;
| ! || IC1! || Der Absolutbetrag des berechneten Wertes wird zum Pfeil dazugeschrieben&lt;br /&gt;
|-&lt;br /&gt;
| ? || UR1? || Der Pfeil wird ohne Namen gezeichnet&lt;br /&gt;
|-&lt;br /&gt;
| &amp;gt; || UR1&amp;gt;x || Der Index der Größe wird in Schaltung und Zeigerdiagramm ausgetauscht. In diesem Beispiel wird Ux statt UR1 geschrieben. In Maxima bleibt der Index unverändert.&lt;br /&gt;
|-&lt;br /&gt;
| : || R1:Rx || Ein Bauteilname kann umbenannt werden. Hier R1 auf Rx.&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
Die Operatoren _-!? können auch nach einer Änderung mit &amp;gt; zusätzlich verwendet werden wie zB: UR4&amp;gt;x!_ &lt;br /&gt;
:[[Datei:ClipCapIt-181127-212621.PNG]]&lt;br /&gt;
&lt;br /&gt;
===Beispiele===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Definition || Schaltung&lt;br /&gt;
|- &lt;br /&gt;
| ,R,C,,R,LL;IC1&amp;gt;p,UR1!,Ua_,Ue- || :[[Datei:ClipCapIt-181127-213036.PNG|300px]]&lt;br /&gt;
|-&lt;br /&gt;
| U,R,R,A;UR1,UR2,IR1&amp;gt;1,IA1- || :[[Datei:ClipCapIt-181127-213202.PNG|300px]]&lt;br /&gt;
|-&lt;br /&gt;
| U,R,R,A;UR1,UR2,IR1&amp;gt;1,IA1-,A1:.,R2:Rx,URx&amp;gt;x || :[[Datei:ClipCapIt-181127-213502.PNG|300px]]&lt;br /&gt;
|-&lt;br /&gt;
| ,R,R;Ue?,Ie-,UR1?,UR2&amp;gt;a || :[[Datei:ClipCapIt-181127-213912.PNG|300px]]&lt;br /&gt;
|-&lt;br /&gt;
| ,R,C?,, || :[[Datei:ClipCapIt-190322-142038.PNG|300px]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==Datensätze==&lt;br /&gt;
* Das Plugin erstellt automatisch beim Beenden des Plugin-Editors die benötigten Datensätze&lt;br /&gt;
* Für alle Bauteilwert darf aktuell nur ein reeller und kein komplexer Wert verwendet werden&lt;br /&gt;
* Für Bauteile kann man den zugehörigen Datensatz löschen und durch eine Berechnung in Maxima überschreiben (Der Datensatz wird aber dann aktuell jedesmal wenn man in den Plugin-Dialog wechselt neu angelegt -&amp;gt; Bug)&lt;br /&gt;
&lt;br /&gt;
==Verwendung des Plugins in der Frage==&lt;br /&gt;
===Einfügen von Angabewerten===&lt;br /&gt;
Im Frageeditor kann man mit der rechten Maustaste und Plugin-Angabe die Angabe für alle generierten Datensätze in den Fragetext einfügen lassen.&lt;br /&gt;
:[[Datei:ClipCapIt-181127-214344.PNG]]&lt;br /&gt;
Wird später das Plugin verändert wird dieser Test &#039;&#039;&#039;nicht automatisch&#039;&#039;&#039; nachgeführt. Er muss dann entweder gelöscht und neu eingefügt, oder händisch angepasst werden.&lt;br /&gt;
&lt;br /&gt;
Beispiel:&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Schaltung || Angabe&lt;br /&gt;
|+&lt;br /&gt;
| :[[Datei:ClipCapIt-181127-214655.PNG]] || $U_{Q1}={UQ1}$, $R_{1}={R1}$, $C_{1}={C1}$ , $f={f}$&lt;br /&gt;
|+&lt;br /&gt;
|}&lt;br /&gt;
			&lt;br /&gt;
===Einfügen von Graphiken===&lt;br /&gt;
Eine Graphik kann durch das Plugin-Tag &lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
[PIG pluginname &amp;quot;typ parameter\&amp;quot;/]&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
im Fragetext eingefügt werden. Dies erfolgt entweder direkt über die Eingabe des Textes oder über die rechte Maustaste im Fragetext-Editor.&lt;br /&gt;
&lt;br /&gt;
Folgende Parameter können angegeben werden:&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Graphiktyp || typ parameter || Beschreibung || Beispiel&lt;br /&gt;
|+	      &lt;br /&gt;
| Schaltung || keine Parameter ||  || [PIG plugin1]&lt;br /&gt;
|+&lt;br /&gt;
| Schaltung || S W,w20 || &lt;br /&gt;
W,werte..Werte der Bauteile drucken&amp;lt;br&amp;gt;&lt;br /&gt;
w20..Breite in Prozent des Bildschirms&amp;lt;br&amp;gt;&lt;br /&gt;
 || [PIG plugin1 &amp;quot;S W,w60\&amp;quot;/]&lt;br /&gt;
|+&lt;br /&gt;
	      &lt;br /&gt;
| Bodediagramm || BODE UR1,W,w20 || &lt;br /&gt;
erster Parameter ist die Ausgangs-Spannung oder der Ausgangs-Strom &amp;lt;br&amp;gt;&lt;br /&gt;
weitere Parameter durch Komma getrennt&amp;lt;br&amp;gt;&lt;br /&gt;
O..Frequenzachse Kreisfrequenz&amp;lt;br&amp;gt;&lt;br /&gt;
B,BF..Betragsfrequenzgang mit Frequenzachse in Hz&amp;lt;br&amp;gt;&lt;br /&gt;
BO..Betragsfrequenzgang mit Frequenzachse als Kreisfrequenz &amp;lt;br&amp;gt;&lt;br /&gt;
W,WF..Winkelfrequenzgang mit Frequenzachse in Hz&amp;lt;br&amp;gt;&lt;br /&gt;
WO..Winkelfrequenzgang mit Frequenzachse als Kreisfrequenz&amp;lt;br&amp;gt;&lt;br /&gt;
w50..Breite in Prozent des Bildschirms	      &lt;br /&gt;
 || [PIG plugin1 &amp;quot;bode UC2&amp;quot;/]&lt;br /&gt;
|+&lt;br /&gt;
&lt;br /&gt;
| Zeigerdiagramm || ZD w40 || &lt;br /&gt;
Parameter durch Komma getrennt&amp;lt;br&amp;gt;&lt;br /&gt;
U Zeigerdiagramm der Spannungen&amp;lt;br&amp;gt;&lt;br /&gt;
I Zeigerdiagramm der Ströme&amp;lt;br&amp;gt;&lt;br /&gt;
UI Zeigerdiagramm der Ströme und Spannungen&amp;lt;br&amp;gt;&lt;br /&gt;
UR1 erzwingt das Zeichnen der Spannung UR1&amp;lt;br&amp;gt;&lt;br /&gt;
IC1 erzwingt das Zeichnen des Stromes IC1&amp;lt;br&amp;gt;&lt;br /&gt;
u unterstreicht alle Ströme und Spannungen&amp;lt;br&amp;gt;&lt;br /&gt;
UR1? zeichnet den Zeiger ohne Beschriftung&amp;lt;br&amp;gt;&lt;br /&gt;
UR1/ die Beschriftung erfolgt auf der anderen Seite des Zeigers&amp;lt;br&amp;gt;&lt;br /&gt;
UR2- Die Spannung wird nicht gezeichnet&amp;lt;br&amp;gt;&lt;br /&gt;
P(UR1,UR2,IC1) nur die angegebenen Spannungen und Ströme werden gezeichnet&amp;lt;br&amp;gt;&lt;br /&gt;
w50 Breite in Prozent des Bildschirms	&amp;lt;br&amp;gt;&lt;br /&gt;
noscale keine Angabe über die Größe der Spannungen und Ströme&amp;lt;br&amp;gt;&lt;br /&gt;
nolegend keine Beschriftung der Spannungen und Ströme&amp;lt;br&amp;gt;      &lt;br /&gt;
 || [PIG plugin1 &amp;quot;zd UI,w50&amp;quot;/]&lt;br /&gt;
|+&lt;br /&gt;
&lt;br /&gt;
| Ortskurve || OK UC1,w20 || &lt;br /&gt;
erster Parameter ist die Ausgangs-Spannung oder der Ausgangs-Strom &amp;lt;br&amp;gt;&lt;br /&gt;
weitere Parameter durch Komma getrennt&amp;lt;br&amp;gt;&lt;br /&gt;
w50..Breite in Prozent des Bildschirms		      &lt;br /&gt;
 || [PIG plugin1 &amp;quot;ok UC2,w40\&amp;quot;/]&lt;br /&gt;
|+&lt;br /&gt;
|}	 &lt;br /&gt;
Bodediagramm und Ortskurve werden grundsätzlich als Verhältnis von &lt;br /&gt;
angegebener Ausgangsspannung oder Ausgangsstrom zur Eingangsspannung&lt;br /&gt;
oder zum Eingangsstromg berechnet.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Zeichenelemente des Plot-Plugins===&lt;br /&gt;
Durch Strichpunkt getrennt können auch die [[Plot#vordefinierte_graphische_Funktionen|Zeichenelemente]] des Plot-Plugins eingefügt werden.&lt;br /&gt;
&lt;br /&gt;
Das Koordinatensystem des Bildschirmfensters hat den Nullpunkt links unten.&lt;br /&gt;
&lt;br /&gt;
Die positive horizontale Achse geht von links nach rechts von 0 bis 100 und bei Schaltungen von 0 bis zur Schaltungsbreite wobei ein Widerstand eine Länge von 3 hat.&lt;br /&gt;
&lt;br /&gt;
Die postitive vertikale Achse reicht unten nach oben und beginnt unten bei 0. Der maximale Wert ist abhängig vom Seitenverhältnis des Fensters.&lt;br /&gt;
&lt;br /&gt;
Beispiele:&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Plugin-Definition || PIG-Tag || Bild&lt;br /&gt;
|-&lt;br /&gt;
| ,R,R,,R,LL;Ia || S w,w50;loop(2.5,1.5,0.6,tex=&amp;quot;I&amp;quot;);loop(7.5,1.5,0.6,tex=&amp;quot;II&amp;quot;);circle(5,4,0.3,color=red);text(5,4.7,tex=&amp;quot;III&amp;quot;) || &lt;br /&gt;
:[[Datei:ClipCapIt-200603-133148.PNG|200px]]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Maximafeld===&lt;br /&gt;
Im Maximafeld kann ein Satz von Berechnungsformeln für das Plugin über den Tag&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
[PIM pluginname/]&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
automatische eingefügt werden. Dieses Tag kann auch über die rechte Maustaste im Maximafeld eingefügt werden. D&lt;br /&gt;
Das PIM-Tag wird vor der Maxima-Berechnung automatisch durch die Formeln des Plugins ersetzt.&lt;br /&gt;
&lt;br /&gt;
Folgende Variablen werden im Maxima-Feld definiert und können für das Ergebnis &lt;br /&gt;
verwendet werden:&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Variable|| Beschreibung || Ergebnistyp&lt;br /&gt;
|- &lt;br /&gt;
| UR1 || Spannung am Widerstand R1 || Polynombruch im s-Bereich&lt;br /&gt;
|-&lt;br /&gt;
| IC1 || Strom im Kondensator C1 || Polynombruch im s-Bereich&lt;br /&gt;
|-&lt;br /&gt;
| cUS1 || Spannung an der Serienschaltung S1 als komplexe Zahl || komplexe Zahl&lt;br /&gt;
|-&lt;br /&gt;
| absUS1 || Absolutbetrag der komplexen Spannung US1 || double&lt;br /&gt;
|-&lt;br /&gt;
| argUP1 || Winkel der komplexen Spannung UP1 || double&lt;br /&gt;
|-&lt;br /&gt;
| reUR1 || Realteil der komplexen Spannung UR1 || double&lt;br /&gt;
|-&lt;br /&gt;
| imUC1 || Imaginärteil der komplexen Spannung UC1 || double&lt;br /&gt;
|- &lt;br /&gt;
| cSR1 || komplexe Scheinleistung am Bauteil R1 || komplexe Zahl&lt;br /&gt;
|-&lt;br /&gt;
| SR1 || Absolutbetrag der Scheinleistung am Bauteil R1 || double&lt;br /&gt;
|-&lt;br /&gt;
| argSR1 || Winkel der Scheinleistung am Bauteil R1 || double&lt;br /&gt;
|-&lt;br /&gt;
| PR1 || Wirkleistung am Bauteil R1 || double&lt;br /&gt;
|-&lt;br /&gt;
| QR1 || Blindleistung am Bauteil R1 || double&lt;br /&gt;
|-&lt;br /&gt;
| Zges || Gesamtimpedanz wenn als Zweipol darstellbar || Polynombruch in s&lt;br /&gt;
|-&lt;br /&gt;
| Ue || Gesamtspannung am Eingang eines Zweipols oder Vierpols || Polynombruch in s&lt;br /&gt;
|-&lt;br /&gt;
| Ie || Gesamtstrom am Eingang eines Zweipols oder Vierpols || Polynombruch in s&lt;br /&gt;
|-&lt;br /&gt;
| cZges || komplexe Gesamtimpedanz || komplexe Zahl&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Category:Plugins]]&lt;/div&gt;</summary>
		<author><name>Ckral</name></author>
	</entry>
	<entry>
		<id>https://wiki.letto.at/wiki/index.php?title=Wsr&amp;diff=3128</id>
		<title>Wsr</title>
		<link rel="alternate" type="text/html" href="https://wiki.letto.at/wiki/index.php?title=Wsr&amp;diff=3128"/>
		<updated>2022-08-21T17:28:12Z</updated>

		<summary type="html">&lt;p&gt;Ckral: Korrektur von argS1 auf argSR1&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Plugin WSR=&lt;br /&gt;
&lt;br /&gt;
Zeichnet lineare elektrische Schaltungen und liefert auch das mathematische Modell in Form von Maxima-Befehlen.&lt;br /&gt;
&lt;br /&gt;
==Definition der Schaltung==&lt;br /&gt;
===Schaltungselemente===&lt;br /&gt;
Die Schaltung wird im Plugindialog über einen String(Zeichenkette) definiert, wobei folgende Zeichen definiert sind:&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Name || Bedeutung || Symbol&lt;br /&gt;
|-&lt;br /&gt;
| R || Widerstand || :[[Datei:ClipCapIt-181123-103129.PNG]]&lt;br /&gt;
|-&lt;br /&gt;
| Z || komplexe Impedanz von der Frequenz unabhängig || :[[Datei:ClipCapIt-181123-103129.PNG]]&lt;br /&gt;
|-&lt;br /&gt;
| C || Kondensator || :[[Datei:ClipCapIt-181123-103156.PNG]]&lt;br /&gt;
|-&lt;br /&gt;
| L || Induktivität || :[[Datei:ClipCapIt-181127-205320.PNG]]&lt;br /&gt;
|-&lt;br /&gt;
| LL || Leerlauf oder Unterbrechung || :[[Datei:ClipCapIt-181127-091706.PNG]]&lt;br /&gt;
|-&lt;br /&gt;
| KS || Drahtbrücke oder Kurzschluss || :[[Datei:ClipCapIt-181127-091730.PNG]]&lt;br /&gt;
|-&lt;br /&gt;
| DB || Drahtbrücke ohne besondere Funktion || :[[Datei:ClipCapIt-181127-091730.PNG]]&lt;br /&gt;
|-&lt;br /&gt;
| U || Spannungsquelle || :[[Datei:ClipCapIt-181127-091816.PNG]]&lt;br /&gt;
|-&lt;br /&gt;
| UR || Spannungsquelle in Rückwärtsrichtung || :[[Datei:ClipCapIt-181127-091844.PNG]]&lt;br /&gt;
|-&lt;br /&gt;
| UW || Wechselspannungsquelle || :[[Datei:ClipCapIt-181127-091904.PNG]]&lt;br /&gt;
|-&lt;br /&gt;
| UWR || Wechselspannungsquelle in Rückwärtsrichtung || :[[Datei:ClipCapIt-181127-092800.PNG]]&lt;br /&gt;
|-&lt;br /&gt;
| BAT || Batterie als Spannungsquelle || :[[Datei:ClipCapIt-181127-100455.PNG]]&lt;br /&gt;
|-&lt;br /&gt;
| BATR || Batterie als Spannungsquelle in Rückwärtsrichtung || :[[Datei:ClipCapIt-181127-100522.PNG]]&lt;br /&gt;
|-&lt;br /&gt;
| I || Stromquelle || :[[Datei:ClipCapIt-181127-100611.PNG]] &lt;br /&gt;
|-&lt;br /&gt;
| IR || Stromquelle in Rückwärtsrichtung || :[[Datei:ClipCapIt-181127-100715.PNG]]&lt;br /&gt;
|-&lt;br /&gt;
| A || Amperemeter || :[[Datei:ClipCapIt-181127-100748.PNG]]&lt;br /&gt;
|-&lt;br /&gt;
| AR || Amperemeter in Rückwärtsrichtung || :[[Datei:ClipCapIt-181127-100829.PNG]]&lt;br /&gt;
|-&lt;br /&gt;
| V || Voltmeter || :[[Datei:ClipCapIt-181127-100902.PNG]]&lt;br /&gt;
|-&lt;br /&gt;
| VR || Voltmeter in Rückwärtsrichtung || :[[Datei:ClipCapIt-181127-103105.PNG]]&lt;br /&gt;
|-&lt;br /&gt;
| Par(R,R) || Parallelschaltung von zwei Widerständen || :[[Datei:ClipCapIt-181127-103152.PNG]]&lt;br /&gt;
|-&lt;br /&gt;
| Ser(R,R) || Serienschaltung von zwei Widerständen || :[[Datei:ClipCapIt-181127-103220.PNG]]&lt;br /&gt;
|-&lt;br /&gt;
| B(R1,R2,R3,R4,R5) || Brückenschaltung von 5 Bauelementen || :[[Datei:ClipCapIt-181127-103314.PNG]]&lt;br /&gt;
|-&lt;br /&gt;
| B(R) || Brückenschaltung von 5 Widerständen mit verschiedenen Werten || :[[Datei:ClipCapIt-181127-103314.PNG]]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Die Verschaltung der Bauelement erfolgt über die folgenden Operatoren:&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Operator || Priorität || Bedeutung &lt;br /&gt;
|-&lt;br /&gt;
| * || 15 || Parallelschaltung&lt;br /&gt;
|-&lt;br /&gt;
| + || 10 || Serienschaltung&lt;br /&gt;
|-&lt;br /&gt;
| ? ||    || Wird nach einem Bauteil ein Fragezeichen gesetzt, so wird der Bauteil in der Angabe nicht angegeben und der Bauteilwert wird in der Schaltung nicht gezeichnet&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Zusammenschaltung von Zweipolen===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Schaltung || Bedeutung || Beispiel || Bild&lt;br /&gt;
|+&lt;br /&gt;
| einzelner Zweipol als Serienschaltung || Wird horizontal dargestellt und ohne Beistrich definiert || R+C || &lt;br /&gt;
:[[Datei:ClipCapIt-181123-102901.PNG]]&lt;br /&gt;
|+&lt;br /&gt;
| einzelner Zweipol als Parallelschaltung || Wird horizontal dargestellt und ohne Beistrich definiert || R*C ||&lt;br /&gt;
:[[Datei:ClipCapIt-181127-210445.PNG]]&lt;br /&gt;
|+&lt;br /&gt;
| senkrechter Zweipol || führt bei einigen Berechnungen noch zu Fehlern! || ,R+C || &lt;br /&gt;
:[[Datei:ClipCapIt-181123-103043.PNG]]&lt;br /&gt;
|+&lt;br /&gt;
| Links offene Schaltung mit einer Eingangsspannung Ue und zwei Bauteilen || beginnt mit einem Komma  || ,R,C || &lt;br /&gt;
:[[Datei:ClipCapIt-181127-210517.PNG]]&lt;br /&gt;
|+&lt;br /&gt;
| Spannungsquelle mit zwei Bauteilen || || U,R,C || :[[Datei:ClipCapIt-181127-210707.PNG]]&lt;br /&gt;
|+&lt;br /&gt;
| Vierpol || || ,R,C,, || :[[Datei:ClipCapIt-181127-210817.PNG]]&lt;br /&gt;
|+&lt;br /&gt;
| Vierpol mit 3 Elementen || || ,R1,R2,R3, || :[[Datei:ClipCapIt-181127-210922.PNG]]&lt;br /&gt;
|+&lt;br /&gt;
| Vierpol als T-Glied || || ,R1,R2,,R3,LL || :[[Datei:ClipCapIt-181127-211052.PNG]]&lt;br /&gt;
|+&lt;br /&gt;
| Vierpol als Pi-Glied || || ,,R1,,R2,R3,, || :[[Datei:ClipCapIt-181127-211158.PNG]]&lt;br /&gt;
|+&lt;br /&gt;
| Zweipol mit mehreren Elementen || || ,R1,R2,R3,R4,R5,R6 || :[[Datei:ClipCapIt-181127-211246.PNG]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===angezeigte Spannungen und Ströme===&lt;br /&gt;
* Die angezeigten Ströme und Spannung können nach der Schaltungsdefinition durch einen Strichpunkt getrennt erfolgen. &lt;br /&gt;
* Sie werden einfach durch Beistrich getrennt angegeben&lt;br /&gt;
Folgenden Definitionen sind hierbei möglich:&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Operator || Beispiel || Bedeutung &lt;br /&gt;
|-&lt;br /&gt;
| ohne Operator || UR1 || der Spannungspfeil für R1 wird gezeichnet&lt;br /&gt;
|-&lt;br /&gt;
| u || || alle Spannungs- und Strompfeile werden unterstrichen&lt;br /&gt;
|-&lt;br /&gt;
| _ || UC1_ || Das Größensymbol wird in der Schaltung unterstrichen&lt;br /&gt;
|-&lt;br /&gt;
| - || Ue- || Der Pfeil wird in der Schaltung nicht mehr gezeichnet&lt;br /&gt;
|-&lt;br /&gt;
| ! || IC1! || Der Absolutbetrag des berechneten Wertes wird zum Pfeil dazugeschrieben&lt;br /&gt;
|-&lt;br /&gt;
| ? || UR1? || Der Pfeil wird ohne Namen gezeichnet&lt;br /&gt;
|-&lt;br /&gt;
| &amp;gt; || UR1&amp;gt;x || Der Index der Größe wird in Schaltung und Zeigerdiagramm ausgetauscht. In diesem Beispiel wird Ux statt UR1 geschrieben. In Maxima bleibt der Index unverändert.&lt;br /&gt;
|-&lt;br /&gt;
| : || R1:Rx || Ein Bauteilname kann umbenannt werden. Hier R1 auf Rx.&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
Die Operatoren _-!? können auch nach einer Änderung mit &amp;gt; zusätzlich verwendet werden wie zB: UR4&amp;gt;x!_ &lt;br /&gt;
:[[Datei:ClipCapIt-181127-212621.PNG]]&lt;br /&gt;
&lt;br /&gt;
===Beispiele===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Definition || Schaltung&lt;br /&gt;
|- &lt;br /&gt;
| ,R,C,,R,LL;IC1&amp;gt;p,UR1!,Ua_,Ue- || :[[Datei:ClipCapIt-181127-213036.PNG|300px]]&lt;br /&gt;
|-&lt;br /&gt;
| U,R,R,A;UR1,UR2,IR1&amp;gt;1,IA1- || :[[Datei:ClipCapIt-181127-213202.PNG|300px]]&lt;br /&gt;
|-&lt;br /&gt;
| U,R,R,A;UR1,UR2,IR1&amp;gt;1,IA1-,A1:.,R2:Rx,URx&amp;gt;x || :[[Datei:ClipCapIt-181127-213502.PNG|300px]]&lt;br /&gt;
|-&lt;br /&gt;
| ,R,R;Ue?,Ie-,UR1?,UR2&amp;gt;a || :[[Datei:ClipCapIt-181127-213912.PNG|300px]]&lt;br /&gt;
|-&lt;br /&gt;
| ,R,C?,, || :[[Datei:ClipCapIt-190322-142038.PNG|300px]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==Datensätze==&lt;br /&gt;
* Das Plugin erstellt automatisch beim Beenden des Plugin-Editors die benötigten Datensätze&lt;br /&gt;
* Für alle Bauteilwert darf aktuell nur ein reeller und kein komplexer Wert verwendet werden&lt;br /&gt;
* Für Bauteile kann man den zugehörigen Datensatz löschen und durch eine Berechnung in Maxima überschreiben (Der Datensatz wird aber dann aktuell jedesmal wenn man in den Plugin-Dialog wechselt neu angelegt -&amp;gt; Bug)&lt;br /&gt;
&lt;br /&gt;
==Verwendung des Plugins in der Frage==&lt;br /&gt;
===Einfügen von Angabewerten===&lt;br /&gt;
Im Frageeditor kann man mit der rechten Maustaste und Plugin-Angabe die Angabe für alle generierten Datensätze in den Fragetext einfügen lassen.&lt;br /&gt;
:[[Datei:ClipCapIt-181127-214344.PNG]]&lt;br /&gt;
Wird später das Plugin verändert wird dieser Test &#039;&#039;&#039;nicht automatisch&#039;&#039;&#039; nachgeführt. Er muss dann entweder gelöscht und neu eingefügt, oder händisch angepasst werden.&lt;br /&gt;
&lt;br /&gt;
Beispiel:&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Schaltung || Angabe&lt;br /&gt;
|+&lt;br /&gt;
| :[[Datei:ClipCapIt-181127-214655.PNG]] || $U_{Q1}={UQ1}$, $R_{1}={R1}$, $C_{1}={C1}$ , $f={f}$&lt;br /&gt;
|+&lt;br /&gt;
|}&lt;br /&gt;
			&lt;br /&gt;
===Einfügen von Graphiken===&lt;br /&gt;
Eine Graphik kann durch das Plugin-Tag &lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
[PIG pluginname &amp;quot;typ parameter\&amp;quot;/]&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
im Fragetext eingefügt werden. Dies erfolgt entweder direkt über die Eingabe des Textes oder über die rechte Maustaste im Fragetext-Editor.&lt;br /&gt;
&lt;br /&gt;
Folgende Parameter können angegeben werden:&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Graphiktyp || typ parameter || Beschreibung || Beispiel&lt;br /&gt;
|+	      &lt;br /&gt;
| Schaltung || keine Parameter ||  || [PIG plugin1]&lt;br /&gt;
|+&lt;br /&gt;
| Schaltung || S W,w20 || &lt;br /&gt;
W,werte..Werte der Bauteile drucken&amp;lt;br&amp;gt;&lt;br /&gt;
w20..Breite in Prozent des Bildschirms&amp;lt;br&amp;gt;&lt;br /&gt;
 || [PIG plugin1 &amp;quot;S W,w60\&amp;quot;/]&lt;br /&gt;
|+&lt;br /&gt;
	      &lt;br /&gt;
| Bodediagramm || BODE UR1,W,w20 || &lt;br /&gt;
erster Parameter ist die Ausgangs-Spannung oder der Ausgangs-Strom &amp;lt;br&amp;gt;&lt;br /&gt;
weitere Parameter durch Komma getrennt&amp;lt;br&amp;gt;&lt;br /&gt;
O..Frequenzachse Kreisfrequenz&amp;lt;br&amp;gt;&lt;br /&gt;
B,BF..Betragsfrequenzgang mit Frequenzachse in Hz&amp;lt;br&amp;gt;&lt;br /&gt;
BO..Betragsfrequenzgang mit Frequenzachse als Kreisfrequenz &amp;lt;br&amp;gt;&lt;br /&gt;
W,WF..Winkelfrequenzgang mit Frequenzachse in Hz&amp;lt;br&amp;gt;&lt;br /&gt;
WO..Winkelfrequenzgang mit Frequenzachse als Kreisfrequenz&amp;lt;br&amp;gt;&lt;br /&gt;
w50..Breite in Prozent des Bildschirms	      &lt;br /&gt;
 || [PIG plugin1 &amp;quot;bode UC2&amp;quot;/]&lt;br /&gt;
|+&lt;br /&gt;
&lt;br /&gt;
| Zeigerdiagramm || ZD w40 || &lt;br /&gt;
Parameter durch Komma getrennt&amp;lt;br&amp;gt;&lt;br /&gt;
U Zeigerdiagramm der Spannungen&amp;lt;br&amp;gt;&lt;br /&gt;
I Zeigerdiagramm der Ströme&amp;lt;br&amp;gt;&lt;br /&gt;
UI Zeigerdiagramm der Ströme und Spannungen&amp;lt;br&amp;gt;&lt;br /&gt;
UR1 erzwingt das Zeichnen der Spannung UR1&amp;lt;br&amp;gt;&lt;br /&gt;
IC1 erzwingt das Zeichnen des Stromes IC1&amp;lt;br&amp;gt;&lt;br /&gt;
u unterstreicht alle Ströme und Spannungen&amp;lt;br&amp;gt;&lt;br /&gt;
UR1? zeichnet den Zeiger ohne Beschriftung&amp;lt;br&amp;gt;&lt;br /&gt;
UR1/ die Beschriftung erfolgt auf der anderen Seite des Zeigers&amp;lt;br&amp;gt;&lt;br /&gt;
UR2- Die Spannung wird nicht gezeichnet&amp;lt;br&amp;gt;&lt;br /&gt;
P(UR1,UR2,IC1) nur die angegebenen Spannungen und Ströme werden gezeichnet&amp;lt;br&amp;gt;&lt;br /&gt;
w50 Breite in Prozent des Bildschirms	&amp;lt;br&amp;gt;&lt;br /&gt;
noscale keine Angabe über die Größe der Spannungen und Ströme&amp;lt;br&amp;gt;&lt;br /&gt;
nolegend keine Beschriftung der Spannungen und Ströme&amp;lt;br&amp;gt;      &lt;br /&gt;
 || [PIG plugin1 &amp;quot;zd UI,w50&amp;quot;/]&lt;br /&gt;
|+&lt;br /&gt;
&lt;br /&gt;
| Ortskurve || OK UC1,w20 || &lt;br /&gt;
erster Parameter ist die Ausgangs-Spannung oder der Ausgangs-Strom &amp;lt;br&amp;gt;&lt;br /&gt;
weitere Parameter durch Komma getrennt&amp;lt;br&amp;gt;&lt;br /&gt;
w50..Breite in Prozent des Bildschirms		      &lt;br /&gt;
 || [PIG plugin1 &amp;quot;ok UC2,w40\&amp;quot;/]&lt;br /&gt;
|+&lt;br /&gt;
|}	 &lt;br /&gt;
Bodediagramm und Ortskurve werden grundsätzlich als Verhältnis von &lt;br /&gt;
angegebener Ausgangsspannung oder Ausgangsstrom zur Eingangsspannung&lt;br /&gt;
oder zum Eingangsstromg berechnet.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Zeichenelemente des Plot-Plugins===&lt;br /&gt;
Durch Strichpunkt getrennt können auch die [[Plot#vordefinierte_graphische_Funktionen|Zeichenelemente]] des Plot-Plugins eingefügt werden.&lt;br /&gt;
&lt;br /&gt;
Das Koordinatensystem des Bildschirmfensters hat den Nullpunkt links unten.&lt;br /&gt;
&lt;br /&gt;
Die positive horizontale Achse geht von links nach rechts von 0 bis 100 und bei Schaltungen von 0 bis zur Schaltungsbreite wobei ein Widerstand eine Länge von 3 hat.&lt;br /&gt;
&lt;br /&gt;
Die postitive vertikale Achse reicht unten nach oben und beginnt unten bei 0. Der maximale Wert ist abhängig vom Seitenverhältnis des Fensters.&lt;br /&gt;
&lt;br /&gt;
Beispiele:&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Plugin-Definition || PIG-Tag || Bild&lt;br /&gt;
|-&lt;br /&gt;
| ,R,R,,R,LL;Ia || S w,w50;loop(2.5,1.5,0.6,tex=&amp;quot;I&amp;quot;);loop(7.5,1.5,0.6,tex=&amp;quot;II&amp;quot;);circle(5,4,0.3,color=red);text(5,4.7,tex=&amp;quot;III&amp;quot;) || &lt;br /&gt;
:[[Datei:ClipCapIt-200603-133148.PNG|200px]]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Maximafeld===&lt;br /&gt;
Im Maximafeld kann ein Satz von Berechnungsformeln für das Plugin über den Tag&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
[PIM pluginname/]&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
automatische eingefügt werden. Dieses Tag kann auch über die rechte Maustaste im Maximafeld eingefügt werden. D&lt;br /&gt;
Das PIM-Tag wird vor der Maxima-Berechnung automatisch durch die Formeln des Plugins ersetzt.&lt;br /&gt;
&lt;br /&gt;
Folgende Variablen werden im Maxima-Feld definiert und können für das Ergebnis &lt;br /&gt;
verwendet werden:&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Variable|| Beschreibung || Ergebnistyp&lt;br /&gt;
|- &lt;br /&gt;
| UR1 || Spannung am Widerstand R1 || Polynombruch im s-Bereich&lt;br /&gt;
|-&lt;br /&gt;
| IC1 || Strom im Kondensator C1 || Polynombruch im s-Bereich&lt;br /&gt;
|-&lt;br /&gt;
| cUS1 || Spannung an der Serienschaltung S1 als komplexe Zahl || komplexe Zahl&lt;br /&gt;
|-&lt;br /&gt;
| absUS1 || Absolutbetrag der komplexen Spannung US1 || double&lt;br /&gt;
|-&lt;br /&gt;
| argUP1 || Winkel der komplexen Spannung UP1 im Radiantenmaß || double&lt;br /&gt;
|-&lt;br /&gt;
| reUR1 || Realteil der komplexen Spannung UR1 || double&lt;br /&gt;
|-&lt;br /&gt;
| imUC1 || Imaginärteil der komplexen Spannung UC1 || double&lt;br /&gt;
|- &lt;br /&gt;
| cSR1 || komplexe Scheinleistung am Bauteil R1 || komplexe Zahl&lt;br /&gt;
|-&lt;br /&gt;
| SR1 || Absolutbetrag der Scheinleistung am Bauteil R1 || double&lt;br /&gt;
|-&lt;br /&gt;
| argSR1 || Winkel der Scheinleistung am Bauteil R1 || double&lt;br /&gt;
|-&lt;br /&gt;
| PR1 || Wirkleistung am Bauteil R1 || double&lt;br /&gt;
|-&lt;br /&gt;
| QR1 || Blindleistung am Bauteil R1 || double&lt;br /&gt;
|-&lt;br /&gt;
| Zges || Gesamtimpedanz wenn als Zweipol darstellbar || Polynombruch in s&lt;br /&gt;
|-&lt;br /&gt;
| Ue || Gesamtspannung am Eingang eines Zweipols oder Vierpols || Polynombruch in s&lt;br /&gt;
|-&lt;br /&gt;
| Ie || Gesamtstrom am Eingang eines Zweipols oder Vierpols || Polynombruch in s&lt;br /&gt;
|-&lt;br /&gt;
| cZges || komplexe Gesamtimpedanz || komplexe Zahl&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Category:Plugins]]&lt;/div&gt;</summary>
		<author><name>Ckral</name></author>
	</entry>
	<entry>
		<id>https://wiki.letto.at/wiki/index.php?title=Berechnungen&amp;diff=3015</id>
		<title>Berechnungen</title>
		<link rel="alternate" type="text/html" href="https://wiki.letto.at/wiki/index.php?title=Berechnungen&amp;diff=3015"/>
		<updated>2021-11-11T13:54:52Z</updated>

		<summary type="html">&lt;p&gt;Ckral: Spezifikation des 2. Parameters&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Allgemeines =&lt;br /&gt;
Berechnungen werden in mehreren Bereichen der Frageerstellung verwendet und bilden die Basis für [[Fragetypen#Berechnungsfrage|Berechnungsfrage]] und [[Fragetypen#Mehrfachberechnungsfrage|Mehrfachberechnungsfrage]].&lt;br /&gt;
&lt;br /&gt;
Alle Berechnungen unterstützen [[Einheit|Einheiten]] und symbolische Auswertung.&lt;br /&gt;
&lt;br /&gt;
=Grundsätzlicher Aufbau der Ergebnis-Berechnung bei Fragen mit Berechnungen=&lt;br /&gt;
[[Datei:BerechnungSchema.png|mini|hochkant=2.0|Schema der Berechnung]]&lt;br /&gt;
Die Berechnung und die Beurteilung einer Frage teilt sich in 3 grundsätzliche Schritte:&lt;br /&gt;
* Berechnnug der geschlossenen Lösung (Formel) aus den Maxima-Feldern &lt;br /&gt;
* Berechnung des Ergebnisses einer Frage durch Einsetzen der Zahlenwerte aus den Datensätzen in die geschlossene Lösung&lt;br /&gt;
* Beurteilung der Schülereingabe durch Vergleich mit dem Ergebnis&lt;br /&gt;
&lt;br /&gt;
=Konstante=&lt;br /&gt;
Alle Konstante welche in Letto definiert sind beginnen mit einem Prozentzeichen. Verwendet man den Variablennamen ohne Prozenzzeichen, so wird die Konstante wie eine Variable mit dem Wert der Konstanten verwendet.&lt;br /&gt;
&lt;br /&gt;
Liste der definierten Konstanten:&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%&amp;quot; &lt;br /&gt;
| Name || Wert || Beschreibung&lt;br /&gt;
|-&lt;br /&gt;
| %i || i || komplexer Parameter als Lösung der Gleichung x^2=-1&lt;br /&gt;
|-&lt;br /&gt;
| %j || i || komplexer Parameter als Lösung der Gleichung x^2=-1&amp;lt;br&amp;gt;&amp;lt;b&amp;gt;Wichtig:&amp;lt;/b&amp;gt; Wir nur vom Parser unterstützt, nicht von Maxima&lt;br /&gt;
|-&lt;br /&gt;
| %e || 2.718281828459045 || Eulersche Zahl &lt;br /&gt;
|-&lt;br /&gt;
| %pi || 3.141592653589793 || Kreiszahl&lt;br /&gt;
|-&lt;br /&gt;
| %mu0 || magnetische Feldkonstante || 4*%pi*1E-7&#039;Vs/Am&#039;&lt;br /&gt;
|-&lt;br /&gt;
| %m0 || magnetische Feldkonstante (alt, wird bald entfernt werden) || 4*%pi*1E-7&#039;Vs/Am&#039;&lt;br /&gt;
|-&lt;br /&gt;
| %epsilon0 || elektrische Feldkonstante || 8.85418781762039E-12&#039;As/Vm&#039;&lt;br /&gt;
|-&lt;br /&gt;
| %e0 || elektrische Feldkonstante (alt, wird bald entfernt werden) || 8.85418781762039E-12&#039;As/Vm&#039;&lt;br /&gt;
|-&lt;br /&gt;
| %c0 || Lichtgeschwindigkeit || 299792458&#039;m/s&#039;&lt;br /&gt;
|-&lt;br /&gt;
| %Qe || Elementarladung || 1.602176620898E-19As&lt;br /&gt;
|-&lt;br /&gt;
| %g  || Erdbeschleunigung || 9.81&#039;m/s^2&#039;&lt;br /&gt;
|-&lt;br /&gt;
| %NA || Avogadro Konstante || 6.02214085774E23/mol&lt;br /&gt;
|-&lt;br /&gt;
| %k  || Stefan Bolzman Konstante || 1.3806485279E-23&#039;J/K&#039;&lt;br /&gt;
|-&lt;br /&gt;
| %R0 || Universelle Gaskonstante || 8.314459848&#039;J/Kmol&#039;&lt;br /&gt;
|-&lt;br /&gt;
| %h || planksches Wirkungsquantum || 6.6260704081E-34Js&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=Berechnung mit Maxima=&lt;br /&gt;
* Maxima wird &#039;&#039;&#039;nur für symbolische Berechnungen&#039;&#039;&#039; bei der Erstellung von Beispielen verwendet. Hierbei wird, wie schon oberhalb im Schema angegeben, zuerst die Moodle.mac geladen, dann das [[Beispielsammlung Editieren#Maxima-Feld|Maxima-Feld]] berechnet und anschließend die Maxima-Felder aller Teilfragen. Das Ergebnis der Berechnung wird dann als symbolischer Ausdruck im Lösungfeld eingetragen.&lt;br /&gt;
* Da zum Zeitpunkt der &#039;&#039;&#039;Maxima-Berechnung keine Datensätze&#039;&#039;&#039; vorhanden sind, kann keine numerische Berechnung in Maxima durchgeführt werden, welche die [[Datensätze]] benötigt. Dies muss der interne Parser zum Zeitpunkt des Online-Test-Laufes erledigen. Numerische Berechnungen, welche der interne Parser nicht kann können deshalb auch nicht mit Maxima berechnet werden.&lt;br /&gt;
* Da das Lösungsfeld, welches mit Maxima berechnet wird symbolisch ausgewertet wird, können in Maxima sämtliche symbolischen Berechnungsverfahren angewendet werden, welche ein symbolisches Ergebnis liefern und keine numerischen Werte der Datensätze benötigen.&lt;br /&gt;
* Reicht im Maximafeld die Zeilenlänge nicht aus ist es möglich einen defninierten Zeilenumbruch zu realisieren. Schreiben Sie dazu &amp;quot;\&amp;quot; (einfacher Backslash) am Ende der Zeile.  &lt;br /&gt;
* &#039;&#039;&#039;Funktionsdeklarationen&#039;&#039;&#039; wie &#039;&#039;&#039;f(x):=&#039;&#039;&#039;x^2 mit Doppelpunkt-Ist-Gleich sind im Maxima-Feld nur eingeschränkt bis gar &#039;&#039;&#039;nicht verwendbar&#039;&#039;&#039;, da sie vom Parser nicht unterstützt werden.&lt;br /&gt;
* &#039;&#039;&#039;Mengen von Maxima&#039;&#039;&#039; sind in LeTTo n&#039;&#039;&#039;icht verwendbar&#039;&#039;&#039;. LeTTo verwender hierzu eigene Funktionen des Parsers welche mit &amp;quot;set&amp;quot; beginnen und auf Vektoren basieren.&lt;br /&gt;
&lt;br /&gt;
=Berechnung mit dem internen Parser=&lt;br /&gt;
* Der interne Parser kann durch Wahl der Checkbox &amp;quot;Parser&amp;quot; anstatt von Maxima für die Berechnung des Maxima-Feldes verwendet werden. &lt;br /&gt;
* Jedenfalls wird der Parser zur Test-Laufzeit für die Berechnung des Ergebnisses einer Frage aus Lösung und Datensätzen und zum Berechnen der Schülereingabe verwendet.&lt;br /&gt;
&lt;br /&gt;
==Operatoren==&lt;br /&gt;
=== VORSICHT mit MAXIMA ===&lt;br /&gt;
* Einige Operatoren sind in &#039;&#039;&#039;Maxima anders&#039;&#039;&#039;, oder &#039;&#039;&#039;nicht definiert&#039;&#039;&#039;. Möchte man im Maximafeld die Operatoren des Parsers-verwenden, so muss das gesamte Maxima-Feld &#039;&#039;&#039;mit dem Parser gerechnet&#039;&#039;&#039; werden. Man verliert dadurch jedoch die Vorteile der Maxima-Berechnung.&lt;br /&gt;
* Alternativ kann man statt der Operatoren auch &#039;&#039;&#039;Funktionen verwenden&#039;&#039;&#039; (zB: ne() statt != ). Diese werden dann von Maxima zwar nicht ausgewertet, die Berechnung bleibt aber trotzdem korrekt und kann mit Maxima durchgeführt werden.&lt;br /&gt;
* Es gibt einige Funktionen welche in &#039;&#039;&#039;Maxima existieren&#039;&#039;&#039; aber im &#039;&#039;&#039;Parser nicht, oder mit anderem Syntax&#039;&#039;&#039;.&lt;br /&gt;
** Wenn diese von Maxima nicht ausgewertet werden können, da sie &#039;&#039;&#039;Datensätze&#039;&#039;&#039; enthalten welche zu Auswertezeitpunkt von Maxima noch &#039;&#039;&#039;nicht mit Werten belegt&#039;&#039;&#039; sind, &#039;&#039;&#039;dürfen sie in der Berechnung nicht verwendet werden&#039;&#039;&#039;, da der Parser dann damit nichts anfangen kann.&lt;br /&gt;
** Solche Funktionen haben entweder im Parser eine alternative Schreibweise welche auch mit Maxima verwendet werden kann (z.B.: wenn), oder sie können prinzipell nicht verwendet werden. (Für wichtige Funktionsweisen könnte man in zukünftigen Versionen neue Funktionalitäten in den Parser einbauen, die die gewünschte Funktion erfüllen)&lt;br /&gt;
** Ein weiter Möglichkeit für die Verwendung solcher Funktionen ist der Verzicht auf Datensätze in diesen Funktionen, damit diese Funktion beim Auswerten des Maxima-Feldes bereits ausgewertet werden kann und somit der Parser davon nichts mehr sieht.&lt;br /&gt;
** zB:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
if then&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Infix Operatoren===&lt;br /&gt;
====arithmetische Operatoren====&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Operator || Priorität || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| + || 40 || Addition || 4+5 || 9 &lt;br /&gt;
|-&lt;br /&gt;
| - || 40 || Subtraktion || 6-2 || 4&lt;br /&gt;
|-&lt;br /&gt;
| * || 50 || Multiplikation || 4*5 || 20&lt;br /&gt;
|-&lt;br /&gt;
| / || 51 || Division || 20/4 || 5&lt;br /&gt;
|-&lt;br /&gt;
| % || 51 || Divisionsrest || 104%20 || 4&lt;br /&gt;
|-&lt;br /&gt;
| / / || 60 || Parallelschaltung || x / / y || x*y/(x+y)&lt;br /&gt;
|-&lt;br /&gt;
| ^ || 90 || Potenz || 2^3 || 8&lt;br /&gt;
|-&lt;br /&gt;
| .*. || 200 || Operator der intern für eine fehlende bindende Multiplikation verwendet wird || 4x || 4*x&lt;br /&gt;
|-&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
====Bitoperatoren====&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Operator || Priorität || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
||  |  || 20 || Bitweise oder logisches ODER ||| 9|5 &amp;lt;br&amp;gt; true|false || 13 &amp;lt;br&amp;gt;true&lt;br /&gt;
|-&lt;br /&gt;
| or || 20 || Bitweise oder logisches ODER || 9 or 5 || 13&lt;br /&gt;
|-&lt;br /&gt;
| &amp;amp;  || 21 || Bitweise oder logisches UND  || 13&amp;amp;10 || 8&lt;br /&gt;
|-&lt;br /&gt;
| and || 21 || Bitweise oder logisches UND  || 13 and 10 || 8&lt;br /&gt;
|-&lt;br /&gt;
| xor || 22 || Bitweise oder logisches exklusiv oder XOR  || 13 xor 10 || 7&lt;br /&gt;
|-&lt;br /&gt;
| imp || 23 || Bitweise oder logisches impliziert IMP || 13 imp 10 || 8&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;&amp;lt;  || 35 || Bitweise links schieben  || 5&amp;lt;&amp;lt;2 || 20&lt;br /&gt;
|-&lt;br /&gt;
| &amp;gt;&amp;gt;  || 35 || Bitweise rechts schieben || 8&amp;gt;&amp;gt;2 || 2&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
====Vergleichsoperatoren====&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Operator || Priorität || Beschreibung || Beispiel&lt;br /&gt;
|-&lt;br /&gt;
| =  || 3 || Gleichungsoperator || x=y&lt;br /&gt;
|-&lt;br /&gt;
| == || 30 || Gleichungsoperator || x==y&lt;br /&gt;
|-&lt;br /&gt;
| != || 30 || Ungleichungsoperator || x!=y&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt; || 32 || Kleiner || x&amp;lt;y&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;= || 32 || Kleiner gleich || x&amp;lt;=y&lt;br /&gt;
|-&lt;br /&gt;
| &amp;gt; || 32 || größer || x&amp;gt;y&lt;br /&gt;
|-&lt;br /&gt;
| &amp;gt;= || 32 || größer gleich || x&amp;gt;=y&lt;br /&gt;
|}&lt;br /&gt;
====Organisative Operatoren====&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Operator || Priorität || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| , || 0 || Listen-Trennzeichen || x,y ||&lt;br /&gt;
|-&lt;br /&gt;
| $ || 1 || Trennzeichen zwischen mehreren Berechnungen || ||&lt;br /&gt;
|-&lt;br /&gt;
| ; || 1 || Trennzeichen zwischen mehreren Berechnungen || ||&lt;br /&gt;
|-&lt;br /&gt;
| : || 2 || Zuweisung an eine Variablen auf der linken Seite || x:5 || &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Prefix Operatoren===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Operator || Priorität || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| + || 45 || positives Vorzeichen || +5 || 5&lt;br /&gt;
|-&lt;br /&gt;
| - || 45 || negatives Vorzeichen || -(-5) || 5&lt;br /&gt;
|-&lt;br /&gt;
| ~ || 95  || bitweise Inversion einer 64bit-Ganzzahl || ~0x0F0F || 0xFFFFFFFFFFFFF0F0&lt;br /&gt;
|-&lt;br /&gt;
| ! || 120 || logisches NOT || !(3&amp;lt;4) || false&lt;br /&gt;
|-&lt;br /&gt;
| ++ || 130 || Inkrement von Ganzzahlen || ++x || erhöht x um eins und gibt das Ergebnis nach der Erhöhung zurück&lt;br /&gt;
|-&lt;br /&gt;
| -- || 130 || Dekrement von Ganzzahlen || --x || vermindert x um eins und gibt das Ergebnis nach der Verminderung zurück&lt;br /&gt;
|-&lt;br /&gt;
| % || 200 || Prefix für Namen, welche als Konstante definiert sind || %pi || 3.141592653589793&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Suffix Operatoren===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Operator || Priorität || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| ++ || 135 || Inkrement von Ganzzahlen || x++ || erhöht x um eins und gibt den Variablenwert vor der Erhöhung zurück&lt;br /&gt;
|-&lt;br /&gt;
| -- || 135 || Dekrement von Ganzzahlen || x-- || vermindert x um eins und gibt den Variablenwert vor der Verminderung zurück&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==Klammern==&lt;br /&gt;
* () runde Klammern werden für mathematische Ausdrücke zur Klammerung verwendet&lt;br /&gt;
* {} geschwungene Klammer werden im Angabetext für die Namen der Datensätze verwendet&lt;br /&gt;
* [] eckige Klammern werden für Vektoren und Matrizen verwendet&lt;br /&gt;
&lt;br /&gt;
==Funktionen==&lt;br /&gt;
===Funktionen für Ganzzahlen===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| band || bitweises UND || band(4,12) || 4&lt;br /&gt;
|-&lt;br /&gt;
| bor  || bitweises ODER || bor(4,1) || 5&lt;br /&gt;
|-&lt;br /&gt;
| bxor || bitweises EXKLUSIV ODER || band(4,5) || 1&lt;br /&gt;
|-&lt;br /&gt;
| bimp || bitweises Parameter1 impliziert Parameter2 || bimp(13,10) || 8&lt;br /&gt;
|-&lt;br /&gt;
| binv || bitweises NICHT mit 8 bit || binv(0x0F) || 0xF0&lt;br /&gt;
|-&lt;br /&gt;
| shl || Schiebe Ganzzahl bitweise nach links || shl(8,2) || 32&lt;br /&gt;
|-&lt;br /&gt;
| shr || Schiebe Ganzzahl bitweise nach rechts || shr(8,2) || 2&lt;br /&gt;
|-&lt;br /&gt;
| div || Ganzzahldivision, Ergebnis wird abgeschnitten || div(5,2) || 2&lt;br /&gt;
|-&lt;br /&gt;
| inv8  || bitweise Invertieren und die letzten 8 Bit bestimmen  || inv8(0b1001) || 0b11110110&lt;br /&gt;
|-&lt;br /&gt;
| inv16 || bitweise Invertieren und die letzten 16 Bit bestimmen || inv16(0xF0)  || 0xFF0F&lt;br /&gt;
|-&lt;br /&gt;
| inv32 || bitweise Invertieren und die letzten 32 Bit bestimmen || inv32(0xF0)  || 0bFFFFFF0F&lt;br /&gt;
|-&lt;br /&gt;
| inv64 || bitweise Invertieren und die letzten 64 Bit bestimmen || inv64(0xF0)  || 0bFFFFFFFFFFFFFF0F&lt;br /&gt;
|-&lt;br /&gt;
| byte  || Zahl in eine Ganzzahl wandeln und die letzten 8bit der Zahl Abschneiden, Einheit geht verloren  || byte(34.2) || 34&lt;br /&gt;
|-&lt;br /&gt;
| word  || Zahl in eine Ganzzahl wandeln und die letzten 16bit der Zahl Abschneiden, Einheit geht verloren || word(34.2) || 34&lt;br /&gt;
|-&lt;br /&gt;
| int   || Zahl in eine Ganzzahl wandeln und die letzten 32bit der Zahl Abschneiden, Einheit geht verloren || int(34.2) || 34&lt;br /&gt;
|-&lt;br /&gt;
| long  || Zahl in eine Ganzzahl wandeln , Einheit geht verloren || long(34.2) || 34&lt;br /&gt;
|-&lt;br /&gt;
| [[parity]]  || Paritätsberechnung : parity(Parität,Codewortlänge,Datenwort[,Datenwort,....]) || parity(even,7,&amp;quot;xy&amp;quot;) || &lt;br /&gt;
|-&lt;br /&gt;
| [[blockparity]]  || Kreuz oder Blockparität : blockparity(Parität,Codewortlänge,Codewortanzahl,Datenwort[,Datenwort,....]) || blockparity(even,7,3,&amp;quot;abc&amp;quot;) || &lt;br /&gt;
|-&lt;br /&gt;
| [[bcd]]  || Wandelt in eine Long-Zahl in ein Feld aus BCD-kodierten Zahlen um || bcd(124) || [1,2,4]&lt;br /&gt;
|-&lt;br /&gt;
| [[code]] || Code aus mehreren Codeworten zusammensetzen : code(Codewortlänge,Datenwort[,Datenwort,....]) || code(5,4,3,5) || 0b1000001100101&lt;br /&gt;
|-&lt;br /&gt;
| [[hamming]] || Bestimmt den Hamming-Abstand von mehreren Codeworten || hamming(1,2,4,8,16) || 2&lt;br /&gt;
|-&lt;br /&gt;
| [[komplement]] ||  Bildet das Zweierkomplement mit einer negativen Zahl mit einer bestimmten Bitanzahl, fehlt die Bitanzahl, so wird ein 32Bit-2er-komplement gebildet || komplement(-5,8) || 0b11111011&lt;br /&gt;
|-&lt;br /&gt;
| [[bitstream]] || Erzeugt aus einer Ganzzahl einen Bitstrom als String mit einer definierten Anzahl von Bit (MSB werden nötigenfalls mit 0 gefüllt) : bitstream(Daten,Bitanzahl) || bitstream(0x184,12) || &amp;quot;000110000100&amp;quot;&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Funktionen für rationale und Ganzzahlen===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| kgV || berechnet das kleinste gemeinsame Vielfache von mehreren Zahlen || kgV(3,10) || 30&lt;br /&gt;
|-&lt;br /&gt;
| ggT || berechnet den größten gemeinsamen Teiler von mehreren Zahlen || ggT(12,10) || 2&lt;br /&gt;
|- &lt;br /&gt;
| isprim || prüft ob die angegebene Zahl eine Primzahl ist || isprim(13) || true&lt;br /&gt;
|-&lt;br /&gt;
| prims || zerlegt eine Ganzzahl in ihre Primfaktoren || prims(12) || [2,2,3]&lt;br /&gt;
|-&lt;br /&gt;
| defracmix || zerlegt eine rationale Zahl in einen gemischten Bruch aus ganzzahligem Summanden, Zähler und Nenner als Menge&amp;lt;br&amp;gt;Die erhaltene Menge kann mit dem Format-Modfier &#039;&#039;&#039;frac&#039;&#039;&#039; als gemischter Bruch dargestellt werden (siehe [[Zahlendarstellung]]) || defracmix(14/12)&amp;lt;br&amp;gt;defracmix(-15/12)&amp;lt;br&amp;gt;defracmix(3/12) || [1,2/12]&amp;lt;br&amp;gt;[-1,3,12]&amp;lt;br&amp;gt;[0,3,12] &lt;br /&gt;
|-&lt;br /&gt;
| defrac || zerlegt eine rationale Zahl in Zähler und Nenner als Menge &amp;lt;br&amp;gt;Die erhaltene Menge kann mit dem Format-Modfier &#039;&#039;&#039;frac&#039;&#039;&#039; als gemischter Bruch dargestellt werden || defrac(14/12) || [13,12]&lt;br /&gt;
|-&lt;br /&gt;
| frac || erzeugt aus einer Menge aus 2 oder 3 Elementen (von defrac) eine rationale Zahl || frac([3,7])&amp;lt;br&amp;gt;frac([1,2,3]) || 3/7 &amp;lt;br&amp;gt; 5/3&lt;br /&gt;
|-&lt;br /&gt;
| mod || Mathematische Implementierung von [https://de.wikipedia.org/wiki/Division_mit_Rest#Modulo modulo]: Divisionsrest einer Division mit ganzzahligem Ergebnis || mod(5,2) &amp;lt;br&amp;gt; mod(6.2,2.5) &amp;lt;br&amp;gt; mod(-4,3) || 1&amp;lt;br&amp;gt;1.2 &amp;lt;br&amp;gt; 2&lt;br /&gt;
|-&lt;br /&gt;
| mod2 || Symmetrische Implementierung von [https://de.wikipedia.org/wiki/Division_mit_Rest#Modulo modulo]: Divisionsrest einer Division mit ganzzahligem Ergebnis &amp;lt;br&amp;gt;Der Unterschied zu mod liegt in der Behandlung von negativen Zahlen des ersten Arguments &amp;lt;br&amp;gt;Siehe auch Divisionsrest des Parser-Operators % [[Berechnungen#arithmetische_Operatoren]] || mod2(5,2) &amp;lt;br&amp;gt; mod2(6.2,2.5) &amp;lt;br&amp;gt; mod2(-4,3) || 1&amp;lt;br&amp;gt;1.2 &amp;lt;br&amp;gt; -1&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===boolsche Funktionen===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| eq || gleich || eq(4,4) || true&lt;br /&gt;
|-&lt;br /&gt;
| eqruntime || symbolischer Vergleich, welcher &#039;&#039;&#039;symbolisch erst bei der Ergebnisberechnung&#039;&#039;&#039; ausgeführt wird. Muss verwendet werden, wenn bei Vergleichen symbolische Antworten von Schülern (Q0,Q1,...) verwendet werden.  || eqruntime(x+3*y,3*y+x) || true&lt;br /&gt;
|-&lt;br /&gt;
| ne || ungleich || ne(6,4) || true&lt;br /&gt;
|-&lt;br /&gt;
| ge || größer gleich || ge(6,4) || true&lt;br /&gt;
|-&lt;br /&gt;
| le || kleiner gleich || le(6,4) || false&lt;br /&gt;
|-&lt;br /&gt;
| gt || größer || gt(6,4) || true&lt;br /&gt;
|-&lt;br /&gt;
| lt || kleiner || lt(6,4) || false&lt;br /&gt;
|-&lt;br /&gt;
| between || prüft ob Parameter1 kleiner als Parameter2 und Parameter2 kleiner als Parameter 3 || between(3,4,5) || true&lt;br /&gt;
|-&lt;br /&gt;
| land || logisches UND || land(a&amp;lt;b,b&amp;lt;c) || &lt;br /&gt;
|-&lt;br /&gt;
| lor  || logisches ODER || lor(a&amp;lt;b,b&amp;lt;c) || &lt;br /&gt;
|-&lt;br /&gt;
| not  || logisches NICHT. Vorsicht ein symbolisches Ergebnis von Maxima liefert not als Prefix-Operator, welcher vom Parser nicht unterstützt wird ( Verwende statt dessen &#039;&#039;&#039;lnot&#039;&#039;&#039; ) || not(a&amp;lt;b) || &lt;br /&gt;
|-&lt;br /&gt;
| lnot  || logisches NICHT, wie not jedoch wird es von Maxima nicht ausgewertet || lnot(a&amp;lt;b) || &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===arithmetische Funktionen===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| double || Zahl in eine Gleitkommazahl umwandeln, die Einheit geht dabei verloren || double(3.4V) || 3.4&lt;br /&gt;
|-&lt;br /&gt;
| numeric || verwirft die Einheit, wenn eine vorhanden ist und liefert nur den Zahlenwert || numeric(2.3mA) &amp;lt;br&amp;gt; numeric(5%)|| 0.0023 &amp;lt;br&amp;gt; 5&lt;br /&gt;
|-&lt;br /&gt;
| unit || gibt die SI-Einheit mit dem Zahlenwert 1 zurück || unit(3.1kA) &amp;lt;br&amp;gt; unit(5%) || 1A &amp;lt;br&amp;gt; 1%&lt;br /&gt;
|-&lt;br /&gt;
| cround  || Rundet die Zahl kaufmännisch, der zweite Parameter gibt die Anzahl der Kommastellen an, ohne 2.Parameter wird auf Ganzzahlen gerundet, bei komplexen Zahlen wird Betrag und Winkel in Grad gerundet. || cround(23.535,2)&amp;lt;br&amp;gt;cround(2.435arg34.5364°,1) || 23.54&amp;lt;br&amp;gt;2.4arg34.5°&lt;br /&gt;
|-&lt;br /&gt;
| ccround  || Rundet die Zahl kaufmännisch, der zweite Parameter gibt die Anzahl der Kommastellen an, bei komplexe Zahlen wird Real und Imaginärteil gerundet. || ccround(2.4534+5.645*%i,2) || 2.45+5.65i&lt;br /&gt;
|-&lt;br /&gt;
| round  || Rundet die Zahl kaufmännisch, aus Kompatibilitätsgründen zu Maxima hat round nur einen Parameter || round(23.535) || 24&lt;br /&gt;
|-&lt;br /&gt;
| ground || Rundet die Zahl auf die im zweiten Parameter angegebenen gültigen Ziffern || ground(2453.43,2) || 2500&lt;br /&gt;
|-&lt;br /&gt;
| floor  || Rundet auf die größte ganze Zahl, welche kleiner oder gleich x ist || floor(24.5) || 24&lt;br /&gt;
|-&lt;br /&gt;
| trunc  || Schneidet die Zahl nach dem Komma ab || trunc(24.5) || 24&lt;br /&gt;
|-&lt;br /&gt;
| ceiling || ceiling(x) Rundet auf die kleinste ganze Zahl, welche größer oder gleich x ist || ceiling(13.2) || 14&lt;br /&gt;
|-&lt;br /&gt;
| pow || Potenzfunktion || pow(2,3) || 8&lt;br /&gt;
|-&lt;br /&gt;
| par || Parallelschaltung von Widerständen || par(x,y) || x*y/(x+y)&lt;br /&gt;
|-&lt;br /&gt;
| min  || Minimum von mehrere Werten suchen || min(3,5,1) || 1&lt;br /&gt;
|-&lt;br /&gt;
| max  || Maximum von mehreren Werten suchen || max(3,5,1) ||  5&lt;br /&gt;
|-&lt;br /&gt;
| random  || Zufallszahl aus einem definierten Zahlenbereich random(minimal,maximal)&amp;lt;br&amp;gt;VORSICHT! Die Zufallszahl wird bei jedem Aufruf neu berechnet, weshalb sich der Wert bei jedem Anzeigevorgang einer Frage ändert. Sollte sich der berechnete Wert für eine Schülerangabe zwischen Fragestellung und Ergebniskontrolle nicht ändern dürfen (ist der Normalfall) muss man einen &#039;&#039;&#039;Datensatz statt einer Zufallszahl&#039;&#039;&#039; verwenden! &amp;lt;br&amp;gt; Zufallszahlen haben in der Ergebnisberechnung keinen Sinn, und sollten maximal für angezeigte zufällige Werte verwendet werden! || random(2,8) ||  3.4532&lt;br /&gt;
|-&lt;br /&gt;
| randomC  || komplexe Zufallszahl aus einem definierten Zahlenbereich für den Betrag&amp;lt;br&amp;gt;VORSICHT! Die Zufallszahl wird bei jedem Aufruf neu berechnet!  || randomC(2,8) ||  3.4532arg40.3°&lt;br /&gt;
|-&lt;br /&gt;
| signum  || Liefert das Vorzeichen einer Zahl (-1,0,1). Bei einer komplexen Zahl das Vorzeichen des Realteils. || signum(-4) || -1&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Maxima-basierte Funktionen ===&lt;br /&gt;
* Diese Funktionen funktionieren nur wenn Maxima installiert ist und werden immer an Maxima gesendet, auch wenn der interne Parser aktiviert ist.&lt;br /&gt;
* Weiters werden sie bei der Ausgabe als TeX-Formel auch korrekt mit LaTeX gesetzt.&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| integrate || Berechnet das unbestimmte oder bestimmte Integral einer Funktion. || integrate(x^2,x) &amp;lt;br&amp;gt; integrate(x^2,x,0,2) || x^3/3 &amp;lt;br&amp;gt; 8/3  &lt;br /&gt;
|-&lt;br /&gt;
| diff || Berechnet die Ableitung einer Funktion.  || diff(x^2,x)&amp;lt;br&amp;gt;diff(3*x^2,x,2) || x &amp;lt;br&amp;gt; 6&lt;br /&gt;
|-&lt;br /&gt;
| tomaxima || Führt die Berechnung aller Parameter von links nach rechts hintereinander mit Maxima aus. Das Ergebnis ist dann das Ergebnis des letzten Parameters. || tomaxima(y:x^2,y+2) || x^2+2&lt;br /&gt;
|-&lt;br /&gt;
| laplace || Bestimmt die Laplace-Transformierte einer Funktion. || laplace(sin(t),t,s) || 1/(1+s^2)&lt;br /&gt;
|-&lt;br /&gt;
| ilt || Bestimmt die inverse Laplace-Transformierte eine Laplace-Funktion || ilt(1/(1+s),s,t) || e^(-t)&lt;br /&gt;
|-&lt;br /&gt;
| sum || Summenbildung || sum(1/k,k,1,2) || 3/2&lt;br /&gt;
|-&lt;br /&gt;
| product || Produktbildung || product(1/k,k,1,3) || 1/6&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===erweiterte arithmetische Funktionen===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| sigma || Sprungfunktion: sigma(x) liefert 0 für x&amp;lt;0 und 1 für x&amp;gt;=0 || sigma(243.3) || 1&lt;br /&gt;
|-&lt;br /&gt;
| pulse || Rechteckfunktion: &amp;lt;br&amp;gt;pulse(x,x0) ist gleich 1 für x0 &amp;lt; x &amp;lt; x0 + 1, sonst 0&amp;lt;br&amp;gt;pulse(x,x0,L) ist gleich 1 für x0 &amp;lt; x &amp;lt; x0 + L, sonst 0&amp;lt;br&amp;gt;[[Datei:pulse.png|300px]] || pulse(x,2,4) || [[Datei:pulse_x_2_4.png|100px]]&lt;br /&gt;
|-&lt;br /&gt;
| interpol || Interpolationsfunktion zwischen mehreren Stützpunkten in einem Koordinatensystem. &amp;lt;br&amp;gt; interpol(WerteX,WerteY,x) || interpol([0,1,2],[0,3,3],1.5) || 3&lt;br /&gt;
|-&lt;br /&gt;
| periodic || Erzeugt aus einer beliebigen Funktion zwischen 0 und Periodendauer eine periodische Funktion &amp;lt;br&amp;gt; periodic(Variable,Periodendauer,Funktion)&amp;lt;br&amp;gt; periodic(Variable,Periodendauer,Funktionsperiodendauer,Funktion) || ch1(t):periodic(t,5ms,2&#039;Vms-2&#039;*t^2) &amp;lt;br&amp;gt; ch1(t):periodic(t,5ms,1,2V*t^2) || :[[Datei:ClipCapIt-190318-113524.PNG|100px]] &amp;lt;br&amp;gt; :[[Datei:ClipCapIt-190318-113644.PNG|100px]]&lt;br /&gt;
|-&lt;br /&gt;
| numint || numerische Integration &amp;lt;br&amp;gt; numint(untereGrenze,obereGrenze,funktion,Variable)&amp;lt;br&amp;gt; numint(untereGrenze,obereGrenze,funktion,Variable,punkteAnzahl) || numint(0,2pi,sin(t),t) || 0&lt;br /&gt;
|-&lt;br /&gt;
| numdif || numerisches Differenzieren einer Funktion &amp;quot;funktion&amp;quot; nach einer Variablen &amp;quot;Variable&amp;quot; an der Stelle &amp;quot;position&amp;quot; mit einer Differenz der Variablen von &amp;quot;differenz&amp;quot; &amp;lt;br&amp;gt; numdif(position,funktion,Variable,differenz) || numdif(0,sin(t),t,0.01) || 1&lt;br /&gt;
|-&lt;br /&gt;
| solve || löst eine Gleichung oder ein Gleichungssystem nach einer oder mehrerer Variablen || solve([2*x+y=3,x-y=0],[x,y]) || [ [ x=1,y=1 ] ]&lt;br /&gt;
|-&lt;br /&gt;
| solvevalue || löst eine Gleichung oder ein Gleichungssystem nach einer Variablen und liefert genau die erste Lösung wenn sie numerisch berechenbar ist || solvevalue([ 2*x+y=3,x-y=0 ],[ x,y ],x)  || 1&lt;br /&gt;
|-&lt;br /&gt;
| newton || Bestimmt eine Nullstelle einer Funktion nach dem Newton-Verfahren. Der erste Parameter ist ein Ausdruck in einer Variablen, der zweite Parameter ist der Startwert. || newton(x^2-4,4) || 2&lt;br /&gt;
|-&lt;br /&gt;
| cnewton || Bestimmt eine komplexe Nullstelle einer Funktion nach dem Newton-Verfahren. Der erste Parameter ist ein Ausdruck in einer Variablen, der zweite Parameter ist der komplexe Startwert. || newton(x^2+4,4) || 2*%i&lt;br /&gt;
|-&lt;br /&gt;
| newtonall || Bestimmt alle Nullstellen einer Funktion mit einem Betrag des Funktionsparameters kleiner als ein definierter Wert nach dem Newton-Verfahren. Der erste Parameter ist ein Ausdruck in einer Variablen, der zweite Parameter ist der maximale Betrag des Funktionsparameters. Das Ergebnis ist immer ein Vektor mit den nach aufsteigendem Funktionswert sortierten Nullstellen. || newton(x^2-4,4) || [-2,2]&lt;br /&gt;
|-&lt;br /&gt;
| cnewtonall || Bestimmt alle komplexen Nullstellen einer Funktion mit einem Betrag des Funktionsparameters kleiner als ein definierter Wert nach dem Newton-Verfahren. Der erste Parameter ist ein Ausdruck in einer Variablen, der zweite Parameter ist der maximale Betrag des Funktionsparameters. Das Ergebnis ist immer ein Vektor mit den Nullstellen. || newton(x^2+4,4) || [-2*%i,2*%i]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Stringfunktionen===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| dechex || Zahl in eine Ganzzahl wandeln und als Hexadezimal-String ausgeben || dexhex(12) || &amp;quot;0xC&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| chr || Bestimmt die Zeichen mit dem ASC-II-Code der Long-Parameter und setzt daraus einen String zusammen. || chr(0x65,105) || &amp;quot;ei&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| val || Bestimmt den ASC-II-Code des ersten Zeichens welches als String-Parameter übergeben wurde.|| val(&amp;quot;a&amp;quot;) || 97&lt;br /&gt;
|-&lt;br /&gt;
| strcat || Fügt mehrere Strings zusammen.|| strcat(&amp;quot;a&amp;quot;,&amp;quot;b&amp;quot;) || &amp;quot;ab&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===trigonometrische Funktionen===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| sin || Sinus || sin(%pi/2) || 1&lt;br /&gt;
|-&lt;br /&gt;
| cos || Cosinus || cos(%pi/2) || 0&lt;br /&gt;
|-&lt;br /&gt;
| tan || Tangens || tan(%pi/4) || 1&lt;br /&gt;
|-&lt;br /&gt;
| asin || Arcus-Sinus || asin(1) || %pi/2&lt;br /&gt;
|-&lt;br /&gt;
| arcsin || Arcus-Sinus || asin(1) || %pi/2&lt;br /&gt;
|-&lt;br /&gt;
| acos || Arcus-Cosinus || acos(1) || 0&lt;br /&gt;
|-&lt;br /&gt;
| arccos || Arcus-Cosinus || acos(1) || 0&lt;br /&gt;
|-&lt;br /&gt;
| atan || Arcus-Tangens || atan(1) || %pi/4&lt;br /&gt;
|-&lt;br /&gt;
| arctan || Arcus-Tangens || arctan(1) || %pi/4&lt;br /&gt;
|-&lt;br /&gt;
| atan2 || Arcus-Tangens atan2(y,x)=arctan(y/x) || atan2(-2,-2) || -%pi*3/4&lt;br /&gt;
|-&lt;br /&gt;
| arctan2 || Arcus-Tangens arctan2(y,x)=arctan(y/x) || arctan2(-2,-2) || -%pi*3/4&lt;br /&gt;
|-&lt;br /&gt;
| sinh || Sinus-Hyperbolicus || sinh(1) || 1.1752012&lt;br /&gt;
|-&lt;br /&gt;
| cosh || Cosinus-Hyperbolicus || cosh(1) || 1.5430806&lt;br /&gt;
|-&lt;br /&gt;
| tanh || Tangens-Hyperbolicus || tanh(1) || 0.7615941&lt;br /&gt;
|-&lt;br /&gt;
| coth || Cotangens-Hyperbolicus || coth(1) || 1.313035&lt;br /&gt;
|-&lt;br /&gt;
| asinh || Area-Sinus-Hyperbolicus || asinh(1.1752012) || 1&lt;br /&gt;
|-&lt;br /&gt;
| acosh || Area-Cosinus-Hyperbolicus || acosh(1.5430806) || 1&lt;br /&gt;
|-&lt;br /&gt;
| atanh || Area-Tangens-Hyperbolicus || atanh(0.7615941) || 1&lt;br /&gt;
|-&lt;br /&gt;
| acoth || Area-Cotangens-Hyperbolicus || acoth(1.313035) || 1&lt;br /&gt;
|-&lt;br /&gt;
| [[csin]] || Erzeugt aus einer komplexen Zahl (Effektivwert) und einer Frequenz einen Sinusfunktion in der Zeit || csin(U) || sqrt(2)*cabs(U)*sin(2*pi*f*t+carg(U))&lt;br /&gt;
|-&lt;br /&gt;
| [[quadrant]] || Liefert den Quadranten eines Winkels mit einer Toleranzangabe. || quadrant(20°,5°) || 1&lt;br /&gt;
|-&lt;br /&gt;
| argnorm || Wandelt einen Winkel auf den Bereich von 0°-360° || argnorm(-50°) || 310°&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Exponentialfunktionen===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| pow || Potenzfunktion || pow(2,3) || 8&lt;br /&gt;
|-&lt;br /&gt;
| exp|| Exponentialfunktion || exp(1) || %e&lt;br /&gt;
|-&lt;br /&gt;
| log || natürlicher Logarythmus || log(%e) || 1&lt;br /&gt;
|-&lt;br /&gt;
| ln || natürlicher Logarythmus || ln(%e) || 1&lt;br /&gt;
|-&lt;br /&gt;
| log10 || Logarythmus zur Basis 10 || log10(100) || 2&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===komplexe Zahlen===&lt;br /&gt;
Die Funktionen zu komplexen Zahlen werden (anders als in Maxima) nur ausgewertet wenn das Ergebnis numerisch berechenbar ist, ansonsten bleibt die Funktion symbolisch erhalten.&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| abs || Liefert den Absolutbetrag einer komplexen Zahl || abs(3+4*%i) || 5&lt;br /&gt;
|-&lt;br /&gt;
| cabs || Liefert den Absolutbetrag einer komplexen Zahl || cabs(3+4*%i) || 5&lt;br /&gt;
|-&lt;br /&gt;
| carg || Liefert das Argument einer komplexen Zahl || carg(4*%e^(3*%i)) || 3&lt;br /&gt;
|-&lt;br /&gt;
| realpart || Liefert den Realteil einer komplexen Zahl || realpart(3+4*%i) || 3&lt;br /&gt;
|-&lt;br /&gt;
| imagpart || Liefert den Imaginärteil einer komplexen Zahl || imagpart(3+4*%i) || 4&lt;br /&gt;
|-&lt;br /&gt;
| conjugate || Liefert die konjugiert komplexe Zahl einer komplexen Zahl || conjugate(3+4*%i) || 3-4*%i&lt;br /&gt;
|-&lt;br /&gt;
| rectform || hat in LeTTo keine Relevanz, da die Zahlendarstellung bei der Ausgabe definiert wird wie zB.: {=3arg2;karti} ||  || &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===statistische Funktionen===&lt;br /&gt;
Die Funktionen funktionieren nur ohne Einheiten.&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| factorial || Liefert die Fakultät einer positiven ganzen Zahl || factorial(5) || 120&lt;br /&gt;
|-&lt;br /&gt;
| binomial || Liefert den Binomialkoeffizienten von zwei positiven ganzen Zahlen || binomial(5,2) || 10&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Mengen-Funktionen===&lt;br /&gt;
Mengen werden intern als Vektoren verarbeitet und sind deshalb auch direkt durch Vektoren ersetzbar. Auch alle Vektor-Funktionen sind somit auch auf Mengen anwendbar und umgekehrt.&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis || ab Rev&lt;br /&gt;
|-&lt;br /&gt;
| setget || Liefert ein Element einer Menge oder einer Matrix (Menge von Mengen) || setget([12,13,14],1) &amp;lt;br&amp;gt; setget(matrix([9,2],[3,4]),0,1) || 13 &amp;lt;br&amp;gt; 2 &lt;br /&gt;
|-&lt;br /&gt;
| setset || setzt ein Element einer Menge oder einer Matrix (Menge von Mengen) || setset([12,13,14],1,35) &amp;lt;br&amp;gt; setset(matrix([9,2],[3,4]),0,0,-9) || [12,35,14] &amp;lt;br&amp;gt; [[-9,2],[3,4]]&lt;br /&gt;
|-&lt;br /&gt;
| setlength || liefert die Anzahl der Elemente einer Liste, Menge oder eines Vektors || setlength([3,6,54,34,3,54]) || 6 &lt;br /&gt;
|- &lt;br /&gt;
| setinsert || fügt ein Element in eine Menge an eine gegebene Stelle ein || setinsert([12,13,14],1,25) || [12,25,13,14]&lt;br /&gt;
|-&lt;br /&gt;
| setremove || löscht ein Element einer Menge || setremove([12,13,14],1) || [12,14]&lt;br /&gt;
|-&lt;br /&gt;
| setapply || wendet einen Ausdruck oder Funktion auf alle Elemente einer Menge an || setapply(y,[1,2,3],y*2) || [2,4,6] || 5965&lt;br /&gt;
|-&lt;br /&gt;
| setmedian || Liefert den Median einer Menge || setmedian([4,3,1,5,6]) || 4&lt;br /&gt;
|-&lt;br /&gt;
| setboxplot || Liefert die Werte des Boxplot einer Menge (Minimum, unteres Quartil, Median, oberes Quartil, Maximum) als Vektor verwendbar für das [[Plot#definierte_Zeichenelemente|Plot-Plugin]] || setboxplot([1,2,3,10,8,9]) || [1,2,5.5,9,10]&lt;br /&gt;
|-&lt;br /&gt;
| setsort || Sortiert die Elemente einer Menge aufsteigend || setsort([3,-3,2,0,5,2]) || [-3,0,2,2,3,5]&lt;br /&gt;
|-&lt;br /&gt;
| setsortnd || Sortiert die Elemente einer Menge aufsteigend und entfernt alle mehrfach vorkommenden Elemente || setsortnd([31,-3,2,31,0,5,2]) || [-3,0,2,5,31]&lt;br /&gt;
|-&lt;br /&gt;
| setcount || Bestimmt die Anzahl wie oft ein Element in einer Menge vorkommt oder die Anzahl der Elemente der Menge || setcount([31,-3,2,31,0,5,2],31) &amp;lt;br&amp;gt; setcount([2,5,3,6]) || 2 &amp;lt;br&amp;gt; 4&lt;br /&gt;
|-&lt;br /&gt;
| setmodus || Liefert das Element einer Menge, welches am öftesten vorkommt oder die Elemente als Menge wenn mehrere Elemente gleich oft vorkommen || setmodus([3,-3,2,0,5,2]) || 2&lt;br /&gt;
|-&lt;br /&gt;
| setreverse || Dreht die Reihenfolge einer Menge um || setreverse([3,-3,2,0,5,2]) || [2,5,0,2,-3,3]&lt;br /&gt;
|-&lt;br /&gt;
| setnd || Löscht alle Duplikate aus der Menge || setnd([3,-3,2,0,5,2]) || [3,-3,2,0,5]&lt;br /&gt;
|-&lt;br /&gt;
| setshuffle || Mischt eine Menge in eine andere Reihenfolge. VORSICHT, ohne zweiten Parameter (ganze Zahl) ändert sich die Reihenfolge bei jedem mal neu Laden automatisch und ist nicht nachvollziehbar, weshalb sie dann für Schülerbeispiele nicht einsetzbar ist! || setshuffle([3,-3,2,0,5,2],5) || [2,3,−3,2,0,5] || 6082&lt;br /&gt;
|-&lt;br /&gt;
| setmittel || Bestimmt den Mittelwert einer Menge || setmittel([1,3,2,4]) || 2.5&lt;br /&gt;
|-&lt;br /&gt;
| setgeomittel || Bestimmt das geometrische Mittelwert einer Menge aus positiven reellen Zahlen || setgeomittel([10,20,30]) || 18.171206&lt;br /&gt;
|-&lt;br /&gt;
| setvarianz || Bestimmt die empirische Varianz einer Menge || setvarianz([3,1,2,5,4]) || ((3-3)^2+(1-3)^2+(2-3)^2+(5-3)^2+(4-3)^2)/5=2&lt;br /&gt;
|-&lt;br /&gt;
| setquadratmittel || Bestimmt den quadratischen Mittelwert einer Menge || setquadratmittel([10,20,30]) || 21.6025&lt;br /&gt;
|-&lt;br /&gt;
| setsum || Bestimmt die Summe aller Werte einer Menge || setsum([1,3,2,4]) || 10&lt;br /&gt;
|-&lt;br /&gt;
| setprod || Bestimmt das Produkt aller Werte einer Menge || setprod([1,3,2,4]) || 24&lt;br /&gt;
|-&lt;br /&gt;
| setunion || Fügt mehrere Mengen zu einer neuen Menge zusammen || setunion([1,3,2,4],[3,7]) || {1,3,2,4,3,7}&lt;br /&gt;
|-&lt;br /&gt;
| setunionnd || Fügt mehrere Mengen zu einer neuen Menge zusammen, sortiert diese und entfernt alle mehrfachen Elemente || setunionnd([1,3,2,4],[3,7]) || {1,2,3,4,7}&lt;br /&gt;
|-&lt;br /&gt;
| setcut || Bildet die Schnittmenge aus mehreren Mengen || setcut([1,3,2,4],[3,7]) || {3}&lt;br /&gt;
|-&lt;br /&gt;
| setcompare || vergleicht zwei Mengen miteinander, wobei die Reihenfolge egal ist  || setcompare([1,3,2,4],[3,7]) &amp;lt;br&amp;gt; setcompare([1,3,2],[1,2,3]) &amp;lt;br&amp;gt; setcompare([1,3,2],[1,3,2,3]) &amp;lt;br&amp;gt; setcompare([1,2,3],[1,2,3])  || false &amp;lt;br&amp;gt; true &amp;lt;br&amp;gt; false &amp;lt;br&amp;gt; true&lt;br /&gt;
|-&lt;br /&gt;
| setcomparend || vergleicht zwei Mengen miteinander, wobei die Reihenfolge egal ist und doppelte Werte als einfach behandelt werden. || setcomparend([1,3,2,4],[3,7]) &amp;lt;br&amp;gt; setcomparend([1,3,2],[1,2,3]) &amp;lt;br&amp;gt; setcomparend([1,3,2],[1,3,2,3]) &amp;lt;br&amp;gt; setcomparend([1,2,3],[1,2,3])  || false &amp;lt;br&amp;gt; true &amp;lt;br&amp;gt; true &amp;lt;br&amp;gt; true&lt;br /&gt;
|-&lt;br /&gt;
| setpartof || prüft ob die erste Menge eine Teilmenge der zweite Menge ist wobei die Reihenfolge egal ist aber mehrfache Werte berücksichtigt werden  || setpartof([1,4],[1,3,7]) &amp;lt;br&amp;gt; setpartof([1,3],[1,2,3]) &amp;lt;br&amp;gt; setpartof([1,3,3],[1,3,5,7]) &amp;lt;br&amp;gt; setpartof([1,4,4],[1,2,3,4])  || false &amp;lt;br&amp;gt; true &amp;lt;br&amp;gt; false &amp;lt;br&amp;gt; false&lt;br /&gt;
|-&lt;br /&gt;
| setpartofnd || prüft ob die erste Menge eine Teilmenge der zweite Menge ist wobei die Reihenfolge und mehrfache Werte egal sind  || setpartofnd([1,4],[1,3,7]) &amp;lt;br&amp;gt; setpartofnd([1,3],[1,2,3]) &amp;lt;br&amp;gt; setpartofnd([1,3,3],[1,3,5,7]) &amp;lt;br&amp;gt; setpartofnd([1,4,4],[1,2,3,4])  || false &amp;lt;br&amp;gt; true &amp;lt;br&amp;gt; true &amp;lt;br&amp;gt; true&lt;br /&gt;
|-&lt;br /&gt;
| setgetmin || Liefert den kleinsten Wert einer Menge || setgetmin([1,3,-2,4]) || -2&lt;br /&gt;
|-&lt;br /&gt;
| setgetmax || Liefert den größten Wert einer Menge || setgetmax([1,3,-2,4]) || 4&lt;br /&gt;
|-&lt;br /&gt;
| setremovefirst || Entfernt den ersten Wert einer Menge || setremovefirst([1,3,-2,4]) || {3,-2,4}&lt;br /&gt;
|-&lt;br /&gt;
| setremovelast || Entfernt den letzten Wert einer Menge || setremovelast([1,3,-2,4]) || {1,3,-2}&lt;br /&gt;
|-&lt;br /&gt;
| setgetfirst || Liefert den ersten Wert einer Menge || setgetfirst([1,3,-2,4]) || 1&lt;br /&gt;
|-&lt;br /&gt;
| setgetlast || Liefert den letzten Wert einer Menge || setgetlast([1,3,-2,4]) || 4&lt;br /&gt;
|-&lt;br /&gt;
| setsub || setsub(M,x,y) Liefert eine Teilmenge von M der Elemente vom index x bis zum Index y || setsub([1,3,-2,4],1,2) || {3,-2}&lt;br /&gt;
|-&lt;br /&gt;
| setmakelist || setmakelist(f,x,start,stop) setzt in den Ausdruck f für x die Werte von start bis stop mit einer Schrittweite von 1 ein. || setmakelist(x^2,x,1,4) || [ 1,4,9,16 ]&lt;br /&gt;
|-&lt;br /&gt;
| || setmakelist(f,x,start,stop,schrittweite) setzt in den Ausdruck f für x die Werte von start bis stop mit dem Abstand schrittweite ein. || setmakelist(x^2,x,1,2,0.5) || [ 1,2.25,4 ]&lt;br /&gt;
|-&lt;br /&gt;
| || setmakelist(f,x,set) setzt die Werte des Vektors set in den Ausdruck f für x ein. || setmakelist(x^2,x,[3,1,2])  ||[ 9,1,4 ]&lt;br /&gt;
|-&lt;br /&gt;
| foreach || Führt für jedes Element eine Berechnung aus und verbindet die Ergebnisse mit der Aggregatfunktion || foreach([2,-3,5,-6],p,cabs(p),&amp;quot;+&amp;quot;) || 16 || 6075 &lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Punkte-Mengen-Funktionen ===&lt;br /&gt;
Bei der Eingabe mit dem Plot-Plugin werden Punkte-Mengen als Matrizen in der Form [[x1,y1],[x2,y2],[y3,y3]] für die gespeicherten Punkte welcher der Schüler eingegeben hat verwendet.&lt;br /&gt;
&lt;br /&gt;
Um die Verarbeitung der Eingaben zu erleichtern kann man die Funktionen beginnend mit pv verwenden.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis || ab Rev&lt;br /&gt;
|-&lt;br /&gt;
| pvabs || Bestimmt den Betrag eines Punktes oder aller Ortsvektoren zu den Punkten. || pvabs([[2,3],[4,5],[6,3],[-2,4]]) &amp;lt;br&amp;gt; pvabs([[2,3],[4,5],[6,3],[-2,4]],1) ||  [3.6056,6.4031,6.7082,4.4721] &amp;lt;br&amp;gt; 6.4031 || 6077&lt;br /&gt;
|-&lt;br /&gt;
| pvarg || Bestimmt den Winkel eines Punktes oder aller Ortsvektoren zu den Punkten. || pvarg([[2,3],[4,5],[6,3],[-2,4]]) &amp;lt;br&amp;gt; pvarg([[2,3],[4,5],[6,3],[-2,4]],1) || [0.98279,0.89606,0.46365,2.0344] &amp;lt;br&amp;gt; 0.89606 || 6077&lt;br /&gt;
|-&lt;br /&gt;
| pvget || Liefert einen Punkt der Punkteliste. || pvget([[2,3],[4,5],[6,3],[-2,4]],1) || [4,5] || 6077&lt;br /&gt;
|-&lt;br /&gt;
| pvgetx || Bestimmt die x-Koordinate eines Punktes oder aller Punkte. || pvgetx([[2,3],[4,5],[6,3],[-2,4]]) &amp;lt;br&amp;gt; pvgetx([[2,3],[4,5],[6,3],[-2,4]],1) || [2,4,6,-2]&amp;lt;br&amp;gt;4 || 6077&lt;br /&gt;
|-&lt;br /&gt;
| pvgety || Bestimmt die y-Koordinate eines Punktes oder aller Punkte. || pvgety([[2,3],[4,5],[6,3],[-2,4]]) &amp;lt;br&amp;gt; pvgety([[2,3],[4,5],[6,3],[-2,4]],1) || [3,4,3,4]&amp;lt;br&amp;gt;3 || 6077&lt;br /&gt;
|-&lt;br /&gt;
| pvlineabs || Bestimmt aus dem n-ten Punktepaar den Absolutbetrag des Abstandes. || pvlineabs([[2,3],[4,5],[6,3],[-2,4]])&amp;lt;br&amp;gt;pvlineabs([[2,3],[4,5],[6,3],[-2,4]],0) || [2.8284,8.0623]&amp;lt;br&amp;gt;2.82842712475 || 6075 &lt;br /&gt;
|-&lt;br /&gt;
| pvlinearg || Bestimmt aus dem n-ten Punktepaar den Winkel der Strecke zur x-Achse || pvlinearg([[2,3],[4,5],[6,3],[-2,4]])&amp;lt;br&amp;gt;pvlinearg([[2,3],[4,5],[6,3],[-2,4]],0) || [45°,172.87°]&amp;lt;br&amp;gt;45° || 6075 &lt;br /&gt;
|-&lt;br /&gt;
| pvlinek || Bestimmt die Steigung der zugehörigen Geraden dem n-ten Punktepaar || pvlinek([[2,3],[4,5],[6,3],[-2,4]])&amp;lt;br&amp;gt;pvlinek([[2,3],[4,5],[6,3],[-2,4]],0) ||  [1,−0.125]&amp;lt;br&amp;gt;1 || 6075 &lt;br /&gt;
|-&lt;br /&gt;
| pvlined || Bestimmt den Schnittpunkt einer Geraden durch das n-te Punktepaar mit der y-Achse || pvlined([[2,3],[4,5],[6,3],[-2,4]])&amp;lt;br&amp;gt;pvlined([[2,3],[4,5],[6,3],[-2,4]],0) || [1,3.75] &amp;lt;br&amp;gt;1 || 6075 &lt;br /&gt;
|-&lt;br /&gt;
| pvline || Bestimmt die Geradengleichung einer Geraden durch das n-te Punktepaar || pvline([[2,3],[4,5],[6,3],[-2,4]])&amp;lt;br&amp;gt;pvline([[2,3],[4,5],[6,3],[-2,4]],0) || [y=1+x,y=3.75−0.125⋅x]&amp;lt;br&amp;gt;y=x+1 || 6075 &lt;br /&gt;
|-&lt;br /&gt;
| pvpoints || Bestimmt die Anzahl der Punkte || pvpoints([[2,3],[4,5],[6,3],[-2,4]]) || 4 || 6075 &lt;br /&gt;
|-&lt;br /&gt;
| pvvect || Bestimmt einen Vector aus dem n-te Punktepaar || pvvect([[2,3],[4,5],[6,3],[-2,4]],0) || [2,2] || 6075 &lt;br /&gt;
|-&lt;br /&gt;
| pvsortx || Sortiert die Punkte nach steigender x-Koordinate || pvsortx([[2,3],[4,5],[6,3],[−2,4],[−3,5],[−7,−9]]) || [[−7,−9],[−3,5],[−2,4],[2,3],[4,5],[6,3]] ||6077 &lt;br /&gt;
|-&lt;br /&gt;
| pvsorty || Sortiert die Punkte nach steigender y-Koordinate || pvsorty([[2,3],[4,5],[6,3],[−2,4],[−3,5],[−7,−9]]) || [[−7,−9],[2,3],[6,3],[−2,4],[4,5],[−3,5]] ||6077&lt;br /&gt;
|-&lt;br /&gt;
| pvsortabs || Sortiert die Punkte nach steigendem Absolutbetrag des Ortsvektors || pvsortabs([[2,3],[4,5],[6,3],[−2,4],[−3,5],[−7,−9]]) ||  [[2,3],[−2,4],[−3,5],[4,5],[6,3],[−7,−9]] ||6077&lt;br /&gt;
|-&lt;br /&gt;
| pvsortarg || Sortiert die Punkte nach steigendem Winkel des Ortsvektors (-pi bis pi) || pvsortarg([[2,3],[4,5],[6,3],[−2,4],[−3,5],[−7,−9]]) ||  [[−7,−9],[6,3],[4,5],[2,3],[−2,4],[−3,5]] ||6077&lt;br /&gt;
|-&lt;br /&gt;
| pvsortlinex || Sortiert Punktepaare nach steigender x-Koordinate der kleineren x-Koordinate des Paares. || pvsortlinex([[2,3],[4,5],[6,3],[−2,4],[−3,5],[−7,−9]]) || [[−3,5],[−7,−9],[6,3],[−2,4],[2,3],[4,5]] ||6077 &lt;br /&gt;
|-&lt;br /&gt;
| pvsortliney || Sortiert Punktepaare nach steigender y-Koordinate der kleineren y-Koordinate des Paares. || pvsortliney([[2,3],[4,5],[6,3],[−2,4],[−3,5],[−7,−9]]) ||  [[−3,5],[−7,−9],[2,3],[4,5],[6,3],[−2,4]] ||6077 &lt;br /&gt;
|-&lt;br /&gt;
| pvsortlineabs || Sortiert Punktepaare nach steigendem Betrag der Linienlänge. || pvsortlineabs([[2,3],[4,5],[6,3],[−2,4],[−3,5],[−7,−9]]) || [[2,3],[4,5],[6,3],[−2,4],[−3,5],[−7,−9]] || 6077&lt;br /&gt;
|-&lt;br /&gt;
| pvsortlinearg || Sortiert Punktepaare nach steigendem Winkel der Linienrichtung. || pvsortlinearg([[2,3],[4,5],[6,3],[−2,4],[−3,5],[−7,−9]]) || [[−3,5],[−7,−9],[2,3],[4,5],[6,3],[−2,4]] || 6077&lt;br /&gt;
|-&lt;br /&gt;
| pvequals || Prüft ob zwei Punktevektoren gleich sind. Die Genauigkeit wird als dritter Parameter angegeben, oder bei einem Antwortfeld von der Antworttoleranz genommen. Prozentangaben der Genauigkeit beziehen sich auf die Breite bzw. Höhe des Punktefeldes im karthesischen Koordinatensystem. || pvequals([[2,3],[4,5],[6,3],[-2,4],[-3,5],[-7,-9]],[[2.01,3],[4,5],[6.01,3],[-2,3.99],[-3,5],[-7,-9]],2%) || true || 6077&lt;br /&gt;
|-&lt;br /&gt;
| pvhaspoint || Prüft ob sich ein Punkt innerhalb des Punktefeldes befindet. Die Genauigkeit kann wie bei pvequals als dritter Parameter angegeben werden. || pvhaspoint([[2,3],[4,5],[6,3],[-2,4],[-3,5],[-7,-9]],[4,5],2%) || true || 6077&lt;br /&gt;
|-&lt;br /&gt;
| pvhasline || Prüft ob sich eine Linie innerhalb des Punktefeldes von Linien befindet. Die Genauigkeit kann wie bei pvequals als dritter Parameter angegeben werden. || pvhaspoint([[2,3],[4,5],[6,3],[-2,4],[-3,5],[-7,-9]],[[6,3],[-2,4]],2%) || true || 6078&lt;br /&gt;
|-&lt;br /&gt;
| pvforeachline || Führt für jedes Punktepaar eine Berechnung aus und verbindet die Ergebnisse mit der Aggregatfunktion || pvforeachline([[2,3],[4,5],[6,3],[-2,4]],p,pvlineabs(p),&amp;quot;+&amp;quot;) || 10.890684873 || 6075 &lt;br /&gt;
|-&lt;br /&gt;
| pvfunc || Erzeugt aus einer Funktionen in einer Variablen (x-Achse) eine Punktmatrix der Funktionswerte (y-Achse). pvfunc(funktion,variable,minx,maxx,deltax) || pvfunc(x^2,x,-2,2,0.5) || [[−2,4],[−1.5,2.25],[−1,1],[−0.5,0.25],[0,0],[0.5,0.25],[1,1],[1.5,2.25]] || 6080&lt;br /&gt;
|-&lt;br /&gt;
| pvcompare || Vergleicht einen Referenz-Linienzug mit einem eingegebenen Linienzug unter Berücksichtigung der Toleranz.&amp;lt;br&amp;gt; pvcompare(Referenz,Eingabe)&amp;lt;br&amp;gt; pvcompare(Referenz,Eingabe,Toleranz)&amp;lt;br&amp;gt; pvcompare(Referenz,Eingabe,MinX,MaxX,MinY,MaxY) &amp;lt;br&amp;gt; pvcompare(Referenz,Eingabe,MinX,MaxX,MinY,MaxY,Toleranz) || pvcompare([[0,0],[1,1],[2,1],[3,0]],[[0,0],[1,1],[2,1],[3,0]],0,3,-5,5) || true  || 6080&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Typ-Funktionen===&lt;br /&gt;
Werden nur dann ausgewertet wenn der Parameter ein numerischer Wert oder eine Menge ist.&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| isset || Prüft ob es sich um eine Menge handelt. || isset([12,13,14]) || true &lt;br /&gt;
|-&lt;br /&gt;
| issetnumeric || Prüft ob es sich um eine Menge aus reellen Zahlen handelt. || issetnumeric([12,13.4,14]) || true &lt;br /&gt;
|-&lt;br /&gt;
| issetlong || Prüft ob es sich um eine Menge aus ganzen Zahlen handelt. || issetlong([12,13,14]) || true &lt;br /&gt;
|-&lt;br /&gt;
| islong || Prüft ob es sich um eine ganze Zahl handelt. || islong(12) || true &lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Algebra===&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;Hinweis:&#039;&#039; Die Indizes eines Vektors oder einer Matrix werden in Letto ausgehend von 0 weg gezählt.  &lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| matrix || erzeugt aus mehreren gleich langen Vektoren eine Matrix || matrix([1,2],[3,4]) || [[1,2],[3,4]]&lt;br /&gt;
|-&lt;br /&gt;
| inv || invertiert eine quadratische Matrix oder bildet 1/x || inv(matrix([1,2],[3,4])) || [[-2,1],[3/2,-1/2]]&lt;br /&gt;
|-&lt;br /&gt;
| vget || liefert ein Element eines Vektors oder einer Matrix [https://www.youtube.com/watch?v=T82YIt3e8ac Video] || vget([12,13,14],1) &amp;lt;br&amp;gt; vget(matrix([9,2],[3,4]),0,1) || 13 &amp;lt;br&amp;gt; 2 &lt;br /&gt;
|-&lt;br /&gt;
| vgetmaxima || liefert ein Element eines Vektors oder einer Matrix wobei der Index (wie bei Maxima) bei 1 startet. || vgetmaxima([12,13,14],1) || 12 &lt;br /&gt;
|-&lt;br /&gt;
| vset || setzt ein Element eines Vektors oder einer Matrix || vset([12,13,14],1,35) &amp;lt;br&amp;gt; vset(matrix([9,2],[3,4]),0,0,-9) || [12,35,14] &amp;lt;br&amp;gt; [[-9,2],[3,4]]&lt;br /&gt;
|-&lt;br /&gt;
| vsetmaxima || setzt ein Element eines Vektors oder einer Matrix wobei der Index (wie bei Maxima) bei 1 startet. || vsetmaxima([12,13,14],1,35) || [35,13,14]&lt;br /&gt;
|-&lt;br /&gt;
| vinsert || fügt ein Element in einen Vektor an eine gegebene Stelle ein || vinsert([12,13,14],1,25) || [12,25,13,14]&lt;br /&gt;
|-&lt;br /&gt;
| vremove || löscht ein Element eines Vektors [https://www.youtube.com/watch?v=T82YIt3e8ac Video] || vremove([12,13,14],1) || [12,14]&lt;br /&gt;
|-&lt;br /&gt;
| vabs || Berechnet den Betrag eines Vektors || vabs([3,4]) || 5&lt;br /&gt;
|-&lt;br /&gt;
| vin || Berechnet das innere Produkt von 2 Vektoren || vin([1,2,3],[4,5,6]) || 32&lt;br /&gt;
|-&lt;br /&gt;
| vex || Berechnet das ex-Produkt von 2 Vektoren im 3-dimensionalen Raum || vex([1,2,3],[4,5,6]) || [-3,6,-3]&lt;br /&gt;
|-&lt;br /&gt;
| mrows || liefert die Anzahl der Zeilen einer Matrix || mrows([[3,4,4],[3,6,54,34,3,54]]) || 2&lt;br /&gt;
|-&lt;br /&gt;
| mcols || liefert die Anzahl der Spalten einer Matrix || mcols([[3,4,4],[3,6,54,34,3,54]]) || 6 &lt;br /&gt;
|- &lt;br /&gt;
| mprod || Bildet das Matrixprodukt aus zwei Matrizen || mprod([[1,2],[3,4]],[[5,6],[7,8]]) || [[19,22],[43,50]]&lt;br /&gt;
|-&lt;br /&gt;
| mtrans || Bildet die transponierte Matrix || mtrans([[1,2],[3,4]]) || [[1,3],[2,4]]&lt;br /&gt;
|-&lt;br /&gt;
| minv || Bildet die inverse Matrix || minv([[1,2],[3,4]]) || [[-2,1],[3/2,-1/2]]&lt;br /&gt;
|-&lt;br /&gt;
| mdet || Bildet die Determinante einer quadratischen Matrix || mdet([[1,2],[3,4]]) || -2&lt;br /&gt;
|-&lt;br /&gt;
| vindex || vindex(v,x) liefert den Index des Elementes eines Vektors, welcher am nächsten bei x liegt || vindex([10,30,70],40) || 1 &lt;br /&gt;
|-&lt;br /&gt;
| vindexup || vindexup(v,x) liefert den Index des Elementes eines Vektors, welcher größer oder gleich x ist || vindexup([10,30,70],40) || 2 &lt;br /&gt;
|-&lt;br /&gt;
| vindexdown || vindexdown(v,x) liefert den Index des Elementes eines Vektors, welcher kleiner oder gleich x ist || vindexdown([10,30,70],60) || 1&lt;br /&gt;
|-&lt;br /&gt;
| verweis || verweis(M,x,n) liefert den Wert der n-ten Spalte (ohne Angabe von n die 2.Spalte) einer Matrix M wo x dem Wert in der ersten Spalte am nächsten liegt || verweis([[10,33],[20,77],[30,99]],21) || 77&lt;br /&gt;
|-&lt;br /&gt;
| verweisup || verweisup(M,x,n) liefert den Wert der n-ten Spalte (ohne Angabe von n die 2.Spalte) einer Matrix M wo x dem Wert in der ersten Spalte am nächsten liegt || verweisup([[10,33],[20,77],[30,99]],21) || 99&lt;br /&gt;
|-&lt;br /&gt;
| verweisdown || verweisdown(M,x,n) liefert den Wert der n-ten Spalte (ohne Angabe von n die 2.Spalte) einer Matrix M wo x dem Wert in der ersten Spalte am nächsten liegt || verweisdown([[10,33],[20,77],[30,99]],27,1) || 77&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Variable===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| kill || löscht Variable aus dem Variablenspeicher || kill(x,y) &amp;lt;br&amp;gt; kill(allbut(y)) &amp;lt;br&amp;gt; kill(all) || löscht die Variablen x und y &amp;lt;br&amp;gt; löscht alle Variablen mit Ausnahme von y &amp;lt;br&amp;gt; löscht alle Variable&lt;br /&gt;
|-&lt;br /&gt;
| allbut || Liefert eine Liste aller Variablen des Parsers als Menge(Vektor) mit Ausnahme der als Parameter angegebenen Variablen || allbut(x,y) || [a,b,c]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Auswertung und Programmierung===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis || Revision&lt;br /&gt;
|-&lt;br /&gt;
| ev || Auswertung eines Ausdruckes, als Parameter können Gleichungen angegeben werden, welche dann in den Ausdruck eingesetzt werden || ev(x*y,y=4) || x*4&lt;br /&gt;
|-&lt;br /&gt;
| evruntime || Auswertung eines Ausdruckes, als Parameter können Gleichungen angegeben werden, welche dann in den Ausdruck eingesetzt werden. Das &#039;&#039;&#039;Einsetzen erfolgt erst bei der Ergebnisberechnung&#039;&#039;&#039;! || evruntime(x*y,y=4) || x*4&lt;br /&gt;
|-&lt;br /&gt;
| [[nv]] || Auswertung eines Ausdruckes, als Parameter können Gleichungen angegeben werden, welche dann in den Ausdruck eingesetzt werden. Im Gegensatz zu ev werden bestehende Variable nur in den Gleichungen, aber nicht im Ausdruck selbst eingesetzt! || nv(x*y,y=4) || x*4&lt;br /&gt;
|-&lt;br /&gt;
| [[if]] || Bedingungsfunktion if(bedingung,wahrwert,falschwert) || if(4&amp;lt;6,10,12) || 10&lt;br /&gt;
|-&lt;br /&gt;
| [[if|wenn]] || Bedingungsfunktion wenn(bedingung,wahrwert,falschwert). Im Prinzip identisch wie if, jedoch kann if mit Maxima nicht verwendet werden. || wenn(4&amp;lt;6,10,12) || 10&lt;br /&gt;
|-&lt;br /&gt;
| plugin || Ruft die Berechnungsmethode des Plugins, welches als erster Stringparameter angegeben werden muss auf und übergibt die weiteren Parameter an die Berechnungsmethode des Plugins.  || plugin(&amp;quot;plugin1&amp;quot;,3) || führt die Berechnung des Plugins mit dem Namen &amp;quot;plugin1&amp;quot; mit dem Parameter 3 aus. &lt;br /&gt;
|-&lt;br /&gt;
| symbolic || Bei allen Variablen innerhalb von symbolic werden nur nicht-numerische Werte eingesetzt! Wird vor allem im Angabtext bei {= } verwendet || symbolic(x^2+2) || x^2+2&lt;br /&gt;
|-&lt;br /&gt;
| runtime || Bei dieser Funktion wird &#039;&#039;&#039;erst bei der Berechnung der Frageantwort, nach dem Einsetzen der Datensätze&#039;&#039;&#039; das &#039;&#039;&#039;komplette Maxima-Feld&#039;&#039;&#039; mit dem internen &#039;&#039;&#039;Parser&#039;&#039;&#039; durchgerechnet und danach der Parameter-Ausdruck berechnet. Dadurch kann man bei komplizierten Berechnungen eine sehr aufwendige symbolische Berechnung verhindern! || runtime(U) || &lt;br /&gt;
|-&lt;br /&gt;
| dataset || liefert alle Datensätze einer Datensatz-Definition in einem Vektor || dataset(x) || &lt;br /&gt;
|-&lt;br /&gt;
| parse || Wenn der Parameter ein String ist wird dieser String mit dem Parser interpretiert || parse(&amp;quot;2+3&amp;quot;) || 5&lt;br /&gt;
|-&lt;br /&gt;
| foreach || Führt für jedes Element einer Menge eine Berechnung aus und verbindet die Ergebnisse mit der Aggregatfunktion || foreach([2,-3,5,-6],p,cabs(p),&amp;quot;+&amp;quot;) || 16 || 6075 &lt;br /&gt;
|-&lt;br /&gt;
| pvforeachline || Führt für jedes Punktepaar einer Punktemenge eine Berechnung aus und verbindet die Ergebnisse mit der Aggregatfunktion || pvforeachline([[2,3],[4,5],[6,3],[-2,4]],p,pvlineabs(p),&amp;quot;+&amp;quot;) || 10.890684873 || 6075 &lt;br /&gt;
|-&lt;br /&gt;
| forloop || Führt eine Zählschleife aus forloop(Variable,Startwert,Wiederholbedingung,Inkrement,Ausdruck,Aggregatsfunktion). &amp;lt;br&amp;gt;Ohne Aggregatsfunktion wird ein Feld mit den Ergebnissen der Schleifeniterationen geliefert. || forloop(i,1,i&amp;lt;7,i++,i,&amp;quot;+&amp;quot;)&amp;lt;br&amp;gt;forloop(i,1,i&amp;lt;7,i:i+2,i) || 21&amp;lt;br&amp;gt;[1,3,5] || 6077&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Optimierung der Ausdrücke===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| opt   || Ausdruck wird vollständig optimiert, die Funktion wird ausgewertet und ist danach nicht mehr vorhanden. Nur bei der Verwendung des internen Parser sinnvoll. || opt(x+x) || 2*x&lt;br /&gt;
|-&lt;br /&gt;
| ratsimp || Ausdruck wird vollständig optimiert, die Funktion wird ausgewertet und ist danach nicht mehr vorhanden (wie opt, wird jedoch auch von Maxima ausgewertet) || ratsimp(x+x) || 2*x&lt;br /&gt;
|-&lt;br /&gt;
| noopt || Ausdruck wird nicht optimiert, bleibt also so erhalten wie angegeben. Die Funktion an sich geht aber verloren. || noopt(2+3) || 2+3&lt;br /&gt;
|-&lt;br /&gt;
| nopt || Ausdruck wird nicht optimiert, bleibt also so erhalten wie angegeben. Die Funktion bleibt erhalten und wird erst bei der Lösungsberechnung oder durch opt() entfernt. || noopt(2+3) || 2+3&lt;br /&gt;
|-&lt;br /&gt;
| lopt || Im Maximafeld bleibt die Funktion ohne Funktion erhalten, im Ergebnis {=  wird die Funktion entfernt und in der Lösung wird nach dem Einsetzen der Werte der Ausdruck vollständig optimiert. || lopt(x+3)  || lopt(x+3)  &lt;br /&gt;
|-&lt;br /&gt;
| lnoopt || Im Maximafeld bleibt die Funktion ohne Funktion erhalten, im Ergebnis {=  wird die Funktion entfernt und in der Lösung wird nach dem Einsetzen der Werte der Ausdruck nicht mehr optimiert. || lnoopt(x+3+2)  || lnoopt(x+5) &lt;br /&gt;
|-&lt;br /&gt;
| loptnumeric || Im Maximafeld bleibt die Funktion ohne Funktion erhalten, im Ergebnis {=  wird die Funktion entfernt und in der Lösung wird nach dem Einsetzen der Werte der Ausdruck nur numerisch optimiert. || loptnumeric(x+y)  || loptnumeric(x+y)&lt;br /&gt;
|-&lt;br /&gt;
| aopt || Bei Maxima und Lösung geht die Funktion verloren, nur innerhalb von noopt bleibt sie erhalten. Bei der Anzeige führt sie zur Optimierung das Ausdruckes nach Einsetzen der Datensätze. || aopt(x)  || x&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Anzeige und Lösungsberechnung===&lt;br /&gt;
Diese Funktionen haben entweder einen oder zwei Parameter. Der erste Parameter stellt die darzustellende Funktion dar, der zweite Parameter, welcher eine Ganzzahl sein muss, gibt an, wie die Darstellung erfolgen soll. Wird der 2.Parameter weggelassen, so wird er als 0 interpretiert.&lt;br /&gt;
* 0 Bei Berechnungen hat die Funktion keine Wirkung, bleibt aber als Funktion erhalten. Bei Lösung und Anzeige wird die Funktion ausgewertet&lt;br /&gt;
* 1 Wirkt nur bei Lösung, bei Berechnungen bleibt die Funktion erhalten&lt;br /&gt;
* 2 Wirkt nur bei Anzeige, bei Berechnungen bleibt die Funktion erhalten&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| viewpow || Gibt alle Wurzeln als Potenzen aus, und stellt alle Potenzen im Nenner als negativen Exponenten im Zähler dar || viewpow(sqrt(x)) || x^(1/2)&lt;br /&gt;
|-&lt;br /&gt;
| viewsqrt || Gibt Potenzen welche als Wurzel darstellbar sind auch als als Wurzeln mit der Funktion sqrt oder root aus || viewsqrt(x^(1/2)) || sqrt(x)&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Spezialfunktionen LeTTo ===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| points || Berechnet die erreichbare Gesamtpunkteanzahl einer Frage || points() || 2&lt;br /&gt;
|-&lt;br /&gt;
| points || Berechnet die erreichbare Punkteanzahl einer Teilfrage. Als Parameter wird die Fragenummer als Ganzzahl angegeben. || points(0) || 1&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Spezialfunktionen Technik===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| color || Widerstandsfarbcode berechnen.&amp;lt;br&amp;gt;1. Parameter muss ein Double sein&amp;lt;br&amp;gt; 2.Parameter sind die Anzahl der Farbringe&amp;lt;br&amp;gt; 3.Parameter ist der Modus (0..2-St,1..3St,2..Deutsch,3..2StEng,4..3StEng,5..Englisch || color(120,3,2) || braun,rot,braun&lt;br /&gt;
|-&lt;br /&gt;
| parsecolor || Wandelt einen String mit einem Widerstandsfarbcode in einen Double-Wert || parsecolor(&amp;quot;br-rt-br&amp;quot;) || 120&lt;br /&gt;
|-&lt;br /&gt;
| ip || Wandelt eine Long-Zahl in einen String als IP-Adresse um, oder 4 Byte-Zahlen in eine Long Zahl als IP-32-bit-Adresse || ip(1534536453)&amp;lt;br&amp;gt;ip(10,20,30,40) || &amp;quot;91.119.43.5&amp;quot;&amp;lt;br&amp;gt;169090600&lt;br /&gt;
|-&lt;br /&gt;
| parseip || Wandelt einen String mit einer IP-Adresse in einen Long-Wert || parseip(&amp;quot;91.119.43.5&amp;quot;) || 1534536453&lt;br /&gt;
|-&lt;br /&gt;
| e12 || rundet einen Zahlenwert auf den nächstliegenden Wert der [[Normreihe]] E12.&amp;lt;br&amp;gt;Die Rundung erfolgt geometrisch d.h. der Quotient zwischen Normwert und zu rundendem Wert wird minimiert. || e12(700Ohm) || 680Ohm&lt;br /&gt;
|-&lt;br /&gt;
| e12up || rundet einen Zahlenwert auf den nächstgrößerern Wert der [[Normreihe]] E12 || e12(670Ohm) || 680Ohm&lt;br /&gt;
|-&lt;br /&gt;
| e12down || rundet einen Zahlenwert auf den nächstkleineren Wert der [[Normreihe]] E12 || e12(700Ohm) || 680Ohm&lt;br /&gt;
|-&lt;br /&gt;
| ise12 || prüft ob der als Parameter übergebenen Wert ein Wert der [[Normreihe]] E12 ist.|| ise12(680Ohm) || true&lt;br /&gt;
|-&lt;br /&gt;
| norm || rundet einen Zahlenwert auf den nächstliegenden Wert einer gegebenen Wertereihe oder [[Normreihe]].&amp;lt;br&amp;gt;Die Rundung erfolgt geometrisch wenn es sich um eine logarithmisch aufgeteilte Normreihe handelt, oder sonst linear. || norm(700Ohm,E12) || 680Ohm&lt;br /&gt;
|-&lt;br /&gt;
| normup || rundet einen Zahlenwert auf den nächstgrößerern Wert einer gegebenen Wertereihe oder [[Normreihe]]. || normup(730Ohm,[1,3,5,8]) || 800Ohm&lt;br /&gt;
|-&lt;br /&gt;
| normdown || rundet einen Zahlenwert auf den nächstkleineren Wert einer gegebenen Wertereihe oder [[Normreihe]]. || normdown(700Ohm,E12) || 680Ohm&lt;br /&gt;
|-&lt;br /&gt;
| isnorm || prüft ob der als Parameter übergebenen Wert ein Wert einer gegebenen Wertereihe oder [[Normreihe]] ist. || isnorm(680Ohm,E12) || true&lt;br /&gt;
|}&lt;br /&gt;
===Raumzeiger für elektrische Maschinen===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| [[svphtosv]](a,b,c) || berechnet aus den Stranggrößen (a,b,c) einen komplexen Raumzeiger || svphtosv(0.5,0.5,-1) || 1arg60°&lt;br /&gt;
|-&lt;br /&gt;
| [[svsvtoph]](sv)&amp;lt;br&amp;gt;svsvtoph(sv,index) || berechnet aus einem komplexen Rauzeiger die Phasengrößen &amp;lt;br&amp;gt; berechnet aus einem komplexen Rauzeiger die Phasengrößen, index selektiert Stranggröße als Rückgabewert || svsvtoph(1arg60°)&amp;lt;br&amp;gt; svsvtoph(1arg60°,3)|| [0.5,0.5,-1] &amp;lt;br&amp;gt; -1&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=Ergebnisvorschau=&lt;br /&gt;
Aufruf dieses Dialoges über den [[Datei:ClipCapIt-180904-181443.PNG|25px]]-Button aus dem [[Toolbar]].&lt;br /&gt;
&lt;br /&gt;
Die Berechnungen aus dem Maxima-Feld bei der [[Beispiele Bearbeiten|Fragendefinition]] können auch über den [[Datei:ClipCapIt-180904-182120.PNG|25px]]-Button durchgeführt werden. Hier wird die Berechnung durchgeführt und das Lösungsfeld ausgefüllt, aber der Rechengang wird nicht angezeigt. &lt;br /&gt;
:[[Datei:ClipCapIt-180904-181415.PNG|400px]]&lt;br /&gt;
&lt;br /&gt;
Beim Fehlersuchen oder bei komplexen Berechnungen kann es aber hilfreich sein, den ganzen Maxima-Lösungsweg zu sehen, dies ist über den [[Datei:ClipCapIt-180904-181443.PNG|25px]]-Button möchlich.&lt;br /&gt;
&lt;br /&gt;
[[Kategorie:Berechnung]]&lt;/div&gt;</summary>
		<author><name>Ckral</name></author>
	</entry>
	<entry>
		<id>https://wiki.letto.at/wiki/index.php?title=Berechnungen&amp;diff=2967</id>
		<title>Berechnungen</title>
		<link rel="alternate" type="text/html" href="https://wiki.letto.at/wiki/index.php?title=Berechnungen&amp;diff=2967"/>
		<updated>2021-10-28T15:31:48Z</updated>

		<summary type="html">&lt;p&gt;Ckral: Dokumentation von mod2&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Allgemeines =&lt;br /&gt;
Berechnungen werden in mehreren Bereichen der Frageerstellung verwendet und bilden die Basis für [[Fragetypen#Berechnungsfrage|Berechnungsfrage]] und [[Fragetypen#Mehrfachberechnungsfrage|Mehrfachberechnungsfrage]].&lt;br /&gt;
&lt;br /&gt;
Alle Berechnungen unterstützen [[Einheit|Einheiten]] und symbolische Auswertung.&lt;br /&gt;
&lt;br /&gt;
=Grundsätzlicher Aufbau der Ergebnis-Berechnung bei Fragen mit Berechnungen=&lt;br /&gt;
[[Datei:BerechnungSchema.png|mini|hochkant=2.0|Schema der Berechnung]]&lt;br /&gt;
Die Berechnung und die Beurteilung einer Frage teilt sich in 3 grundsätzliche Schritte:&lt;br /&gt;
* Berechnnug der geschlossenen Lösung (Formel) aus den Maxima-Feldern &lt;br /&gt;
* Berechnung des Ergebnisses einer Frage durch Einsetzen der Zahlenwerte aus den Datensätzen in die geschlossene Lösung&lt;br /&gt;
* Beurteilung der Schülereingabe durch Vergleich mit dem Ergebnis&lt;br /&gt;
&lt;br /&gt;
=Konstante=&lt;br /&gt;
Alle Konstante welche in Letto definiert sind beginnen mit einem Prozentzeichen. Verwendet man den Variablennamen ohne Prozenzzeichen, so wird die Konstante wie eine Variable mit dem Wert der Konstanten verwendet.&lt;br /&gt;
&lt;br /&gt;
Liste der definierten Konstanten:&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%&amp;quot; &lt;br /&gt;
| Name || Wert || Beschreibung&lt;br /&gt;
|-&lt;br /&gt;
| %i || i || komplexer Parameter als Lösung der Gleichung x^2=-1&lt;br /&gt;
|-&lt;br /&gt;
| %j || i || komplexer Parameter als Lösung der Gleichung x^2=-1&amp;lt;br&amp;gt;&amp;lt;b&amp;gt;Wichtig:&amp;lt;/b&amp;gt; Wir nur vom Parser unterstützt, nicht von Maxima&lt;br /&gt;
|-&lt;br /&gt;
| %e || 2.718281828459045 || Eulersche Zahl &lt;br /&gt;
|-&lt;br /&gt;
| %pi || 3.141592653589793 || Kreiszahl&lt;br /&gt;
|-&lt;br /&gt;
| %mu0 || magnetische Feldkonstante || 4*%pi*1E-7&#039;Vs/Am&#039;&lt;br /&gt;
|-&lt;br /&gt;
| %m0 || magnetische Feldkonstante (alt, wird bald entfernt werden) || 4*%pi*1E-7&#039;Vs/Am&#039;&lt;br /&gt;
|-&lt;br /&gt;
| %epsilon0 || elektrische Feldkonstante || 8.85418781762039E-12&#039;As/Vm&#039;&lt;br /&gt;
|-&lt;br /&gt;
| %e0 || elektrische Feldkonstante (alt, wird bald entfernt werden) || 8.85418781762039E-12&#039;As/Vm&#039;&lt;br /&gt;
|-&lt;br /&gt;
| %c0 || Lichtgeschwindigkeit || 299792458&#039;m/s&#039;&lt;br /&gt;
|-&lt;br /&gt;
| %Qe || Elementarladung || 1.602176620898E-19As&lt;br /&gt;
|-&lt;br /&gt;
| %g  || Erdbeschleunigung || 9.81&#039;m/s^2&#039;&lt;br /&gt;
|-&lt;br /&gt;
| %NA || Avogadro Konstante || 6.02214085774E23/mol&lt;br /&gt;
|-&lt;br /&gt;
| %k  || Stefan Bolzman Konstante || 1.3806485279E-23&#039;J/K&#039;&lt;br /&gt;
|-&lt;br /&gt;
| %R0 || Universelle Gaskonstante || 8.314459848&#039;J/Kmol&#039;&lt;br /&gt;
|-&lt;br /&gt;
| %h || planksches Wirkungsquantum || 6.6260704081E-34Js&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=Berechnung mit Maxima=&lt;br /&gt;
* Maxima wird &#039;&#039;&#039;nur für symbolische Berechnungen&#039;&#039;&#039; bei der Erstellung von Beispielen verwendet. Hierbei wird, wie schon oberhalb im Schema angegeben, zuerst die Moodle.mac geladen, dann das [[Beispielsammlung Editieren#Maxima-Feld|Maxima-Feld]] berechnet und anschließend die Maxima-Felder aller Teilfragen. Das Ergebnis der Berechnung wird dann als symbolischer Ausdruck im Lösungfeld eingetragen.&lt;br /&gt;
* Da zum Zeitpunkt der &#039;&#039;&#039;Maxima-Berechnung keine Datensätze&#039;&#039;&#039; vorhanden sind, kann keine numerische Berechnung in Maxima durchgeführt werden, welche die [[Datensätze]] benötigt. Dies muss der interne Parser zum Zeitpunkt des Online-Test-Laufes erledigen. Numerische Berechnungen, welche der interne Parser nicht kann können deshalb auch nicht mit Maxima berechnet werden.&lt;br /&gt;
* Da das Lösungsfeld, welches mit Maxima berechnet wird symbolisch ausgewertet wird, können in Maxima sämtliche symbolischen Berechnungsverfahren angewendet werden, welche ein symbolisches Ergebnis liefern und keine numerischen Werte der Datensätze benötigen.&lt;br /&gt;
* Reicht im Maximafeld die Zeilenlänge nicht aus ist es möglich einen defninierten Zeilenumbruch zu realisieren. Schreiben Sie dazu &amp;quot;\&amp;quot; (einfacher Backslash) am Ende der Zeile.  &lt;br /&gt;
* &#039;&#039;&#039;Funktionsdeklarationen&#039;&#039;&#039; wie &#039;&#039;&#039;f(x):=&#039;&#039;&#039;x^2 mit Doppelpunkt-Ist-Gleich sind im Maxima-Feld nur eingeschränkt bis gar &#039;&#039;&#039;nicht verwendbar&#039;&#039;&#039;, da sie vom Parser nicht unterstützt werden.&lt;br /&gt;
* &#039;&#039;&#039;Mengen von Maxima&#039;&#039;&#039; sind in LeTTo n&#039;&#039;&#039;icht verwendbar&#039;&#039;&#039;. LeTTo verwender hierzu eigene Funktionen des Parsers welche mit &amp;quot;set&amp;quot; beginnen und auf Vektoren basieren.&lt;br /&gt;
&lt;br /&gt;
=Berechnung mit dem internen Parser=&lt;br /&gt;
* Der interne Parser kann durch Wahl der Checkbox &amp;quot;Parser&amp;quot; anstatt von Maxima für die Berechnung des Maxima-Feldes verwendet werden. &lt;br /&gt;
* Jedenfalls wird der Parser zur Test-Laufzeit für die Berechnung des Ergebnisses einer Frage aus Lösung und Datensätzen und zum Berechnen der Schülereingabe verwendet.&lt;br /&gt;
&lt;br /&gt;
==Operatoren==&lt;br /&gt;
=== VORSICHT mit MAXIMA ===&lt;br /&gt;
* Einige Operatoren sind in &#039;&#039;&#039;Maxima anders&#039;&#039;&#039;, oder &#039;&#039;&#039;nicht definiert&#039;&#039;&#039;. Möchte man im Maximafeld die Operatoren des Parsers-verwenden, so muss das gesamte Maxima-Feld &#039;&#039;&#039;mit dem Parser gerechnet&#039;&#039;&#039; werden. Man verliert dadurch jedoch die Vorteile der Maxima-Berechnung.&lt;br /&gt;
* Alternativ kann man statt der Operatoren auch &#039;&#039;&#039;Funktionen verwenden&#039;&#039;&#039; (zB: ne() statt != ). Diese werden dann von Maxima zwar nicht ausgewertet, die Berechnung bleibt aber trotzdem korrekt und kann mit Maxima durchgeführt werden.&lt;br /&gt;
* Es gibt einige Funktionen welche in &#039;&#039;&#039;Maxima existieren&#039;&#039;&#039; aber im &#039;&#039;&#039;Parser nicht, oder mit anderem Syntax&#039;&#039;&#039;.&lt;br /&gt;
** Wenn diese von Maxima nicht ausgewertet werden können, da sie &#039;&#039;&#039;Datensätze&#039;&#039;&#039; enthalten welche zu Auswertezeitpunkt von Maxima noch &#039;&#039;&#039;nicht mit Werten belegt&#039;&#039;&#039; sind, &#039;&#039;&#039;dürfen sie in der Berechnung nicht verwendet werden&#039;&#039;&#039;, da der Parser dann damit nichts anfangen kann.&lt;br /&gt;
** Solche Funktionen haben entweder im Parser eine alternative Schreibweise welche auch mit Maxima verwendet werden kann (z.B.: wenn), oder sie können prinzipell nicht verwendet werden. (Für wichtige Funktionsweisen könnte man in zukünftigen Versionen neue Funktionalitäten in den Parser einbauen, die die gewünschte Funktion erfüllen)&lt;br /&gt;
** Ein weiter Möglichkeit für die Verwendung solcher Funktionen ist der Verzicht auf Datensätze in diesen Funktionen, damit diese Funktion beim Auswerten des Maxima-Feldes bereits ausgewertet werden kann und somit der Parser davon nichts mehr sieht.&lt;br /&gt;
** zB:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
if then&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Infix Operatoren===&lt;br /&gt;
====arithmetische Operatoren====&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Operator || Priorität || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| + || 40 || Addition || 4+5 || 9 &lt;br /&gt;
|-&lt;br /&gt;
| - || 40 || Subtraktion || 6-2 || 4&lt;br /&gt;
|-&lt;br /&gt;
| * || 50 || Multiplikation || 4*5 || 20&lt;br /&gt;
|-&lt;br /&gt;
| / || 51 || Division || 20/4 || 5&lt;br /&gt;
|-&lt;br /&gt;
| % || 51 || Divisionsrest || 104%20 || 4&lt;br /&gt;
|-&lt;br /&gt;
| / / || 60 || Parallelschaltung || x / / y || x*y/(x+y)&lt;br /&gt;
|-&lt;br /&gt;
| ^ || 90 || Potenz || 2^3 || 8&lt;br /&gt;
|-&lt;br /&gt;
| .*. || 200 || Operator der intern für eine fehlende bindende Multiplikation verwendet wird || 4x || 4*x&lt;br /&gt;
|-&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
====Bitoperatoren====&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Operator || Priorität || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
||  |  || 20 || Bitweise oder logisches ODER ||| 9|5 &amp;lt;br&amp;gt; true|false || 13 &amp;lt;br&amp;gt;true&lt;br /&gt;
|-&lt;br /&gt;
| or || 20 || Bitweise oder logisches ODER || 9 or 5 || 13&lt;br /&gt;
|-&lt;br /&gt;
| &amp;amp;  || 21 || Bitweise oder logisches UND  || 13&amp;amp;10 || 8&lt;br /&gt;
|-&lt;br /&gt;
| and || 21 || Bitweise oder logisches UND  || 13 and 10 || 8&lt;br /&gt;
|-&lt;br /&gt;
| xor || 22 || Bitweise oder logisches exklusiv oder XOR  || 13 xor 10 || 7&lt;br /&gt;
|-&lt;br /&gt;
| imp || 23 || Bitweise oder logisches impliziert IMP || 13 imp 10 || 8&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;&amp;lt;  || 35 || Bitweise links schieben  || 5&amp;lt;&amp;lt;2 || 20&lt;br /&gt;
|-&lt;br /&gt;
| &amp;gt;&amp;gt;  || 35 || Bitweise rechts schieben || 8&amp;gt;&amp;gt;2 || 2&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
====Vergleichsoperatoren====&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Operator || Priorität || Beschreibung || Beispiel&lt;br /&gt;
|-&lt;br /&gt;
| =  || 3 || Gleichungsoperator || x=y&lt;br /&gt;
|-&lt;br /&gt;
| == || 30 || Gleichungsoperator || x==y&lt;br /&gt;
|-&lt;br /&gt;
| != || 30 || Ungleichungsoperator || x!=y&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt; || 32 || Kleiner || x&amp;lt;y&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;= || 32 || Kleiner gleich || x&amp;lt;=y&lt;br /&gt;
|-&lt;br /&gt;
| &amp;gt; || 32 || größer || x&amp;gt;y&lt;br /&gt;
|-&lt;br /&gt;
| &amp;gt;= || 32 || größer gleich || x&amp;gt;=y&lt;br /&gt;
|}&lt;br /&gt;
====Organisative Operatoren====&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Operator || Priorität || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| , || 0 || Listen-Trennzeichen || x,y ||&lt;br /&gt;
|-&lt;br /&gt;
| $ || 1 || Trennzeichen zwischen mehreren Berechnungen || ||&lt;br /&gt;
|-&lt;br /&gt;
| ; || 1 || Trennzeichen zwischen mehreren Berechnungen || ||&lt;br /&gt;
|-&lt;br /&gt;
| : || 2 || Zuweisung an eine Variablen auf der linken Seite || x:5 || &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Prefix Operatoren===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Operator || Priorität || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| + || 45 || positives Vorzeichen || +5 || 5&lt;br /&gt;
|-&lt;br /&gt;
| - || 45 || negatives Vorzeichen || -(-5) || 5&lt;br /&gt;
|-&lt;br /&gt;
| ~ || 95  || bitweise Inversion einer 64bit-Ganzzahl || ~0x0F0F || 0xFFFFFFFFFFFFF0F0&lt;br /&gt;
|-&lt;br /&gt;
| ! || 120 || logisches NOT || !(3&amp;lt;4) || false&lt;br /&gt;
|-&lt;br /&gt;
| ++ || 130 || Inkrement von Ganzzahlen || ++x || erhöht x um eins und gibt das Ergebnis nach der Erhöhung zurück&lt;br /&gt;
|-&lt;br /&gt;
| -- || 130 || Dekrement von Ganzzahlen || --x || vermindert x um eins und gibt das Ergebnis nach der Verminderung zurück&lt;br /&gt;
|-&lt;br /&gt;
| % || 200 || Prefix für Namen, welche als Konstante definiert sind || %pi || 3.141592653589793&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Suffix Operatoren===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Operator || Priorität || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| ++ || 135 || Inkrement von Ganzzahlen || x++ || erhöht x um eins und gibt den Variablenwert vor der Erhöhung zurück&lt;br /&gt;
|-&lt;br /&gt;
| -- || 135 || Dekrement von Ganzzahlen || x-- || vermindert x um eins und gibt den Variablenwert vor der Verminderung zurück&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==Klammern==&lt;br /&gt;
* () runde Klammern werden für mathematische Ausdrücke zur Klammerung verwendet&lt;br /&gt;
* {} geschwungene Klammer werden im Angabetext für die Namen der Datensätze verwendet&lt;br /&gt;
* [] eckige Klammern werden für Vektoren und Matrizen verwendet&lt;br /&gt;
&lt;br /&gt;
==Funktionen==&lt;br /&gt;
===Funktionen für Ganzzahlen===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| band || bitweises UND || band(4,12) || 4&lt;br /&gt;
|-&lt;br /&gt;
| bor  || bitweises ODER || bor(4,1) || 5&lt;br /&gt;
|-&lt;br /&gt;
| bxor || bitweises EXKLUSIV ODER || band(4,5) || 1&lt;br /&gt;
|-&lt;br /&gt;
| bimp || bitweises Parameter1 impliziert Parameter2 || bimp(13,10) || 8&lt;br /&gt;
|-&lt;br /&gt;
| binv || bitweises NICHT mit 8 bit || binv(0x0F) || 0xF0&lt;br /&gt;
|-&lt;br /&gt;
| shl || Schiebe Ganzzahl bitweise nach links || shl(8,2) || 32&lt;br /&gt;
|-&lt;br /&gt;
| shr || Schiebe Ganzzahl bitweise nach rechts || shr(8,2) || 2&lt;br /&gt;
|-&lt;br /&gt;
| div || Ganzzahldivision, Ergebnis wird abgeschnitten || div(5,2) || 2&lt;br /&gt;
|-&lt;br /&gt;
| inv8  || bitweise Invertieren und die letzten 8 Bit bestimmen  || inv8(0b1001) || 0b11110110&lt;br /&gt;
|-&lt;br /&gt;
| inv16 || bitweise Invertieren und die letzten 16 Bit bestimmen || inv16(0xF0)  || 0xFF0F&lt;br /&gt;
|-&lt;br /&gt;
| inv32 || bitweise Invertieren und die letzten 32 Bit bestimmen || inv32(0xF0)  || 0bFFFFFF0F&lt;br /&gt;
|-&lt;br /&gt;
| inv64 || bitweise Invertieren und die letzten 64 Bit bestimmen || inv64(0xF0)  || 0bFFFFFFFFFFFFFF0F&lt;br /&gt;
|-&lt;br /&gt;
| byte  || Zahl in eine Ganzzahl wandeln und die letzten 8bit der Zahl Abschneiden, Einheit geht verloren  || byte(34.2) || 34&lt;br /&gt;
|-&lt;br /&gt;
| word  || Zahl in eine Ganzzahl wandeln und die letzten 16bit der Zahl Abschneiden, Einheit geht verloren || word(34.2) || 34&lt;br /&gt;
|-&lt;br /&gt;
| int   || Zahl in eine Ganzzahl wandeln und die letzten 32bit der Zahl Abschneiden, Einheit geht verloren || int(34.2) || 34&lt;br /&gt;
|-&lt;br /&gt;
| long  || Zahl in eine Ganzzahl wandeln , Einheit geht verloren || long(34.2) || 34&lt;br /&gt;
|-&lt;br /&gt;
| [[parity]]  || Paritätsberechnung : parity(Parität,Codewortlänge,Datenwort[,Datenwort,....]) || parity(even,7,&amp;quot;xy&amp;quot;) || &lt;br /&gt;
|-&lt;br /&gt;
| [[blockparity]]  || Kreuz oder Blockparität : blockparity(Parität,Codewortlänge,Codewortanzahl,Datenwort[,Datenwort,....]) || blockparity(even,7,3,&amp;quot;abc&amp;quot;) || &lt;br /&gt;
|-&lt;br /&gt;
| [[bcd]]  || Wandelt in eine Long-Zahl in ein Feld aus BCD-kodierten Zahlen um || bcd(124) || [1,2,4]&lt;br /&gt;
|-&lt;br /&gt;
| [[code]] || Code aus mehreren Codeworten zusammensetzen : code(Codewortlänge,Datenwort[,Datenwort,....]) || code(5,4,3,5) || 0b1000001100101&lt;br /&gt;
|-&lt;br /&gt;
| [[hamming]] || Bestimmt den Hamming-Abstand von mehreren Codeworten || hamming(1,2,4,8,16) || 2&lt;br /&gt;
|-&lt;br /&gt;
| [[komplement]] ||  Bildet das Zweierkomplement mit einer negativen Zahl mit einer bestimmten Bitanzahl, fehlt die Bitanzahl, so wird ein 32Bit-2er-komplement gebildet || komplement(-5,8) || 0b11111011&lt;br /&gt;
|-&lt;br /&gt;
| [[bitstream]] || Erzeugt aus einer Ganzzahl einen Bitstrom als String mit einer definierten Anzahl von Bit (MSB werden nötigenfalls mit 0 gefüllt) : bitstream(Daten,Bitanzahl) || bitstream(0x184,12) || &amp;quot;000110000100&amp;quot;&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Funktionen für rationale und Ganzzahlen===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| kgV || berechnet das kleinste gemeinsame Vielfache von mehreren Zahlen || kgV(3,10) || 30&lt;br /&gt;
|-&lt;br /&gt;
| ggT || berechnet den größten gemeinsamen Teiler von mehreren Zahlen || ggT(12,10) || 2&lt;br /&gt;
|- &lt;br /&gt;
| isprim || prüft ob die angegebene Zahl eine Primzahl ist || isprim(13) || true&lt;br /&gt;
|-&lt;br /&gt;
| prims || zerlegt eine Ganzzahl in ihre Primfaktoren || prims(12) || [2,2,3]&lt;br /&gt;
|-&lt;br /&gt;
| defracmix || zerlegt eine rationale Zahl in einen gemischten Bruch aus ganzzahligem Summanden, Zähler und Nenner als Menge&amp;lt;br&amp;gt;Die erhaltene Menge kann mit dem Format-Modfier &#039;&#039;&#039;frac&#039;&#039;&#039; als gemischter Bruch dargestellt werden (siehe [[Zahlendarstellung]]) || defracmix(14/12)&amp;lt;br&amp;gt;defracmix(-15/12)&amp;lt;br&amp;gt;defracmix(3/12) || [1,2/12]&amp;lt;br&amp;gt;[-1,3,12]&amp;lt;br&amp;gt;[0,3,12] &lt;br /&gt;
|-&lt;br /&gt;
| defrac || zerlegt eine rationale Zahl in Zähler und Nenner als Menge &amp;lt;br&amp;gt;Die erhaltene Menge kann mit dem Format-Modfier &#039;&#039;&#039;frac&#039;&#039;&#039; als gemischter Bruch dargestellt werden || defrac(14/12) || [13,12]&lt;br /&gt;
|-&lt;br /&gt;
| frac || erzeugt aus einer Menge aus 2 oder 3 Elementen (von defrac) eine rationale Zahl || frac([3,7])&amp;lt;br&amp;gt;frac([1,2,3]) || 3/7 &amp;lt;br&amp;gt; 5/3&lt;br /&gt;
|-&lt;br /&gt;
| mod || Mathematische Implementierung von [https://de.wikipedia.org/wiki/Division_mit_Rest#Modulo modulo]: Divisionsrest einer Division mit ganzzahligem Ergebnis || mod(5,2) &amp;lt;br&amp;gt; mod(6.2,2.5) &amp;lt;br&amp;gt; mod(-4,3) || 1&amp;lt;br&amp;gt;1.2 &amp;lt;br&amp;gt; 2&lt;br /&gt;
|-&lt;br /&gt;
| mod2 || Symmetrische Implementierung von [https://de.wikipedia.org/wiki/Division_mit_Rest#Modulo modulo]: Divisionsrest einer Division mit ganzzahligem Ergebnis &amp;lt;br&amp;gt;Der Unterschied zu mod liegt in der Behandlung von negativen Zahlen des ersten Arguments &amp;lt;br&amp;gt;Siehe auch Divisionsrest des Parser-Operators % [[Berechnungen#arithmetische_Operatoren]] || mod2(5,2) &amp;lt;br&amp;gt; mod2(6.2,2.5) &amp;lt;br&amp;gt; mod2(-4,3) || 1&amp;lt;br&amp;gt;1.2 &amp;lt;br&amp;gt; -1&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===boolsche Funktionen===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| eq || gleich || eq(4,4) || true&lt;br /&gt;
|-&lt;br /&gt;
| eqruntime || symbolischer Vergleich, welcher &#039;&#039;&#039;symbolisch erst bei der Ergebnisberechnung&#039;&#039;&#039; ausgeführt wird. Muss verwendet werden, wenn bei Vergleichen symbolische Antworten von Schülern (Q0,Q1,...) verwendet werden.  || eqruntime(x+3*y,3*y+x) || true&lt;br /&gt;
|-&lt;br /&gt;
| ne || ungleich || ne(6,4) || true&lt;br /&gt;
|-&lt;br /&gt;
| ge || größer gleich || ge(6,4) || true&lt;br /&gt;
|-&lt;br /&gt;
| le || kleiner gleich || le(6,4) || false&lt;br /&gt;
|-&lt;br /&gt;
| gt || größer || gt(6,4) || true&lt;br /&gt;
|-&lt;br /&gt;
| lt || kleiner || lt(6,4) || false&lt;br /&gt;
|-&lt;br /&gt;
| between || prüft ob Parameter1 kleiner als Parameter2 und Parameter2 kleiner als Parameter 3 || between(3,4,5) || true&lt;br /&gt;
|-&lt;br /&gt;
| land || logisches UND || land(a&amp;lt;b,b&amp;lt;c) || &lt;br /&gt;
|-&lt;br /&gt;
| lor  || logisches ODER || lor(a&amp;lt;b,b&amp;lt;c) || &lt;br /&gt;
|-&lt;br /&gt;
| not  || logisches NICHT. Vorsicht ein symbolisches Ergebnis von Maxima liefert not als Prefix-Operator, welcher vom Parser nicht unterstützt wird ( Verwende statt dessen &#039;&#039;&#039;lnot&#039;&#039;&#039; ) || not(a&amp;lt;b) || &lt;br /&gt;
|-&lt;br /&gt;
| lnot  || logisches NICHT, wie not jedoch wird es von Maxima nicht ausgewertet || lnot(a&amp;lt;b) || &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===arithmetische Funktionen===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| double || Zahl in eine Gleitkommazahl umwandeln, die Einheit geht dabei verloren || double(3.4V) || 3.4&lt;br /&gt;
|-&lt;br /&gt;
| numeric || verwirft die Einheit, wenn eine vorhanden ist und liefert nur den Zahlenwert || numeric(2.3mA) &amp;lt;br&amp;gt; numeric(5%)|| 0.0023 &amp;lt;br&amp;gt; 5&lt;br /&gt;
|-&lt;br /&gt;
| unit || gibt die SI-Einheit mit dem Zahlenwert 1 zurück || unit(3.1kA) &amp;lt;br&amp;gt; unit(5%) || 1A &amp;lt;br&amp;gt; 1%&lt;br /&gt;
|-&lt;br /&gt;
| cround  || Rundet die Zahl kaufmännisch, der zweite Parameter gibt die Anzahl der Kommastellen an, ohne 2.Parameter wird auf Ganzzahlen gerundet, bei komplexen Zahlen wird Betrag und Winkel in Grad gerundet. || cround(23.535,2)&amp;lt;br&amp;gt;cround(2.435arg34.5364°,1) || 23.54&amp;lt;br&amp;gt;2.4arg34.5°&lt;br /&gt;
|-&lt;br /&gt;
| ccround  || Rundet die Zahl kaufmännisch, der zweite Parameter gibt die Anzahl der Kommastellen an, bei komplexe Zahlen wird Real und Imaginärteil gerundet. || ccround(2.4534+5.645*%i,2) || 2.45+5.65i&lt;br /&gt;
|-&lt;br /&gt;
| round  || Rundet die Zahl kaufmännisch, aus Kompatibilitätsgründen zu Maxima hat round nur einen Parameter || round(23.535) || 24&lt;br /&gt;
|-&lt;br /&gt;
| ground || Rundet die Zahl auf die im zweiten Parameter angegebenen gültigen Ziffern || ground(2453.43,2) || 2500&lt;br /&gt;
|-&lt;br /&gt;
| floor  || Rundet auf die größte ganze Zahl, welche kleiner oder gleich x ist || floor(24.5) || 24&lt;br /&gt;
|-&lt;br /&gt;
| trunc  || Schneidet die Zahl nach dem Komma ab || trunc(24.5) || 24&lt;br /&gt;
|-&lt;br /&gt;
| ceiling || ceiling(x) Rundet auf die kleinste ganze Zahl, welche größer oder gleich x ist || ceiling(13.2) || 14&lt;br /&gt;
|-&lt;br /&gt;
| pow || Potenzfunktion || pow(2,3) || 8&lt;br /&gt;
|-&lt;br /&gt;
| par || Parallelschaltung von Widerständen || par(x,y) || x*y/(x+y)&lt;br /&gt;
|-&lt;br /&gt;
| min  || Minimum von mehrere Werten suchen || min(3,5,1) || 1&lt;br /&gt;
|-&lt;br /&gt;
| max  || Maximum von mehreren Werten suchen || max(3,5,1) ||  5&lt;br /&gt;
|-&lt;br /&gt;
| random  || Zufallszahl aus einem definierten Zahlenbereich random(minimal,maximal)&amp;lt;br&amp;gt;VORSICHT! Die Zufallszahl wird bei jedem Aufruf neu berechnet, weshalb sich der Wert bei jedem Anzeigevorgang einer Frage ändert. Sollte sich der berechnete Wert für eine Schülerangabe zwischen Fragestellung und Ergebniskontrolle nicht ändern dürfen (ist der Normalfall) muss man einen &#039;&#039;&#039;Datensatz statt einer Zufallszahl&#039;&#039;&#039; verwenden! &amp;lt;br&amp;gt; Zufallszahlen haben in der Ergebnisberechnung keinen Sinn, und sollten maximal für angezeigte zufällige Werte verwendet werden! || random(2,8) ||  3.4532&lt;br /&gt;
|-&lt;br /&gt;
| randomC  || komplexe Zufallszahl aus einem definierten Zahlenbereich für den Betrag&amp;lt;br&amp;gt;VORSICHT! Die Zufallszahl wird bei jedem Aufruf neu berechnet!  || randomC(2,8) ||  3.4532arg40.3°&lt;br /&gt;
|-&lt;br /&gt;
| signum  || Liefert das Vorzeichen einer Zahl (-1,0,1). Bei einer komplexen Zahl das Vorzeichen des Realteils. || signum(-4) || -1&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Maxima-basierte Funktionen ===&lt;br /&gt;
* Diese Funktionen funktionieren nur wenn Maxima installiert ist und werden immer an Maxima gesendet, auch wenn der interne Parser aktiviert ist.&lt;br /&gt;
* Weiters werden sie bei der Ausgabe als TeX-Formel auch korrekt mit LaTeX gesetzt.&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| integrate || Berechnet das unbestimmte oder bestimmte Integral einer Funktion. || integrate(x^2,x) &amp;lt;br&amp;gt; integrate(x^2,x,0,2) || x^3/3 &amp;lt;br&amp;gt; 8/3  &lt;br /&gt;
|-&lt;br /&gt;
| diff || Berechnet die Ableitung einer Funktion.  || diff(x^2,x)&amp;lt;br&amp;gt;diff(3*x^2,x,2) || x &amp;lt;br&amp;gt; 6&lt;br /&gt;
|-&lt;br /&gt;
| tomaxima || Führt die Berechnung aller Parameter von links nach rechts hintereinander mit Maxima aus. Das Ergebnis ist dann das Ergebnis des letzten Parameters. || tomaxima(y:x^2,y+2) || x^2+2&lt;br /&gt;
|-&lt;br /&gt;
| laplace || Bestimmt die Laplace-Transformierte einer Funktion. || laplace(sin(t),t,s) || 1/(1+s^2)&lt;br /&gt;
|-&lt;br /&gt;
| ilt || Bestimmt die inverse Laplace-Transformierte eine Laplace-Funktion || ilt(1/(1+s),s,t) || e^(-t)&lt;br /&gt;
|-&lt;br /&gt;
| sum || Summenbildung || sum(1/k,k,1,2) || 3/2&lt;br /&gt;
|-&lt;br /&gt;
| product || Produktbildung || product(1/k,k,1,3) || 1/6&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===erweiterte arithmetische Funktionen===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| sigma || Sprungfunktion: sigma(x) liefert 0 für x&amp;lt;0 und 1 für x&amp;gt;=0 || sigma(243.3) || 1&lt;br /&gt;
|-&lt;br /&gt;
| pulse || Rechteckfunktion: &amp;lt;br&amp;gt;pulse(x,x0) ist gleich 1 für x0 &amp;lt; x &amp;lt; x0 + 1, sonst 0&amp;lt;br&amp;gt;pulse(x,x0,L) ist gleich 1 für x0 &amp;lt; x &amp;lt; x0 + L, sonst 0&amp;lt;br&amp;gt;[[Datei:pulse.png|300px]] || pulse(x,2,4) || [[Datei:pulse_x_2_4.png|100px]]&lt;br /&gt;
|-&lt;br /&gt;
| interpol || Interpolationsfunktion zwischen mehreren Stützpunkten in einem Koordinatensystem. &amp;lt;br&amp;gt; interpol(WerteX,WerteY,x) || interpol([0,1,2],[0,3,3],1.5) || 3&lt;br /&gt;
|-&lt;br /&gt;
| periodic || Erzeugt aus einer beliebigen Funktion zwischen 0 und Periodendauer eine periodische Funktion &amp;lt;br&amp;gt; periodic(Variable,Periodendauer,Funktion)&amp;lt;br&amp;gt; periodic(Variable,Periodendauer,Funktionsperiodendauer,Funktion) || ch1(t):periodic(t,5ms,2&#039;Vms-2&#039;*t^2) &amp;lt;br&amp;gt; ch1(t):periodic(t,5ms,1,2V*t^2) || :[[Datei:ClipCapIt-190318-113524.PNG|100px]] &amp;lt;br&amp;gt; :[[Datei:ClipCapIt-190318-113644.PNG|100px]]&lt;br /&gt;
|-&lt;br /&gt;
| numint || numerische Integration &amp;lt;br&amp;gt; numint(untereGrenze,obereGrenze,funktion,Variable)&amp;lt;br&amp;gt; numint(untereGrenze,obereGrenze,funktion,Variable,punkteAnzahl) || numint(0,2pi,sin(t),t) || 0&lt;br /&gt;
|-&lt;br /&gt;
| numdif || numerisches Differenzieren einer Funktion &amp;quot;funktion&amp;quot; nach einer Variablen &amp;quot;Variable&amp;quot; an der Stelle &amp;quot;position&amp;quot; mit einer Differenz der Variablen von &amp;quot;differenz&amp;quot; &amp;lt;br&amp;gt; numdif(position,funktion,Variable,differenz) || numdif(0,sin(t),t,0.01) || 1&lt;br /&gt;
|-&lt;br /&gt;
| solve || löst eine Gleichung oder ein Gleichungssystem nach einer oder mehrerer Variablen || solve([2*x+y=3,x-y=0],[x,y]) || [ [ x=1,y=1 ] ]&lt;br /&gt;
|-&lt;br /&gt;
| solvevalue || löst eine Gleichung oder ein Gleichungssystem nach einer Variablen und liefert genau die erste Lösung wenn sie numerisch berechenbar ist || solvevalue([ 2*x+y=3,x-y=0 ],[ x,y ],x)  || 1&lt;br /&gt;
|-&lt;br /&gt;
| newton || Bestimmt eine Nullstelle einer Funktion nach dem Newton-Verfahren. Der erste Parameter ist ein Ausdruck in einer Variablen, der zweite Parameter ist der Startwert. || newton(x^2-4,4) || 2&lt;br /&gt;
|-&lt;br /&gt;
| cnewton || Bestimmt eine komplexe Nullstelle einer Funktion nach dem Newton-Verfahren. Der erste Parameter ist ein Ausdruck in einer Variablen, der zweite Parameter ist der komplexe Startwert. || newton(x^2+4,4) || 2*%i&lt;br /&gt;
|-&lt;br /&gt;
| newtonall || Bestimmt alle Nullstellen einer Funktion mit einem Betrag des Funktionsparameters kleiner als ein definierter Wert nach dem Newton-Verfahren. Der erste Parameter ist ein Ausdruck in einer Variablen, der zweite Parameter ist der maximale Betrag des Funktionsparameters. Das Ergebnis ist immer ein Vektor mit den nach aufsteigendem Funktionswert sortierten Nullstellen. || newton(x^2-4,4) || [-2,2]&lt;br /&gt;
|-&lt;br /&gt;
| cnewtonall || Bestimmt alle komplexen Nullstellen einer Funktion mit einem Betrag des Funktionsparameters kleiner als ein definierter Wert nach dem Newton-Verfahren. Der erste Parameter ist ein Ausdruck in einer Variablen, der zweite Parameter ist der maximale Betrag des Funktionsparameters. Das Ergebnis ist immer ein Vektor mit den Nullstellen. || newton(x^2+4,4) || [-2*%i,2*%i]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Stringfunktionen===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| dechex || Zahl in eine Ganzzahl wandeln und als Hexadezimal-String ausgeben || dexhex(12) || &amp;quot;0xC&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| chr || Bestimmt die Zeichen mit dem ASC-II-Code der Long-Parameter und setzt daraus einen String zusammen. || chr(0x65,105) || &amp;quot;ei&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| val || Bestimmt den ASC-II-Code des ersten Zeichens welches als String-Parameter übergeben wurde.|| val(&amp;quot;a&amp;quot;) || 97&lt;br /&gt;
|-&lt;br /&gt;
| strcat || Fügt mehrere Strings zusammen.|| strcat(&amp;quot;a&amp;quot;,&amp;quot;b&amp;quot;) || &amp;quot;ab&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===trigonometrische Funktionen===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| sin || Sinus || sin(%pi/2) || 1&lt;br /&gt;
|-&lt;br /&gt;
| cos || Cosinus || cos(%pi/2) || 0&lt;br /&gt;
|-&lt;br /&gt;
| tan || Tangens || tan(%pi/4) || 1&lt;br /&gt;
|-&lt;br /&gt;
| asin || Arcus-Sinus || asin(1) || %pi/2&lt;br /&gt;
|-&lt;br /&gt;
| arcsin || Arcus-Sinus || asin(1) || %pi/2&lt;br /&gt;
|-&lt;br /&gt;
| acos || Arcus-Cosinus || acos(1) || 0&lt;br /&gt;
|-&lt;br /&gt;
| arccos || Arcus-Cosinus || acos(1) || 0&lt;br /&gt;
|-&lt;br /&gt;
| atan || Arcus-Tangens || atan(1) || %pi/4&lt;br /&gt;
|-&lt;br /&gt;
| arctan || Arcus-Tangens || arctan(1) || %pi/4&lt;br /&gt;
|-&lt;br /&gt;
| atan2 || Arcus-Tangens atan2(y,x)=arctan(y/x) || atan2(-2,-2) || -%pi*3/4&lt;br /&gt;
|-&lt;br /&gt;
| arctan2 || Arcus-Tangens arctan2(y,x)=arctan(y/x) || arctan2(-2,-2) || -%pi*3/4&lt;br /&gt;
|-&lt;br /&gt;
| sinh || Sinus-Hyperbolicus || sinh(1) || 1.1752012&lt;br /&gt;
|-&lt;br /&gt;
| cosh || Cosinus-Hyperbolicus || cosh(1) || 1.5430806&lt;br /&gt;
|-&lt;br /&gt;
| tanh || Tangens-Hyperbolicus || tanh(1) || 0.7615941&lt;br /&gt;
|-&lt;br /&gt;
| coth || Cotangens-Hyperbolicus || coth(1) || 1.313035&lt;br /&gt;
|-&lt;br /&gt;
| asinh || Area-Sinus-Hyperbolicus || asinh(1.1752012) || 1&lt;br /&gt;
|-&lt;br /&gt;
| acosh || Area-Cosinus-Hyperbolicus || acosh(1.5430806) || 1&lt;br /&gt;
|-&lt;br /&gt;
| atanh || Area-Tangens-Hyperbolicus || atanh(0.7615941) || 1&lt;br /&gt;
|-&lt;br /&gt;
| acoth || Area-Cotangens-Hyperbolicus || acoth(1.313035) || 1&lt;br /&gt;
|-&lt;br /&gt;
| [[csin]] || Erzeugt aus einer komplexen Zahl (Effektivwert) und einer Frequenz einen Sinusfunktion in der Zeit || csin(U) || sqrt(2)*cabs(U)*sin(2*pi*f*t+carg(U))&lt;br /&gt;
|-&lt;br /&gt;
| [[quadrant]] || Liefert den Quadranten eines Winkels mit einer Toleranzangabe. || quadrant(20°,5°) || 1&lt;br /&gt;
|-&lt;br /&gt;
| argnorm || Wandelt einen Winkel auf den Bereich von 0°-360° || argnorm(-50°) || 310°&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Exponentialfunktionen===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| pow || Potenzfunktion || pow(2,3) || 8&lt;br /&gt;
|-&lt;br /&gt;
| exp|| Exponentialfunktion || exp(1) || %e&lt;br /&gt;
|-&lt;br /&gt;
| log || natürlicher Logarythmus || log(%e) || 1&lt;br /&gt;
|-&lt;br /&gt;
| ln || natürlicher Logarythmus || ln(%e) || 1&lt;br /&gt;
|-&lt;br /&gt;
| log10 || Logarythmus zur Basis 10 || log10(100) || 2&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===komplexe Zahlen===&lt;br /&gt;
Die Funktionen zu komplexen Zahlen werden (anders als in Maxima) nur ausgewertet wenn das Ergebnis numerisch berechenbar ist, ansonsten bleibt die Funktion symbolisch erhalten.&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| abs || Liefert den Absolutbetrag einer komplexen Zahl || abs(3+4*%i) || 5&lt;br /&gt;
|-&lt;br /&gt;
| cabs || Liefert den Absolutbetrag einer komplexen Zahl || cabs(3+4*%i) || 5&lt;br /&gt;
|-&lt;br /&gt;
| carg || Liefert das Argument einer komplexen Zahl || carg(4*%e^(3*%i)) || 3&lt;br /&gt;
|-&lt;br /&gt;
| realpart || Liefert den Realteil einer komplexen Zahl || realpart(3+4*%i) || 3&lt;br /&gt;
|-&lt;br /&gt;
| imagpart || Liefert den Imaginärteil einer komplexen Zahl || imagpart(3+4*%i) || 4&lt;br /&gt;
|-&lt;br /&gt;
| conjugate || Liefert die konjugiert komplexe Zahl einer komplexen Zahl || conjugate(3+4*%i) || 3-4*%i&lt;br /&gt;
|-&lt;br /&gt;
| rectform || hat in LeTTo keine Relevanz, da die Zahlendarstellung bei der Ausgabe definiert wird wie zB.: {=3arg2;karti} ||  || &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===statistische Funktionen===&lt;br /&gt;
Die Funktionen funktionieren nur ohne Einheiten.&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| factorial || Liefert die Fakultät einer positiven ganzen Zahl || factorial(5) || 120&lt;br /&gt;
|-&lt;br /&gt;
| binomial || Liefert den Binomialkoeffizienten von zwei positiven ganzen Zahlen || binomial(5,2) || 10&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Mengen-Funktionen===&lt;br /&gt;
Mengen werden intern als Vektoren verarbeitet und sind deshalb auch direkt durch Vektoren ersetzbar. Auch alle Vektor-Funktionen sind somit auch auf Mengen anwendbar und umgekehrt.&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis || ab Rev&lt;br /&gt;
|-&lt;br /&gt;
| setget || Liefert ein Element einer Menge oder einer Matrix (Menge von Mengen) || setget([12,13,14],1) &amp;lt;br&amp;gt; setget(matrix([9,2],[3,4]),0,1) || 13 &amp;lt;br&amp;gt; 2 &lt;br /&gt;
|-&lt;br /&gt;
| setset || setzt ein Element einer Menge oder einer Matrix (Menge von Mengen) || setset([12,13,14],1,35) &amp;lt;br&amp;gt; setset(matrix([9,2],[3,4]),0,0,-9) || [12,35,14] &amp;lt;br&amp;gt; [[-9,2],[3,4]]&lt;br /&gt;
|-&lt;br /&gt;
| setlength || liefert die Anzahl der Elemente einer Liste, Menge oder eines Vektors || setlength([3,6,54,34,3,54]) || 6 &lt;br /&gt;
|- &lt;br /&gt;
| setinsert || fügt ein Element in eine Menge an eine gegebene Stelle ein || setinsert([12,13,14],1,25) || [12,25,13,14]&lt;br /&gt;
|-&lt;br /&gt;
| setremove || löscht ein Element einer Menge || setremove([12,13,14],1) || [12,14]&lt;br /&gt;
|-&lt;br /&gt;
| setapply || wendet einen Ausdruck oder Funktion auf alle Elemente einer Menge an || setapply(y,[1,2,3],y*2) || [2,4,6] || 5965&lt;br /&gt;
|-&lt;br /&gt;
| setmedian || Liefert den Median einer Menge || setmedian([4,3,1,5,6]) || 4&lt;br /&gt;
|-&lt;br /&gt;
| setboxplot || Liefert die Werte des Boxplot einer Menge (Minimum, unteres Quartil, Median, oberes Quartil, Maximum) als Vektor verwendbar für das [[Plot#definierte_Zeichenelemente|Plot-Plugin]] || setboxplot([1,2,3,10,8,9]) || [1,2,5.5,9,10]&lt;br /&gt;
|-&lt;br /&gt;
| setsort || Sortiert die Elemente einer Menge aufsteigend || setsort([3,-3,2,0,5,2]) || [-3,0,2,2,3,5]&lt;br /&gt;
|-&lt;br /&gt;
| setsortnd || Sortiert die Elemente einer Menge aufsteigend und entfernt alle mehrfach vorkommenden Elemente || setsortnd([31,-3,2,31,0,5,2]) || [-3,0,2,5,31]&lt;br /&gt;
|-&lt;br /&gt;
| setcount || Bestimmt die Anzahl wie oft ein Element in einer Menge vorkommt oder die Anzahl der Elemente der Menge || setcount([31,-3,2,31,0,5,2],31) &amp;lt;br&amp;gt; setcount([2,5,3,6]) || 2 &amp;lt;br&amp;gt; 4&lt;br /&gt;
|-&lt;br /&gt;
| setmodus || Liefert das Element einer Menge, welches am öftesten vorkommt oder die Elemente als Menge wenn mehrere Elemente gleich oft vorkommen || setmodus([3,-3,2,0,5,2]) || 2&lt;br /&gt;
|-&lt;br /&gt;
| setreverse || Dreht die Reihenfolge einer Menge um || setreverse([3,-3,2,0,5,2]) || [2,5,0,2,-3,3]&lt;br /&gt;
|-&lt;br /&gt;
| setnd || Löscht alle Duplikate aus der Menge || setnd([3,-3,2,0,5,2]) || [3,-3,2,0,5]&lt;br /&gt;
|-&lt;br /&gt;
| setshuffle || Mischt eine  Menge in eine zufällige Reihenfolge || setshuffle([3,-3,2,0,5,2]) || [2,0,5,-3,2,3]&lt;br /&gt;
|-&lt;br /&gt;
| setmittel || Bestimmt den Mittelwert einer Menge || setmittel([1,3,2,4]) || 2.5&lt;br /&gt;
|-&lt;br /&gt;
| setgeomittel || Bestimmt das geometrische Mittelwert einer Menge aus positiven reellen Zahlen || setgeomittel([10,20,30]) || 18.171206&lt;br /&gt;
|-&lt;br /&gt;
| setvarianz || Bestimmt die empirische Varianz einer Menge || setvarianz([3,1,2,5,4]) || ((3-3)^2+(1-3)^2+(2-3)^2+(5-3)^2+(4-3)^2)/5=2&lt;br /&gt;
|-&lt;br /&gt;
| setquadratmittel || Bestimmt den quadratischen Mittelwert einer Menge || setquadratmittel([10,20,30]) || 21.6025&lt;br /&gt;
|-&lt;br /&gt;
| setsum || Bestimmt die Summe aller Werte einer Menge || setsum([1,3,2,4]) || 10&lt;br /&gt;
|-&lt;br /&gt;
| setprod || Bestimmt das Produkt aller Werte einer Menge || setprod([1,3,2,4]) || 24&lt;br /&gt;
|-&lt;br /&gt;
| setunion || Fügt mehrere Mengen zu einer neuen Menge zusammen || setunion([1,3,2,4],[3,7]) || {1,3,2,4,3,7}&lt;br /&gt;
|-&lt;br /&gt;
| setunionnd || Fügt mehrere Mengen zu einer neuen Menge zusammen, sortiert diese und entfernt alle mehrfachen Elemente || setunionnd([1,3,2,4],[3,7]) || {1,2,3,4,7}&lt;br /&gt;
|-&lt;br /&gt;
| setcut || Bildet die Schnittmenge aus mehreren Mengen || setcut([1,3,2,4],[3,7]) || {3}&lt;br /&gt;
|-&lt;br /&gt;
| setcompare || vergleicht zwei Mengen miteinander, wobei die Reihenfolge egal ist  || setcompare([1,3,2,4],[3,7]) &amp;lt;br&amp;gt; setcompare([1,3,2],[1,2,3]) &amp;lt;br&amp;gt; setcompare([1,3,2],[1,3,2,3]) &amp;lt;br&amp;gt; setcompare([1,2,3],[1,2,3])  || false &amp;lt;br&amp;gt; true &amp;lt;br&amp;gt; false &amp;lt;br&amp;gt; true&lt;br /&gt;
|-&lt;br /&gt;
| setcomparend || vergleicht zwei Mengen miteinander, wobei die Reihenfolge egal ist und doppelte Werte als einfach behandelt werden. || setcomparend([1,3,2,4],[3,7]) &amp;lt;br&amp;gt; setcomparend([1,3,2],[1,2,3]) &amp;lt;br&amp;gt; setcomparend([1,3,2],[1,3,2,3]) &amp;lt;br&amp;gt; setcomparend([1,2,3],[1,2,3])  || false &amp;lt;br&amp;gt; true &amp;lt;br&amp;gt; true &amp;lt;br&amp;gt; true&lt;br /&gt;
|-&lt;br /&gt;
| setpartof || prüft ob die erste Menge eine Teilmenge der zweite Menge ist wobei die Reihenfolge egal ist aber mehrfache Werte berücksichtigt werden  || setpartof([1,4],[1,3,7]) &amp;lt;br&amp;gt; setpartof([1,3],[1,2,3]) &amp;lt;br&amp;gt; setpartof([1,3,3],[1,3,5,7]) &amp;lt;br&amp;gt; setpartof([1,4,4],[1,2,3,4])  || false &amp;lt;br&amp;gt; true &amp;lt;br&amp;gt; false &amp;lt;br&amp;gt; false&lt;br /&gt;
|-&lt;br /&gt;
| setpartofnd || prüft ob die erste Menge eine Teilmenge der zweite Menge ist wobei die Reihenfolge und mehrfache Werte egal sind  || setpartofnd([1,4],[1,3,7]) &amp;lt;br&amp;gt; setpartofnd([1,3],[1,2,3]) &amp;lt;br&amp;gt; setpartofnd([1,3,3],[1,3,5,7]) &amp;lt;br&amp;gt; setpartofnd([1,4,4],[1,2,3,4])  || false &amp;lt;br&amp;gt; true &amp;lt;br&amp;gt; true &amp;lt;br&amp;gt; true&lt;br /&gt;
|-&lt;br /&gt;
| setgetmin || Liefert den kleinsten Wert einer Menge || setgetmin([1,3,-2,4]) || -2&lt;br /&gt;
|-&lt;br /&gt;
| setgetmax || Liefert den größten Wert einer Menge || setgetmax([1,3,-2,4]) || 4&lt;br /&gt;
|-&lt;br /&gt;
| setremovefirst || Entfernt den ersten Wert einer Menge || setremovefirst([1,3,-2,4]) || {3,-2,4}&lt;br /&gt;
|-&lt;br /&gt;
| setremovelast || Entfernt den letzten Wert einer Menge || setremovelast([1,3,-2,4]) || {1,3,-2}&lt;br /&gt;
|-&lt;br /&gt;
| setgetfirst || Liefert den ersten Wert einer Menge || setgetfirst([1,3,-2,4]) || 1&lt;br /&gt;
|-&lt;br /&gt;
| setgetlast || Liefert den letzten Wert einer Menge || setgetlast([1,3,-2,4]) || 4&lt;br /&gt;
|-&lt;br /&gt;
| setsub || setsub(M,x,y) Liefert eine Teilmenge von M der Elemente vom index x bis zum Index y || setsub([1,3,-2,4],1,2) || {3,-2}&lt;br /&gt;
|-&lt;br /&gt;
| setmakelist || setmakelist(f,x,start,stop) setzt in den Ausdruck f für x die Werte von start bis stop mit einer Schrittweite von 1 ein. || setmakelist(x^2,x,1,4) || [ 1,4,9,16 ]&lt;br /&gt;
|-&lt;br /&gt;
| || setmakelist(f,x,start,stop,schrittweite) setzt in den Ausdruck f für x die Werte von start bis stop mit dem Abstand schrittweite ein. || setmakelist(x^2,x,1,2,0.5) || [ 1,2.25,4 ]&lt;br /&gt;
|-&lt;br /&gt;
| || setmakelist(f,x,set) setzt die Werte des Vektors set in den Ausdruck f für x ein. || setmakelist(x^2,x,[3,1,2])  ||[ 9,1,4 ]&lt;br /&gt;
|-&lt;br /&gt;
| foreach || Führt für jedes Element eine Berechnung aus und verbindet die Ergebnisse mit der Aggregatfunktion || foreach([2,-3,5,-6],p,cabs(p),&amp;quot;+&amp;quot;) || 16 || 6075 &lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Punkte-Mengen-Funktionen ===&lt;br /&gt;
Bei der Eingabe mit dem Plot-Plugin werden Punkte-Mengen als Matrizen in der Form [[x1,y1],[x2,y2],[y3,y3]] für die gespeicherten Punkte welcher der Schüler eingegeben hat verwendet.&lt;br /&gt;
&lt;br /&gt;
Um die Verarbeitung der Eingaben zu erleichtern kann man die Funktionen beginnend mit pv verwenden.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis || ab Rev&lt;br /&gt;
|-&lt;br /&gt;
| pvlineabs || Bestimmt aus dem n-ten Punktepaar den Absolutbetrag des Abstandes. || pvlineabs([[2,3],[4,5],[6,3],[-2,4]],0) || 2.82842712475 || 6075 &lt;br /&gt;
|-&lt;br /&gt;
| pvlinearg || Bestimmt aus dem n-ten Punktepaar den Winkel der Strecke zur x-Achse || pvlinearg([[2,3],[4,5],[6,3],[-2,4]],0) || 45° || 6075 &lt;br /&gt;
|-&lt;br /&gt;
| pvlinek || Bestimmt die Steigung der zugehörigen Geraden dem n-ten Punktepaar || pvlinek([[2,3],[4,5],[6,3],[-2,4]],0) || 1 || 6075 &lt;br /&gt;
|-&lt;br /&gt;
| pvlined || Bestimmt den Schnittpunkt einer Geraden durch das n-te Punktepaar mit der y-Achse || pvlined([[2,3],[4,5],[6,3],[-2,4]],0) || 1 || 6075 &lt;br /&gt;
|-&lt;br /&gt;
| pvline || Bestimmt die Geradengleichung einer Geraden durch das n-te Punktepaar || pvline([[2,3],[4,5],[6,3],[-2,4]],0) || y=x+1 || 6075 &lt;br /&gt;
|-&lt;br /&gt;
| pvpoints || Bestimmt die Anzahl der Punkte || pvpoints([[2,3],[4,5],[6,3],[-2,4]]) || 4 || 6075 &lt;br /&gt;
|-&lt;br /&gt;
| pvvect || Bestimmt einen Vector aus dem n-te Punktepaar || pvvect([[2,3],[4,5],[6,3],[-2,4]],0) || [2,2] || 6075 &lt;br /&gt;
|-&lt;br /&gt;
| pvforeachline || Führt für jedes Punktepaar eine Berechnung aus und verbindet die Ergebnisse mit der Aggregatfunktion || pvforeachline([[2,3],[4,5],[6,3],[-2,4]],p,pvlineabs(p),&amp;quot;+&amp;quot;) || 10.890684873 || 6075 &lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Typ-Funktionen===&lt;br /&gt;
Werden nur dann ausgewertet wenn der Parameter ein numerischer Wert oder eine Menge ist.&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| isset || Prüft ob es sich um eine Menge handelt. || isset([12,13,14]) || true &lt;br /&gt;
|-&lt;br /&gt;
| issetnumeric || Prüft ob es sich um eine Menge aus reellen Zahlen handelt. || issetnumeric([12,13.4,14]) || true &lt;br /&gt;
|-&lt;br /&gt;
| issetlong || Prüft ob es sich um eine Menge aus ganzen Zahlen handelt. || issetlong([12,13,14]) || true &lt;br /&gt;
|-&lt;br /&gt;
| islong || Prüft ob es sich um eine ganze Zahl handelt. || islong(12) || true &lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Algebra===&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;Hinweis:&#039;&#039; Die Indizes eines Vektors oder einer Matrix werden in Letto ausgehend von 0 weg gezählt.  &lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| matrix || erzeugt aus mehreren gleich langen Vektoren eine Matrix || matrix([1,2],[3,4]) || [[1,2],[3,4]]&lt;br /&gt;
|-&lt;br /&gt;
| inv || invertiert eine quadratische Matrix oder bildet 1/x || inv(matrix([1,2],[3,4])) || [[-2,1],[3/2,-1/2]]&lt;br /&gt;
|-&lt;br /&gt;
| vget || liefert ein Element eines Vektors oder einer Matrix [https://www.youtube.com/watch?v=T82YIt3e8ac Video] || vget([12,13,14],1) &amp;lt;br&amp;gt; vget(matrix([9,2],[3,4]),0,1) || 13 &amp;lt;br&amp;gt; 2 &lt;br /&gt;
|-&lt;br /&gt;
| vset || setzt ein Element eines Vektors oder einer Matrix || vset([12,13,14],1,35) &amp;lt;br&amp;gt; vset(matrix([9,2],[3,4]),0,0,-9) || [12,35,14] &amp;lt;br&amp;gt; [[-9,2],[3,4]]&lt;br /&gt;
|-&lt;br /&gt;
| vinsert || fügt ein Element in einen Vektor an eine gegebene Stelle ein || vinsert([12,13,14],1,25) || [12,25,13,14]&lt;br /&gt;
|-&lt;br /&gt;
| vremove || löscht ein Element eines Vektors [https://www.youtube.com/watch?v=T82YIt3e8ac Video] || vremove([12,13,14],1) || [12,14]&lt;br /&gt;
|-&lt;br /&gt;
| vabs || Berechnet den Betrag eines Vektors || vabs([3,4]) || 5&lt;br /&gt;
|-&lt;br /&gt;
| vin || Berechnet das innere Produkt von 2 Vektoren || vin([1,2,3],[4,5,6]) || 32&lt;br /&gt;
|-&lt;br /&gt;
| vex || Berechnet das ex-Produkt von 2 Vektoren im 3-dimensionalen Raum || vex([1,2,3],[4,5,6]) || [-3,6,-3]&lt;br /&gt;
|-&lt;br /&gt;
| mrows || liefert die Anzahl der Zeilen einer Matrix || mrows([[3,4,4],[3,6,54,34,3,54]]) || 2&lt;br /&gt;
|-&lt;br /&gt;
| mcols || liefert die Anzahl der Spalten einer Matrix || mcols([[3,4,4],[3,6,54,34,3,54]]) || 6 &lt;br /&gt;
|- &lt;br /&gt;
| mprod || Bildet das Matrixprodukt aus zwei Matrizen || mprod([[1,2],[3,4]],[[5,6],[7,8]]) || [[19,22],[43,50]]&lt;br /&gt;
|-&lt;br /&gt;
| mtrans || Bildet die transponierte Matrix || mtrans([[1,2],[3,4]]) || [[1,3],[2,4]]&lt;br /&gt;
|-&lt;br /&gt;
| minv || Bildet die inverse Matrix || minv([[1,2],[3,4]]) || [[-2,1],[3/2,-1/2]]&lt;br /&gt;
|-&lt;br /&gt;
| mdet || Bildet die Determinante einer quadratischen Matrix || mdet([[1,2],[3,4]]) || -2&lt;br /&gt;
|-&lt;br /&gt;
| vindex || vindex(v,x) liefert den Index des Elementes eines Vektors, welcher am nächsten bei x liegt || vindex([10,30,70],40) || 1 &lt;br /&gt;
|-&lt;br /&gt;
| vindexup || vindexup(v,x) liefert den Index des Elementes eines Vektors, welcher größer oder gleich x ist || vindexup([10,30,70],40) || 2 &lt;br /&gt;
|-&lt;br /&gt;
| vindexdown || vindexdown(v,x) liefert den Index des Elementes eines Vektors, welcher kleiner oder gleich x ist || vindexdown([10,30,70],60) || 1&lt;br /&gt;
|-&lt;br /&gt;
| verweis || verweis(M,x,n) liefert den Wert der n-ten Spalte (ohne Angabe von n die 2.Spalte) einer Matrix M wo x dem Wert in der ersten Spalte am nächsten liegt || verweis([[10,33],[20,77],[30,99]],21) || 77&lt;br /&gt;
|-&lt;br /&gt;
| verweisup || verweisup(M,x,n) liefert den Wert der n-ten Spalte (ohne Angabe von n die 2.Spalte) einer Matrix M wo x dem Wert in der ersten Spalte am nächsten liegt || verweisup([[10,33],[20,77],[30,99]],21) || 99&lt;br /&gt;
|-&lt;br /&gt;
| verweisdown || verweisdown(M,x,n) liefert den Wert der n-ten Spalte (ohne Angabe von n die 2.Spalte) einer Matrix M wo x dem Wert in der ersten Spalte am nächsten liegt || verweisdown([[10,33],[20,77],[30,99]],27,1) || 77&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Variable===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| kill || löscht Variable aus dem Variablenspeicher || kill(x,y) &amp;lt;br&amp;gt; kill(allbut(y)) &amp;lt;br&amp;gt; kill(all) || löscht die Variablen x und y &amp;lt;br&amp;gt; löscht alle Variablen mit Ausnahme von y &amp;lt;br&amp;gt; löscht alle Variable&lt;br /&gt;
|-&lt;br /&gt;
| allbut || Liefert eine Liste aller Variablen des Parsers als Menge(Vektor) mit Ausnahme der als Parameter angegebenen Variablen || allbut(x,y) || [a,b,c]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Auswertung und Programmierung===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis || Revision&lt;br /&gt;
|-&lt;br /&gt;
| ev || Auswertung eines Ausdruckes, als Parameter können Gleichungen angegeben werden, welche dann in den Ausdruck eingesetzt werden || ev(x*y,y=4) || x*4&lt;br /&gt;
|-&lt;br /&gt;
| evruntime || Auswertung eines Ausdruckes, als Parameter können Gleichungen angegeben werden, welche dann in den Ausdruck eingesetzt werden. Das &#039;&#039;&#039;Einsetzen erfolgt erst bei der Ergebnisberechnung&#039;&#039;&#039;! || evruntime(x*y,y=4) || x*4&lt;br /&gt;
|-&lt;br /&gt;
| [[nv]] || Auswertung eines Ausdruckes, als Parameter können Gleichungen angegeben werden, welche dann in den Ausdruck eingesetzt werden. Im Gegensatz zu ev werden bestehende Variable nur in den Gleichungen, aber nicht im Ausdruck selbst eingesetzt! || nv(x*y,y=4) || x*4&lt;br /&gt;
|-&lt;br /&gt;
| [[if]] || Bedingungsfunktion if(bedingung,wahrwert,falschwert) || if(4&amp;lt;6,10,12) || 10&lt;br /&gt;
|-&lt;br /&gt;
| [[if|wenn]] || Bedingungsfunktion wenn(bedingung,wahrwert,falschwert). Im Prinzip identisch wie if, jedoch kann if mit Maxima nicht verwendet werden. || wenn(4&amp;lt;6,10,12) || 10&lt;br /&gt;
|-&lt;br /&gt;
| plugin || Ruft die Berechnungsmethode des Plugins, welches als erster Stringparameter angegeben werden muss auf und übergibt die weiteren Parameter an die Berechnungsmethode des Plugins.  || plugin(&amp;quot;plugin1&amp;quot;,3) || führt die Berechnung des Plugins mit dem Namen &amp;quot;plugin1&amp;quot; mit dem Parameter 3 aus. &lt;br /&gt;
|-&lt;br /&gt;
| symbolic || Bei allen Variablen innerhalb von symbolic werden nur nicht-numerische Werte eingesetzt! Wird vor allem im Angabtext bei {= } verwendet || symbolic(x^2+2) || x^2+2&lt;br /&gt;
|-&lt;br /&gt;
| runtime || Bei dieser Funktion wird &#039;&#039;&#039;erst bei der Berechnung der Frageantwort, nach dem Einsetzen der Datensätze&#039;&#039;&#039; das &#039;&#039;&#039;komplette Maxima-Feld&#039;&#039;&#039; mit dem internen &#039;&#039;&#039;Parser&#039;&#039;&#039; durchgerechnet und danach der Parameter-Ausdruck berechnet. Dadurch kann man bei komplizierten Berechnungen eine sehr aufwendige symbolische Berechnung verhindern! || runtime(U) || &lt;br /&gt;
|-&lt;br /&gt;
| dataset || liefert alle Datensätze einer Datensatz-Definition in einem Vektor || dataset(x) || &lt;br /&gt;
|-&lt;br /&gt;
| parse || Wenn der Parameter ein String ist wird dieser String mit dem Parser interpretiert || parse(&amp;quot;2+3&amp;quot;) || 5&lt;br /&gt;
|-&lt;br /&gt;
| foreach || Führt für jedes Element einer Menge eine Berechnung aus und verbindet die Ergebnisse mit der Aggregatfunktion || foreach([2,-3,5,-6],p,cabs(p),&amp;quot;+&amp;quot;) || 16 || 6075 &lt;br /&gt;
|-&lt;br /&gt;
| pvforeachline || Führt für jedes Punktepaar einer Punktemenge eine Berechnung aus und verbindet die Ergebnisse mit der Aggregatfunktion || pvforeachline([[2,3],[4,5],[6,3],[-2,4]],p,pvlineabs(p),&amp;quot;+&amp;quot;) || 10.890684873 || 6075 &lt;br /&gt;
|-&lt;br /&gt;
| loop || Führt eine Zählschleife aus loop(Variable,Startwert,Wiederholbedingung,Inkrement,Ausdruck,Aggregatsfunktion). &amp;lt;br&amp;gt;Ohne Aggregatsfunktion wird ein Feld mit den Ergebnissen der Schleifeniterationen geliefert. || loop(i,1,i&amp;lt;7,i++,i,&amp;quot;+&amp;quot;)&amp;lt;br&amp;gt;loop(i,1,i&amp;lt;7,i:i+2,i) || 21&amp;lt;br&amp;gt;[1,3,5] || 6077&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Optimierung der Ausdrücke===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| opt   || Ausdruck wird vollständig optimiert, die Funktion wird ausgewertet und ist danach nicht mehr vorhanden. Nur bei der Verwendung des internen Parser sinnvoll. || opt(x+x) || 2*x&lt;br /&gt;
|-&lt;br /&gt;
| ratsimp || Ausdruck wird vollständig optimiert, die Funktion wird ausgewertet und ist danach nicht mehr vorhanden (wie opt, wird jedoch auch von Maxima ausgewertet) || ratsimp(x+x) || 2*x&lt;br /&gt;
|-&lt;br /&gt;
| noopt || Ausdruck wird nicht optimiert, bleibt also so erhalten wie angegeben. Die Funktion an sich geht aber verloren. || noopt(2+3) || 2+3&lt;br /&gt;
|-&lt;br /&gt;
| nopt || Ausdruck wird nicht optimiert, bleibt also so erhalten wie angegeben. Die Funktion bleibt erhalten und wird erst bei der Lösungsberechnung oder durch opt() entfernt. || noopt(2+3) || 2+3&lt;br /&gt;
|-&lt;br /&gt;
| lopt || Im Maximafeld bleibt die Funktion ohne Funktion erhalten, im Ergebnis {=  wird die Funktion entfernt und in der Lösung wird nach dem Einsetzen der Werte der Ausdruck vollständig optimiert. || lopt(x+3)  || lopt(x+3)  &lt;br /&gt;
|-&lt;br /&gt;
| lnoopt || Im Maximafeld bleibt die Funktion ohne Funktion erhalten, im Ergebnis {=  wird die Funktion entfernt und in der Lösung wird nach dem Einsetzen der Werte der Ausdruck nicht mehr optimiert. || lnoopt(x+3+2)  || lnoopt(x+5) &lt;br /&gt;
|-&lt;br /&gt;
| loptnumeric || Im Maximafeld bleibt die Funktion ohne Funktion erhalten, im Ergebnis {=  wird die Funktion entfernt und in der Lösung wird nach dem Einsetzen der Werte der Ausdruck nur numerisch optimiert. || loptnumeric(x+y)  || loptnumeric(x+y)&lt;br /&gt;
|-&lt;br /&gt;
| aopt || Bei Maxima und Lösung geht die Funktion verloren, nur innerhalb von noopt bleibt sie erhalten. Bei der Anzeige führt sie zur Optimierung das Ausdruckes nach Einsetzen der Datensätze. || aopt(x)  || x&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Anzeige und Lösungsberechnung===&lt;br /&gt;
Diese Funktionen haben entweder einen oder zwei Parameter. Der erste Parameter stellt die darzustellende Funktion dar, der zweite Parameter, welcher eine Ganzzahl sein muss, gibt an, wie die Darstellung erfolgen soll. Wird der 2.Parameter weggelassen, so wird er als 0 interpretiert.&lt;br /&gt;
* 0 Bei Berechnungen hat die Funktion keine Wirkung, bleibt aber als Funktion erhalten. Bei Lösung und Anzeige wird die Funktion ausgewertet&lt;br /&gt;
* 1 Wirkt nur bei Lösung, bei Berechnungen bleibt die Funktion erhalten&lt;br /&gt;
* 2 Wirkt nur bei Anzeige, bei Berechnungen bleibt die Funktion erhalten&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| viewpow || Gibt alle Wurzeln als Potenzen aus, und stellt alle Potenzen im Nenner als negativen Exponenten im Zähler dar || viewpow(sqrt(x)) || x^(1/2)&lt;br /&gt;
|-&lt;br /&gt;
| viewsqrt || Gibt Potenzen welche als Wurzel darstellbar sind auch als als Wurzeln mit der Funktion sqrt oder root aus || viewsqrt(x^(1/2)) || sqrt(x)&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Spezialfunktionen LeTTo ===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| points || Berechnet die erreichbare Gesamtpunkteanzahl einer Frage || points() || 2&lt;br /&gt;
|-&lt;br /&gt;
| points || Berechnet die erreichbare Punkteanzahl einer Teilfrage. Als Parameter wird die Fragenummer als Ganzzahl angegeben. || points(0) || 1&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Spezialfunktionen Technik===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| color || Widerstandsfarbcode berechnen.&amp;lt;br&amp;gt;1. Parameter muss ein Double sein&amp;lt;br&amp;gt; 2.Parameter sind die Anzahl der Farbringe&amp;lt;br&amp;gt; 3.Parameter ist der Modus (0..2-St,1..3St,2..Deutsch,3..2StEng,4..3StEng,5..Englisch || color(120,3,2) || braun,rot,braun&lt;br /&gt;
|-&lt;br /&gt;
| parsecolor || Wandelt einen String mit einem Widerstandsfarbcode in einen Double-Wert || parsecolor(&amp;quot;br-rt-br&amp;quot;) || 120&lt;br /&gt;
|-&lt;br /&gt;
| ip || Wandelt eine Long-Zahl in einen String als IP-Adresse um, oder 4 Byte-Zahlen in eine Long Zahl als IP-32-bit-Adresse || ip(1534536453)&amp;lt;br&amp;gt;ip(10,20,30,40) || &amp;quot;91.119.43.5&amp;quot;&amp;lt;br&amp;gt;169090600&lt;br /&gt;
|-&lt;br /&gt;
| parseip || Wandelt einen String mit einer IP-Adresse in einen Long-Wert || parseip(&amp;quot;91.119.43.5&amp;quot;) || 1534536453&lt;br /&gt;
|-&lt;br /&gt;
| e12 || rundet einen Zahlenwert auf den nächstliegenden Wert der [[Normreihe]] E12.&amp;lt;br&amp;gt;Die Rundung erfolgt geometrisch d.h. der Quotient zwischen Normwert und zu rundendem Wert wird minimiert. || e12(700Ohm) || 680Ohm&lt;br /&gt;
|-&lt;br /&gt;
| e12up || rundet einen Zahlenwert auf den nächstgrößerern Wert der [[Normreihe]] E12 || e12(670Ohm) || 680Ohm&lt;br /&gt;
|-&lt;br /&gt;
| e12down || rundet einen Zahlenwert auf den nächstkleineren Wert der [[Normreihe]] E12 || e12(700Ohm) || 680Ohm&lt;br /&gt;
|-&lt;br /&gt;
| ise12 || prüft ob der als Parameter übergebenen Wert ein Wert der [[Normreihe]] E12 ist.|| ise12(680Ohm) || true&lt;br /&gt;
|-&lt;br /&gt;
| norm || rundet einen Zahlenwert auf den nächstliegenden Wert einer gegebenen Wertereihe oder [[Normreihe]].&amp;lt;br&amp;gt;Die Rundung erfolgt geometrisch wenn es sich um eine logarithmisch aufgeteilte Normreihe handelt, oder sonst linear. || norm(700Ohm,E12) || 680Ohm&lt;br /&gt;
|-&lt;br /&gt;
| normup || rundet einen Zahlenwert auf den nächstgrößerern Wert einer gegebenen Wertereihe oder [[Normreihe]]. || normup(730Ohm,[1,3,5,8]) || 800Ohm&lt;br /&gt;
|-&lt;br /&gt;
| normdown || rundet einen Zahlenwert auf den nächstkleineren Wert einer gegebenen Wertereihe oder [[Normreihe]]. || normdown(700Ohm,E12) || 680Ohm&lt;br /&gt;
|-&lt;br /&gt;
| isnorm || prüft ob der als Parameter übergebenen Wert ein Wert einer gegebenen Wertereihe oder [[Normreihe]] ist. || isnorm(680Ohm,E12) || true&lt;br /&gt;
|}&lt;br /&gt;
===Raumzeiger für elektrische Maschinen===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| [[svphtosv]](a,b,c) || berechnet aus den Stranggrößen (a,b,c) einen komplexen Raumzeiger || svphtosv(0.5,0.5,-1) || 1arg60°&lt;br /&gt;
|-&lt;br /&gt;
| [[svsvtoph]](sv)&amp;lt;br&amp;gt;svsvtoph(sv,index) || berechnet aus einem komplexen Rauzeiger die Phasengrößen &amp;lt;br&amp;gt; berechnet aus einem komplexen Rauzeiger die Phasengrößen, index selektiert Stranggröße als Rückgabewert || svsvtoph(1arg60°)&amp;lt;br&amp;gt; svsvtoph(1arg60°,3)|| [0.5,0.5,-1] &amp;lt;br&amp;gt; -1&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=Ergebnisvorschau=&lt;br /&gt;
Aufruf dieses Dialoges über den [[Datei:ClipCapIt-180904-181443.PNG|25px]]-Button aus dem [[Toolbar]].&lt;br /&gt;
&lt;br /&gt;
Die Berechnungen aus dem Maxima-Feld bei der [[Beispiele Bearbeiten|Fragendefinition]] können auch über den [[Datei:ClipCapIt-180904-182120.PNG|25px]]-Button durchgeführt werden. Hier wird die Berechnung durchgeführt und das Lösungsfeld ausgefüllt, aber der Rechengang wird nicht angezeigt. &lt;br /&gt;
:[[Datei:ClipCapIt-180904-181415.PNG|400px]]&lt;br /&gt;
&lt;br /&gt;
Beim Fehlersuchen oder bei komplexen Berechnungen kann es aber hilfreich sein, den ganzen Maxima-Lösungsweg zu sehen, dies ist über den [[Datei:ClipCapIt-180904-181443.PNG|25px]]-Button möchlich.&lt;br /&gt;
&lt;br /&gt;
[[Kategorie:Berechnung]]&lt;/div&gt;</summary>
		<author><name>Ckral</name></author>
	</entry>
	<entry>
		<id>https://wiki.letto.at/wiki/index.php?title=Berechnungen&amp;diff=2882</id>
		<title>Berechnungen</title>
		<link rel="alternate" type="text/html" href="https://wiki.letto.at/wiki/index.php?title=Berechnungen&amp;diff=2882"/>
		<updated>2021-09-14T20:24:49Z</updated>

		<summary type="html">&lt;p&gt;Ckral: Fix aus #1174&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Allgemeines =&lt;br /&gt;
Berechnungen werden in mehreren Bereichen der Frageerstellung verwendet und bilden die Basis für [[Fragetypen#Berechnungsfrage|Berechnungsfrage]] und [[Fragetypen#Mehrfachberechnungsfrage|Mehrfachberechnungsfrage]].&lt;br /&gt;
&lt;br /&gt;
Alle Berechnungen unterstützen [[Einheit|Einheiten]] und symbolische Auswertung.&lt;br /&gt;
&lt;br /&gt;
=Grundsätzlicher Aufbau der Ergebnis-Berechnung bei Fragen mit Berechnungen=&lt;br /&gt;
[[Datei:BerechnungSchema.png|mini|hochkant=2.0|Schema der Berechnung]]&lt;br /&gt;
Die Berechnung und die Beurteilung einer Frage teilt sich in 3 grundsätzliche Schritte:&lt;br /&gt;
* Berechnnug der geschlossenen Lösung (Formel) aus den Maxima-Feldern &lt;br /&gt;
* Berechnung des Ergebnisses einer Frage durch Einsetzen der Zahlenwerte aus den Datensätzen in die geschlossene Lösung&lt;br /&gt;
* Beurteilung der Schülereingabe durch Vergleich mit dem Ergebnis&lt;br /&gt;
&lt;br /&gt;
=Konstante=&lt;br /&gt;
Alle Konstante welche in Letto definiert sind beginnen mit einem Prozentzeichen. Verwendet man den Variablennamen ohne Prozenzzeichen, so wird die Konstante wie eine Variable mit dem Wert der Konstanten verwendet.&lt;br /&gt;
&lt;br /&gt;
Liste der definierten Konstanten:&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%&amp;quot; &lt;br /&gt;
| Name || Wert || Beschreibung&lt;br /&gt;
|-&lt;br /&gt;
| %i || i || komplexer Parameter als Lösung der Gleichung x^2=-1&lt;br /&gt;
|-&lt;br /&gt;
| %j || i || komplexer Parameter als Lösung der Gleichung x^2=-1&amp;lt;br&amp;gt;&amp;lt;b&amp;gt;Wichtig:&amp;lt;/b&amp;gt; Wir nur vom Parser unterstützt, nicht von Maxima&lt;br /&gt;
|-&lt;br /&gt;
| %e || 2.718281828459045 || Eulersche Zahl &lt;br /&gt;
|-&lt;br /&gt;
| %pi || 3.141592653589793 || Kreiszahl&lt;br /&gt;
|-&lt;br /&gt;
| %mu0 || magnetische Feldkonstante || 4*%pi*1E-7&#039;Vs/Am&#039;&lt;br /&gt;
|-&lt;br /&gt;
| %m0 || magnetische Feldkonstante (alt, wird bald entfernt werden) || 4*%pi*1E-7&#039;Vs/Am&#039;&lt;br /&gt;
|-&lt;br /&gt;
| %epsilon0 || elektrische Feldkonstante || 8.85418781762039E-12&#039;As/Vm&#039;&lt;br /&gt;
|-&lt;br /&gt;
| %e0 || elektrische Feldkonstante (alt, wird bald entfernt werden) || 8.85418781762039E-12&#039;As/Vm&#039;&lt;br /&gt;
|-&lt;br /&gt;
| %c0 || Lichtgeschwindigkeit || 299792458&#039;m/s&#039;&lt;br /&gt;
|-&lt;br /&gt;
| %Qe || Elementarladung || 1.602176620898E-19As&lt;br /&gt;
|-&lt;br /&gt;
| %g  || Erdbeschleunigung || 9.81&#039;m/s^2&#039;&lt;br /&gt;
|-&lt;br /&gt;
| %NA || Avogadro Konstante || 6.02214085774E23/mol&lt;br /&gt;
|-&lt;br /&gt;
| %k  || Stefan Bolzman Konstante || 1.3806485279E-23&#039;J/K&#039;&lt;br /&gt;
|-&lt;br /&gt;
| %R0 || Universelle Gaskonstante || 8.314459848&#039;J/Kmol&#039;&lt;br /&gt;
|-&lt;br /&gt;
| %h || planksches Wirkungsquantum || 6.6260704081E-34Js&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=Berechnung mit Maxima=&lt;br /&gt;
* Maxima wird &#039;&#039;&#039;nur für symbolische Berechnungen&#039;&#039;&#039; bei der Erstellung von Beispielen verwendet. Hierbei wird, wie schon oberhalb im Schema angegeben, zuerst die Moodle.mac geladen, dann das [[Beispielsammlung Editieren#Maxima-Feld|Maxima-Feld]] berechnet und anschließend die Maxima-Felder aller Teilfragen. Das Ergebnis der Berechnung wird dann als symbolischer Ausdruck im Lösungfeld eingetragen.&lt;br /&gt;
* Da zum Zeitpunkt der &#039;&#039;&#039;Maxima-Berechnung keine Datensätze&#039;&#039;&#039; vorhanden sind, kann keine numerische Berechnung in Maxima durchgeführt werden, welche die [[Datensätze]] benötigt. Dies muss der interne Parser zum Zeitpunkt des Online-Test-Laufes erledigen. Numerische Berechnungen, welche der interne Parser nicht kann können deshalb auch nicht mit Maxima berechnet werden.&lt;br /&gt;
* Da das Lösungsfeld, welches mit Maxima berechnet wird symbolisch ausgewertet wird, können in Maxima sämtliche symbolischen Berechnungsverfahren angewendet werden, welche ein symbolisches Ergebnis liefern und keine numerischen Werte der Datensätze benötigen.&lt;br /&gt;
* Reicht im Maximafeld die Zeilenlänge nicht aus ist es möglich einen defninierten Zeilenumbruch zu realisieren. Schreiben Sie dazu &amp;quot;\&amp;quot; (einfacher Backslash) am Ende der Zeile.  &lt;br /&gt;
* &#039;&#039;&#039;Funktionsdeklarationen&#039;&#039;&#039; wie &#039;&#039;&#039;f(x):=&#039;&#039;&#039;x^2 mit Doppelpunkt-Ist-Gleich sind im Maxima-Feld nur eingeschränkt bis gar &#039;&#039;&#039;nicht verwendbar&#039;&#039;&#039;, da sie vom Parser nicht unterstützt werden.&lt;br /&gt;
* &#039;&#039;&#039;Mengen von Maxima&#039;&#039;&#039; sind in LeTTo n&#039;&#039;&#039;icht verwendbar&#039;&#039;&#039;. LeTTo verwender hierzu eigene Funktionen des Parsers welche mit &amp;quot;set&amp;quot; beginnen und auf Vektoren basieren.&lt;br /&gt;
&lt;br /&gt;
=Berechnung mit dem internen Parser=&lt;br /&gt;
* Der interne Parser kann durch Wahl der Checkbox &amp;quot;Parser&amp;quot; anstatt von Maxima für die Berechnung des Maxima-Feldes verwendet werden. &lt;br /&gt;
* Jedenfalls wird der Parser zur Test-Laufzeit für die Berechnung des Ergebnisses einer Frage aus Lösung und Datensätzen und zum Berechnen der Schülereingabe verwendet.&lt;br /&gt;
&lt;br /&gt;
==Operatoren==&lt;br /&gt;
=== VORSICHT mit MAXIMA ===&lt;br /&gt;
* Einige Operatoren sind in &#039;&#039;&#039;Maxima anders&#039;&#039;&#039;, oder &#039;&#039;&#039;nicht definiert&#039;&#039;&#039;. Möchte man im Maximafeld die Operatoren des Parsers-verwenden, so muss das gesamte Maxima-Feld &#039;&#039;&#039;mit dem Parser gerechnet&#039;&#039;&#039; werden. Man verliert dadurch jedoch die Vorteile der Maxima-Berechnung.&lt;br /&gt;
* Alternativ kann man statt der Operatoren auch &#039;&#039;&#039;Funktionen verwenden&#039;&#039;&#039; (zB: ne() statt != ). Diese werden dann von Maxima zwar nicht ausgewertet, die Berechnung bleibt aber trotzdem korrekt und kann mit Maxima durchgeführt werden.&lt;br /&gt;
* Es gibt einige Funktionen welche in &#039;&#039;&#039;Maxima existieren&#039;&#039;&#039; aber im &#039;&#039;&#039;Parser nicht, oder mit anderem Syntax&#039;&#039;&#039;.&lt;br /&gt;
** Wenn diese von Maxima nicht ausgewertet werden können, da sie &#039;&#039;&#039;Datensätze&#039;&#039;&#039; enthalten welche zu Auswertezeitpunkt von Maxima noch &#039;&#039;&#039;nicht mit Werten belegt&#039;&#039;&#039; sind, &#039;&#039;&#039;dürfen sie in der Berechnung nicht verwendet werden&#039;&#039;&#039;, da der Parser dann damit nichts anfangen kann.&lt;br /&gt;
** Solche Funktionen haben entweder im Parser eine alternative Schreibweise welche auch mit Maxima verwendet werden kann (z.B.: wenn), oder sie können prinzipell nicht verwendet werden. (Für wichtige Funktionsweisen könnte man in zukünftigen Versionen neue Funktionalitäten in den Parser einbauen, die die gewünschte Funktion erfüllen)&lt;br /&gt;
** Ein weiter Möglichkeit für die Verwendung solcher Funktionen ist der Verzicht auf Datensätze in diesen Funktionen, damit diese Funktion beim Auswerten des Maxima-Feldes bereits ausgewertet werden kann und somit der Parser davon nichts mehr sieht.&lt;br /&gt;
** zB:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
if then&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Infix Operatoren===&lt;br /&gt;
====arithmetische Operatoren====&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Operator || Priorität || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| + || 40 || Addition || 4+5 || 9 &lt;br /&gt;
|-&lt;br /&gt;
| - || 40 || Subtraktion || 6-2 || 4&lt;br /&gt;
|-&lt;br /&gt;
| * || 50 || Multiplikation || 4*5 || 20&lt;br /&gt;
|-&lt;br /&gt;
| / || 51 || Division || 20/4 || 5&lt;br /&gt;
|-&lt;br /&gt;
| % || 51 || Divisionsrest || 104%20 || 4&lt;br /&gt;
|-&lt;br /&gt;
| / / || 60 || Parallelschaltung || x / / y || x*y/(x+y)&lt;br /&gt;
|-&lt;br /&gt;
| ^ || 90 || Potenz || 2^3 || 8&lt;br /&gt;
|-&lt;br /&gt;
| .*. || 200 || Operator der intern für eine fehlende bindende Multiplikation verwendet wird || 4x || 4*x&lt;br /&gt;
|-&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
====Bitoperatoren====&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Operator || Priorität || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
||  |  || 20 || Bitweise oder logisches ODER ||| 9|5 &amp;lt;br&amp;gt; true|false || 13 &amp;lt;br&amp;gt;true&lt;br /&gt;
|-&lt;br /&gt;
| or || 20 || Bitweise oder logisches ODER || 9 or 5 || 13&lt;br /&gt;
|-&lt;br /&gt;
| &amp;amp;  || 21 || Bitweise oder logisches UND  || 13&amp;amp;10 || 8&lt;br /&gt;
|-&lt;br /&gt;
| and || 21 || Bitweise oder logisches UND  || 13 and 10 || 8&lt;br /&gt;
|-&lt;br /&gt;
| xor || 22 || Bitweise oder logisches exklusiv oder XOR  || 13 xor 10 || 7&lt;br /&gt;
|-&lt;br /&gt;
| imp || 23 || Bitweise oder logisches impliziert IMP || 13 imp 10 || 8&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;&amp;lt;  || 35 || Bitweise links schieben  || 5&amp;lt;&amp;lt;2 || 20&lt;br /&gt;
|-&lt;br /&gt;
| &amp;gt;&amp;gt;  || 35 || Bitweise rechts schieben || 8&amp;gt;&amp;gt;2 || 2&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
====Vergleichsoperatoren====&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Operator || Priorität || Beschreibung || Beispiel&lt;br /&gt;
|-&lt;br /&gt;
| =  || 3 || Gleichungsoperator || x=y&lt;br /&gt;
|-&lt;br /&gt;
| == || 30 || Gleichungsoperator || x==y&lt;br /&gt;
|-&lt;br /&gt;
| != || 30 || Ungleichungsoperator || x!=y&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt; || 32 || Kleiner || x&amp;lt;y&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;= || 32 || Kleiner gleich || x&amp;lt;=y&lt;br /&gt;
|-&lt;br /&gt;
| &amp;gt; || 32 || größer || x&amp;gt;y&lt;br /&gt;
|-&lt;br /&gt;
| &amp;gt;= || 32 || größer gleich || x&amp;gt;=y&lt;br /&gt;
|}&lt;br /&gt;
====Organisative Operatoren====&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Operator || Priorität || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| , || 0 || Listen-Trennzeichen || x,y ||&lt;br /&gt;
|-&lt;br /&gt;
| $ || 1 || Trennzeichen zwischen mehreren Berechnungen || ||&lt;br /&gt;
|-&lt;br /&gt;
| ; || 1 || Trennzeichen zwischen mehreren Berechnungen || ||&lt;br /&gt;
|-&lt;br /&gt;
| : || 2 || Zuweisung an eine Variablen auf der linken Seite || x:5 || &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Prefix Operatoren===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Operator || Priorität || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| + || 45 || positives Vorzeichen || +5 || 5&lt;br /&gt;
|-&lt;br /&gt;
| - || 45 || negatives Vorzeichen || -(-5) || 5&lt;br /&gt;
|-&lt;br /&gt;
| ~ || 95  || bitweise Inversion einer 64bit-Ganzzahl || ~0x0F0F || 0xFFFFFFFFFFFFF0F0&lt;br /&gt;
|-&lt;br /&gt;
| ! || 120 || logisches NOT || !(3&amp;lt;4) || false&lt;br /&gt;
|-&lt;br /&gt;
| ++ || 130 || Inkrement von Ganzzahlen || ++x || erhöht x um eins und gibt das Ergebnis nach der Erhöhung zurück&lt;br /&gt;
|-&lt;br /&gt;
| -- || 130 || Dekrement von Ganzzahlen || --x || vermindert x um eins und gibt das Ergebnis nach der Verminderung zurück&lt;br /&gt;
|-&lt;br /&gt;
| % || 200 || Prefix für Namen, welche als Konstante definiert sind || %pi || 3.141592653589793&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Suffix Operatoren===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Operator || Priorität || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| ++ || 135 || Inkrement von Ganzzahlen || x++ || erhöht x um eins und gibt den Variablenwert vor der Erhöhung zurück&lt;br /&gt;
|-&lt;br /&gt;
| -- || 135 || Dekrement von Ganzzahlen || x-- || vermindert x um eins und gibt den Variablenwert vor der Verminderung zurück&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==Klammern==&lt;br /&gt;
* () runde Klammern werden für mathematische Ausdrücke zur Klammerung verwendet&lt;br /&gt;
* {} geschwungene Klammer werden im Angabetext für die Namen der Datensätze verwendet&lt;br /&gt;
* [] eckige Klammern werden für Vektoren und Matrizen verwendet&lt;br /&gt;
&lt;br /&gt;
==Funktionen==&lt;br /&gt;
===Funktionen für Ganzzahlen===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| band || bitweises UND || band(4,12) || 4&lt;br /&gt;
|-&lt;br /&gt;
| bor  || bitweises ODER || bor(4,1) || 5&lt;br /&gt;
|-&lt;br /&gt;
| bxor || bitweises EXKLUSIV ODER || band(4,5) || 1&lt;br /&gt;
|-&lt;br /&gt;
| bimp || bitweises Parameter1 impliziert Parameter2 || bimp(13,10) || 8&lt;br /&gt;
|-&lt;br /&gt;
| binv || bitweises NICHT mit 8 bit || binv(0x0F) || 0xF0&lt;br /&gt;
|-&lt;br /&gt;
| shl || Schiebe Ganzzahl bitweise nach links || shl(8,2) || 32&lt;br /&gt;
|-&lt;br /&gt;
| shr || Schiebe Ganzzahl bitweise nach rechts || shr(8,2) || 2&lt;br /&gt;
|-&lt;br /&gt;
| div || Ganzzahldivision, Ergebnis wird abgeschnitten || div(5,2) || 2&lt;br /&gt;
|-&lt;br /&gt;
| inv8  || bitweise Invertieren und die letzten 8 Bit bestimmen  || inv8(0b1001) || 0b11110110&lt;br /&gt;
|-&lt;br /&gt;
| inv16 || bitweise Invertieren und die letzten 16 Bit bestimmen || inv16(0xF0)  || 0xFF0F&lt;br /&gt;
|-&lt;br /&gt;
| inv32 || bitweise Invertieren und die letzten 32 Bit bestimmen || inv32(0xF0)  || 0bFFFFFF0F&lt;br /&gt;
|-&lt;br /&gt;
| inv64 || bitweise Invertieren und die letzten 64 Bit bestimmen || inv64(0xF0)  || 0bFFFFFFFFFFFFFF0F&lt;br /&gt;
|-&lt;br /&gt;
| byte  || Zahl in eine Ganzzahl wandeln und die letzten 8bit der Zahl Abschneiden, Einheit geht verloren  || byte(34.2) || 34&lt;br /&gt;
|-&lt;br /&gt;
| word  || Zahl in eine Ganzzahl wandeln und die letzten 16bit der Zahl Abschneiden, Einheit geht verloren || word(34.2) || 34&lt;br /&gt;
|-&lt;br /&gt;
| int   || Zahl in eine Ganzzahl wandeln und die letzten 32bit der Zahl Abschneiden, Einheit geht verloren || int(34.2) || 34&lt;br /&gt;
|-&lt;br /&gt;
| long  || Zahl in eine Ganzzahl wandeln , Einheit geht verloren || long(34.2) || 34&lt;br /&gt;
|-&lt;br /&gt;
| [[parity]]  || Paritätsberechnung : parity(Parität,Codewortlänge,Datenwort[,Datenwort,....]) || parity(even,7,&amp;quot;xy&amp;quot;) || &lt;br /&gt;
|-&lt;br /&gt;
| [[blockparity]]  || Kreuz oder Blockparität : blockparity(Parität,Codewortlänge,Codewortanzahl,Datenwort[,Datenwort,....]) || blockparity(even,7,3,&amp;quot;abc&amp;quot;) || &lt;br /&gt;
|-&lt;br /&gt;
| [[bcd]]  || Wandelt in eine Long-Zahl in ein Feld aus BCD-kodierten Zahlen um || bcd(124) || [1,2,4]&lt;br /&gt;
|-&lt;br /&gt;
| [[code]] || Code aus mehreren Codeworten zusammensetzen : code(Codewortlänge,Datenwort[,Datenwort,....]) || code(5,4,3,5) || 0b1000001100101&lt;br /&gt;
|-&lt;br /&gt;
| [[hamming]] || Bestimmt den Hamming-Abstand von mehreren Codeworten || hamming(1,2,4,8,16) || 2&lt;br /&gt;
|-&lt;br /&gt;
| [[komplement]] ||  Bildet das Zweierkomplement mit einer negativen Zahl mit einer bestimmten Bitanzahl, fehlt die Bitanzahl, so wird ein 32Bit-2er-komplement gebildet || komplement(-5,8) || 0b11111011&lt;br /&gt;
|-&lt;br /&gt;
| [[bitstream]] || Erzeugt aus einer Ganzzahl einen Bitstrom als String mit einer definierten Anzahl von Bit (MSB werden nötigenfalls mit 0 gefüllt) : bitstream(Daten,Bitanzahl) || bitstream(0x184,12) || &amp;quot;000110000100&amp;quot;&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Funktionen für rationale und Ganzzahlen===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| kgV || berechnet das kleinste gemeinsame Vielfache von mehreren Zahlen || kgV(3,10) || 30&lt;br /&gt;
|-&lt;br /&gt;
| ggT || berechnet den größten gemeinsamen Teiler von mehreren Zahlen || ggT(12,10) || 2&lt;br /&gt;
|- &lt;br /&gt;
| isprim || prüft ob die angegebene Zahl eine Primzahl ist || isprim(13) || true&lt;br /&gt;
|-&lt;br /&gt;
| prims || zerlegt eine Ganzzahl in ihre Primfaktoren || prims(12) || [2,2,3]&lt;br /&gt;
|-&lt;br /&gt;
| defracmix || zerlegt eine rationale Zahl in einen gemischten Bruch aus ganzzahligem Summanden, Zähler und Nenner als Menge&amp;lt;br&amp;gt;Die erhaltene Menge kann mit dem Format-Modfier &#039;&#039;&#039;frac&#039;&#039;&#039; als gemischter Bruch dargestellt werden (siehe [[Zahlendarstellung]]) || defracmix(14/12)&amp;lt;br&amp;gt;defracmix(-15/12)&amp;lt;br&amp;gt;defracmix(3/12) || [1,2/12]&amp;lt;br&amp;gt;[-1,3,12]&amp;lt;br&amp;gt;[0,3,12] &lt;br /&gt;
|-&lt;br /&gt;
| defrac || zerlegt eine rationale Zahl in Zähler und Nenner als Menge &amp;lt;br&amp;gt;Die erhaltene Menge kann mit dem Format-Modfier &#039;&#039;&#039;frac&#039;&#039;&#039; als gemischter Bruch dargestellt werden || defrac(14/12) || [13,12]&lt;br /&gt;
|-&lt;br /&gt;
| frac || erzeugt aus einer Menge aus 2 oder 3 Elementen (von defrac) eine rationale Zahl || frac([3,7])&amp;lt;br&amp;gt;frac([1,2,3]) || 3/7 &amp;lt;br&amp;gt; 5/3&lt;br /&gt;
|-&lt;br /&gt;
| mod || Modulo: Divisionsrest einer Division mit ganzzahligem Ergebnis || mod(5,2) &amp;lt;br&amp;gt; mod(6.2,2.5) || 1&amp;lt;br&amp;gt;1.2&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===boolsche Funktionen===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| eq || gleich || eq(4,4) || true&lt;br /&gt;
|-&lt;br /&gt;
| eqruntime || symbolischer Vergleich, welcher &#039;&#039;&#039;symbolisch erst bei der Ergebnisberechnung&#039;&#039;&#039; ausgeführt wird. Muss verwendet werden, wenn bei Vergleichen symbolische Antworten von Schülern (Q0,Q1,...) verwendet werden.  || eqruntime(x+3*y,3*y+x) || true&lt;br /&gt;
|-&lt;br /&gt;
| ne || ungleich || ne(6,4) || true&lt;br /&gt;
|-&lt;br /&gt;
| ge || größer gleich || ge(6,4) || true&lt;br /&gt;
|-&lt;br /&gt;
| le || kleiner gleich || le(6,4) || false&lt;br /&gt;
|-&lt;br /&gt;
| gt || größer || gt(6,4) || true&lt;br /&gt;
|-&lt;br /&gt;
| lt || kleiner || lt(6,4) || false&lt;br /&gt;
|-&lt;br /&gt;
| between || prüft ob Parameter1 kleiner als Parameter2 und Parameter2 kleiner als Parameter 3 || between(3,4,5) || true&lt;br /&gt;
|-&lt;br /&gt;
| land || logisches UND || land(a&amp;lt;b,b&amp;lt;c) || &lt;br /&gt;
|-&lt;br /&gt;
| lor  || logisches ODER || lor(a&amp;lt;b,b&amp;lt;c) || &lt;br /&gt;
|-&lt;br /&gt;
| not  || logisches NICHT. Vorsicht ein symbolisches Ergebnis von Maxima liefert not als Prefix-Operator, welcher vom Parser nicht unterstützt wird ( Verwende statt dessen &#039;&#039;&#039;lnot&#039;&#039;&#039; ) || not(a&amp;lt;b) || &lt;br /&gt;
|-&lt;br /&gt;
| lnot  || logisches NICHT, wie not jedoch wird es von Maxima nicht ausgewertet || lnot(a&amp;lt;b) || &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===arithmetische Funktionen===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| double || Zahl in eine Gleitkommazahl umwandeln, die Einheit geht dabei verloren || double(3.4V) || 3.4&lt;br /&gt;
|-&lt;br /&gt;
| numeric || verwirft die Einheit, wenn eine vorhanden ist und liefert nur den Zahlenwert || numeric(2.3mA) &amp;lt;br&amp;gt; numeric(5%)|| 0.0023 &amp;lt;br&amp;gt; 5&lt;br /&gt;
|-&lt;br /&gt;
| unit || gibt die SI-Einheit mit dem Zahlenwert 1 zurück || unit(3.1kA) &amp;lt;br&amp;gt; unit(5%) || 1A &amp;lt;br&amp;gt; 1%&lt;br /&gt;
|-&lt;br /&gt;
| cround  || Rundet die Zahl kaufmännisch, der zweite Parameter gibt die Anzahl der Kommastellen an, ohne 2.Parameter wird auf Ganzzahlen gerundet, bei komplexen Zahlen wird Betrag und Winkel in Grad gerundet. || cround(23.535,2)&amp;lt;br&amp;gt;cround(2.435arg34.5364°,1) || 23.54&amp;lt;br&amp;gt;2.4arg34.5°&lt;br /&gt;
|-&lt;br /&gt;
| ccround  || Rundet die Zahl kaufmännisch, der zweite Parameter gibt die Anzahl der Kommastellen an, bei komplexe Zahlen wird Real und Imaginärteil gerundet. || ccround(2.4534+5.645*%i,2) || 2.45+5.65i&lt;br /&gt;
|-&lt;br /&gt;
| round  || Rundet die Zahl kaufmännisch, aus Kompatibilitätsgründen zu Maxima hat round nur einen Parameter || round(23.535) || 24&lt;br /&gt;
|-&lt;br /&gt;
| ground || Rundet die Zahl auf die im zweiten Parameter angegebenen gültigen Ziffern || ground(2453.43,2) || 2500&lt;br /&gt;
|-&lt;br /&gt;
| floor  || Rundet auf die größte ganze Zahl, welche kleiner oder gleich x ist || floor(24.5) || 24&lt;br /&gt;
|-&lt;br /&gt;
| trunc  || Schneidet die Zahl nach dem Komma ab || trunc(24.5) || 24&lt;br /&gt;
|-&lt;br /&gt;
| ceiling || ceiling(x) Rundet auf die kleinste ganze Zahl, welche größer oder gleich x ist || ceiling(13.2) || 14&lt;br /&gt;
|-&lt;br /&gt;
| pow || Potenzfunktion || pow(2,3) || 8&lt;br /&gt;
|-&lt;br /&gt;
| par || Parallelschaltung von Widerständen || par(x,y) || x*y/(x+y)&lt;br /&gt;
|-&lt;br /&gt;
| min  || Minimum von mehrere Werten suchen || min(3,5,1) || 1&lt;br /&gt;
|-&lt;br /&gt;
| max  || Maximum von mehreren Werten suchen || max(3,5,1) ||  5&lt;br /&gt;
|-&lt;br /&gt;
| random  || Zufallszahl aus einem definierten Zahlenbereich random(minimal,maximal)&amp;lt;br&amp;gt;VORSICHT! Die Zufallszahl wird bei jedem Aufruf neu berechnet, weshalb sich der Wert bei jedem Anzeigevorgang einer Frage ändert. Sollte sich der berechnete Wert für eine Schülerangabe zwischen Fragestellung und Ergebniskontrolle nicht ändern dürfen (ist der Normalfall) muss man einen &#039;&#039;&#039;Datensatz statt einer Zufallszahl&#039;&#039;&#039; verwenden! &amp;lt;br&amp;gt; Zufallszahlen haben in der Ergebnisberechnung keinen Sinn, und sollten maximal für angezeigte zufällige Werte verwendet werden! || random(2,8) ||  3.4532&lt;br /&gt;
|-&lt;br /&gt;
| randomC  || komplexe Zufallszahl aus einem definierten Zahlenbereich für den Betrag&amp;lt;br&amp;gt;VORSICHT! Die Zufallszahl wird bei jedem Aufruf neu berechnet!  || randomC(2,8) ||  3.4532arg40.3°&lt;br /&gt;
|-&lt;br /&gt;
| signum  || Liefert das Vorzeichen einer Zahl (-1,0,1). Bei einer komplexen Zahl das Vorzeichen des Realteils. || signum(-4) || -1&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Maxima-basierte Funktionen ===&lt;br /&gt;
* Diese Funktionen funktionieren nur wenn Maxima installiert ist und werden immer an Maxima gesendet, auch wenn der interne Parser aktiviert ist.&lt;br /&gt;
* Weiters werden sie bei der Ausgabe als TeX-Formel auch korrekt mit LaTeX gesetzt.&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| integrate || Berechnet das unbestimmte oder bestimmte Integral einer Funktion. || integrate(x^2,x) &amp;lt;br&amp;gt; integrate(x^2,x,0,2) || x^3/3 &amp;lt;br&amp;gt; 8/3  &lt;br /&gt;
|-&lt;br /&gt;
| diff || Berechnet die Ableitung einer Funktion.  || diff(x^2,x)&amp;lt;br&amp;gt;diff(3*x^2,x,2) || x &amp;lt;br&amp;gt; 6&lt;br /&gt;
|-&lt;br /&gt;
| tomaxima || Führt die Berechnung aller Parameter von links nach rechts hintereinander mit Maxima aus. Das Ergebnis ist dann das Ergebnis des letzten Parameters. || tomaxima(y:x^2,y+2) || x^2+2&lt;br /&gt;
|-&lt;br /&gt;
| laplace || Bestimmt die Laplace-Transformierte einer Funktion. || laplace(sin(t),t,s) || 1/(1+s^2)&lt;br /&gt;
|-&lt;br /&gt;
| ilt || Bestimmt die inverse Laplace-Transformierte eine Laplace-Funktion || ilt(1/(1+s),s,t) || e^(-t)&lt;br /&gt;
|-&lt;br /&gt;
| sum || Summenbildung || sum(1/k,k,1,2) || 3/2&lt;br /&gt;
|-&lt;br /&gt;
| product || Produktbildung || product(1/k,k,1,3) || 1/6&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===erweiterte arithmetische Funktionen===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| sigma || Sprungfunktion: sigma(x) liefert 0 für x&amp;lt;0 und 1 für x&amp;gt;=0 || sigma(243.3) || 1&lt;br /&gt;
|-&lt;br /&gt;
| pulse || Rechteckfunktion: &amp;lt;br&amp;gt;pulse(x,x0) ist gleich 1 für x0 &amp;lt; x &amp;lt; x0 + 1, sonst 0&amp;lt;br&amp;gt;pulse(x,x0,L) ist gleich 1 für x0 &amp;lt; x &amp;lt; x0 + L, sonst 0&amp;lt;br&amp;gt;[[Datei:pulse.png|300px]] || pulse(x,2,4) || [[Datei:pulse_x_2_4.png|100px]]&lt;br /&gt;
|-&lt;br /&gt;
| interpol || Interpolationsfunktion zwischen mehreren Stützpunkten in einem Koordinatensystem. &amp;lt;br&amp;gt; interpol(WerteX,WerteY,x) || interpol([0,1,2],[0,3,3],1.5) || 3&lt;br /&gt;
|-&lt;br /&gt;
| periodic || Erzeugt aus einer beliebigen Funktion zwischen 0 und Periodendauer eine periodische Funktion &amp;lt;br&amp;gt; periodic(Variable,Periodendauer,Funktion)&amp;lt;br&amp;gt; periodic(Variable,Periodendauer,Funktionsperiodendauer,Funktion) || ch1(t):periodic(t,5ms,2&#039;Vms-2&#039;*t^2) &amp;lt;br&amp;gt; ch1(t):periodic(t,5ms,1,2V*t^2) || :[[Datei:ClipCapIt-190318-113524.PNG|100px]] &amp;lt;br&amp;gt; :[[Datei:ClipCapIt-190318-113644.PNG|100px]]&lt;br /&gt;
|-&lt;br /&gt;
| numint || numerische Integration &amp;lt;br&amp;gt; numint(untereGrenze,obereGrenze,funktion,Variable)&amp;lt;br&amp;gt; numint(untereGrenze,obereGrenze,funktion,Variable,punkteAnzahl) || numint(0,2pi,sin(t),t) || 0&lt;br /&gt;
|-&lt;br /&gt;
| numdif || numerisches Differenzieren einer Funktion &amp;quot;funktion&amp;quot; nach einer Variablen &amp;quot;Variable&amp;quot; an der Stelle &amp;quot;position&amp;quot; mit einer Differenz der Variablen von &amp;quot;differenz&amp;quot; &amp;lt;br&amp;gt; numdif(position,funktion,Variable,differenz) || numdif(0,sin(t),t,0.01) || 1&lt;br /&gt;
|-&lt;br /&gt;
| solve || löst eine Gleichung oder ein Gleichungssystem nach einer oder mehrerer Variablen || solve([2*x+y=3,x-y=0],[x,y]) || [ [ x=1,y=1 ] ]&lt;br /&gt;
|-&lt;br /&gt;
| solvevalue || löst eine Gleichung oder ein Gleichungssystem nach einer Variablen und liefert genau die erste Lösung wenn sie numerisch berechenbar ist || solvevalue([ 2*x+y=3,x-y=0 ],[ x,y ],x)  || 1&lt;br /&gt;
|-&lt;br /&gt;
| newton || Bestimmt eine Nullstelle einer Funktion nach dem Newton-Verfahren. Der erste Parameter ist ein Ausdruck in einer Variablen, der zweite Parameter ist der Startwert. || newton(x^2-4,4) || 2&lt;br /&gt;
|-&lt;br /&gt;
| cnewton || Bestimmt eine komplexe Nullstelle einer Funktion nach dem Newton-Verfahren. Der erste Parameter ist ein Ausdruck in einer Variablen, der zweite Parameter ist der komplexe Startwert. || newton(x^2+4,4) || 2*%i&lt;br /&gt;
|-&lt;br /&gt;
| newtonall || Bestimmt alle Nullstellen einer Funktion mit einem Betrag des Funktionsparameters kleiner als ein definierter Wert nach dem Newton-Verfahren. Der erste Parameter ist ein Ausdruck in einer Variablen, der zweite Parameter ist der maximale Betrag des Funktionsparameters. Das Ergebnis ist immer ein Vektor mit den nach aufsteigendem Funktionswert sortierten Nullstellen. || newton(x^2-4,4) || [-2,2]&lt;br /&gt;
|-&lt;br /&gt;
| cnewtonall || Bestimmt alle komplexen Nullstellen einer Funktion mit einem Betrag des Funktionsparameters kleiner als ein definierter Wert nach dem Newton-Verfahren. Der erste Parameter ist ein Ausdruck in einer Variablen, der zweite Parameter ist der maximale Betrag des Funktionsparameters. Das Ergebnis ist immer ein Vektor mit den Nullstellen. || newton(x^2+4,4) || [-2*%i,2*%i]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Stringfunktionen===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| dechex || Zahl in eine Ganzzahl wandeln und als Hexadezimal-String ausgeben || dexhex(12) || &amp;quot;0xC&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| chr || Bestimmt die Zeichen mit dem ASC-II-Code der Long-Parameter und setzt daraus einen String zusammen. || chr(0x65,105) || &amp;quot;ei&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| val || Bestimmt den ASC-II-Code des ersten Zeichens welches als String-Parameter übergeben wurde.|| val(&amp;quot;a&amp;quot;) || 97&lt;br /&gt;
|-&lt;br /&gt;
| strcat || Fügt mehrere Strings zusammen.|| strcat(&amp;quot;a&amp;quot;,&amp;quot;b&amp;quot;) || &amp;quot;ab&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===trigonometrische Funktionen===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| sin || Sinus || sin(%pi/2) || 1&lt;br /&gt;
|-&lt;br /&gt;
| cos || Cosinus || cos(%pi/2) || 0&lt;br /&gt;
|-&lt;br /&gt;
| tan || Tangens || tan(%pi/4) || 1&lt;br /&gt;
|-&lt;br /&gt;
| asin || Arcus-Sinus || asin(1) || %pi/2&lt;br /&gt;
|-&lt;br /&gt;
| arcsin || Arcus-Sinus || asin(1) || %pi/2&lt;br /&gt;
|-&lt;br /&gt;
| acos || Arcus-Cosinus || acos(1) || 0&lt;br /&gt;
|-&lt;br /&gt;
| arccos || Arcus-Cosinus || acos(1) || 0&lt;br /&gt;
|-&lt;br /&gt;
| atan || Arcus-Tangens || atan(1) || %pi/4&lt;br /&gt;
|-&lt;br /&gt;
| arctan || Arcus-Tangens || arctan(1) || %pi/4&lt;br /&gt;
|-&lt;br /&gt;
| atan2 || Arcus-Tangens atan2(y,x)=arctan(y/x) || atan2(-2,-2) || -%pi*3/4&lt;br /&gt;
|-&lt;br /&gt;
| arctan2 || Arcus-Tangens arctan2(y,x)=arctan(y/x) || arctan2(-2,-2) || -%pi*3/4&lt;br /&gt;
|-&lt;br /&gt;
| sinh || Sinus-Hyperbolicus || sinh(1) || 1.1752012&lt;br /&gt;
|-&lt;br /&gt;
| cosh || Cosinus-Hyperbolicus || cosh(1) || 1.5430806&lt;br /&gt;
|-&lt;br /&gt;
| tanh || Tangens-Hyperbolicus || tanh(1) || 0.7615941&lt;br /&gt;
|-&lt;br /&gt;
| coth || Cotangens-Hyperbolicus || coth(1) || 1.313035&lt;br /&gt;
|-&lt;br /&gt;
| asinh || Area-Sinus-Hyperbolicus || asinh(1.1752012) || 1&lt;br /&gt;
|-&lt;br /&gt;
| acosh || Area-Cosinus-Hyperbolicus || acosh(1.5430806) || 1&lt;br /&gt;
|-&lt;br /&gt;
| atanh || Area-Tangens-Hyperbolicus || atanh(0.7615941) || 1&lt;br /&gt;
|-&lt;br /&gt;
| acoth || Area-Cotangens-Hyperbolicus || acoth(1.313035) || 1&lt;br /&gt;
|-&lt;br /&gt;
| [[csin]] || Erzeugt aus einer komplexen Zahl (Effektivwert) und einer Frequenz einen Sinusfunktion in der Zeit || csin(U) || sqrt(2)*cabs(U)*sin(2*pi*f*t+carg(U))&lt;br /&gt;
|-&lt;br /&gt;
| [[quadrant]] || Liefert den Quadranten eines Winkels mit einer Toleranzangabe. || quadrant(20°,5°) || 1&lt;br /&gt;
|-&lt;br /&gt;
| argnorm || Wandelt einen Winkel auf den Bereich von 0°-360° || argnorm(-50°) || 310°&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Exponentialfunktionen===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| pow || Potenzfunktion || pow(2,3) || 8&lt;br /&gt;
|-&lt;br /&gt;
| exp|| Exponentialfunktion || exp(1) || %e&lt;br /&gt;
|-&lt;br /&gt;
| log || natürlicher Logarythmus || log(%e) || 1&lt;br /&gt;
|-&lt;br /&gt;
| ln || natürlicher Logarythmus || ln(%e) || 1&lt;br /&gt;
|-&lt;br /&gt;
| log10 || Logarythmus zur Basis 10 || log10(100) || 2&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===komplexe Zahlen===&lt;br /&gt;
Die Funktionen zu komplexen Zahlen werden (anders als in Maxima) nur ausgewertet wenn das Ergebnis numerisch berechenbar ist, ansonsten bleibt die Funktion symbolisch erhalten.&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| abs || Liefert den Absolutbetrag einer komplexen Zahl || abs(3+4*%i) || 5&lt;br /&gt;
|-&lt;br /&gt;
| cabs || Liefert den Absolutbetrag einer komplexen Zahl || cabs(3+4*%i) || 5&lt;br /&gt;
|-&lt;br /&gt;
| carg || Liefert das Argument einer komplexen Zahl || carg(4*%e^(3*%i)) || 3&lt;br /&gt;
|-&lt;br /&gt;
| realpart || Liefert den Realteil einer komplexen Zahl || realpart(3+4*%i) || 3&lt;br /&gt;
|-&lt;br /&gt;
| imagpart || Liefert den Imaginärteil einer komplexen Zahl || imagpart(3+4*%i) || 4&lt;br /&gt;
|-&lt;br /&gt;
| conjugate || Liefert die konjugiert komplexe Zahl einer komplexen Zahl || conjugate(3+4*%i) || 3-4*%i&lt;br /&gt;
|-&lt;br /&gt;
| rectform || hat in LeTTo keine Relevanz, da die Zahlendarstellung bei der Ausgabe definiert wird wie zB.: {=3arg2;karti} ||  || &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===statistische Funktionen===&lt;br /&gt;
Die Funktionen funktionieren nur ohne Einheiten.&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| factorial || Liefert die Fakultät einer positiven ganzen Zahl || factorial(5) || 120&lt;br /&gt;
|-&lt;br /&gt;
| binomial || Liefert den Binomialkoeffizienten von zwei positiven ganzen Zahlen || binomial(5,2) || 10&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Mengen-Funktionen===&lt;br /&gt;
Mengen werden intern als Vektoren verarbeitet und sind deshalb auch direkt durch Vektoren ersetzbar. Auch alle Vektor-Funktionen sind somit auch auf Mengen anwendbar und umgekehrt.&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis || ab Rev&lt;br /&gt;
|-&lt;br /&gt;
| setget || Liefert ein Element einer Menge oder einer Matrix (Menge von Mengen) || setget([12,13,14],1) &amp;lt;br&amp;gt; setget(matrix([9,2],[3,4]),0,1) || 13 &amp;lt;br&amp;gt; 2 &lt;br /&gt;
|-&lt;br /&gt;
| setset || setzt ein Element einer Menge oder einer Matrix (Menge von Mengen) || setset([12,13,14],1,35) &amp;lt;br&amp;gt; setset(matrix([9,2],[3,4]),0,0,-9) || [12,35,14] &amp;lt;br&amp;gt; [[-9,2],[3,4]]&lt;br /&gt;
|-&lt;br /&gt;
| setinsert || fügt ein Element in eine Menge an eine gegebene Stelle ein || setinsert([12,13,14],1,25) || [12,25,13,14]&lt;br /&gt;
|-&lt;br /&gt;
| setremove || löscht ein Element einer Menge || setremove([12,13,14],1) || [12,14]&lt;br /&gt;
|-&lt;br /&gt;
| setapply || wendet einen Ausdruck oder Funktion auf alle Elemente einer Menge an || setapply(y,[1,2,3],y*2) || [2,4,6] || 5965&lt;br /&gt;
|-&lt;br /&gt;
| setmedian || Liefert den Median einer Menge || setmedian([4,3,1,5,6]) || 4&lt;br /&gt;
|-&lt;br /&gt;
| setboxplot || Liefert die Werte des Boxplot einer Menge (Minimum, unteres Quartil, Median, oberes Quartil, Maximum) als Vektor verwendbar für das [[Plot#definierte_Zeichenelemente|Plot-Plugin]] || setboxplot([1,2,3,10,8,9]) || [1,2,5.5,9,10]&lt;br /&gt;
|-&lt;br /&gt;
| setsort || Sortiert die Elemente einer Menge aufsteigend || setsort([3,-3,2,0,5,2]) || [-3,0,2,2,3,5]&lt;br /&gt;
|-&lt;br /&gt;
| setsortnd || Sortiert die Elemente einer Menge aufsteigend und entfernt alle mehrfach vorkommenden Elemente || setsortnd([31,-3,2,31,0,5,2]) || [-3,0,2,5,31]&lt;br /&gt;
|-&lt;br /&gt;
| setcount || Bestimmt die Anzahl wie oft ein Element in einer Menge vorkommt oder die Anzahl der Elemente der Menge || setcount([31,-3,2,31,0,5,2],31) &amp;lt;br&amp;gt; setcount([2,5,3,6]) || 2 &amp;lt;br&amp;gt; 4&lt;br /&gt;
|-&lt;br /&gt;
| setmodus || Liefert das Element einer Menge, welches am öftesten vorkommt oder die Elemente als Menge wenn mehrere Elemente gleich oft vorkommen || setmodus([3,-3,2,0,5,2]) || 2&lt;br /&gt;
|-&lt;br /&gt;
| setreverse || Dreht die Reihenfolge einer Menge um || setreverse([3,-3,2,0,5,2]) || [2,5,0,2,-3,3]&lt;br /&gt;
|-&lt;br /&gt;
| setnd || Löscht alle Duplikate aus der Menge || setnd([3,-3,2,0,5,2]) || [3,-3,2,0,5]&lt;br /&gt;
|-&lt;br /&gt;
| setshuffle || Mischt eine  Menge in eine zufällige Reihenfolge || setshuffle([3,-3,2,0,5,2]) || [2,0,5,-3,2,3]&lt;br /&gt;
|-&lt;br /&gt;
| setmittel || Bestimmt den Mittelwert einer Menge || setmittel([1,3,2,4]) || 2.5&lt;br /&gt;
|-&lt;br /&gt;
| setgeomittel || Bestimmt das geometrische Mittelwert einer Menge aus positiven reellen Zahlen || setgeomittel([10,20,30]) || 18.171206&lt;br /&gt;
|-&lt;br /&gt;
| setvarianz || Bestimmt die empirische Varianz einer Menge || setvarianz([3,1,2,5,4]) || ((3-3)^2+(1-3)^2+(2-3)^2+(5-3)^2+(4-3)^2)/5=2&lt;br /&gt;
|-&lt;br /&gt;
| setquadratmittel || Bestimmt den quadratischen Mittelwert einer Menge || setquadratmittel([10,20,30]) || 21.6025&lt;br /&gt;
|-&lt;br /&gt;
| setsum || Bestimmt die Summe aller Werte einer Menge || setsum([1,3,2,4]) || 10&lt;br /&gt;
|-&lt;br /&gt;
| setprod || Bestimmt das Produkt aller Werte einer Menge || setprod([1,3,2,4]) || 24&lt;br /&gt;
|-&lt;br /&gt;
| setunion || Fügt mehrere Mengen zu einer neuen Menge zusammen || setunion([1,3,2,4],[3,7]) || {1,3,2,4,3,7}&lt;br /&gt;
|-&lt;br /&gt;
| setunionnd || Fügt mehrere Mengen zu einer neuen Menge zusammen, sortiert diese und entfernt alle mehrfachen Elemente || setunionnd([1,3,2,4],[3,7]) || {1,2,3,4,7}&lt;br /&gt;
|-&lt;br /&gt;
| setcut || Bildet die Schnittmenge aus mehreren Mengen || setcut([1,3,2,4],[3,7]) || {3}&lt;br /&gt;
|-&lt;br /&gt;
| setcompare || vergleicht zwei Mengen miteinander, wobei die Reihenfolge egal ist  || setcompare([1,3,2,4],[3,7]) &amp;lt;br&amp;gt; setcompare([1,3,2],[1,2,3]) &amp;lt;br&amp;gt; setcompare([1,3,2],[1,3,2,3]) &amp;lt;br&amp;gt; setcompare([1,2,3],[1,2,3])  || false &amp;lt;br&amp;gt; true &amp;lt;br&amp;gt; false &amp;lt;br&amp;gt; true&lt;br /&gt;
|-&lt;br /&gt;
| setcomparend || vergleicht zwei Mengen miteinander, wobei die Reihenfolge egal ist und doppelte Werte als einfach behandelt werden. || setcomparend([1,3,2,4],[3,7]) &amp;lt;br&amp;gt; setcomparend([1,3,2],[1,2,3]) &amp;lt;br&amp;gt; setcomparend([1,3,2],[1,3,2,3]) &amp;lt;br&amp;gt; setcomparend([1,2,3],[1,2,3])  || false &amp;lt;br&amp;gt; true &amp;lt;br&amp;gt; true &amp;lt;br&amp;gt; true&lt;br /&gt;
|-&lt;br /&gt;
| setpartof || prüft ob die erste Menge eine Teilmenge der zweite Menge ist wobei die Reihenfolge egal ist aber mehrfache Werte berücksichtigt werden  || setpartof([1,4],[1,3,7]) &amp;lt;br&amp;gt; setpartof([1,3],[1,2,3]) &amp;lt;br&amp;gt; setpartof([1,3,3],[1,3,5,7]) &amp;lt;br&amp;gt; setpartof([1,4,4],[1,2,3,4])  || false &amp;lt;br&amp;gt; true &amp;lt;br&amp;gt; false &amp;lt;br&amp;gt; false&lt;br /&gt;
|-&lt;br /&gt;
| setpartofnd || prüft ob die erste Menge eine Teilmenge der zweite Menge ist wobei die Reihenfolge und mehrfache Werte egal sind  || setpartofnd([1,4],[1,3,7]) &amp;lt;br&amp;gt; setpartofnd([1,3],[1,2,3]) &amp;lt;br&amp;gt; setpartofnd([1,3,3],[1,3,5,7]) &amp;lt;br&amp;gt; setpartofnd([1,4,4],[1,2,3,4])  || false &amp;lt;br&amp;gt; true &amp;lt;br&amp;gt; true &amp;lt;br&amp;gt; true&lt;br /&gt;
|-&lt;br /&gt;
| setgetmin || Liefert den kleinsten Wert einer Menge || setgetmin([1,3,-2,4]) || -2&lt;br /&gt;
|-&lt;br /&gt;
| setgetmax || Liefert den größten Wert einer Menge || setgetmax([1,3,-2,4]) || 4&lt;br /&gt;
|-&lt;br /&gt;
| setremovefirst || Entfernt den ersten Wert einer Menge || setremovefirst([1,3,-2,4]) || {3,-2,4}&lt;br /&gt;
|-&lt;br /&gt;
| setremovelast || Entfernt den letzten Wert einer Menge || setremovelast([1,3,-2,4]) || {1,3,-2}&lt;br /&gt;
|-&lt;br /&gt;
| setgetfirst || Liefert den ersten Wert einer Menge || setgetfirst([1,3,-2,4]) || 1&lt;br /&gt;
|-&lt;br /&gt;
| setgetlast || Liefert den letzten Wert einer Menge || setgetlast([1,3,-2,4]) || 4&lt;br /&gt;
|-&lt;br /&gt;
| setsub || setsub(M,x,y) Liefert eine Teilmenge von M der Elemente vom index x bis zum Index y || setsub([1,3,-2,4],1,2) || {3,-2}&lt;br /&gt;
|-&lt;br /&gt;
| setmakelist || setmakelist(f,x,start,stop) setzt in den Ausdruck f für x die Werte von start bis stop mit einer Schrittweite von 1 ein. || setmakelist(x^2,x,1,4) || [ 1,4,9,16 ]&lt;br /&gt;
|-&lt;br /&gt;
| || setmakelist(f,x,start,stop,schrittweite) setzt in den Ausdruck f für x die Werte von start bis stop mit dem Abstand schrittweite ein. || setmakelist(x^2,x,1,2,0.5) || [ 1,2.25,4 ]&lt;br /&gt;
|-&lt;br /&gt;
| || setmakelist(f,x,set) setzt die Werte des Vektors set in den Ausdruck f für x ein. || setmakelist(x^2,x,[3,1,2])  ||[ 9,1,4 ]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Typ-Funktionen===&lt;br /&gt;
Werden nur dann ausgewertet wenn der Parameter ein numerischer Wert oder eine Menge ist.&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| isset || Prüft ob es sich um eine Menge handelt. || isset([12,13,14]) || true &lt;br /&gt;
|-&lt;br /&gt;
| issetnumeric || Prüft ob es sich um eine Menge aus reellen Zahlen handelt. || issetnumeric([12,13.4,14]) || true &lt;br /&gt;
|-&lt;br /&gt;
| issetlong || Prüft ob es sich um eine Menge aus ganzen Zahlen handelt. || issetlong([12,13,14]) || true &lt;br /&gt;
|-&lt;br /&gt;
| islong || Prüft ob es sich um eine ganze Zahl handelt. || islong(12) || true &lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Algebra===&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;Hinweis:&#039;&#039; Die Indizes eines Vektors oder einer Matrix werden in Letto ausgehend von 0 weg gezählt.  &lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| matrix || erzeugt aus mehreren gleich langen Vektoren eine Matrix || matrix([1,2],[3,4]) || [[1,2],[3,4]]&lt;br /&gt;
|-&lt;br /&gt;
| inv || invertiert eine quadratische Matrix oder bildet 1/x || inv(matrix([1,2],[3,4])) || [[-2,1],[3/2,-1/2]]&lt;br /&gt;
|-&lt;br /&gt;
| vget || liefert ein Element eines Vektors oder einer Matrix || vget([12,13,14],1) &amp;lt;br&amp;gt; vget(matrix([9,2],[3,4]),0,1) || 13 &amp;lt;br&amp;gt; 2 &lt;br /&gt;
|-&lt;br /&gt;
| vset || setzt ein Element eines Vektors oder einer Matrix || vset([12,13,14],1,35) &amp;lt;br&amp;gt; vset(matrix([9,2],[3,4]),0,0,-9) || [12,35,14] &amp;lt;br&amp;gt; [[-9,2],[3,4]]&lt;br /&gt;
|-&lt;br /&gt;
| vinsert || fügt ein Element in einen Vektor an eine gegebene Stelle ein || vinsert([12,13,14],1,25) || [12,25,13,14]&lt;br /&gt;
|-&lt;br /&gt;
| vremove || löscht ein Element eines Vektors || vremove([12,13,14],1) || [12,14]&lt;br /&gt;
|-&lt;br /&gt;
| vabs || Berechnet den Betrag eines Vektors || vabs([3,4]) || 5&lt;br /&gt;
|-&lt;br /&gt;
| vin || Berechnet das innere Produkt von 2 Vektoren || vin([1,2,3],[4,5,6]) || 32&lt;br /&gt;
|-&lt;br /&gt;
| vex || Berechnet das ex-Produkt von 2 Vektoren im 3-dimensionalen Raum || vex([1,2,3],[4,5,6]) || [-3,6,-3]&lt;br /&gt;
|-&lt;br /&gt;
| mprod || Bildet das Matrixprodukt aus zwei Matrizen || mprod([[1,2],[3,4]],[[5,6],[7,8]]) || [[19,22],[43,50]]&lt;br /&gt;
|-&lt;br /&gt;
| mtrans || Bildet die transponierte Matrix || mtrans([[1,2],[3,4]]) || [[1,3],[2,4]]&lt;br /&gt;
|-&lt;br /&gt;
| minv || Bildet die inverse Matrix || minv([[1,2],[3,4]]) || [[-2,1],[3/2,-1/2]]&lt;br /&gt;
|-&lt;br /&gt;
| mdet || Bildet die Determinante einer quadratischen Matrix || mdet([[1,2],[3,4]]) || -2&lt;br /&gt;
|-&lt;br /&gt;
| vindex || vindex(v,x) liefert den Index des Elementes eines Vektors, welcher am nächsten bei x liegt || vindex([10,30,70],40) || 1 &lt;br /&gt;
|-&lt;br /&gt;
| vindexup || vindexup(v,x) liefert den Index des Elementes eines Vektors, welcher größer oder gleich x ist || vindexup([10,30,70],40) || 2 &lt;br /&gt;
|-&lt;br /&gt;
| vindexdown || vindexdown(v,x) liefert den Index des Elementes eines Vektors, welcher kleiner oder gleich x ist || vindexdown([10,30,70],60) || 1&lt;br /&gt;
|-&lt;br /&gt;
| verweis || verweis(M,x,n) liefert den Wert der n-ten Spalte (ohne Angabe von n die 2.Spalte) einer Matrix M wo x dem Wert in der ersten Spalte am nächsten liegt || verweis([[10,33],[20,77],[30,99]],21) || 77&lt;br /&gt;
|-&lt;br /&gt;
| verweisup || verweisup(M,x,n) liefert den Wert der n-ten Spalte (ohne Angabe von n die 2.Spalte) einer Matrix M wo x dem Wert in der ersten Spalte am nächsten liegt || verweisup([[10,33],[20,77],[30,99]],21) || 99&lt;br /&gt;
|-&lt;br /&gt;
| verweisdown || verweisdown(M,x,n) liefert den Wert der n-ten Spalte (ohne Angabe von n die 2.Spalte) einer Matrix M wo x dem Wert in der ersten Spalte am nächsten liegt || verweisdown([[10,33],[20,77],[30,99]],27,1) || 77&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Variable===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| kill || löscht Variable aus dem Variablenspeicher || kill(x,y) &amp;lt;br&amp;gt; kill(allbut(y)) &amp;lt;br&amp;gt; kill(all) || löscht die Variablen x und y &amp;lt;br&amp;gt; löscht alle Variablen mit Ausnahme von y &amp;lt;br&amp;gt; löscht alle Variable&lt;br /&gt;
|-&lt;br /&gt;
| allbut || Liefert eine Liste aller Variablen des Parsers als Menge(Vektor) mit Ausnahme der als Parameter angegebenen Variablen || allbut(x,y) || [a,b,c]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Auswertung und Programmierung===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| ev || Auswertung eines Ausdruckes, als Parameter können Gleichungen angegeben werden, welche dann in den Ausdruck eingesetzt werden || ev(x*y,y=4) || x*4&lt;br /&gt;
|-&lt;br /&gt;
| evruntime || Auswertung eines Ausdruckes, als Parameter können Gleichungen angegeben werden, welche dann in den Ausdruck eingesetzt werden. Das &#039;&#039;&#039;Einsetzen erfolgt erst bei der Ergebnisberechnung&#039;&#039;&#039;! || evruntime(x*y,y=4) || x*4&lt;br /&gt;
|-&lt;br /&gt;
| [[nv]] || Auswertung eines Ausdruckes, als Parameter können Gleichungen angegeben werden, welche dann in den Ausdruck eingesetzt werden. Im Gegensatz zu ev werden bestehende Variable nur in den Gleichungen, aber nicht im Ausdruck selbst eingesetzt! || nv(x*y,y=4) || x*4&lt;br /&gt;
|-&lt;br /&gt;
| [[if]] || Bedingungsfunktion if(bedingung,wahrwert,falschwert) || if(4&amp;lt;6,10,12) || 10&lt;br /&gt;
|-&lt;br /&gt;
| [[if|wenn]] || Bedingungsfunktion wenn(bedingung,wahrwert,falschwert). Im Prinzip identisch wie if, jedoch kann if mit Maxima nicht verwendet werden. || wenn(4&amp;lt;6,10,12) || 10&lt;br /&gt;
|-&lt;br /&gt;
| plugin || Ruft die Berechnungsmethode des Plugins, welches als erster Stringparameter angegeben werden muss auf und übergibt die weiteren Parameter an die Berechnungsmethode des Plugins.  || plugin(&amp;quot;plugin1&amp;quot;,3) || führt die Berechnung des Plugins mit dem Namen &amp;quot;plugin1&amp;quot; mit dem Parameter 3 aus. &lt;br /&gt;
|-&lt;br /&gt;
| symbolic || Bei allen Variablen innerhalb von symbolic werden nur nicht-numerische Werte eingesetzt! Wird vor allem im Angabtext bei {= } verwendet || symbolic(x^2+2) || x^2+2&lt;br /&gt;
|-&lt;br /&gt;
| runtime || Bei dieser Funktion wird &#039;&#039;&#039;erst bei der Berechnung der Frageantwort, nach dem Einsetzen der Datensätze&#039;&#039;&#039; das &#039;&#039;&#039;komplette Maxima-Feld&#039;&#039;&#039; mit dem internen &#039;&#039;&#039;Parser&#039;&#039;&#039; durchgerechnet und danach der Parameter-Ausdruck berechnet. Dadurch kann man bei komplizierten Berechnungen eine sehr aufwendige symbolische Berechnung verhindern! || runtime(U) || &lt;br /&gt;
|-&lt;br /&gt;
| dataset || liefert alle Datensätze einer Datensatz-Definition in einem Vektor || dataset(x) || &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Optimierung der Ausdrücke===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| opt   || Ausdruck wird vollständig optimiert, die Funktion wird ausgewertet und ist danach nicht mehr vorhanden. Nur bei der Verwendung des internen Parser sinnvoll. || opt(x+x) || 2*x&lt;br /&gt;
|-&lt;br /&gt;
| ratsimp || Ausdruck wird vollständig optimiert, die Funktion wird ausgewertet und ist danach nicht mehr vorhanden (wie opt, wird jedoch auch von Maxima ausgewertet) || ratsimp(x+x) || 2*x&lt;br /&gt;
|-&lt;br /&gt;
| noopt || Ausdruck wird nicht optimiert, bleibt also so erhalten wie angegeben. Die Funktion an sich geht aber verloren. || noopt(2+3) || 2+3&lt;br /&gt;
|-&lt;br /&gt;
| nopt || Ausdruck wird nicht optimiert, bleibt also so erhalten wie angegeben. Die Funktion bleibt erhalten und wird erst bei der Lösungsberechnung oder durch opt() entfernt. || noopt(2+3) || 2+3&lt;br /&gt;
|-&lt;br /&gt;
| lopt || Im Maximafeld bleibt die Funktion ohne Funktion erhalten, im Ergebnis {=  wird die Funktion entfernt und in der Lösung wird nach dem Einsetzen der Werte der Ausdruck vollständig optimiert. || lopt(x+3)  || lopt(x+3)  &lt;br /&gt;
|-&lt;br /&gt;
| lnoopt || Im Maximafeld bleibt die Funktion ohne Funktion erhalten, im Ergebnis {=  wird die Funktion entfernt und in der Lösung wird nach dem Einsetzen der Werte der Ausdruck nicht mehr optimiert. || lnoopt(x+3+2)  || lnoopt(x+5) &lt;br /&gt;
|-&lt;br /&gt;
| loptnumeric || Im Maximafeld bleibt die Funktion ohne Funktion erhalten, im Ergebnis {=  wird die Funktion entfernt und in der Lösung wird nach dem Einsetzen der Werte der Ausdruck nur numerisch optimiert. || loptnumeric(x+y)  || loptnumeric(x+y)&lt;br /&gt;
|-&lt;br /&gt;
| aopt || Bei Maxima und Lösung geht die Funktion verloren, nur innerhalb von noopt bleibt sie erhalten. Bei der Anzeige führt sie zur Optimierung das Ausdruckes nach Einsetzen der Datensätze. || aopt(x)  || x&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Anzeige und Lösungsberechnung===&lt;br /&gt;
Diese Funktionen haben entweder einen oder zwei Parameter. Der erste Parameter stellt die darzustellende Funktion dar, der zweite Parameter, welcher eine Ganzzahl sein muss, gibt an, wie die Darstellung erfolgen soll. Wird der 2.Parameter weggelassen, so wird er als 0 interpretiert.&lt;br /&gt;
* 0 Bei Berechnungen hat die Funktion keine Wirkung, bleibt aber als Funktion erhalten. Bei Lösung und Anzeige wird die Funktion ausgewertet&lt;br /&gt;
* 1 Wirkt nur bei Lösung, bei Berechnungen bleibt die Funktion erhalten&lt;br /&gt;
* 2 Wirkt nur bei Anzeige, bei Berechnungen bleibt die Funktion erhalten&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| viewpow || Gibt alle Wurzeln als Potenzen aus, und stellt alle Potenzen im Nenner als negativen Exponenten im Zähler dar || viewpow(sqrt(x)) || x^(1/2)&lt;br /&gt;
|-&lt;br /&gt;
| viewsqrt || Gibt Potenzen welche als Wurzel darstellbar sind auch als als Wurzeln mit der Funktion sqrt oder root aus || viewsqrt(x^(1/2)) || sqrt(x)&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Spezialfunktionen LeTTo ===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| points || Berechnet die erreichbare Gesamtpunkteanzahl einer Frage || points() || 2&lt;br /&gt;
|-&lt;br /&gt;
| points || Berechnet die erreichbare Punkteanzahl einer Teilfrage. Als Parameter wird die Fragenummer als Ganzzahl angegeben. || points(0) || 1&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Spezialfunktionen Technik===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| color || Widerstandsfarbcode berechnen.&amp;lt;br&amp;gt;1. Parameter muss ein Double sein&amp;lt;br&amp;gt; 2.Parameter sind die Anzahl der Farbringe&amp;lt;br&amp;gt; 3.Parameter ist der Modus (0..2-St,1..3St,2..Deutsch,3..2StEng,4..3StEng,5..Englisch || color(120,3,2) || braun,rot,braun&lt;br /&gt;
|-&lt;br /&gt;
| parsecolor || Wandelt einen String mit einem Widerstandsfarbcode in einen Double-Wert || parsecolor(&amp;quot;br-rt-br&amp;quot;) || 120&lt;br /&gt;
|-&lt;br /&gt;
| ip || Wandelt eine Long-Zahl in einen String als IP-Adresse um, oder 4 Byte-Zahlen in eine Long Zahl als IP-32-bit-Adresse || ip(1534536453)&amp;lt;br&amp;gt;ip(10,20,30,40) || &amp;quot;91.119.43.5&amp;quot;&amp;lt;br&amp;gt;169090600&lt;br /&gt;
|-&lt;br /&gt;
| parseip || Wandelt einen String mit einer IP-Adresse in einen Long-Wert || parseip(&amp;quot;91.119.43.5&amp;quot;) || 1534536453&lt;br /&gt;
|-&lt;br /&gt;
| e12 || rundet einen Zahlenwert auf den nächstliegenden Wert der [[Normreihe]] E12.&amp;lt;br&amp;gt;Die Rundung erfolgt geometrisch d.h. der Quotient zwischen Normwert und zu rundendem Wert wird minimiert. || e12(700Ohm) || 680Ohm&lt;br /&gt;
|-&lt;br /&gt;
| e12up || rundet einen Zahlenwert auf den nächstgrößerern Wert der [[Normreihe]] E12 || e12(670Ohm) || 680Ohm&lt;br /&gt;
|-&lt;br /&gt;
| e12down || rundet einen Zahlenwert auf den nächstkleineren Wert der [[Normreihe]] E12 || e12(700Ohm) || 680Ohm&lt;br /&gt;
|-&lt;br /&gt;
| ise12 || prüft ob der als Parameter übergebenen Wert ein Wert der [[Normreihe]] E12 ist.|| ise12(680Ohm) || true&lt;br /&gt;
|-&lt;br /&gt;
| norm || rundet einen Zahlenwert auf den nächstliegenden Wert einer gegebenen Wertereihe oder [[Normreihe]].&amp;lt;br&amp;gt;Die Rundung erfolgt geometrisch wenn es sich um eine logarithmisch aufgeteilte Normreihe handelt, oder sonst linear. || norm(700Ohm,E12) || 680Ohm&lt;br /&gt;
|-&lt;br /&gt;
| normup || rundet einen Zahlenwert auf den nächstgrößerern Wert einer gegebenen Wertereihe oder [[Normreihe]]. || normup(730Ohm,[1,3,5,8]) || 800Ohm&lt;br /&gt;
|-&lt;br /&gt;
| normdown || rundet einen Zahlenwert auf den nächstkleineren Wert einer gegebenen Wertereihe oder [[Normreihe]]. || normdown(700Ohm,E12) || 680Ohm&lt;br /&gt;
|-&lt;br /&gt;
| isnorm || prüft ob der als Parameter übergebenen Wert ein Wert einer gegebenen Wertereihe oder [[Normreihe]] ist. || isnorm(680Ohm,E12) || true&lt;br /&gt;
|}&lt;br /&gt;
===Raumzeiger für elektrische Maschinen===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| [[svphtosv]](a,b,c) || berechnet aus den Stranggrößen (a,b,c) einen komplexen Raumzeiger || svphtosv(0.5,0.5,-1) || 1arg60°&lt;br /&gt;
|-&lt;br /&gt;
| [[svsvtoph]](sv)&amp;lt;br&amp;gt;svsvtoph(sv,index) || berechnet aus einem komplexen Rauzeiger die Phasengrößen &amp;lt;br&amp;gt; berechnet aus einem komplexen Rauzeiger die Phasengrößen, index selektiert Stranggröße als Rückgabewert || svsvtoph(1arg60°)&amp;lt;br&amp;gt; svsvtoph(1arg60°,3)|| [0.5,0.5,-1] &amp;lt;br&amp;gt; -1&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=Ergebnisvorschau=&lt;br /&gt;
Aufruf dieses Dialoges über den [[Datei:ClipCapIt-180904-181443.PNG|25px]]-Button aus dem [[Toolbar]].&lt;br /&gt;
&lt;br /&gt;
Die Berechnungen aus dem Maxima-Feld bei der [[Beispiele Bearbeiten|Fragendefinition]] können auch über den [[Datei:ClipCapIt-180904-182120.PNG|25px]]-Button durchgeführt werden. Hier wird die Berechnung durchgeführt und das Lösungsfeld ausgefüllt, aber der Rechengang wird nicht angezeigt. &lt;br /&gt;
:[[Datei:ClipCapIt-180904-181415.PNG|400px]]&lt;br /&gt;
&lt;br /&gt;
Beim Fehlersuchen oder bei komplexen Berechnungen kann es aber hilfreich sein, den ganzen Maxima-Lösungsweg zu sehen, dies ist über den [[Datei:ClipCapIt-180904-181443.PNG|25px]]-Button möchlich.&lt;br /&gt;
&lt;br /&gt;
[[Kategorie:Berechnung]]&lt;/div&gt;</summary>
		<author><name>Ckral</name></author>
	</entry>
	<entry>
		<id>https://wiki.letto.at/wiki/index.php?title=Farben&amp;diff=2869</id>
		<title>Farben</title>
		<link rel="alternate" type="text/html" href="https://wiki.letto.at/wiki/index.php?title=Farben&amp;diff=2869"/>
		<updated>2021-09-02T15:40:53Z</updated>

		<summary type="html">&lt;p&gt;Ckral: Ändere &amp;quot;grünrot&amp;quot; auf &amp;quot;grün&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Farben=&lt;br /&gt;
Für die Angabe von Farben sind folgende Farb-Angaben entweder als &amp;quot;Farbe&amp;quot;, als &amp;quot;Farbname deutsch&amp;quot; oder als &amp;quot;Farbcode&amp;quot; möglich:&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Farbe || Farbname deutsch || Farbcode || Bsp&lt;br /&gt;
|-&lt;br /&gt;
| red || rot || #ff0000 ||  &amp;lt;hr style=&amp;quot;height:0px;border: 10px solid #ff0000;&amp;quot;&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| blue || blau || #0000ff ||  &amp;lt;hr style=&amp;quot;height:0px;border: 10px solid #0000ff;&amp;quot;&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| green || grün || #00ff00 ||  &amp;lt;hr style=&amp;quot;height:0px;border: 10px solid #00ff00;&amp;quot;&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| yellow || gelb || #ffff00 ||  &amp;lt;hr style=&amp;quot;height:0px;border: 10px solid #ffff00;&amp;quot;&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| black || schwarz || #000000 ||  &amp;lt;hr style=&amp;quot;height:0px;border: 10px solid #000000;&amp;quot;&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| magenta || violett || #ff00ff ||  &amp;lt;hr style=&amp;quot;height:0px;border: 10px solid #ff00ff;&amp;quot;&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| white || weiss || #ffffff ||  &amp;lt;hr style=&amp;quot;height:0px;border: 10px solid #ffffff;&amp;quot;&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| gray || grau || #999999 ||  &amp;lt;hr style=&amp;quot;height:0px;border: 10px solid #999999;&amp;quot;&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| lightgray || hellgrau || #d3d3d3 ||  &amp;lt;hr style=&amp;quot;height:0px;border: 10px solid #d3d3d3;&amp;quot;&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| darkgray || dunkelgrau || #292929 ||  &amp;lt;hr style=&amp;quot;height:0px;border: 10px solid #292929;&amp;quot;&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| pink || rosa || #ffc0cb ||  &amp;lt;hr style=&amp;quot;height:0px;border: 10px solid #ffc0cb;&amp;quot;&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| darkgreen || dunkelgrün || #006400 ||  &amp;lt;hr style=&amp;quot;height:0px;border: 10px solid #006400;&amp;quot;&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| brown || braun || #966400 ||  &amp;lt;hr style=&amp;quot;height:0px;border: 10px solid #966400;&amp;quot;&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| greenyellow || grüngelb || #bebe00 ||  &amp;lt;hr style=&amp;quot;height:0px;border: 10px solid #bebe00;&amp;quot;&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| orange|| orange || #ff7f00  ||  &amp;lt;hr style=&amp;quot;height:0px;border: 10px solid #ff7f00;&amp;quot;&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| cyan ||  || #00ffff ||  &amp;lt;hr style=&amp;quot;height:0px;border: 10px solid #00ffff;&amp;quot;&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= siehe auch =&lt;br /&gt;
* [[Graph]]-Plugin&lt;br /&gt;
* [[Plot]]-Plugin&lt;br /&gt;
* [[Konfiguration des Oszilloskopes]]&lt;/div&gt;</summary>
		<author><name>Ckral</name></author>
	</entry>
	<entry>
		<id>https://wiki.letto.at/wiki/index.php?title=Gsr&amp;diff=2868</id>
		<title>Gsr</title>
		<link rel="alternate" type="text/html" href="https://wiki.letto.at/wiki/index.php?title=Gsr&amp;diff=2868"/>
		<updated>2021-08-20T12:49:30Z</updated>

		<summary type="html">&lt;p&gt;Ckral: Ersetze \&amp;quot; durch &amp;quot;, siehe #1185&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Plugin GSR=&lt;br /&gt;
&lt;br /&gt;
* Zeichnet lineare elektrische Schaltungen für Gleichspannung.&lt;br /&gt;
* Besteht die Schaltung nur aus linearen Elementen, dann liefert das Plugin auch das mathematische Modell in Form von Maxima-Befehlen.&lt;br /&gt;
&lt;br /&gt;
siehe auch: [[Plugins]]&lt;br /&gt;
&lt;br /&gt;
==Definition der Schaltung==&lt;br /&gt;
===Schaltungselemente===&lt;br /&gt;
Die Schaltung wird im Plugindialog über einen String(Zeichenkette) definiert, wobei folgende lineare Bauteile definiert sind:&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Name || Bedeutung || Symbol&lt;br /&gt;
|-&lt;br /&gt;
| R || Widerstand || :[[Datei:ClipCapIt-181123-103129.PNG]]&lt;br /&gt;
|-&lt;br /&gt;
| C || Kondensator || :[[Datei:ClipCapIt-181123-103156.PNG]]&lt;br /&gt;
|-&lt;br /&gt;
| L || Induktivität || :[[Datei:ClipCapIt-181127-205320.PNG]]&lt;br /&gt;
|-&lt;br /&gt;
| LL || Leerlauf oder Unterbrechung || :[[Datei:ClipCapIt-181127-091706.PNG]]&lt;br /&gt;
|-&lt;br /&gt;
| KS || Drahtbrücke oder Kurzschluss || :[[Datei:ClipCapIt-181127-091730.PNG]]&lt;br /&gt;
|-&lt;br /&gt;
| DB || Drahtbrücke ohne besondere Funktion || :[[Datei:ClipCapIt-181127-091730.PNG]]&lt;br /&gt;
|-&lt;br /&gt;
| U || Spannungsquelle || :[[Datei:ClipCapIt-181127-091816.PNG]]&lt;br /&gt;
|-&lt;br /&gt;
| UR || Spannungsquelle in Rückwärtsrichtung || :[[Datei:ClipCapIt-181127-091844.PNG]]&lt;br /&gt;
|-&lt;br /&gt;
| UW || Wechselspannungsquelle || :[[Datei:ClipCapIt-181127-091904.PNG]]&lt;br /&gt;
|-&lt;br /&gt;
| UWR || Wechselspannungsquelle in Rückwärtsrichtung || :[[Datei:ClipCapIt-181127-092800.PNG]]&lt;br /&gt;
|-&lt;br /&gt;
| BAT || Batterie als Spannungsquelle || :[[Datei:ClipCapIt-181127-100455.PNG]]&lt;br /&gt;
|-&lt;br /&gt;
| BATR || Batterie als Spannungsquelle in Rückwärtsrichtung || :[[Datei:ClipCapIt-181127-100522.PNG]]&lt;br /&gt;
|-&lt;br /&gt;
| I || Stromquelle || :[[Datei:ClipCapIt-181127-100611.PNG]] &lt;br /&gt;
|-&lt;br /&gt;
| IR || Stromquelle in Rückwärtsrichtung || :[[Datei:ClipCapIt-181127-100715.PNG]]&lt;br /&gt;
|-&lt;br /&gt;
| A || Amperemeter || :[[Datei:ClipCapIt-181127-100748.PNG]]&lt;br /&gt;
|-&lt;br /&gt;
| AR || Amperemeter in Rückwärtsrichtung || :[[Datei:ClipCapIt-181127-100829.PNG]]&lt;br /&gt;
|-&lt;br /&gt;
| V || Voltmeter || :[[Datei:ClipCapIt-181127-100902.PNG]]&lt;br /&gt;
|-&lt;br /&gt;
| VR || Voltmeter in Rückwärtsrichtung || :[[Datei:ClipCapIt-181127-103105.PNG]]&lt;br /&gt;
|-&lt;br /&gt;
| Par(R,R) || Parallelschaltung von zwei Widerständen || :[[Datei:ClipCapIt-181127-103152.PNG]]&lt;br /&gt;
|-&lt;br /&gt;
| Ser(R,R) || Serienschaltung von zwei Widerständen || :[[Datei:ClipCapIt-181127-103220.PNG]]&lt;br /&gt;
|-&lt;br /&gt;
| B(R1,R2,R3,R4,R5) || Brückenschaltung von 5 Bauelementen || :[[Datei:ClipCapIt-181127-103314.PNG]]&lt;br /&gt;
|-&lt;br /&gt;
| B(R) || Brückenschaltung von 5 Widerständen mit verschiedenen Werten || :[[Datei:ClipCapIt-181127-103314.PNG]]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Folgende Bauteile, welche nicht mit Maxima berechnbar sind, sind ebenfalls definiert:&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Name || Bedeutung || Symbol&lt;br /&gt;
|- &lt;br /&gt;
| D || Diode || :[[Datei:ClipCapIt-190220-101437.PNG]]&lt;br /&gt;
|-&lt;br /&gt;
| DR || Diode in Rückwärtsrichtung || :[[Datei:ClipCapIt-190220-101453.PNG]]&lt;br /&gt;
|-&lt;br /&gt;
| ZD || Zenerdiode || :[[Datei:ClipCapIt-190220-101512.PNG]]&lt;br /&gt;
|-&lt;br /&gt;
| ZDR || Zenerdiode in Rückwärtsrichtung || :[[Datei:ClipCapIt-190220-101527.PNG]]&lt;br /&gt;
|-&lt;br /&gt;
| LED || LED || :[[Datei:ClipCapIt-190220-101538.PNG]]&lt;br /&gt;
|-&lt;br /&gt;
| LEDR || LED in Rückwärtsrichtung || :[[Datei:ClipCapIt-190220-101552.PNG]]&lt;br /&gt;
|-&lt;br /&gt;
| Lamp || Glühbirne || :[[Datei:ClipCapIt-190220-101611.PNG]]&lt;br /&gt;
|- &lt;br /&gt;
| X    || Glühbirne || :[[Datei:ClipCapIt-190220-101611.PNG]]&lt;br /&gt;
|- &lt;br /&gt;
| NTC  || NTC-Widerstand || :[[Datei:ClipCapIt-190220-101631.PNG]]&lt;br /&gt;
|-&lt;br /&gt;
| PTC  || PTC-Widerstand || :[[Datei:ClipCapIt-190220-101643.PNG]]&lt;br /&gt;
|-&lt;br /&gt;
| VDR  || VDR-Widerstand || :[[Datei:ClipCapIt-190220-101658.PNG]]&lt;br /&gt;
|-&lt;br /&gt;
| S    || Schalter als Schließer || :[[Datei:ClipCapIt-190220-101721.PNG]]&lt;br /&gt;
|-&lt;br /&gt;
| O    || Schalter als Öffner || :[[Datei:ClipCapIt-190220-101709.PNG]]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Die Verschaltung der Bauelement erfolgt über die folgenden Operatoren:&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Operator || Priorität || Bedeutung &lt;br /&gt;
|+&lt;br /&gt;
| * || 15 || Parallelschaltung&lt;br /&gt;
|+&lt;br /&gt;
| + || 10 || Serienschaltung&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Zusammenschaltung von Zweipolen===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Schaltung || Bedeutung || Beispiel || Bild&lt;br /&gt;
|+&lt;br /&gt;
| einzelner Zweipol als Serienschaltung || Wird horizontal dargestellt und ohne Beistrich definiert || R+C || &lt;br /&gt;
:[[Datei:ClipCapIt-181123-102901.PNG]]&lt;br /&gt;
|+&lt;br /&gt;
| einzelner Zweipol als Parallelschaltung || Wird horizontal dargestellt und ohne Beistrich definiert || R*C ||&lt;br /&gt;
:[[Datei:ClipCapIt-181127-210445.PNG]]&lt;br /&gt;
|+&lt;br /&gt;
| senkrechter Zweipol || führt bei einigen Berechnungen noch zu Fehlern! || ,R+C || &lt;br /&gt;
:[[Datei:ClipCapIt-181123-103043.PNG]]&lt;br /&gt;
|+&lt;br /&gt;
| Links offene Schaltung mit einer Eingangsspannung Ue und zwei Bauteilen || beginnt mit einem Komma  || ,R,C || &lt;br /&gt;
:[[Datei:ClipCapIt-181127-210517.PNG]]&lt;br /&gt;
|+&lt;br /&gt;
| Spannungsquelle mit zwei Bauteilen || || U,R,C || :[[Datei:ClipCapIt-181127-210707.PNG]]&lt;br /&gt;
|+&lt;br /&gt;
| Vierpol || || ,R,C,, || :[[Datei:ClipCapIt-181127-210817.PNG]]&lt;br /&gt;
|+&lt;br /&gt;
| Vierpol mit 3 Elementen || || ,R1,R2,R3, || :[[Datei:ClipCapIt-181127-210922.PNG]]&lt;br /&gt;
|+&lt;br /&gt;
| Vierpol als T-Glied || || ,R1,R2,,R3,LL || :[[Datei:ClipCapIt-181127-211052.PNG]]&lt;br /&gt;
|+&lt;br /&gt;
| Vierpol als Pi-Glied || || ,,R1,,R2,R3,, || :[[Datei:ClipCapIt-181127-211158.PNG]]&lt;br /&gt;
|+&lt;br /&gt;
| Zweipol mit mehreren Elementen || || ,R1,R2,R3,R4,R5,R6 || :[[Datei:ClipCapIt-181127-211246.PNG]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===angezeigte Spannungen und Ströme===&lt;br /&gt;
* Die angezeigten Ströme und Spannung können nach der Schaltungsdefinition durch einen Strichpunkt getrennt erfolgen. &lt;br /&gt;
* Sie werden einfach durch Beistrich getrennt angegeben&lt;br /&gt;
Folgenden Definitionen sind hierbei möglich:&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Operator || Beispiel || Bedeutung &lt;br /&gt;
|-&lt;br /&gt;
| ohne Operator || UR1 || der Spannungspfeil für R1 wird gezeichnet&lt;br /&gt;
|-&lt;br /&gt;
| _ || UR1_ || Das Größensymbol wird in der Schaltung unterstrichen&lt;br /&gt;
|-&lt;br /&gt;
| - || Ue- || Der Pfeil wird in der Schaltung nicht mehr gezeichnet&lt;br /&gt;
|-&lt;br /&gt;
| ! || IR1! || Der berechneten Wert wird zum Pfeil dazugeschrieben. Die Wert ist nur verfügbar, wenn er auch im Maxima-Feld berechnet wurde!&lt;br /&gt;
|-&lt;br /&gt;
| ? || UR1? || Der Pfeil wird ohne Namen gezeichnet&lt;br /&gt;
|-&lt;br /&gt;
| &amp;gt; || UR1&amp;gt;x || Der Indizes der Größe wird ausgetauscht. In diesem Beispiel wird Ux statt UR1 geschrieben. In Maxima bleibt der Index unverändert.&lt;br /&gt;
|-&lt;br /&gt;
| : || R1:Rx || Ein Bauteilname kann umbenannt werden. Hier R1 auf Rx. Dies hat keinen Einfluss auf die Maxima-Berechnung, hier bleibt der Namen erhalten.&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
Die Operatoren _-!? können auch nach einer Änderung mit &amp;gt; zusätzlich verwendet werden wie zB: UR4&amp;gt;x!_ &lt;br /&gt;
:[[Datei:ClipCapIt-181127-212621.PNG]]&lt;br /&gt;
&lt;br /&gt;
===Beispiele===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Definition || Schaltung&lt;br /&gt;
|-&lt;br /&gt;
| U,R,R,A;UR1,UR2,IR1&amp;gt;1,IA1- || :[[Datei:ClipCapIt-181127-213202.PNG]]&lt;br /&gt;
|-&lt;br /&gt;
| U,R,R,A;UR1,UR2,IR1&amp;gt;1,IA1-,A1:.,R2:Rx,URx&amp;gt;x || :[[Datei:ClipCapIt-181127-213502.PNG]]&lt;br /&gt;
|-&lt;br /&gt;
| ,R,R;Ue?,Ie-,UR1?,UR2&amp;gt;a || :[[Datei:ClipCapIt-181127-213912.PNG]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==Datensätze==&lt;br /&gt;
* Das Plugin erstellt automatisch beim Beenden des Plugin-Editors die benötigten Datensätze&lt;br /&gt;
* Für alle Bauteilwert darf aktuell nur ein reeller und kein komplexer Wert verwendet werden&lt;br /&gt;
* Für Bauteile kann man den zugehörigen Datensatz löschen und durch eine Berechnung in Maxima überschreiben (Der Datensatz wird aber dann aktuell jedesmal wenn man in den Plugin-Dialog wechselt neu angelegt -&amp;gt; Bug)&lt;br /&gt;
&lt;br /&gt;
==Verwendung des Plugins in der Frage==&lt;br /&gt;
===Einfügen von Angabewerten===&lt;br /&gt;
Im Frageeditor kann man mit der rechten Maustaste und Plugin-Angabe die Angabe für alle generierten Datensätze in den Fragetext einfügen lassen.&lt;br /&gt;
:[[Datei:ClipCapIt-181127-214344.PNG]]&lt;br /&gt;
Wird später das Plugin verändert wird dieser Test &#039;&#039;&#039;nicht automatisch&#039;&#039;&#039; nachgeführt. Er muss dann entweder gelöscht und neu eingefügt, oder händisch angepasst werden.&lt;br /&gt;
&lt;br /&gt;
Beispiel:&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Schaltung || Angabe&lt;br /&gt;
|+&lt;br /&gt;
| :[[Datei:ClipCapIt-181127-214655.PNG]] || $U_{Q1}={UQ1}$, $R_{1}={R1}$, $C_{1}={C1}$&lt;br /&gt;
|+&lt;br /&gt;
|}&lt;br /&gt;
			&lt;br /&gt;
===Einfügen von Graphiken===&lt;br /&gt;
Eine Graphik kann durch das Plugin-Tag &lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
[PIG pluginname &amp;quot;typ parameter&amp;quot;/]&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
im Fragetext eingefügt werden. Dies erfolgt entweder direkt über die Eingabe des Textes oder über die rechte Maustaste im Fragetext-Editor.&lt;br /&gt;
&lt;br /&gt;
Folgende Parameter können angegeben werden:&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Graphiktyp || typ parameter || Beschreibung || Beispiel&lt;br /&gt;
|+	      &lt;br /&gt;
| Schaltung || keine Parameter ||  || [PIG plugin1]&lt;br /&gt;
|+&lt;br /&gt;
| Schaltung || S W,w20 || &lt;br /&gt;
W,werte..Werte der Bauteile drucken&amp;lt;br&amp;gt;&lt;br /&gt;
w20..Breite in Prozent des Bildschirms&amp;lt;br&amp;gt;&lt;br /&gt;
 || [PIG plugin1 &amp;quot;S W,w60&amp;quot;/]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Zeichenelemente des Plot-Plugins===&lt;br /&gt;
Durch Strichpunkt getrennt können auch die [[Plot#vordefinierte_graphische_Funktionen|Zeichenelemente]] des Plot-Plugins eingefügt werden.&lt;br /&gt;
&lt;br /&gt;
Das Koordinatensystem des Bildschirmfensters hat den Nullpunkt links unten.&lt;br /&gt;
&lt;br /&gt;
Die positive horizontale Achse geht von links nach rechts von 0 bis 100 und bei Schaltungen von 0 bis zur Schaltungsbreite wobei ein Widerstand eine Länge von 3 hat.&lt;br /&gt;
&lt;br /&gt;
Die postitive vertikale Achse reicht unten nach oben und beginnt unten bei 0. Der maximale Wert ist abhängig vom Seitenverhältnis des Fensters.&lt;br /&gt;
&lt;br /&gt;
Beispiele:&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Plugin-Definition || PIG-Tag || Bild&lt;br /&gt;
|-&lt;br /&gt;
| ,R,R,,R,LL;Ia || S w,w50;loop(2.5,1.5,0.6,tex=&amp;quot;I&amp;quot;);loop(7.5,1.5,0.6,tex=&amp;quot;II&amp;quot;);circle(5,4,0.3,color=red);text(5,4.7,tex=&amp;quot;III&amp;quot;) || &lt;br /&gt;
:[[Datei:ClipCapIt-200603-133148.PNG|200px]]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Maximafeld===&lt;br /&gt;
Im Maximafeld kann ein Satz von Berechnungsformeln für das Plugin über den Tag&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
[PIM pluginname/]&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
automatische eingefügt werden. Dieses Tag kann auch über die rechte Maustaste im Maximafeld eingefügt werden.&lt;br /&gt;
Das PIM-Tag wird vor der Maxima-Berechnung automatisch durch die Formeln des Plugins ersetzt.&lt;br /&gt;
&lt;br /&gt;
Folgende Variablen werden im Maxima-Feld definiert und können für das Ergebnis &lt;br /&gt;
verwendet werden:&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Variable|| Beschreibung &lt;br /&gt;
|- &lt;br /&gt;
| UR1 || Spannung am Widerstand R1 &lt;br /&gt;
|-&lt;br /&gt;
| IC1 || Strom im Kondensator C1&lt;br /&gt;
|-&lt;br /&gt;
| Rges || Gesamtwiderstand wenn die Schaltung als Zweipol darstellbar ist &lt;br /&gt;
|-&lt;br /&gt;
| Ue || Gesamtspannung am Eingang eines Zweipols oder Vierpols&lt;br /&gt;
|-&lt;br /&gt;
| Ie || Gesamtstrom am Eingang eines Zweipols oder Vierpols &lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Werden in der Schaltung &#039;&#039;&#039;Induktivitäten oder Kapazitäten&#039;&#039;&#039; verwendet werden alle Ströme und Spannungen im Laplace-Bereich &lt;br /&gt;
und im Gleichstromarbeitspunkt berechnet.&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Variable|| Beschreibung || Ergebnistyp&lt;br /&gt;
|- &lt;br /&gt;
| UR1 || Spannung am Widerstand R1 im Laplace-Bereich als Funktion in s || Übertragungsfunktion&lt;br /&gt;
|-&lt;br /&gt;
| IC1 || Strom im Kondensator C1 im Laplace-Bereich als Funktion in s || Übertragungsfunktion&lt;br /&gt;
|-&lt;br /&gt;
| dcUR1 || Gleichspannung am Widerstand R1 im Arbeitspunkt || Gleichspannung&lt;br /&gt;
|-&lt;br /&gt;
| dcIL1 || Gleichstrom in der Induktivität L1 im Arbeitspunkt || Gleichstrom&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Werden in der Schaltung &#039;&#039;&#039;Schalter&#039;&#039;&#039; verwendet, so werden alle notwendigen Größen für &#039;&#039;&#039;Schaltvorgänge&#039;&#039;&#039; berechnet.&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Variable|| Beschreibung || Ergebnistyp&lt;br /&gt;
|-&lt;br /&gt;
| dcUR1 || Gleichspannung am Widerstand R1 vor der Betätigung des Schalters || Gleichspannung&lt;br /&gt;
|-&lt;br /&gt;
| UR1 || Spannung am Widerstand R1 vor dem Betätigen des Schalters im Laplace-Bereich als Funktion von s || Übertragungsfunktion&lt;br /&gt;
|-&lt;br /&gt;
| npUR1 || Spannung am Widerstand R1 direkt nach dem Betätigen des Schalters || Momentanwert&lt;br /&gt;
|-&lt;br /&gt;
| infUR1 || Gleichspannung am Widerstand R1 nach unendlich langer Zeit nach dem Betätigung des Schalters || Gleichspannung&lt;br /&gt;
|-&lt;br /&gt;
| sUR1 || Spannung am Widerstand R1 nach dem Betätigen des Schalters im Laplace-Bereich als Funktion von s || Übertragungsfunktion&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
[[Category:Plugins]]&lt;/div&gt;</summary>
		<author><name>Ckral</name></author>
	</entry>
	<entry>
		<id>https://wiki.letto.at/wiki/index.php?title=Berechnungen&amp;diff=2867</id>
		<title>Berechnungen</title>
		<link rel="alternate" type="text/html" href="https://wiki.letto.at/wiki/index.php?title=Berechnungen&amp;diff=2867"/>
		<updated>2021-05-19T12:28:52Z</updated>

		<summary type="html">&lt;p&gt;Ckral: %j wird nur vom Parser unterstützt&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Allgemeines =&lt;br /&gt;
Berechnungen werden in mehreren Bereichen der Frageerstellung verwendet und bilden die Basis für [[Fragetypen#Berechnungsfrage|Berechnungsfrage]] und [[Fragetypen#Mehrfachberechnungsfrage|Mehrfachberechnungsfrage]].&lt;br /&gt;
&lt;br /&gt;
Alle Berechnungen unterstützen [[Einheit|Einheiten]] und symbolische Auswertung.&lt;br /&gt;
&lt;br /&gt;
=Grundsätzlicher Aufbau der Ergebnis-Berechnung bei Fragen mit Berechnungen=&lt;br /&gt;
[[Datei:BerechnungSchema.png|mini|hochkant=2.0|Schema der Berechnung]]&lt;br /&gt;
Die Berechnung und die Beurteilung einer Frage teilt sich in 3 grundsätzliche Schritte:&lt;br /&gt;
* Berechnnug der geschlossenen Lösung (Formel) aus den Maxima-Feldern &lt;br /&gt;
* Berechnung des Ergebnisses einer Frage durch Einsetzen der Zahlenwerte aus den Datensätzen in die geschlossene Lösung&lt;br /&gt;
* Beurteilung der Schülereingabe durch Vergleich mit dem Ergebnis&lt;br /&gt;
&lt;br /&gt;
=Konstante=&lt;br /&gt;
Alle Konstante welche in Letto definiert sind beginnen mit einem Prozentzeichen. Verwendet man den Variablennamen ohne Prozenzzeichen, so wird die Konstante wie eine Variable mit dem Wert der Konstanten verwendet.&lt;br /&gt;
&lt;br /&gt;
Liste der definierten Konstanten:&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%&amp;quot; &lt;br /&gt;
| Name || Wert || Beschreibung&lt;br /&gt;
|-&lt;br /&gt;
| %i || i || komplexer Parameter als Lösung der Gleichung x^2=-1&lt;br /&gt;
|-&lt;br /&gt;
| %j || i || komplexer Parameter als Lösung der Gleichung x^2=-1&amp;lt;br&amp;gt;&amp;lt;b&amp;gt;Wichtig:&amp;lt;/b&amp;gt; Wir nur vom Parser unterstützt, nicht von Maxima&lt;br /&gt;
|-&lt;br /&gt;
| %e || 2.718281828459045 || Eulersche Zahl &lt;br /&gt;
|-&lt;br /&gt;
| %pi || 3.141592653589793 || Kreiszahl&lt;br /&gt;
|-&lt;br /&gt;
| %mu0 || magnetische Feldkonstante || 4*%pi*1E-7&#039;Vs/Am&#039;&lt;br /&gt;
|-&lt;br /&gt;
| %m0 || magnetische Feldkonstante (alt, wird bald entfernt werden) || 4*%pi*1E-7&#039;Vs/Am&#039;&lt;br /&gt;
|-&lt;br /&gt;
| %epsilon0 || elektrische Feldkonstante || 8.85418781762039E-12&#039;As/Vm&#039;&lt;br /&gt;
|-&lt;br /&gt;
| %e0 || elektrische Feldkonstante (alt, wird bald entfernt werden) || 8.85418781762039E-12&#039;As/Vm&#039;&lt;br /&gt;
|-&lt;br /&gt;
| %c0 || Lichtgeschwindigkeit || 299792458&#039;m/s&#039;&lt;br /&gt;
|-&lt;br /&gt;
| %Qe || Elementarladung || 1.602176620898E-19As&lt;br /&gt;
|-&lt;br /&gt;
| %g  || Erdbeschleunigung || 9.81&#039;m/s^2&#039;&lt;br /&gt;
|-&lt;br /&gt;
| %NA || Avogadro Konstante || 6.02214085774E23/mol&lt;br /&gt;
|-&lt;br /&gt;
| %k  || Stefan Bolzman Konstante || 1.3806485279E-23&#039;J/K&#039;&lt;br /&gt;
|-&lt;br /&gt;
| %R0 || Universelle Gaskonstante || 8.314459848&#039;J/Kmol&#039;&lt;br /&gt;
|-&lt;br /&gt;
| %h || planksches Wirkungsquantum || 6.6260704081E-34Js&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=Berechnung mit Maxima=&lt;br /&gt;
* Maxima wird &#039;&#039;&#039;nur für symbolische Berechnungen&#039;&#039;&#039; bei der Erstellung von Beispielen verwendet. Hierbei wird, wie schon oberhalb im Schema angegeben, zuerst die Moodle.mac geladen, dann das [[Beispielsammlung Editieren#Maxima-Feld|Maxima-Feld]] berechnet und anschließend die Maxima-Felder aller Teilfragen. Das Ergebnis der Berechnung wird dann als symbolischer Ausdruck im Lösungfeld eingetragen.&lt;br /&gt;
* Da zum Zeitpunkt der &#039;&#039;&#039;Maxima-Berechnung keine Datensätze&#039;&#039;&#039; vorhanden sind, kann keine numerische Berechnung in Maxima durchgeführt werden, welche die [[Datensätze]] benötigt. Dies muss der interne Parser zum Zeitpunkt des Online-Test-Laufes erledigen. Numerische Berechnungen, welche der interne Parser nicht kann können deshalb auch nicht mit Maxima berechnet werden.&lt;br /&gt;
* Da das Lösungsfeld, welches mit Maxima berechnet wird symbolisch ausgewertet wird, können in Maxima sämtliche symbolischen Berechnungsverfahren angewendet werden, welche ein symbolisches Ergebnis liefern und keine numerischen Werte der Datensätze benötigen.&lt;br /&gt;
* Reicht im Maximafeld die Zeilenlänge nicht aus ist es möglich einen defninierten Zeilenumbruch zu realisieren. Schreiben Sie dazu &amp;quot;\&amp;quot; (einfacher Backslash) am Ende der Zeile.  &lt;br /&gt;
* &#039;&#039;&#039;Funktionsdeklarationen&#039;&#039;&#039; wie &#039;&#039;&#039;f(x):=&#039;&#039;&#039;x^2 mit Doppelpunkt-Ist-Gleich sind im Maxima-Feld nur eingeschränkt bis gar &#039;&#039;&#039;nicht verwendbar&#039;&#039;&#039;, da sie vom Parser nicht unterstützt werden.&lt;br /&gt;
* &#039;&#039;&#039;Mengen von Maxima&#039;&#039;&#039; sind in LeTTo n&#039;&#039;&#039;icht verwendbar&#039;&#039;&#039;. LeTTo verwender hierzu eigene Funktionen des Parsers welche mit &amp;quot;set&amp;quot; beginnen und auf Vektoren basieren.&lt;br /&gt;
&lt;br /&gt;
=Berechnung mit dem internen Parser=&lt;br /&gt;
* Der interne Parser kann durch Wahl der Checkbox &amp;quot;Parser&amp;quot; anstatt von Maxima für die Berechnung des Maxima-Feldes verwendet werden. &lt;br /&gt;
* Jedenfalls wird der Parser zur Test-Laufzeit für die Berechnung des Ergebnisses einer Frage aus Lösung und Datensätzen und zum Berechnen der Schülereingabe verwendet.&lt;br /&gt;
&lt;br /&gt;
==Operatoren==&lt;br /&gt;
=== VORSICHT mit MAXIMA ===&lt;br /&gt;
* Einige Operatoren sind in &#039;&#039;&#039;Maxima anders&#039;&#039;&#039;, oder &#039;&#039;&#039;nicht definiert&#039;&#039;&#039;. Möchte man im Maximafeld die Operatoren des Parsers-verwenden, so muss das gesamte Maxima-Feld &#039;&#039;&#039;mit dem Parser gerechnet&#039;&#039;&#039; werden. Man verliert dadurch jedoch die Vorteile der Maxima-Berechnung.&lt;br /&gt;
* Alternativ kann man statt der Operatoren auch &#039;&#039;&#039;Funktionen verwenden&#039;&#039;&#039; (zB: ne() statt != ). Diese werden dann von Maxima zwar nicht ausgewertet, die Berechnung bleibt aber trotzdem korrekt und kann mit Maxima durchgeführt werden.&lt;br /&gt;
* Es gibt einige Funktionen welche in &#039;&#039;&#039;Maxima existieren&#039;&#039;&#039; aber im &#039;&#039;&#039;Parser nicht, oder mit anderem Syntax&#039;&#039;&#039;.&lt;br /&gt;
** Wenn diese von Maxima nicht ausgewertet werden können, da sie &#039;&#039;&#039;Datensätze&#039;&#039;&#039; enthalten welche zu Auswertezeitpunkt von Maxima noch &#039;&#039;&#039;nicht mit Werten belegt&#039;&#039;&#039; sind, &#039;&#039;&#039;dürfen sie in der Berechnung nicht verwendet werden&#039;&#039;&#039;, da der Parser dann damit nichts anfangen kann.&lt;br /&gt;
** Solche Funktionen haben entweder im Parser eine alternative Schreibweise welche auch mit Maxima verwendet werden kann (z.B.: wenn), oder sie können prinzipell nicht verwendet werden. (Für wichtige Funktionsweisen könnte man in zukünftigen Versionen neue Funktionalitäten in den Parser einbauen, die die gewünschte Funktion erfüllen)&lt;br /&gt;
** Ein weiter Möglichkeit für die Verwendung solcher Funktionen ist der Verzicht auf Datensätze in diesen Funktionen, damit diese Funktion beim Auswerten des Maxima-Feldes bereits ausgewertet werden kann und somit der Parser davon nichts mehr sieht.&lt;br /&gt;
** zB:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
if then&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Infix Operatoren===&lt;br /&gt;
====arithmetische Operatoren====&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Operator || Priorität || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| + || 40 || Addition || 4+5 || 9 &lt;br /&gt;
|-&lt;br /&gt;
| - || 40 || Subtraktion || 6-2 || 4&lt;br /&gt;
|-&lt;br /&gt;
| * || 50 || Multiplikation || 4*5 || 20&lt;br /&gt;
|-&lt;br /&gt;
| / || 51 || Division || 20/4 || 5&lt;br /&gt;
|-&lt;br /&gt;
| % || 51 || Divisionsrest || 104%20 || 4&lt;br /&gt;
|-&lt;br /&gt;
| / / || 60 || Parallelschaltung || x / / y || x*y/(x+y)&lt;br /&gt;
|-&lt;br /&gt;
| ^ || 90 || Potenz || 2^3 || 8&lt;br /&gt;
|-&lt;br /&gt;
| .*. || 200 || Operator der intern für eine fehlende bindende Multiplikation verwendet wird || 4x || 4*x&lt;br /&gt;
|-&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
====Bitoperatoren====&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Operator || Priorität || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
||  |  || 20 || Bitweise oder logisches ODER ||| 9|5 &amp;lt;br&amp;gt; true|false || 13 &amp;lt;br&amp;gt;true&lt;br /&gt;
|-&lt;br /&gt;
| or || 20 || Bitweise oder logisches ODER || 9 or 5 || 13&lt;br /&gt;
|-&lt;br /&gt;
| &amp;amp;  || 21 || Bitweise oder logisches UND  || 13&amp;amp;10 || 8&lt;br /&gt;
|-&lt;br /&gt;
| and || 21 || Bitweise oder logisches UND  || 13 and 10 || 8&lt;br /&gt;
|-&lt;br /&gt;
| xor || 22 || Bitweise oder logisches exklusiv oder XOR  || 13 xor 10 || 7&lt;br /&gt;
|-&lt;br /&gt;
| imp || 23 || Bitweise oder logisches impliziert IMP || 13 imp 10 || 8&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;&amp;lt;  || 35 || Bitweise links schieben  || 5&amp;lt;&amp;lt;2 || 20&lt;br /&gt;
|-&lt;br /&gt;
| &amp;gt;&amp;gt;  || 35 || Bitweise rechts schieben || 8&amp;gt;&amp;gt;2 || 2&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
====Vergleichsoperatoren====&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Operator || Priorität || Beschreibung || Beispiel&lt;br /&gt;
|-&lt;br /&gt;
| =  || 3 || Gleichungsoperator || x=y&lt;br /&gt;
|-&lt;br /&gt;
| == || 30 || Gleichungsoperator || x==y&lt;br /&gt;
|-&lt;br /&gt;
| != || 30 || Ungleichungsoperator || x!=y&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt; || 32 || Kleiner || x&amp;lt;y&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;= || 32 || Kleiner gleich || x&amp;lt;=y&lt;br /&gt;
|-&lt;br /&gt;
| &amp;gt; || 32 || größer || x&amp;gt;y&lt;br /&gt;
|-&lt;br /&gt;
| &amp;gt;= || 32 || größer gleich || x&amp;gt;=y&lt;br /&gt;
|}&lt;br /&gt;
====Organisative Operatoren====&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Operator || Priorität || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| , || 0 || Listen-Trennzeichen || x,y ||&lt;br /&gt;
|-&lt;br /&gt;
| $ || 1 || Trennzeichen zwischen mehreren Berechnungen || ||&lt;br /&gt;
|-&lt;br /&gt;
| ; || 1 || Trennzeichen zwischen mehreren Berechnungen || ||&lt;br /&gt;
|-&lt;br /&gt;
| : || 2 || Zuweisung an eine Variablen auf der linken Seite || x:5 || &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Prefix Operatoren===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Operator || Priorität || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| + || 45 || positives Vorzeichen || +5 || 5&lt;br /&gt;
|-&lt;br /&gt;
| - || 45 || negatives Vorzeichen || -(-5) || 5&lt;br /&gt;
|-&lt;br /&gt;
| ~ || 95  || bitweise Inversion einer 64bit-Ganzzahl || ~0x0F0F || 0xFFFFFFFFFFFFF0F0&lt;br /&gt;
|-&lt;br /&gt;
| ! || 120 || logisches NOT || !(3&amp;lt;4) || false&lt;br /&gt;
|-&lt;br /&gt;
| ++ || 130 || Inkrement von Ganzzahlen || ++x || erhöht x um eins und gibt das Ergebnis nach der Erhöhung zurück&lt;br /&gt;
|-&lt;br /&gt;
| -- || 130 || Dekrement von Ganzzahlen || --x || vermindert x um eins und gibt das Ergebnis nach der Verminderung zurück&lt;br /&gt;
|-&lt;br /&gt;
| % || 200 || Prefix für Namen, welche als Konstante definiert sind || %pi || 3.141592653589793&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Suffix Operatoren===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Operator || Priorität || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| ++ || 135 || Inkrement von Ganzzahlen || x++ || erhöht x um eins und gibt den Variablenwert vor der Erhöhung zurück&lt;br /&gt;
|-&lt;br /&gt;
| -- || 135 || Dekrement von Ganzzahlen || x-- || vermindert x um eins und gibt den Variablenwert vor der Verminderung zurück&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==Klammern==&lt;br /&gt;
* () runde Klammern werden für mathematische Ausdrücke zur Klammerung verwendet&lt;br /&gt;
* {} geschwungene Klammer werden im Angabetext für die Namen der Datensätze verwendet&lt;br /&gt;
* [] eckige Klammern werden für Vektoren und Matrizen verwendet&lt;br /&gt;
&lt;br /&gt;
==Funktionen==&lt;br /&gt;
===Funktionen für Ganzzahlen===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| band || bitweises UND || band(4,12) || 4&lt;br /&gt;
|-&lt;br /&gt;
| bor  || bitweises ODER || bor(4,1) || 5&lt;br /&gt;
|-&lt;br /&gt;
| bxor || bitweises EXKLUSIV ODER || band(4,5) || 1&lt;br /&gt;
|-&lt;br /&gt;
| bimp || bitweises Parameter1 impliziert Parameter2 || bimp(13,10) || 8&lt;br /&gt;
|-&lt;br /&gt;
| binv || bitweises NICHT mit 8 bit || binv(0x0F) || 0xF0&lt;br /&gt;
|-&lt;br /&gt;
| shl || Schiebe Ganzzahl bitweise nach links || shl(8,2) || 32&lt;br /&gt;
|-&lt;br /&gt;
| shr || Schiebe Ganzzahl bitweise nach rechts || shr(8,2) || 2&lt;br /&gt;
|-&lt;br /&gt;
| div || Ganzzahldivision, Ergebnis wird abgeschnitten || div(5,2) || 2&lt;br /&gt;
|-&lt;br /&gt;
| inv8  || bitweise Invertieren und die letzten 8 Bit bestimmen  || inv8(0b1001) || 0b11110110&lt;br /&gt;
|-&lt;br /&gt;
| inv16 || bitweise Invertieren und die letzten 16 Bit bestimmen || inv16(0xF0)  || 0xFF0F&lt;br /&gt;
|-&lt;br /&gt;
| inv32 || bitweise Invertieren und die letzten 32 Bit bestimmen || inv32(0xF0)  || 0bFFFFFF0F&lt;br /&gt;
|-&lt;br /&gt;
| inv64 || bitweise Invertieren und die letzten 64 Bit bestimmen || inv64(0xF0)  || 0bFFFFFFFFFFFFFF0F&lt;br /&gt;
|-&lt;br /&gt;
| byte  || Zahl in eine Ganzzahl wandeln und die letzten 8bit der Zahl Abschneiden, Einheit geht verloren  || byte(34.2) || 34&lt;br /&gt;
|-&lt;br /&gt;
| word  || Zahl in eine Ganzzahl wandeln und die letzten 16bit der Zahl Abschneiden, Einheit geht verloren || word(34.2) || 34&lt;br /&gt;
|-&lt;br /&gt;
| int   || Zahl in eine Ganzzahl wandeln und die letzten 32bit der Zahl Abschneiden, Einheit geht verloren || int(34.2) || 34&lt;br /&gt;
|-&lt;br /&gt;
| long  || Zahl in eine Ganzzahl wandeln , Einheit geht verloren || long(34.2) || 34&lt;br /&gt;
|-&lt;br /&gt;
| [[parity]]  || Paritätsberechnung : parity(Parität,Codewortlänge,Datenwort[,Datenwort,....]) || parity(even,7,&amp;quot;xy&amp;quot;) || &lt;br /&gt;
|-&lt;br /&gt;
| [[blockparity]]  || Kreuz oder Blockparität : blockparity(Parität,Codewortlänge,Codewortanzahl,Datenwort[,Datenwort,....]) || blockparity(even,7,3,&amp;quot;abc&amp;quot;) || &lt;br /&gt;
|-&lt;br /&gt;
| [[bcd]]  || Wandelt in eine Long-Zahl in ein Feld aus BCD-kodierten Zahlen um || bcd(124) || [1,2,4]&lt;br /&gt;
|-&lt;br /&gt;
| [[code]] || Code aus mehreren Codeworten zusammensetzen : code(Codewortlänge,Datenwort[,Datenwort,....]) || code(5,4,3,5) || 0b1000001100101&lt;br /&gt;
|-&lt;br /&gt;
| [[hamming]] || Bestimmt den Hamming-Abstand von mehreren Codeworten || hamming(1,2,4,8,16) || 2&lt;br /&gt;
|-&lt;br /&gt;
| [[komplement]] ||  Bildet das Zweierkomplement mit einer negativen Zahl mit einer bestimmten Bitanzahl, fehlt die Bitanzahl, so wird ein 32Bit-2er-komplement gebildet || komplement(-5,8) || 0b11111011&lt;br /&gt;
|-&lt;br /&gt;
| [[bitstream]] || Erzeugt aus einer Ganzzahl einen Bitstrom als String mit einer definierten Anzahl von Bit (MSB werden nötigenfalls mit 0 gefüllt) : bitstream(Daten,Bitanzahl) || bitstream(0x184,12) || &amp;quot;000110000100&amp;quot;&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Funktionen für rationale und Ganzzahlen===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| kgV || berechnet das kleinste gemeinsame Vielfache von mehreren Zahlen || kgV(3,10) || 30&lt;br /&gt;
|-&lt;br /&gt;
| ggT || berechnet den größten gemeinsamen Teiler von mehreren Zahlen || ggT(12,10) || 2&lt;br /&gt;
|- &lt;br /&gt;
| isprim || prüft ob die angegebene Zahl eine Primzahl ist || isprim(13) || true&lt;br /&gt;
|-&lt;br /&gt;
| prims || zerlegt eine Ganzzahl in ihre Primfaktoren || prims(12) || [2,2,3]&lt;br /&gt;
|-&lt;br /&gt;
| defracmix || zerlegt eine rationale Zahl in einen gemischten Bruch aus ganzzahligem Summanden, Zähler und Nenner als Menge&amp;lt;br&amp;gt;Die erhaltene Menge kann mit dem Format-Modfier &#039;&#039;&#039;frac&#039;&#039;&#039; als gemischter Bruch dargestellt werden (siehe [[Zahlendarstellung]]) || defracmix(14/12)&amp;lt;br&amp;gt;defracmix(-15/12)&amp;lt;br&amp;gt;defracmix(3/12) || [1,2/12]&amp;lt;br&amp;gt;[-1,3,12]&amp;lt;br&amp;gt;[0,3,12] &lt;br /&gt;
|-&lt;br /&gt;
| defrac || zerlegt eine rationale Zahl in Zähler und Nenner als Menge &amp;lt;br&amp;gt;Die erhaltene Menge kann mit dem Format-Modfier &#039;&#039;&#039;frac&#039;&#039;&#039; als gemischter Bruch dargestellt werden || defrac(14/12) || [13,12]&lt;br /&gt;
|-&lt;br /&gt;
| frac || erzeugt aus einer Menge aus 2 oder 3 Elementen (von defrac) eine rationale Zahl || frac([3,7])&amp;lt;br&amp;gt;frac([1,2,3]) || 3/7 &amp;lt;br&amp;gt; 5/3&lt;br /&gt;
|-&lt;br /&gt;
| mod || Modulo: Divisionsrest einer Division mit ganzzahligem Ergebnis || mod(5,2) &amp;lt;br&amp;gt; mod(6.2,2.5) || 1&amp;lt;br&amp;gt;1.2&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===boolsche Funktionen===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| eq || gleich || eq(4,4) || true&lt;br /&gt;
|-&lt;br /&gt;
| eqruntime || symbolischer Vergleich, welcher &#039;&#039;&#039;symbolisch erst bei der Ergebnisberechnung&#039;&#039;&#039; ausgeführt wird. Muss verwendet werden, wenn bei Vergleichen symbolische Antworten von Schülern (Q0,Q1,...) verwendet werden.  || eqruntime(x+3*y,3*y+x) || true&lt;br /&gt;
|-&lt;br /&gt;
| ne || ungleich || ne(6,4) || true&lt;br /&gt;
|-&lt;br /&gt;
| ge || größer gleich || ge(6,4) || true&lt;br /&gt;
|-&lt;br /&gt;
| le || kleiner gleich || le(6,4) || false&lt;br /&gt;
|-&lt;br /&gt;
| gt || größer || gt(6,4) || true&lt;br /&gt;
|-&lt;br /&gt;
| lt || kleiner || lt(6,4) || false&lt;br /&gt;
|-&lt;br /&gt;
| between || prüft ob Parameter1 kleiner als Parameter2 und Parameter2 kleiner als Parameter 3 || between(3,4,5) || true&lt;br /&gt;
|-&lt;br /&gt;
| land || logisches UND || land(a&amp;lt;b,b&amp;lt;c) || &lt;br /&gt;
|-&lt;br /&gt;
| lor  || logisches ODER || lor(a&amp;lt;b,b&amp;lt;c) || &lt;br /&gt;
|-&lt;br /&gt;
| not  || logisches NICHT. Vorsicht ein symbolisches Ergebnis von Maxima liefert not als Prefix-Operator, welcher vom Parser nicht unterstützt wird ( Verwende statt dessen &#039;&#039;&#039;lnot&#039;&#039;&#039; ) || not(a&amp;lt;b) || &lt;br /&gt;
|-&lt;br /&gt;
| lnot  || logisches NICHT, wie not jedoch wird es von Maxima nicht ausgewertet || lnot(a&amp;lt;b) || &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===arithmetische Funktionen===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| double || Zahl ein eine Gleitkommazahl umwandeln, die Einheit geht dabei verloren || double(3.4V) || 3.4&lt;br /&gt;
|-&lt;br /&gt;
| numeric || verwirft die Einheit, wenn eine vorhanden ist und liefert nur den Zahlenwert || numeric(2.3mA) &amp;lt;br&amp;gt; numeric(5%)|| 0.0023 &amp;lt;br&amp;gt; 5&lt;br /&gt;
|-&lt;br /&gt;
| unit || gibt die SI-Einheit mit dem Zahlenwert 1 zurück || unit(3.1kA) &amp;lt;br&amp;gt; unit(5%) || 1A &amp;lt;br&amp;gt; 1%&lt;br /&gt;
|-&lt;br /&gt;
| cround  || Rundet die Zahl kaufmännisch, der zweite Parameter gibt die Anzahl der Kommastellen an, ohne 2.Parameter wird auf Ganzzahlen gerundet, bei komplexen Zahlen wird Betrag und Winkel in Grad gerundet. || cround(23.535,2)&amp;lt;br&amp;gt;cround(2.435arg34.5364°,1) || 23.54&amp;lt;br&amp;gt;2.4arg34.5°&lt;br /&gt;
|-&lt;br /&gt;
| ccround  || Rundet die Zahl kaufmännisch, der zweite Parameter gibt die Anzahl der Kommastellen an, bei komplexe Zahlen wird Real und Imaginärteil gerundet. || ccround(2.4534+5.645*%i,2) || 2.45+5.65i&lt;br /&gt;
|-&lt;br /&gt;
| round  || Rundet die Zahl kaufmännisch, aus Kompatibilitätsgründen zu Maxima hat round nur einen Parameter || round(23.535) || 24&lt;br /&gt;
|-&lt;br /&gt;
| ground || Rundet die Zahl auf die im zweiten Parameter angegebenen gültigen Ziffern || ground(2453.43,2) || 2500&lt;br /&gt;
|-&lt;br /&gt;
| floor  || Rundet auf die größte ganze Zahl, welche kleiner oder gleich x ist || floor(24.5) || 24&lt;br /&gt;
|-&lt;br /&gt;
| trunc  || Schneidet die Zahl nach dem Komma ab || trunc(24.5) || 24&lt;br /&gt;
|-&lt;br /&gt;
| ceiling || ceiling(x) Rundet auf die kleinste ganze Zahl, welche größer oder gleich x ist || ceiling(13.2) || 14&lt;br /&gt;
|-&lt;br /&gt;
| pow || Potenzfunktion || pow(2,3) || 8&lt;br /&gt;
|-&lt;br /&gt;
| par || Parallelschaltung von Widerständen || par(x,y) || x*y/(x+y)&lt;br /&gt;
|-&lt;br /&gt;
| min  || Minimum von mehrere Werten suchen || min(3,5,1) || 1&lt;br /&gt;
|-&lt;br /&gt;
| max  || Maximum von mehreren Werten suchen || max(3,5,1) ||  5&lt;br /&gt;
|-&lt;br /&gt;
| random  || Zufallszahl aus einem definierten Zahlenbereich random(minimal,maximal)&amp;lt;br&amp;gt;VORSICHT! Die Zufallszahl wird bei jedem Aufruf neu berechnet, weshalb sich der Wert bei jedem Anzeigevorgang einer Frage ändert. Sollte sich der berechnete Wert für eine Schülerangabe zwischen Fragestellung und Ergebniskontrolle nicht ändern dürfen (ist der Normalfall) muss man einen &#039;&#039;&#039;Datensatz statt einer Zufallszahl&#039;&#039;&#039; verwenden! &amp;lt;br&amp;gt; Zufallszahlen haben in der Ergebnisberechnung keinen Sinn, und sollten maximal für angezeigte zufällige Werte verwendet werden! || random(2,8) ||  3.4532&lt;br /&gt;
|-&lt;br /&gt;
| randomC  || komplexe Zufallszahl aus einem definierten Zahlenbereich für den Betrag&amp;lt;br&amp;gt;VORSICHT! Die Zufallszahl wird bei jedem Aufruf neu berechnet!  || randomC(2,8) ||  3.4532arg40.3°&lt;br /&gt;
|-&lt;br /&gt;
| signum  || Liefert das Vorzeichen einer Zahl (-1,0,1). Bei einer komplexen Zahl das Vorzeichen des Realteils. || signum(-4) || -1&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Maxima-basierte Funktionen ===&lt;br /&gt;
* Diese Funktionen funktionieren nur wenn Maxima installiert ist und werden immer an Maxima gesendet, auch wenn der interne Parser aktiviert ist.&lt;br /&gt;
* Weiters werden sie bei der Ausgabe als TeX-Formel auch korrekt mit LaTeX gesetzt.&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| integrate || Berechnet das unbestimmte oder bestimmte Integral einer Funktion. || integrate(x^2,x) &amp;lt;br&amp;gt; integrate(x^2,x,0,2) || x^3/3 &amp;lt;br&amp;gt; 8/3  &lt;br /&gt;
|-&lt;br /&gt;
| diff || Berechnet die Ableitung einer Funktion.  || diff(x^2,x)&amp;lt;br&amp;gt;diff(3*x^2,x,2) || x &amp;lt;br&amp;gt; 6&lt;br /&gt;
|-&lt;br /&gt;
| tomaxima || Führt die Berechnung aller Parameter von links nach rechts hintereinander mit Maxima aus. Das Ergebnis ist dann das Ergebnis des letzten Parameters. || tomaxima(y:x^2,y+2) || x^2+2&lt;br /&gt;
|-&lt;br /&gt;
| laplace || Bestimmt die Laplace-Transformierte einer Funktion. || laplace(sin(t),t,s) || 1/(1+s^2)&lt;br /&gt;
|-&lt;br /&gt;
| ilt || Bestimmt die inverse Laplace-Transformierte eine Laplace-Funktion || ilt(1/(1+s),s,t) || e^(-t)&lt;br /&gt;
|-&lt;br /&gt;
| sum || Summenbildung || sum(1/k,k,1,2) || 3/2&lt;br /&gt;
|-&lt;br /&gt;
| product || Produktbildung || product(1/k,k,1,3) || 1/6&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===erweiterte arithmetische Funktionen===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| sigma || Sprungfunktion: sigma(x) liefert 0 für x&amp;lt;0 und 1 für x&amp;gt;=0 || sigma(243.3) || 1&lt;br /&gt;
|-&lt;br /&gt;
| pulse || Rechteckfunktion: &amp;lt;br&amp;gt;pulse(x,x0) ist gleich 1 für x0 &amp;lt; x &amp;lt; x0 + 1, sonst 0&amp;lt;br&amp;gt;pulse(x,x0,L) ist gleich 1 für x0 &amp;lt; x &amp;lt; x0 + L, sonst 0&amp;lt;br&amp;gt;[[Datei:pulse.png|300px]] || pulse(x,2,4) || [[Datei:pulse_x_2_4.png|100px]]&lt;br /&gt;
|-&lt;br /&gt;
| interpol || Interpolationsfunktion zwischen mehreren Stützpunkten in einem Koordinatensystem. &amp;lt;br&amp;gt; interpol(WerteX,WerteY,x) || interpol([0,1,2],[0,3,3],1.5) || 3&lt;br /&gt;
|-&lt;br /&gt;
| periodic || Erzeugt aus einer beliebigen Funktion zwischen 0 und Periodendauer eine periodische Funktion &amp;lt;br&amp;gt; periodic(Variable,Periodendauer,Funktion)&amp;lt;br&amp;gt; periodic(Variable,Periodendauer,Funktionsperiodendauer,Funktion) || ch1(t):periodic(t,5ms,2&#039;Vms-2&#039;*t^2) &amp;lt;br&amp;gt; ch1(t):periodic(t,5ms,1,2V*t^2) || :[[Datei:ClipCapIt-190318-113524.PNG|100px]] &amp;lt;br&amp;gt; :[[Datei:ClipCapIt-190318-113644.PNG|100px]]&lt;br /&gt;
|-&lt;br /&gt;
| numint || numerische Integration &amp;lt;br&amp;gt; numint(untereGrenze,obereGrenze,funktion,Variable)&amp;lt;br&amp;gt; numint(untereGrenze,obereGrenze,funktion,Variable,punkteAnzahl) || numint(0,2pi,sin(t),t) || 0&lt;br /&gt;
|-&lt;br /&gt;
| numdif || numerisches Differenzieren einer Funktion &amp;quot;funktion&amp;quot; nach einer Variablen &amp;quot;Variable&amp;quot; an der Stelle &amp;quot;position&amp;quot; mit einer Differenz der Variablen von &amp;quot;differenz&amp;quot; &amp;lt;br&amp;gt; numdif(position,funktion,Variable,differenz) || numdif(0,sin(t),t,0.01) || 1&lt;br /&gt;
|-&lt;br /&gt;
| solve || löst eine Gleichung oder ein Gleichungssystem nach einer oder mehrerer Variablen || solve([2*x+y=3,x-y=0],[x,y]) || [ [ x=1,y=1 ] ]&lt;br /&gt;
|-&lt;br /&gt;
| solvevalue || löst eine Gleichung oder ein Gleichungssystem nach einer Variablen und liefert genau die erste Lösung wenn sie numerisch berechenbar ist || solvevalue([ 2*x+y=3,x-y=0 ],[ x,y ],x)  || 1&lt;br /&gt;
|-&lt;br /&gt;
| newton || Bestimmt eine Nullstelle einer Funktion nach dem Newton-Verfahren. Der erste Parameter ist ein Ausdruck in einer Variablen, der zweite Parameter ist der Startwert. || newton(x^2-4,4) || 2&lt;br /&gt;
|-&lt;br /&gt;
| cnewton || Bestimmt eine komplexe Nullstelle einer Funktion nach dem Newton-Verfahren. Der erste Parameter ist ein Ausdruck in einer Variablen, der zweite Parameter ist der komplexe Startwert. || newton(x^2+4,4) || 2*%i&lt;br /&gt;
|-&lt;br /&gt;
| newtonall || Bestimmt alle Nullstellen einer Funktion mit einem Betrag des Funktionsparameters kleiner als ein definierter Wert nach dem Newton-Verfahren. Der erste Parameter ist ein Ausdruck in einer Variablen, der zweite Parameter ist der maximale Betrag des Funktionsparameters. Das Ergebnis ist immer ein Vektor mit den nach aufsteigendem Funktionswert sortierten Nullstellen. || newton(x^2-4,4) || [-2,2]&lt;br /&gt;
|-&lt;br /&gt;
| cnewtonall || Bestimmt alle komplexen Nullstellen einer Funktion mit einem Betrag des Funktionsparameters kleiner als ein definierter Wert nach dem Newton-Verfahren. Der erste Parameter ist ein Ausdruck in einer Variablen, der zweite Parameter ist der maximale Betrag des Funktionsparameters. Das Ergebnis ist immer ein Vektor mit den Nullstellen. || newton(x^2+4,4) || [-2*%i,2*%i]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Stringfunktionen===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| dechex || Zahl in eine Ganzzahl wandeln und als Hexadezimal-String ausgeben || dexhex(12) || &amp;quot;0xC&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| chr || Bestimmt die Zeichen mit dem ASC-II-Code der Long-Parameter und setzt daraus einen String zusammen. || chr(0x65,105) || &amp;quot;ei&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| val || Bestimmt den ASC-II-Code des ersten Zeichens welches als String-Parameter übergeben wurde.|| val(&amp;quot;a&amp;quot;) || 97&lt;br /&gt;
|-&lt;br /&gt;
| strcat || Fügt mehrere Strings zusammen.|| strcat(&amp;quot;a&amp;quot;,&amp;quot;b&amp;quot;) || &amp;quot;ab&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===trigonometrische Funktionen===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| sin || Sinus || sin(%pi/2) || 1&lt;br /&gt;
|-&lt;br /&gt;
| cos || Cosinus || cos(%pi/2) || 0&lt;br /&gt;
|-&lt;br /&gt;
| tan || Tangens || tan(%pi/4) || 1&lt;br /&gt;
|-&lt;br /&gt;
| asin || Arcus-Sinus || asin(1) || %pi/2&lt;br /&gt;
|-&lt;br /&gt;
| arcsin || Arcus-Sinus || asin(1) || %pi/2&lt;br /&gt;
|-&lt;br /&gt;
| acos || Arcus-Cosinus || acos(1) || 0&lt;br /&gt;
|-&lt;br /&gt;
| arccos || Arcus-Cosinus || acos(1) || 0&lt;br /&gt;
|-&lt;br /&gt;
| atan || Arcus-Tangens || atan(1) || %pi/4&lt;br /&gt;
|-&lt;br /&gt;
| arctan || Arcus-Tangens || arctan(1) || %pi/4&lt;br /&gt;
|-&lt;br /&gt;
| atan2 || Arcus-Tangens atan2(y,x)=arctan(y/x) || atan2(-2,-2) || -%pi*3/4&lt;br /&gt;
|-&lt;br /&gt;
| arctan2 || Arcus-Tangens arctan2(y,x)=arctan(y/x) || arctan2(-2,-2) || -%pi*3/4&lt;br /&gt;
|-&lt;br /&gt;
| sinh || Sinus-Hyperbolicus || sinh(1) || 1.1752012&lt;br /&gt;
|-&lt;br /&gt;
| cosh || Cosinus-Hyperbolicus || cosh(1) || 1.5430806&lt;br /&gt;
|-&lt;br /&gt;
| tanh || Tangens-Hyperbolicus || tanh(1) || 0.7615941&lt;br /&gt;
|-&lt;br /&gt;
| coth || Cotangens-Hyperbolicus || coth(1) || 1.313035&lt;br /&gt;
|-&lt;br /&gt;
| asinh || Area-Sinus-Hyperbolicus || asinh(1.1752012) || 1&lt;br /&gt;
|-&lt;br /&gt;
| acosh || Area-Cosinus-Hyperbolicus || acosh(1.5430806) || 1&lt;br /&gt;
|-&lt;br /&gt;
| atanh || Area-Tangens-Hyperbolicus || atanh(0.7615941) || 1&lt;br /&gt;
|-&lt;br /&gt;
| acoth || Area-Cotangens-Hyperbolicus || acoth(1.313035) || 1&lt;br /&gt;
|-&lt;br /&gt;
| [[csin]] || Erzeugt aus einer komplexen Zahl (Effektivwert) und einer Frequenz einen Sinusfunktion in der Zeit || csin(U) || sqrt(2)*cabs(U)*sin(2*pi*f*t+carg(U))&lt;br /&gt;
|-&lt;br /&gt;
| [[quadrant]] || Liefert den Quadranten eines Winkels mit einer Toleranzangabe. || quadrant(20°,5°) || 1&lt;br /&gt;
|-&lt;br /&gt;
| argnorm || Wandelt einen Winkel auf den Bereich von 0°-360° || argnorm(-50°) || 310°&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Exponentialfunktionen===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| pow || Potenzfunktion || pow(2,3) || 8&lt;br /&gt;
|-&lt;br /&gt;
| exp|| Exponentialfunktion || exp(1) || %e&lt;br /&gt;
|-&lt;br /&gt;
| log || natürlicher Logarythmus || log(%e) || 1&lt;br /&gt;
|-&lt;br /&gt;
| ln || natürlicher Logarythmus || ln(%e) || 1&lt;br /&gt;
|-&lt;br /&gt;
| log10 || Logarythmus zur Basis 10 || log10(100) || 2&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===komplexe Zahlen===&lt;br /&gt;
Die Funktionen zu komplexen Zahlen werden (anders als in Maxima) nur ausgewertet wenn das Ergebnis numerisch berechenbar ist, ansonsten bleibt die Funktion symbolisch erhalten.&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| abs || Liefert den Absolutbetrag einer komplexen Zahl || abs(3+4*%i) || 5&lt;br /&gt;
|-&lt;br /&gt;
| cabs || Liefert den Absolutbetrag einer komplexen Zahl || cabs(3+4*%i) || 5&lt;br /&gt;
|-&lt;br /&gt;
| carg || Liefert das Argument einer komplexen Zahl || carg(4*%e^(3*%i)) || 3&lt;br /&gt;
|-&lt;br /&gt;
| realpart || Liefert den Realteil einer komplexen Zahl || realpart(3+4*%i) || 3&lt;br /&gt;
|-&lt;br /&gt;
| imagpart || Liefert den Imaginärteil einer komplexen Zahl || imagpart(3+4*%i) || 4&lt;br /&gt;
|-&lt;br /&gt;
| conjugate || Liefert die konjugiert komplexe Zahl einer komplexen Zahl || conjugate(3+4*%i) || 3-4*%i&lt;br /&gt;
|-&lt;br /&gt;
| rectform || hat in LeTTo keine Relevanz, da die Zahlendarstellung bei der Ausgabe definiert wird wie zB.: {=3arg2;karti} ||  || &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===statistische Funktionen===&lt;br /&gt;
Die Funktionen funktionieren nur ohne Einheiten.&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| factorial || Liefert die Fakultät einer positiven ganzen Zahl || factorial(5) || 120&lt;br /&gt;
|-&lt;br /&gt;
| binomial || Liefert den Binomialkoeffizienten von zwei positiven ganzen Zahlen || binomial(5,2) || 10&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Mengen-Funktionen===&lt;br /&gt;
Mengen werden intern als Vektoren verarbeitet und sind deshalb auch direkt durch Vektoren ersetzbar. Auch alle Vektor-Funktionen sind somit auch auf Mengen anwendbar und umgekehrt.&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis || ab Rev&lt;br /&gt;
|-&lt;br /&gt;
| setget || Liefert ein Element einer Menge oder einer Matrix (Menge von Mengen) || setget([12,13,14],1) &amp;lt;br&amp;gt; setget(matrix([9,2],[3,4]),0,1) || 13 &amp;lt;br&amp;gt; 2 &lt;br /&gt;
|-&lt;br /&gt;
| setset || setzt ein Element einer Menge oder einer Matrix (Menge von Mengen) || setset([12,13,14],1,35) &amp;lt;br&amp;gt; setset(matrix([9,2],[3,4]),0,0,-9) || [12,35,14] &amp;lt;br&amp;gt; [[-9,2],[3,4]]&lt;br /&gt;
|-&lt;br /&gt;
| setinsert || fügt ein Element in eine Menge an eine gegebene Stelle ein || setinsert([12,13,14],1,25) || [12,25,13,14]&lt;br /&gt;
|-&lt;br /&gt;
| setremove || löscht ein Element einer Menge || setremove([12,13,14],1) || [12,14]&lt;br /&gt;
|-&lt;br /&gt;
| setapply || wendet einen Ausdruck oder Funktion auf alle Elemente einer Menge an || setapply(y,[1,2,3],y*2) || [2,4,6] || 5965&lt;br /&gt;
|-&lt;br /&gt;
| setmedian || Liefert den Median einer Menge || setmedian([4,3,1,5,6]) || 4&lt;br /&gt;
|-&lt;br /&gt;
| setboxplot || Liefert die Werte des Boxplot einer Menge (Minimum, unteres Quartil, Median, oberes Quartil, Maximum) als Vektor verwendbar für das [[Plot#definierte_Zeichenelemente|Plot-Plugin]] || setboxplot([1,2,3,10,8,9]) || [1,2,5.5,9,10]&lt;br /&gt;
|-&lt;br /&gt;
| setsort || Sortiert die Elemente einer Menge aufsteigend || setsort([3,-3,2,0,5,2]) || [-3,0,2,2,3,5]&lt;br /&gt;
|-&lt;br /&gt;
| setsortnd || Sortiert die Elemente einer Menge aufsteigend und entfernt alle mehrfach vorkommenden Elemente || setsortnd([31,-3,2,31,0,5,2]) || [-3,0,2,5,31]&lt;br /&gt;
|-&lt;br /&gt;
| setcount || Bestimmt die Anzahl wie oft ein Element in einer Menge vorkommt oder die Anzahl der Elemente der Menge || setcount([31,-3,2,31,0,5,2],31) &amp;lt;br&amp;gt; setcount([2,5,3,6]) || 2 &amp;lt;br&amp;gt; 4&lt;br /&gt;
|-&lt;br /&gt;
| setmodus || Liefert das Element einer Menge, welches am öftesten vorkommt oder die Elemente als Menge wenn mehrere Elemente gleich oft vorkommen || setmodus([3,-3,2,0,5,2]) || 2&lt;br /&gt;
|-&lt;br /&gt;
| setreverse || Dreht die Reihenfolge einer Menge um || setreverse([3,-3,2,0,5,2]) || [2,5,0,2,-3,3]&lt;br /&gt;
|-&lt;br /&gt;
| setnd || Löscht alle Duplikate aus der Menge || setnd([3,-3,2,0,5,2]) || [3,-3,2,0,5]&lt;br /&gt;
|-&lt;br /&gt;
| setshuffle || Mischt eine  Menge in eine zufällige Reihenfolge || setshuffle([3,-3,2,0,5,2]) || [2,0,5,-3,2,3]&lt;br /&gt;
|-&lt;br /&gt;
| setmittel || Bestimmt den Mittelwert einer Menge || setmittel([1,3,2,4]) || 2.5&lt;br /&gt;
|-&lt;br /&gt;
| setgeomittel || Bestimmt das geometrische Mittelwert einer Menge aus positiven reellen Zahlen || setgeomittel([10,20,30]) || 18.171206&lt;br /&gt;
|-&lt;br /&gt;
| setvarianz || Bestimmt die empirische Varianz einer Menge || setvarianz([3,1,2,5,4]) || ((3-3)^2+(1-3)^2+(2-3)^2+(5-3)^2+(4-3)^2)/5=2&lt;br /&gt;
|-&lt;br /&gt;
| setquadratmittel || Bestimmt den quadratischen Mittelwert einer Menge || setquadratmittel([10,20,30]) || 21.6025&lt;br /&gt;
|-&lt;br /&gt;
| setsum || Bestimmt die Summe aller Werte einer Menge || setsum([1,3,2,4]) || 10&lt;br /&gt;
|-&lt;br /&gt;
| setprod || Bestimmt das Produkt aller Werte einer Menge || setprod([1,3,2,4]) || 24&lt;br /&gt;
|-&lt;br /&gt;
| setunion || Fügt mehrere Mengen zu einer neuen Menge zusammen || setunion([1,3,2,4],[3,7]) || {1,3,2,4,3,7}&lt;br /&gt;
|-&lt;br /&gt;
| setunionnd || Fügt mehrere Mengen zu einer neuen Menge zusammen, sortiert diese und entfernt alle mehrfachen Elemente || setunionnd([1,3,2,4],[3,7]) || {1,2,3,4,7}&lt;br /&gt;
|-&lt;br /&gt;
| setcut || Bildet die Schnittmenge aus mehreren Mengen || setcut([1,3,2,4],[3,7]) || {3}&lt;br /&gt;
|-&lt;br /&gt;
| setcompare || vergleicht zwei Mengen miteinander, wobei die Reihenfolge egal ist  || setcompare([1,3,2,4],[3,7]) &amp;lt;br&amp;gt; setcompare([1,3,2],[1,2,3]) &amp;lt;br&amp;gt; setcompare([1,3,2],[1,3,2,3]) &amp;lt;br&amp;gt; setcompare([1,2,3],[1,2,3])  || false &amp;lt;br&amp;gt; true &amp;lt;br&amp;gt; false &amp;lt;br&amp;gt; true&lt;br /&gt;
|-&lt;br /&gt;
| setcomparend || vergleicht zwei Mengen miteinander, wobei die Reihenfolge egal ist und doppelte Werte als einfach behandelt werden. || setcomparend([1,3,2,4],[3,7]) &amp;lt;br&amp;gt; setcomparend([1,3,2],[1,2,3]) &amp;lt;br&amp;gt; setcomparend([1,3,2],[1,3,2,3]) &amp;lt;br&amp;gt; setcomparend([1,2,3],[1,2,3])  || false &amp;lt;br&amp;gt; true &amp;lt;br&amp;gt; true &amp;lt;br&amp;gt; true&lt;br /&gt;
|-&lt;br /&gt;
| setpartof || prüft ob die erste Menge eine Teilmenge der zweite Menge ist wobei die Reihenfolge egal ist aber mehrfache Werte berücksichtigt werden  || setpartof([1,4],[1,3,7]) &amp;lt;br&amp;gt; setpartof([1,3],[1,2,3]) &amp;lt;br&amp;gt; setpartof([1,3,3],[1,3,5,7]) &amp;lt;br&amp;gt; setpartof([1,4,4],[1,2,3,4])  || false &amp;lt;br&amp;gt; true &amp;lt;br&amp;gt; false &amp;lt;br&amp;gt; false&lt;br /&gt;
|-&lt;br /&gt;
| setpartofnd || prüft ob die erste Menge eine Teilmenge der zweite Menge ist wobei die Reihenfolge und mehrfache Werte egal sind  || setpartofnd([1,4],[1,3,7]) &amp;lt;br&amp;gt; setpartofnd([1,3],[1,2,3]) &amp;lt;br&amp;gt; setpartofnd([1,3,3],[1,3,5,7]) &amp;lt;br&amp;gt; setpartofnd([1,4,4],[1,2,3,4])  || false &amp;lt;br&amp;gt; true &amp;lt;br&amp;gt; true &amp;lt;br&amp;gt; true&lt;br /&gt;
|-&lt;br /&gt;
| setgetmin || Liefert den kleinsten Wert einer Menge || setgetmin([1,3,-2,4]) || -2&lt;br /&gt;
|-&lt;br /&gt;
| setgetmax || Liefert den größten Wert einer Menge || setgetmax([1,3,-2,4]) || 4&lt;br /&gt;
|-&lt;br /&gt;
| setremovefirst || Entfernt den ersten Wert einer Menge || setremovefirst([1,3,-2,4]) || {3,-2,4}&lt;br /&gt;
|-&lt;br /&gt;
| setremovelast || Entfernt den letzten Wert einer Menge || setremovelast([1,3,-2,4]) || {1,3,-2}&lt;br /&gt;
|-&lt;br /&gt;
| setgetfirst || Liefert den ersten Wert einer Menge || setgetfirst([1,3,-2,4]) || 1&lt;br /&gt;
|-&lt;br /&gt;
| setgetlast || Liefert den letzten Wert einer Menge || setgetlast([1,3,-2,4]) || 4&lt;br /&gt;
|-&lt;br /&gt;
| setsub || setsub(M,x,y) Liefert eine Teilmenge von M der Elemente vom index x bis zum Index y || setsub([1,3,-2,4],1,2) || {3,-2}&lt;br /&gt;
|-&lt;br /&gt;
| setmakelist || setmakelist(f,x,start,stop) setzt in den Ausdruck f für x die Werte von start bis stop mit einer Schrittweite von 1 ein. || setmakelist(x^2,x,1,4) || [ 1,4,9,16 ]&lt;br /&gt;
|-&lt;br /&gt;
| || setmakelist(f,x,start,stop,schrittweite) setzt in den Ausdruck f für x die Werte von start bis stop mit dem Abstand schrittweite ein. || setmakelist(x^2,x,1,2,0.5) || [ 1,2.25,4 ]&lt;br /&gt;
|-&lt;br /&gt;
| || setmakelist(f,x,set) setzt die Werte des Vektors set in den Ausdruck f für x ein. || setmakelist(x^2,x,[3,1,2])  ||[ 9,1,4 ]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Typ-Funktionen===&lt;br /&gt;
Werden nur dann ausgewertet wenn der Parameter ein numerischer Wert oder eine Menge ist.&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| isset || Prüft ob es sich um eine Menge handelt. || isset([12,13,14]) || true &lt;br /&gt;
|-&lt;br /&gt;
| issetnumeric || Prüft ob es sich um eine Menge aus reellen Zahlen handelt. || issetnumeric([12,13.4,14]) || true &lt;br /&gt;
|-&lt;br /&gt;
| issetlong || Prüft ob es sich um eine Menge aus ganzen Zahlen handelt. || issetlong([12,13,14]) || true &lt;br /&gt;
|-&lt;br /&gt;
| islong || Prüft ob es sich um eine ganze Zahl handelt. || islong(12) || true &lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Algebra===&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;Hinweis:&#039;&#039; Die Indizes eines Vektors oder einer Matrix werden in Letto ausgehend von 0 weg gezählt.  &lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| matrix || erzeugt aus mehreren gleich langen Vektoren eine Matrix || matrix([1,2],[3,4]) || [[1,2],[3,4]]&lt;br /&gt;
|-&lt;br /&gt;
| inv || invertiert eine quadratische Matrix oder bildet 1/x || inv(matrix([1,2],[3,4])) || [[-2,1],[3/2,-1/2]]&lt;br /&gt;
|-&lt;br /&gt;
| vget || liefert ein Element eines Vektors oder einer Matrix || vget([12,13,14],1) &amp;lt;br&amp;gt; vget(matrix([9,2],[3,4]),0,1) || 13 &amp;lt;br&amp;gt; 2 &lt;br /&gt;
|-&lt;br /&gt;
| vset || setzt ein Element eines Vektors oder einer Matrix || vset([12,13,14],1,35) &amp;lt;br&amp;gt; vset(matrix([9,2],[3,4]),0,0,-9) || [12,35,14] &amp;lt;br&amp;gt; [[-9,2],[3,4]]&lt;br /&gt;
|-&lt;br /&gt;
| vinsert || fügt ein Element in einen Vektor an eine gegebene Stelle ein || vinsert([12,13,14],1,25) || [12,25,13,14]&lt;br /&gt;
|-&lt;br /&gt;
| vremove || löscht ein Element eines Vektors || vremove([12,13,14],1) || [12,14]&lt;br /&gt;
|-&lt;br /&gt;
| vabs || Berechnet den Betrag eines Vektors || vabs([3,4]) || 5&lt;br /&gt;
|-&lt;br /&gt;
| vin || Berechnet das innere Produkt von 2 Vektoren || vin([1,2,3],[4,5,6]) || 32&lt;br /&gt;
|-&lt;br /&gt;
| vex || Berechnet das ex-Produkt von 2 Vektoren im 3-dimensionalen Raum || vex([1,2,3],[4,5,6]) || [-3,6,-3]&lt;br /&gt;
|-&lt;br /&gt;
| mprod || Bildet das Matrixprodukt aus zwei Matrizen || mprod([[1,2],[3,4]],[[5,6],[7,8]]) || [[19,22],[43,50]]&lt;br /&gt;
|-&lt;br /&gt;
| mtrans || Bildet die transponierte Matrix || mtrans([[1,2],[3,4]]) || [[1,3],[2,4]]&lt;br /&gt;
|-&lt;br /&gt;
| minv || Bildet die inverse Matrix || minv([[1,2],[3,4]]) || [[-2,1],[3/2,-1/2]]&lt;br /&gt;
|-&lt;br /&gt;
| mdet || Bildet die Determinante einer quadratischen Matrix || mdet([[1,2],[3,4]]) || -2&lt;br /&gt;
|-&lt;br /&gt;
| vindex || vindex(v,x) liefert den Index des Elementes eines Vektors, welcher am nächsten bei x liegt || vindex([10,30,70],40) || 1 &lt;br /&gt;
|-&lt;br /&gt;
| vindexup || vindexup(v,x) liefert den Index des Elementes eines Vektors, welcher größer oder gleich x ist || vindexup([10,30,70],40) || 2 &lt;br /&gt;
|-&lt;br /&gt;
| vindexdown || vindexdown(v,x) liefert den Index des Elementes eines Vektors, welcher kleiner oder gleich x ist || vindexdown([10,30,70],60) || 1&lt;br /&gt;
|-&lt;br /&gt;
| verweis || verweis(M,x,n) liefert den Wert der n-ten Spalte (ohne Angabe von n die 2.Spalte) einer Matrix M wo x dem Wert in der ersten Spalte am nächsten liegt || verweis([[10,33],[20,77],[30,99]],21) || 77&lt;br /&gt;
|-&lt;br /&gt;
| verweisup || verweisup(M,x,n) liefert den Wert der n-ten Spalte (ohne Angabe von n die 2.Spalte) einer Matrix M wo x dem Wert in der ersten Spalte am nächsten liegt || verweisup([[10,33],[20,77],[30,99]],21) || 99&lt;br /&gt;
|-&lt;br /&gt;
| verweisdown || verweisdown(M,x,n) liefert den Wert der n-ten Spalte (ohne Angabe von n die 2.Spalte) einer Matrix M wo x dem Wert in der ersten Spalte am nächsten liegt || verweisdown([[10,33],[20,77],[30,99]],27,1) || 77&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Variable===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| kill || löscht Variable aus dem Variablenspeicher || kill(x,y) &amp;lt;br&amp;gt; kill(allbut(y)) &amp;lt;br&amp;gt; kill(all) || löscht die Variablen x und y &amp;lt;br&amp;gt; löscht alle Variablen mit Ausnahme von y &amp;lt;br&amp;gt; löscht alle Variable&lt;br /&gt;
|-&lt;br /&gt;
| allbut || Liefert eine Liste aller Variablen des Parsers als Menge(Vektor) mit Ausnahme der als Parameter angegebenen Variablen || allbut(x,y) || [a,b,c]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Auswertung und Programmierung===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| ev || Auswertung eines Ausdruckes, als Parameter können Gleichungen angegeben werden, welche dann in den Ausdruck eingesetzt werden || ev(x*y,y=4) || x*4&lt;br /&gt;
|-&lt;br /&gt;
| evruntime || Auswertung eines Ausdruckes, als Parameter können Gleichungen angegeben werden, welche dann in den Ausdruck eingesetzt werden. Das &#039;&#039;&#039;Einsetzen erfolgt erst bei der Ergebnisberechnung&#039;&#039;&#039;! || evruntime(x*y,y=4) || x*4&lt;br /&gt;
|-&lt;br /&gt;
| [[nv]] || Auswertung eines Ausdruckes, als Parameter können Gleichungen angegeben werden, welche dann in den Ausdruck eingesetzt werden. Im Gegensatz zu ev werden bestehende Variable nur in den Gleichungen, aber nicht im Ausdruck selbst eingesetzt! || nv(x*y,y=4) || x*4&lt;br /&gt;
|-&lt;br /&gt;
| [[if]] || Bedingungsfunktion if(bedingung,wahrwert,falschwert) || if(4&amp;lt;6,10,12) || 10&lt;br /&gt;
|-&lt;br /&gt;
| [[if|wenn]] || Bedingungsfunktion wenn(bedingung,wahrwert,falschwert). Im Prinzip identisch wie if, jedoch kann if mit Maxima nicht verwendet werden. || wenn(4&amp;lt;6,10,12) || 10&lt;br /&gt;
|-&lt;br /&gt;
| plugin || Ruft die Berechnungsmethode des Plugins, welches als erster Stringparameter angegeben werden muss auf und übergibt die weiteren Parameter an die Berechnungsmethode des Plugins.  || plugin(&amp;quot;plugin1&amp;quot;,3) || führt die Berechnung des Plugins mit dem Namen &amp;quot;plugin1&amp;quot; mit dem Parameter 3 aus. &lt;br /&gt;
|-&lt;br /&gt;
| symbolic || Bei allen Variablen innerhalb von symbolic werden nur nicht-numerische Werte eingesetzt! Wird vor allem im Angabtext bei {= } verwendet || symbolic(x^2+2) || x^2+2&lt;br /&gt;
|-&lt;br /&gt;
| runtime || Bei dieser Funktion wird &#039;&#039;&#039;erst bei der Berechnung der Frageantwort, nach dem Einsetzen der Datensätze&#039;&#039;&#039; das &#039;&#039;&#039;komplette Maxima-Feld&#039;&#039;&#039; mit dem internen &#039;&#039;&#039;Parser&#039;&#039;&#039; durchgerechnet und danach der Parameter-Ausdruck berechnet. Dadurch kann man bei komplizierten Berechnungen eine sehr aufwendige symbolische Berechnung verhindern! || runtime(U) || &lt;br /&gt;
|-&lt;br /&gt;
| dataset || liefert alle Datensätze einer Datensatz-Definition in einem Vektor || dataset(x) || &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Optimierung der Ausdrücke===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| opt   || Ausdruck wird vollständig optimiert, die Funktion wird ausgewertet und ist danach nicht mehr vorhanden. Nur bei der Verwendung des internen Parser sinnvoll. || opt(x+x) || 2*x&lt;br /&gt;
|-&lt;br /&gt;
| ratsimp || Ausdruck wird vollständig optimiert, die Funktion wird ausgewertet und ist danach nicht mehr vorhanden (wie opt, wird jedoch auch von Maxima ausgewertet) || ratsimp(x+x) || 2*x&lt;br /&gt;
|-&lt;br /&gt;
| noopt || Ausdruck wird nicht optimiert, bleibt also so erhalten wie angegeben. Die Funktion an sich geht aber verloren. || noopt(2+3) || 2+3&lt;br /&gt;
|-&lt;br /&gt;
| nopt || Ausdruck wird nicht optimiert, bleibt also so erhalten wie angegeben. Die Funktion bleibt erhalten und wird erst bei der Lösungsberechnung oder durch opt() entfernt. || noopt(2+3) || 2+3&lt;br /&gt;
|-&lt;br /&gt;
| lopt || Im Maximafeld bleibt die Funktion ohne Funktion erhalten, im Ergebnis {=  wird die Funktion entfernt und in der Lösung wird nach dem Einsetzen der Werte der Ausdruck vollständig optimiert. || lopt(x+3)  || lopt(x+3)  &lt;br /&gt;
|-&lt;br /&gt;
| lnoopt || Im Maximafeld bleibt die Funktion ohne Funktion erhalten, im Ergebnis {=  wird die Funktion entfernt und in der Lösung wird nach dem Einsetzen der Werte der Ausdruck nicht mehr optimiert. || lnoopt(x+3+2)  || lnoopt(x+5) &lt;br /&gt;
|-&lt;br /&gt;
| loptnumeric || Im Maximafeld bleibt die Funktion ohne Funktion erhalten, im Ergebnis {=  wird die Funktion entfernt und in der Lösung wird nach dem Einsetzen der Werte der Ausdruck nur numerisch optimiert. || loptnumeric(x+y)  || loptnumeric(x+y)&lt;br /&gt;
|-&lt;br /&gt;
| aopt || Bei Maxima und Lösung geht die Funktion verloren, nur innerhalb von noopt bleibt sie erhalten. Bei der Anzeige führt sie zur Optimierung das Ausdruckes nach Einsetzen der Datensätze. || aopt(x)  || x&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Anzeige und Lösungsberechnung===&lt;br /&gt;
Diese Funktionen haben entweder einen oder zwei Parameter. Der erste Parameter stellt die darzustellende Funktion dar, der zweite Parameter, welcher eine Ganzzahl sein muss, gibt an, wie die Darstellung erfolgen soll. Wird der 2.Parameter weggelassen, so wird er als 0 interpretiert.&lt;br /&gt;
* 0 Bei Berechnungen hat die Funktion keine Wirkung, bleibt aber als Funktion erhalten. Bei Lösung und Anzeige wird die Funktion ausgewertet&lt;br /&gt;
* 1 Wirkt nur bei Lösung, bei Berechnungen bleibt die Funktion erhalten&lt;br /&gt;
* 2 Wirkt nur bei Anzeige, bei Berechnungen bleibt die Funktion erhalten&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| viewpow || Gibt alle Wurzeln als Potenzen aus, und stellt alle Potenzen im Nenner als negativen Exponenten im Zähler dar || viewpow(sqrt(x)) || x^(1/2)&lt;br /&gt;
|-&lt;br /&gt;
| viewsqrt || Gibt Potenzen welche als Wurzel darstellbar sind auch als als Wurzeln mit der Funktion sqrt oder root aus || viewsqrt(x^(1/2)) || sqrt(x)&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Spezialfunktionen LeTTo ===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| points || Berechnet die erreichbare Gesamtpunkteanzahl einer Frage || points() || 2&lt;br /&gt;
|-&lt;br /&gt;
| points || Berechnet die erreichbare Punkteanzahl einer Teilfrage. Als Parameter wird die Fragenummer als Ganzzahl angegeben. || points(0) || 1&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Spezialfunktionen Technik===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| color || Widerstandsfarbcode berechnen.&amp;lt;br&amp;gt;1. Parameter muss ein Double sein&amp;lt;br&amp;gt; 2.Parameter sind die Anzahl der Farbringe&amp;lt;br&amp;gt; 3.Parameter ist der Modus (0..2-St,1..3St,2..Deutsch,3..2StEng,4..3StEng,5..Englisch || color(120,3,2) || braun,rot,braun&lt;br /&gt;
|-&lt;br /&gt;
| parsecolor || Wandelt einen String mit einem Widerstandsfarbcode in einen Double-Wert || parsecolor(&amp;quot;br-rt-br&amp;quot;) || 120&lt;br /&gt;
|-&lt;br /&gt;
| ip || Wandelt eine Long-Zahl in einen String als IP-Adresse um, oder 4 Byte-Zahlen in eine Long Zahl als IP-32-bit-Adresse || ip(1534536453)&amp;lt;br&amp;gt;ip(10,20,30,40) || &amp;quot;91.119.43.5&amp;quot;&amp;lt;br&amp;gt;169090600&lt;br /&gt;
|-&lt;br /&gt;
| parseip || Wandelt einen String mit einer IP-Adresse in einen Long-Wert || parseip(&amp;quot;91.119.43.5&amp;quot;) || 1534536453&lt;br /&gt;
|-&lt;br /&gt;
| e12 || rundet einen Zahlenwert auf den nächstliegenden Wert der [[Normreihe]] E12.&amp;lt;br&amp;gt;Die Rundung erfolgt geometrisch d.h. der Quotient zwischen Normwert und zu rundendem Wert wird minimiert. || e12(700Ohm) || 680Ohm&lt;br /&gt;
|-&lt;br /&gt;
| e12up || rundet einen Zahlenwert auf den nächstgrößerern Wert der [[Normreihe]] E12 || e12(670Ohm) || 680Ohm&lt;br /&gt;
|-&lt;br /&gt;
| e12down || rundet einen Zahlenwert auf den nächstkleineren Wert der [[Normreihe]] E12 || e12(700Ohm) || 680Ohm&lt;br /&gt;
|-&lt;br /&gt;
| ise12 || prüft ob der als Parameter übergebenen Wert ein Wert der [[Normreihe]] E12 ist.|| ise12(680Ohm) || true&lt;br /&gt;
|-&lt;br /&gt;
| norm || rundet einen Zahlenwert auf den nächstliegenden Wert einer gegebenen Wertereihe oder [[Normreihe]].&amp;lt;br&amp;gt;Die Rundung erfolgt geometrisch wenn es sich um eine logarithmisch aufgeteilte Normreihe handelt, oder sonst linear. || norm(700Ohm,E12) || 680Ohm&lt;br /&gt;
|-&lt;br /&gt;
| normup || rundet einen Zahlenwert auf den nächstgrößerern Wert einer gegebenen Wertereihe oder [[Normreihe]]. || normup(730Ohm,[1,3,5,8]) || 800Ohm&lt;br /&gt;
|-&lt;br /&gt;
| normdown || rundet einen Zahlenwert auf den nächstkleineren Wert einer gegebenen Wertereihe oder [[Normreihe]]. || normdown(700Ohm,E12) || 680Ohm&lt;br /&gt;
|-&lt;br /&gt;
| isnorm || prüft ob der als Parameter übergebenen Wert ein Wert einer gegebenen Wertereihe oder [[Normreihe]] ist. || isnorm(680Ohm,E12) || true&lt;br /&gt;
|}&lt;br /&gt;
===Raumzeiger für elektrische Maschinen===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| [[svphtosv]](a,b,c) || berechnet aus den Stranggrößen (a,b,c) einen komplexen Raumzeiger || svphtosv(0.5,0.5,-1) || 1arg60°&lt;br /&gt;
|-&lt;br /&gt;
| [[svsvtoph]](sv)&amp;lt;br&amp;gt;svsvtoph(sv,index) || berechnet aus einem komplexen Rauzeiger die Phasengrößen &amp;lt;br&amp;gt; berechnet aus einem komplexen Rauzeiger die Phasengrößen, index selektiert Stranggröße als Rückgabewert || svsvtoph(1arg60°)&amp;lt;br&amp;gt; svsvtoph(1arg60°,3)|| [0.5,0.5,-1] &amp;lt;br&amp;gt; -1&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=Ergebnisvorschau=&lt;br /&gt;
Aufruf dieses Dialoges über den [[Datei:ClipCapIt-180904-181443.PNG|25px]]-Button aus dem [[Toolbar]].&lt;br /&gt;
&lt;br /&gt;
Die Berechnungen aus dem Maxima-Feld bei der [[Beispiele Bearbeiten|Fragendefinition]] können auch über den [[Datei:ClipCapIt-180904-182120.PNG|25px]]-Button durchgeführt werden. Hier wird die Berechnung durchgeführt und das Lösungsfeld ausgefüllt, aber der Rechengang wird nicht angezeigt. &lt;br /&gt;
:[[Datei:ClipCapIt-180904-181415.PNG|400px]]&lt;br /&gt;
&lt;br /&gt;
Beim Fehlersuchen oder bei komplexen Berechnungen kann es aber hilfreich sein, den ganzen Maxima-Lösungsweg zu sehen, dies ist über den [[Datei:ClipCapIt-180904-181443.PNG|25px]]-Button möchlich.&lt;br /&gt;
&lt;br /&gt;
[[Kategorie:Berechnung]]&lt;/div&gt;</summary>
		<author><name>Ckral</name></author>
	</entry>
	<entry>
		<id>https://wiki.letto.at/wiki/index.php?title=Berechnungen&amp;diff=2866</id>
		<title>Berechnungen</title>
		<link rel="alternate" type="text/html" href="https://wiki.letto.at/wiki/index.php?title=Berechnungen&amp;diff=2866"/>
		<updated>2021-04-27T19:39:43Z</updated>

		<summary type="html">&lt;p&gt;Ckral: Erweiterung um Funktion pulse&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Allgemeines =&lt;br /&gt;
Berechnungen werden in mehreren Bereichen der Frageerstellung verwendet und bilden die Basis für [[Fragetypen#Berechnungsfrage|Berechnungsfrage]] und [[Fragetypen#Mehrfachberechnungsfrage|Mehrfachberechnungsfrage]].&lt;br /&gt;
&lt;br /&gt;
Alle Berechnungen unterstützen [[Einheit|Einheiten]] und symbolische Auswertung.&lt;br /&gt;
&lt;br /&gt;
=Grundsätzlicher Aufbau der Ergebnis-Berechnung bei Fragen mit Berechnungen=&lt;br /&gt;
[[Datei:BerechnungSchema.png|mini|hochkant=2.0|Schema der Berechnung]]&lt;br /&gt;
Die Berechnung und die Beurteilung einer Frage teilt sich in 3 grundsätzliche Schritte:&lt;br /&gt;
* Berechnnug der geschlossenen Lösung (Formel) aus den Maxima-Feldern &lt;br /&gt;
* Berechnung des Ergebnisses einer Frage durch Einsetzen der Zahlenwerte aus den Datensätzen in die geschlossene Lösung&lt;br /&gt;
* Beurteilung der Schülereingabe durch Vergleich mit dem Ergebnis&lt;br /&gt;
&lt;br /&gt;
=Konstante=&lt;br /&gt;
Alle Konstante welche in Letto definiert sind beginnen mit einem Prozentzeichen. Verwendet man den Variablennamen ohne Prozenzzeichen, so wird die Konstante wie eine Variable mit dem Wert der Konstanten verwendet.&lt;br /&gt;
&lt;br /&gt;
Liste der definierten Konstanten:&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%&amp;quot; &lt;br /&gt;
| Name || Wert || Beschreibung&lt;br /&gt;
|-&lt;br /&gt;
| %i || i || komplexer Parameter als Lösung der Gleichung x^2=-1&lt;br /&gt;
|-&lt;br /&gt;
| %j || i || komplexer Parameter als Lösung der Gleichung x^2=-1&lt;br /&gt;
|-&lt;br /&gt;
| %e || 2.718281828459045 || Eulersche Zahl &lt;br /&gt;
|-&lt;br /&gt;
| %pi || 3.141592653589793 || Kreiszahl&lt;br /&gt;
|-&lt;br /&gt;
| %mu0 || magnetische Feldkonstante || 4*%pi*1E-7&#039;Vs/Am&#039;&lt;br /&gt;
|-&lt;br /&gt;
| %m0 || magnetische Feldkonstante (alt, wird bald entfernt werden) || 4*%pi*1E-7&#039;Vs/Am&#039;&lt;br /&gt;
|-&lt;br /&gt;
| %epsilon0 || elektrische Feldkonstante || 8.85418781762039E-12&#039;As/Vm&#039;&lt;br /&gt;
|-&lt;br /&gt;
| %e0 || elektrische Feldkonstante (alt, wird bald entfernt werden) || 8.85418781762039E-12&#039;As/Vm&#039;&lt;br /&gt;
|-&lt;br /&gt;
| %c0 || Lichtgeschwindigkeit || 299792458&#039;m/s&#039;&lt;br /&gt;
|-&lt;br /&gt;
| %Qe || Elementarladung || 1.602176620898E-19As&lt;br /&gt;
|-&lt;br /&gt;
| %g  || Erdbeschleunigung || 9.81&#039;m/s^2&#039;&lt;br /&gt;
|-&lt;br /&gt;
| %NA || Avogadro Konstante || 6.02214085774E23/mol&lt;br /&gt;
|-&lt;br /&gt;
| %k  || Stefan Bolzman Konstante || 1.3806485279E-23&#039;J/K&#039;&lt;br /&gt;
|-&lt;br /&gt;
| %R0 || Universelle Gaskonstante || 8.314459848&#039;J/Kmol&#039;&lt;br /&gt;
|-&lt;br /&gt;
| %h || planksches Wirkungsquantum || 6.6260704081E-34Js&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=Berechnung mit Maxima=&lt;br /&gt;
* Maxima wird &#039;&#039;&#039;nur für symbolische Berechnungen&#039;&#039;&#039; bei der Erstellung von Beispielen verwendet. Hierbei wird, wie schon oberhalb im Schema angegeben, zuerst die Moodle.mac geladen, dann das [[Beispielsammlung Editieren#Maxima-Feld|Maxima-Feld]] berechnet und anschließend die Maxima-Felder aller Teilfragen. Das Ergebnis der Berechnung wird dann als symbolischer Ausdruck im Lösungfeld eingetragen.&lt;br /&gt;
* Da zum Zeitpunkt der &#039;&#039;&#039;Maxima-Berechnung keine Datensätze&#039;&#039;&#039; vorhanden sind, kann keine numerische Berechnung in Maxima durchgeführt werden, welche die [[Datensätze]] benötigt. Dies muss der interne Parser zum Zeitpunkt des Online-Test-Laufes erledigen. Numerische Berechnungen, welche der interne Parser nicht kann können deshalb auch nicht mit Maxima berechnet werden.&lt;br /&gt;
* Da das Lösungsfeld, welches mit Maxima berechnet wird symbolisch ausgewertet wird, können in Maxima sämtliche symbolischen Berechnungsverfahren angewendet werden, welche ein symbolisches Ergebnis liefern und keine numerischen Werte der Datensätze benötigen.&lt;br /&gt;
* Reicht im Maximafeld die Zeilenlänge nicht aus ist es möglich einen defninierten Zeilenumbruch zu realisieren. Schreiben Sie dazu &amp;quot;\&amp;quot; (einfacher Backslash) am Ende der Zeile.  &lt;br /&gt;
* &#039;&#039;&#039;Funktionsdeklarationen&#039;&#039;&#039; wie &#039;&#039;&#039;f(x):=&#039;&#039;&#039;x^2 mit Doppelpunkt-Ist-Gleich sind im Maxima-Feld nur eingeschränkt bis gar &#039;&#039;&#039;nicht verwendbar&#039;&#039;&#039;, da sie vom Parser nicht unterstützt werden.&lt;br /&gt;
* &#039;&#039;&#039;Mengen von Maxima&#039;&#039;&#039; sind in LeTTo n&#039;&#039;&#039;icht verwendbar&#039;&#039;&#039;. LeTTo verwender hierzu eigene Funktionen des Parsers welche mit &amp;quot;set&amp;quot; beginnen und auf Vektoren basieren.&lt;br /&gt;
&lt;br /&gt;
=Berechnung mit dem internen Parser=&lt;br /&gt;
* Der interne Parser kann durch Wahl der Checkbox &amp;quot;Parser&amp;quot; anstatt von Maxima für die Berechnung des Maxima-Feldes verwendet werden. &lt;br /&gt;
* Jedenfalls wird der Parser zur Test-Laufzeit für die Berechnung des Ergebnisses einer Frage aus Lösung und Datensätzen und zum Berechnen der Schülereingabe verwendet.&lt;br /&gt;
&lt;br /&gt;
==Operatoren==&lt;br /&gt;
=== VORSICHT mit MAXIMA ===&lt;br /&gt;
* Einige Operatoren sind in &#039;&#039;&#039;Maxima anders&#039;&#039;&#039;, oder &#039;&#039;&#039;nicht definiert&#039;&#039;&#039;. Möchte man im Maximafeld die Operatoren des Parsers-verwenden, so muss das gesamte Maxima-Feld &#039;&#039;&#039;mit dem Parser gerechnet&#039;&#039;&#039; werden. Man verliert dadurch jedoch die Vorteile der Maxima-Berechnung.&lt;br /&gt;
* Alternativ kann man statt der Operatoren auch &#039;&#039;&#039;Funktionen verwenden&#039;&#039;&#039; (zB: ne() statt != ). Diese werden dann von Maxima zwar nicht ausgewertet, die Berechnung bleibt aber trotzdem korrekt und kann mit Maxima durchgeführt werden.&lt;br /&gt;
* Es gibt einige Funktionen welche in &#039;&#039;&#039;Maxima existieren&#039;&#039;&#039; aber im &#039;&#039;&#039;Parser nicht, oder mit anderem Syntax&#039;&#039;&#039;.&lt;br /&gt;
** Wenn diese von Maxima nicht ausgewertet werden können, da sie &#039;&#039;&#039;Datensätze&#039;&#039;&#039; enthalten welche zu Auswertezeitpunkt von Maxima noch &#039;&#039;&#039;nicht mit Werten belegt&#039;&#039;&#039; sind, &#039;&#039;&#039;dürfen sie in der Berechnung nicht verwendet werden&#039;&#039;&#039;, da der Parser dann damit nichts anfangen kann.&lt;br /&gt;
** Solche Funktionen haben entweder im Parser eine alternative Schreibweise welche auch mit Maxima verwendet werden kann (z.B.: wenn), oder sie können prinzipell nicht verwendet werden. (Für wichtige Funktionsweisen könnte man in zukünftigen Versionen neue Funktionalitäten in den Parser einbauen, die die gewünschte Funktion erfüllen)&lt;br /&gt;
** Ein weiter Möglichkeit für die Verwendung solcher Funktionen ist der Verzicht auf Datensätze in diesen Funktionen, damit diese Funktion beim Auswerten des Maxima-Feldes bereits ausgewertet werden kann und somit der Parser davon nichts mehr sieht.&lt;br /&gt;
** zB:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
if then&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Infix Operatoren===&lt;br /&gt;
====arithmetische Operatoren====&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Operator || Priorität || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| + || 40 || Addition || 4+5 || 9 &lt;br /&gt;
|-&lt;br /&gt;
| - || 40 || Subtraktion || 6-2 || 4&lt;br /&gt;
|-&lt;br /&gt;
| * || 50 || Multiplikation || 4*5 || 20&lt;br /&gt;
|-&lt;br /&gt;
| / || 51 || Division || 20/4 || 5&lt;br /&gt;
|-&lt;br /&gt;
| % || 51 || Divisionsrest || 104%20 || 4&lt;br /&gt;
|-&lt;br /&gt;
| / / || 60 || Parallelschaltung || x / / y || x*y/(x+y)&lt;br /&gt;
|-&lt;br /&gt;
| ^ || 90 || Potenz || 2^3 || 8&lt;br /&gt;
|-&lt;br /&gt;
| .*. || 200 || Operator der intern für eine fehlende bindende Multiplikation verwendet wird || 4x || 4*x&lt;br /&gt;
|-&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
====Bitoperatoren====&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Operator || Priorität || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
||  |  || 20 || Bitweise oder logisches ODER ||| 9|5 &amp;lt;br&amp;gt; true|false || 13 &amp;lt;br&amp;gt;true&lt;br /&gt;
|-&lt;br /&gt;
| or || 20 || Bitweise oder logisches ODER || 9 or 5 || 13&lt;br /&gt;
|-&lt;br /&gt;
| &amp;amp;  || 21 || Bitweise oder logisches UND  || 13&amp;amp;10 || 8&lt;br /&gt;
|-&lt;br /&gt;
| and || 21 || Bitweise oder logisches UND  || 13 and 10 || 8&lt;br /&gt;
|-&lt;br /&gt;
| xor || 22 || Bitweise oder logisches exklusiv oder XOR  || 13 xor 10 || 7&lt;br /&gt;
|-&lt;br /&gt;
| imp || 23 || Bitweise oder logisches impliziert IMP || 13 imp 10 || 8&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;&amp;lt;  || 35 || Bitweise links schieben  || 5&amp;lt;&amp;lt;2 || 20&lt;br /&gt;
|-&lt;br /&gt;
| &amp;gt;&amp;gt;  || 35 || Bitweise rechts schieben || 8&amp;gt;&amp;gt;2 || 2&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
====Vergleichsoperatoren====&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Operator || Priorität || Beschreibung || Beispiel&lt;br /&gt;
|-&lt;br /&gt;
| =  || 3 || Gleichungsoperator || x=y&lt;br /&gt;
|-&lt;br /&gt;
| == || 30 || Gleichungsoperator || x==y&lt;br /&gt;
|-&lt;br /&gt;
| != || 30 || Ungleichungsoperator || x!=y&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt; || 32 || Kleiner || x&amp;lt;y&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;= || 32 || Kleiner gleich || x&amp;lt;=y&lt;br /&gt;
|-&lt;br /&gt;
| &amp;gt; || 32 || größer || x&amp;gt;y&lt;br /&gt;
|-&lt;br /&gt;
| &amp;gt;= || 32 || größer gleich || x&amp;gt;=y&lt;br /&gt;
|}&lt;br /&gt;
====Organisative Operatoren====&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Operator || Priorität || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| , || 0 || Listen-Trennzeichen || x,y ||&lt;br /&gt;
|-&lt;br /&gt;
| $ || 1 || Trennzeichen zwischen mehreren Berechnungen || ||&lt;br /&gt;
|-&lt;br /&gt;
| ; || 1 || Trennzeichen zwischen mehreren Berechnungen || ||&lt;br /&gt;
|-&lt;br /&gt;
| : || 2 || Zuweisung an eine Variablen auf der linken Seite || x:5 || &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Prefix Operatoren===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Operator || Priorität || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| + || 45 || positives Vorzeichen || +5 || 5&lt;br /&gt;
|-&lt;br /&gt;
| - || 45 || negatives Vorzeichen || -(-5) || 5&lt;br /&gt;
|-&lt;br /&gt;
| ~ || 95  || bitweise Inversion einer 64bit-Ganzzahl || ~0x0F0F || 0xFFFFFFFFFFFFF0F0&lt;br /&gt;
|-&lt;br /&gt;
| ! || 120 || logisches NOT || !(3&amp;lt;4) || false&lt;br /&gt;
|-&lt;br /&gt;
| ++ || 130 || Inkrement von Ganzzahlen || ++x || erhöht x um eins und gibt das Ergebnis nach der Erhöhung zurück&lt;br /&gt;
|-&lt;br /&gt;
| -- || 130 || Dekrement von Ganzzahlen || --x || vermindert x um eins und gibt das Ergebnis nach der Verminderung zurück&lt;br /&gt;
|-&lt;br /&gt;
| % || 200 || Prefix für Namen, welche als Konstante definiert sind || %pi || 3.141592653589793&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Suffix Operatoren===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Operator || Priorität || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| ++ || 135 || Inkrement von Ganzzahlen || x++ || erhöht x um eins und gibt den Variablenwert vor der Erhöhung zurück&lt;br /&gt;
|-&lt;br /&gt;
| -- || 135 || Dekrement von Ganzzahlen || x-- || vermindert x um eins und gibt den Variablenwert vor der Verminderung zurück&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==Klammern==&lt;br /&gt;
* () runde Klammern werden für mathematische Ausdrücke zur Klammerung verwendet&lt;br /&gt;
* {} geschwungene Klammer werden im Angabetext für die Namen der Datensätze verwendet&lt;br /&gt;
* [] eckige Klammern werden für Vektoren und Matrizen verwendet&lt;br /&gt;
&lt;br /&gt;
==Funktionen==&lt;br /&gt;
===Funktionen für Ganzzahlen===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| band || bitweises UND || band(4,12) || 4&lt;br /&gt;
|-&lt;br /&gt;
| bor  || bitweises ODER || bor(4,1) || 5&lt;br /&gt;
|-&lt;br /&gt;
| bxor || bitweises EXKLUSIV ODER || band(4,5) || 1&lt;br /&gt;
|-&lt;br /&gt;
| bimp || bitweises Parameter1 impliziert Parameter2 || bimp(13,10) || 8&lt;br /&gt;
|-&lt;br /&gt;
| binv || bitweises NICHT mit 8 bit || binv(0x0F) || 0xF0&lt;br /&gt;
|-&lt;br /&gt;
| shl || Schiebe Ganzzahl bitweise nach links || shl(8,2) || 32&lt;br /&gt;
|-&lt;br /&gt;
| shr || Schiebe Ganzzahl bitweise nach rechts || shr(8,2) || 2&lt;br /&gt;
|-&lt;br /&gt;
| div || Ganzzahldivision, Ergebnis wird abgeschnitten || div(5,2) || 2&lt;br /&gt;
|-&lt;br /&gt;
| inv8  || bitweise Invertieren und die letzten 8 Bit bestimmen  || inv8(0b1001) || 0b11110110&lt;br /&gt;
|-&lt;br /&gt;
| inv16 || bitweise Invertieren und die letzten 16 Bit bestimmen || inv16(0xF0)  || 0xFF0F&lt;br /&gt;
|-&lt;br /&gt;
| inv32 || bitweise Invertieren und die letzten 32 Bit bestimmen || inv32(0xF0)  || 0bFFFFFF0F&lt;br /&gt;
|-&lt;br /&gt;
| inv64 || bitweise Invertieren und die letzten 64 Bit bestimmen || inv64(0xF0)  || 0bFFFFFFFFFFFFFF0F&lt;br /&gt;
|-&lt;br /&gt;
| byte  || Zahl in eine Ganzzahl wandeln und die letzten 8bit der Zahl Abschneiden, Einheit geht verloren  || byte(34.2) || 34&lt;br /&gt;
|-&lt;br /&gt;
| word  || Zahl in eine Ganzzahl wandeln und die letzten 16bit der Zahl Abschneiden, Einheit geht verloren || word(34.2) || 34&lt;br /&gt;
|-&lt;br /&gt;
| int   || Zahl in eine Ganzzahl wandeln und die letzten 32bit der Zahl Abschneiden, Einheit geht verloren || int(34.2) || 34&lt;br /&gt;
|-&lt;br /&gt;
| long  || Zahl in eine Ganzzahl wandeln , Einheit geht verloren || long(34.2) || 34&lt;br /&gt;
|-&lt;br /&gt;
| [[parity]]  || Paritätsberechnung : parity(Parität,Codewortlänge,Datenwort[,Datenwort,....]) || parity(even,7,&amp;quot;xy&amp;quot;) || &lt;br /&gt;
|-&lt;br /&gt;
| [[blockparity]]  || Kreuz oder Blockparität : blockparity(Parität,Codewortlänge,Codewortanzahl,Datenwort[,Datenwort,....]) || blockparity(even,7,3,&amp;quot;abc&amp;quot;) || &lt;br /&gt;
|-&lt;br /&gt;
| [[bcd]]  || Wandelt in eine Long-Zahl in ein Feld aus BCD-kodierten Zahlen um || bcd(124) || [1,2,4]&lt;br /&gt;
|-&lt;br /&gt;
| [[code]] || Code aus mehreren Codeworten zusammensetzen : code(Codewortlänge,Datenwort[,Datenwort,....]) || code(5,4,3,5) || 0b1000001100101&lt;br /&gt;
|-&lt;br /&gt;
| [[hamming]] || Bestimmt den Hamming-Abstand von mehreren Codeworten || hamming(1,2,4,8,16) || 2&lt;br /&gt;
|-&lt;br /&gt;
| [[komplement]] ||  Bildet das Zweierkomplement mit einer negativen Zahl mit einer bestimmten Bitanzahl, fehlt die Bitanzahl, so wird ein 32Bit-2er-komplement gebildet || komplement(-5,8) || 0b11111011&lt;br /&gt;
|-&lt;br /&gt;
| [[bitstream]] || Erzeugt aus einer Ganzzahl einen Bitstrom als String mit einer definierten Anzahl von Bit (MSB werden nötigenfalls mit 0 gefüllt) : bitstream(Daten,Bitanzahl) || bitstream(0x184,12) || &amp;quot;000110000100&amp;quot;&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Funktionen für rationale und Ganzzahlen===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| kgV || berechnet das kleinste gemeinsame Vielfache von mehreren Zahlen || kgV(3,10) || 30&lt;br /&gt;
|-&lt;br /&gt;
| ggT || berechnet den größten gemeinsamen Teiler von mehreren Zahlen || ggT(12,10) || 2&lt;br /&gt;
|- &lt;br /&gt;
| isprim || prüft ob die angegebene Zahl eine Primzahl ist || isprim(13) || true&lt;br /&gt;
|-&lt;br /&gt;
| prims || zerlegt eine Ganzzahl in ihre Primfaktoren || prims(12) || [2,2,3]&lt;br /&gt;
|-&lt;br /&gt;
| defracmix || zerlegt eine rationale Zahl in einen gemischten Bruch aus ganzzahligem Summanden, Zähler und Nenner als Menge&amp;lt;br&amp;gt;Die erhaltene Menge kann mit dem Format-Modfier &#039;&#039;&#039;frac&#039;&#039;&#039; als gemischter Bruch dargestellt werden (siehe [[Zahlendarstellung]]) || defracmix(14/12)&amp;lt;br&amp;gt;defracmix(-15/12)&amp;lt;br&amp;gt;defracmix(3/12) || [1,2/12]&amp;lt;br&amp;gt;[-1,3,12]&amp;lt;br&amp;gt;[0,3,12] &lt;br /&gt;
|-&lt;br /&gt;
| defrac || zerlegt eine rationale Zahl in Zähler und Nenner als Menge &amp;lt;br&amp;gt;Die erhaltene Menge kann mit dem Format-Modfier &#039;&#039;&#039;frac&#039;&#039;&#039; als gemischter Bruch dargestellt werden || defrac(14/12) || [13,12]&lt;br /&gt;
|-&lt;br /&gt;
| frac || erzeugt aus einer Menge aus 2 oder 3 Elementen (von defrac) eine rationale Zahl || frac([3,7])&amp;lt;br&amp;gt;frac([1,2,3]) || 3/7 &amp;lt;br&amp;gt; 5/3&lt;br /&gt;
|-&lt;br /&gt;
| mod || Modulo: Divisionsrest einer Division mit ganzzahligem Ergebnis || mod(5,2) &amp;lt;br&amp;gt; mod(6.2,2.5) || 1&amp;lt;br&amp;gt;1.2&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===boolsche Funktionen===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| eq || gleich || eq(4,4) || true&lt;br /&gt;
|-&lt;br /&gt;
| eqruntime || symbolischer Vergleich, welcher &#039;&#039;&#039;symbolisch erst bei der Ergebnisberechnung&#039;&#039;&#039; ausgeführt wird. Muss verwendet werden, wenn bei Vergleichen symbolische Antworten von Schülern (Q0,Q1,...) verwendet werden.  || eqruntime(x+3*y,3*y+x) || true&lt;br /&gt;
|-&lt;br /&gt;
| ne || ungleich || ne(6,4) || true&lt;br /&gt;
|-&lt;br /&gt;
| ge || größer gleich || ge(6,4) || true&lt;br /&gt;
|-&lt;br /&gt;
| le || kleiner gleich || le(6,4) || false&lt;br /&gt;
|-&lt;br /&gt;
| gt || größer || gt(6,4) || true&lt;br /&gt;
|-&lt;br /&gt;
| lt || kleiner || lt(6,4) || false&lt;br /&gt;
|-&lt;br /&gt;
| between || prüft ob Parameter1 kleiner als Parameter2 und Parameter2 kleiner als Parameter 3 || between(3,4,5) || true&lt;br /&gt;
|-&lt;br /&gt;
| land || logisches UND || land(a&amp;lt;b,b&amp;lt;c) || &lt;br /&gt;
|-&lt;br /&gt;
| lor  || logisches ODER || lor(a&amp;lt;b,b&amp;lt;c) || &lt;br /&gt;
|-&lt;br /&gt;
| not  || logisches NICHT. Vorsicht ein symbolisches Ergebnis von Maxima liefert not als Prefix-Operator, welcher vom Parser nicht unterstützt wird ( Verwende statt dessen &#039;&#039;&#039;lnot&#039;&#039;&#039; ) || not(a&amp;lt;b) || &lt;br /&gt;
|-&lt;br /&gt;
| lnot  || logisches NICHT, wie not jedoch wird es von Maxima nicht ausgewertet || lnot(a&amp;lt;b) || &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===arithmetische Funktionen===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| double || Zahl ein eine Gleitkommazahl umwandeln, die Einheit geht dabei verloren || double(3.4V) || 3.4&lt;br /&gt;
|-&lt;br /&gt;
| numeric || verwirft die Einheit, wenn eine vorhanden ist und liefert nur den Zahlenwert || numeric(2.3mA) &amp;lt;br&amp;gt; numeric(5%)|| 0.0023 &amp;lt;br&amp;gt; 5&lt;br /&gt;
|-&lt;br /&gt;
| unit || gibt die SI-Einheit mit dem Zahlenwert 1 zurück || unit(3.1kA) &amp;lt;br&amp;gt; unit(5%) || 1A &amp;lt;br&amp;gt; 1%&lt;br /&gt;
|-&lt;br /&gt;
| cround  || Rundet die Zahl kaufmännisch, der zweite Parameter gibt die Anzahl der Kommastellen an, ohne 2.Parameter wird auf Ganzzahlen gerundet, bei komplexen Zahlen wird Betrag und Winkel in Grad gerundet. || cround(23.535,2)&amp;lt;br&amp;gt;cround(2.435arg34.5364°,1) || 23.54&amp;lt;br&amp;gt;2.4arg34.5°&lt;br /&gt;
|-&lt;br /&gt;
| ccround  || Rundet die Zahl kaufmännisch, der zweite Parameter gibt die Anzahl der Kommastellen an, bei komplexe Zahlen wird Real und Imaginärteil gerundet. || ccround(2.4534+5.645*%i,2) || 2.45+5.65i&lt;br /&gt;
|-&lt;br /&gt;
| round  || Rundet die Zahl kaufmännisch, aus Kompatibilitätsgründen zu Maxima hat round nur einen Parameter || round(23.535) || 24&lt;br /&gt;
|-&lt;br /&gt;
| ground || Rundet die Zahl auf die im zweiten Parameter angegebenen gültigen Ziffern || ground(2453.43,2) || 2500&lt;br /&gt;
|-&lt;br /&gt;
| floor  || Rundet auf die größte ganze Zahl, welche kleiner oder gleich x ist || floor(24.5) || 24&lt;br /&gt;
|-&lt;br /&gt;
| trunc  || Schneidet die Zahl nach dem Komma ab || trunc(24.5) || 24&lt;br /&gt;
|-&lt;br /&gt;
| ceiling || ceiling(x) Rundet auf die kleinste ganze Zahl, welche größer oder gleich x ist || ceiling(13.2) || 14&lt;br /&gt;
|-&lt;br /&gt;
| pow || Potenzfunktion || pow(2,3) || 8&lt;br /&gt;
|-&lt;br /&gt;
| par || Parallelschaltung von Widerständen || par(x,y) || x*y/(x+y)&lt;br /&gt;
|-&lt;br /&gt;
| min  || Minimum von mehrere Werten suchen || min(3,5,1) || 1&lt;br /&gt;
|-&lt;br /&gt;
| max  || Maximum von mehreren Werten suchen || max(3,5,1) ||  5&lt;br /&gt;
|-&lt;br /&gt;
| random  || Zufallszahl aus einem definierten Zahlenbereich random(minimal,maximal)&amp;lt;br&amp;gt;VORSICHT! Die Zufallszahl wird bei jedem Aufruf neu berechnet, weshalb sich der Wert bei jedem Anzeigevorgang einer Frage ändert. Sollte sich der berechnete Wert für eine Schülerangabe zwischen Fragestellung und Ergebniskontrolle nicht ändern dürfen (ist der Normalfall) muss man einen &#039;&#039;&#039;Datensatz statt einer Zufallszahl&#039;&#039;&#039; verwenden! &amp;lt;br&amp;gt; Zufallszahlen haben in der Ergebnisberechnung keinen Sinn, und sollten maximal für angezeigte zufällige Werte verwendet werden! || random(2,8) ||  3.4532&lt;br /&gt;
|-&lt;br /&gt;
| randomC  || komplexe Zufallszahl aus einem definierten Zahlenbereich für den Betrag&amp;lt;br&amp;gt;VORSICHT! Die Zufallszahl wird bei jedem Aufruf neu berechnet!  || randomC(2,8) ||  3.4532arg40.3°&lt;br /&gt;
|-&lt;br /&gt;
| signum  || Liefert das Vorzeichen einer Zahl (-1,0,1). Bei einer komplexen Zahl das Vorzeichen des Realteils. || signum(-4) || -1&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Maxima-basierte Funktionen ===&lt;br /&gt;
* Diese Funktionen funktionieren nur wenn Maxima installiert ist und werden immer an Maxima gesendet, auch wenn der interne Parser aktiviert ist.&lt;br /&gt;
* Weiters werden sie bei der Ausgabe als TeX-Formel auch korrekt mit LaTeX gesetzt.&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| integrate || Berechnet das unbestimmte oder bestimmte Integral einer Funktion. || integrate(x^2,x) &amp;lt;br&amp;gt; integrate(x^2,x,0,2) || x^3/3 &amp;lt;br&amp;gt; 8/3  &lt;br /&gt;
|-&lt;br /&gt;
| diff || Berechnet die Ableitung einer Funktion.  || diff(x^2,x)&amp;lt;br&amp;gt;diff(3*x^2,x,2) || x &amp;lt;br&amp;gt; 6&lt;br /&gt;
|-&lt;br /&gt;
| tomaxima || Führt die Berechnung aller Parameter von links nach rechts hintereinander mit Maxima aus. Das Ergebnis ist dann das Ergebnis des letzten Parameters. || tomaxima(y:x^2,y+2) || x^2+2&lt;br /&gt;
|-&lt;br /&gt;
| laplace || Bestimmt die Laplace-Transformierte einer Funktion. || laplace(sin(t),t,s) || 1/(1+s^2)&lt;br /&gt;
|-&lt;br /&gt;
| ilt || Bestimmt die inverse Laplace-Transformierte eine Laplace-Funktion || ilt(1/(1+s),s,t) || e^(-t)&lt;br /&gt;
|-&lt;br /&gt;
| sum || Summenbildung || sum(1/k,k,1,2) || 3/2&lt;br /&gt;
|-&lt;br /&gt;
| product || Produktbildung || product(1/k,k,1,3) || 1/6&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===erweiterte arithmetische Funktionen===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| sigma || Sprungfunktion: sigma(x) liefert 0 für x&amp;lt;0 und 1 für x&amp;gt;=0 || sigma(243.3) || 1&lt;br /&gt;
|-&lt;br /&gt;
| pulse || Rechteckfunktion: &amp;lt;br&amp;gt;pulse(x,x0) ist gleich 1 für x0 &amp;lt; x &amp;lt; x0 + 1, sonst 0&amp;lt;br&amp;gt;pulse(x,x0,L) ist gleich 1 für x0 &amp;lt; x &amp;lt; x0 + L, sonst 0&amp;lt;br&amp;gt;[[Datei:pulse.png|300px]] || pulse(x,2,4) || [[Datei:pulse_x_2_4.png|100px]]&lt;br /&gt;
|-&lt;br /&gt;
| interpol || Interpolationsfunktion zwischen mehreren Stützpunkten in einem Koordinatensystem. &amp;lt;br&amp;gt; interpol(WerteX,WerteY,x) || interpol([0,1,2],[0,3,3],1.5) || 3&lt;br /&gt;
|-&lt;br /&gt;
| periodic || Erzeugt aus einer beliebigen Funktion zwischen 0 und Periodendauer eine periodische Funktion &amp;lt;br&amp;gt; periodic(Variable,Periodendauer,Funktion)&amp;lt;br&amp;gt; periodic(Variable,Periodendauer,Funktionsperiodendauer,Funktion) || ch1(t):periodic(t,5ms,2&#039;Vms-2&#039;*t^2) &amp;lt;br&amp;gt; ch1(t):periodic(t,5ms,1,2V*t^2) || :[[Datei:ClipCapIt-190318-113524.PNG|100px]] &amp;lt;br&amp;gt; :[[Datei:ClipCapIt-190318-113644.PNG|100px]]&lt;br /&gt;
|-&lt;br /&gt;
| numint || numerische Integration &amp;lt;br&amp;gt; numint(untereGrenze,obereGrenze,funktion,Variable)&amp;lt;br&amp;gt; numint(untereGrenze,obereGrenze,funktion,Variable,punkteAnzahl) || numint(0,2pi,sin(t),t) || 0&lt;br /&gt;
|-&lt;br /&gt;
| numdif || numerisches Differenzieren einer Funktion &amp;quot;funktion&amp;quot; nach einer Variablen &amp;quot;Variable&amp;quot; an der Stelle &amp;quot;position&amp;quot; mit einer Differenz der Variablen von &amp;quot;differenz&amp;quot; &amp;lt;br&amp;gt; numdif(position,funktion,Variable,differenz) || numdif(0,sin(t),t,0.01) || 1&lt;br /&gt;
|-&lt;br /&gt;
| solve || löst eine Gleichung oder ein Gleichungssystem nach einer oder mehrerer Variablen || solve([2*x+y=3,x-y=0],[x,y]) || [ [ x=1,y=1 ] ]&lt;br /&gt;
|-&lt;br /&gt;
| solvevalue || löst eine Gleichung oder ein Gleichungssystem nach einer Variablen und liefert genau die erste Lösung wenn sie numerisch berechenbar ist || solvevalue([ 2*x+y=3,x-y=0 ],[ x,y ],x)  || 1&lt;br /&gt;
|-&lt;br /&gt;
| newton || Bestimmt eine Nullstelle einer Funktion nach dem Newton-Verfahren. Der erste Parameter ist ein Ausdruck in einer Variablen, der zweite Parameter ist der Startwert. || newton(x^2-4,4) || 2&lt;br /&gt;
|-&lt;br /&gt;
| cnewton || Bestimmt eine komplexe Nullstelle einer Funktion nach dem Newton-Verfahren. Der erste Parameter ist ein Ausdruck in einer Variablen, der zweite Parameter ist der komplexe Startwert. || newton(x^2+4,4) || 2*%i&lt;br /&gt;
|-&lt;br /&gt;
| newtonall || Bestimmt alle Nullstellen einer Funktion mit einem Betrag des Funktionsparameters kleiner als ein definierter Wert nach dem Newton-Verfahren. Der erste Parameter ist ein Ausdruck in einer Variablen, der zweite Parameter ist der maximale Betrag des Funktionsparameters. Das Ergebnis ist immer ein Vektor mit den nach aufsteigendem Funktionswert sortierten Nullstellen. || newton(x^2-4,4) || [-2,2]&lt;br /&gt;
|-&lt;br /&gt;
| cnewtonall || Bestimmt alle komplexen Nullstellen einer Funktion mit einem Betrag des Funktionsparameters kleiner als ein definierter Wert nach dem Newton-Verfahren. Der erste Parameter ist ein Ausdruck in einer Variablen, der zweite Parameter ist der maximale Betrag des Funktionsparameters. Das Ergebnis ist immer ein Vektor mit den Nullstellen. || newton(x^2+4,4) || [-2*%i,2*%i]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Stringfunktionen===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| dechex || Zahl in eine Ganzzahl wandeln und als Hexadezimal-String ausgeben || dexhex(12) || &amp;quot;0xC&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| chr || Bestimmt die Zeichen mit dem ASC-II-Code der Long-Parameter und setzt daraus einen String zusammen. || chr(0x65,105) || &amp;quot;ei&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| val || Bestimmt den ASC-II-Code des ersten Zeichens welches als String-Parameter übergeben wurde.|| val(&amp;quot;a&amp;quot;) || 97&lt;br /&gt;
|-&lt;br /&gt;
| strcat || Fügt mehrere Strings zusammen.|| strcat(&amp;quot;a&amp;quot;,&amp;quot;b&amp;quot;) || &amp;quot;ab&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===trigonometrische Funktionen===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| sin || Sinus || sin(%pi/2) || 1&lt;br /&gt;
|-&lt;br /&gt;
| cos || Cosinus || cos(%pi/2) || 0&lt;br /&gt;
|-&lt;br /&gt;
| tan || Tangens || tan(%pi/4) || 1&lt;br /&gt;
|-&lt;br /&gt;
| asin || Arcus-Sinus || asin(1) || %pi/2&lt;br /&gt;
|-&lt;br /&gt;
| arcsin || Arcus-Sinus || asin(1) || %pi/2&lt;br /&gt;
|-&lt;br /&gt;
| acos || Arcus-Cosinus || acos(1) || 0&lt;br /&gt;
|-&lt;br /&gt;
| arccos || Arcus-Cosinus || acos(1) || 0&lt;br /&gt;
|-&lt;br /&gt;
| atan || Arcus-Tangens || atan(1) || %pi/4&lt;br /&gt;
|-&lt;br /&gt;
| arctan || Arcus-Tangens || arctan(1) || %pi/4&lt;br /&gt;
|-&lt;br /&gt;
| atan2 || Arcus-Tangens atan2(y,x)=arctan(y/x) || atan2(-2,-2) || -%pi*3/4&lt;br /&gt;
|-&lt;br /&gt;
| arctan2 || Arcus-Tangens arctan2(y,x)=arctan(y/x) || arctan2(-2,-2) || -%pi*3/4&lt;br /&gt;
|-&lt;br /&gt;
| sinh || Sinus-Hyperbolicus || sinh(1) || 1.1752012&lt;br /&gt;
|-&lt;br /&gt;
| cosh || Cosinus-Hyperbolicus || cosh(1) || 1.5430806&lt;br /&gt;
|-&lt;br /&gt;
| tanh || Tangens-Hyperbolicus || tanh(1) || 0.7615941&lt;br /&gt;
|-&lt;br /&gt;
| coth || Cotangens-Hyperbolicus || coth(1) || 1.313035&lt;br /&gt;
|-&lt;br /&gt;
| asinh || Area-Sinus-Hyperbolicus || asinh(1.1752012) || 1&lt;br /&gt;
|-&lt;br /&gt;
| acosh || Area-Cosinus-Hyperbolicus || acosh(1.5430806) || 1&lt;br /&gt;
|-&lt;br /&gt;
| atanh || Area-Tangens-Hyperbolicus || atanh(0.7615941) || 1&lt;br /&gt;
|-&lt;br /&gt;
| acoth || Area-Cotangens-Hyperbolicus || acoth(1.313035) || 1&lt;br /&gt;
|-&lt;br /&gt;
| [[csin]] || Erzeugt aus einer komplexen Zahl (Effektivwert) und einer Frequenz einen Sinusfunktion in der Zeit || csin(U) || sqrt(2)*cabs(U)*sin(2*pi*f*t+carg(U))&lt;br /&gt;
|-&lt;br /&gt;
| [[quadrant]] || Liefert den Quadranten eines Winkels mit einer Toleranzangabe. || quadrant(20°,5°) || 1&lt;br /&gt;
|-&lt;br /&gt;
| argnorm || Wandelt einen Winkel auf den Bereich von 0°-360° || argnorm(-50°) || 310°&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Exponentialfunktionen===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| pow || Potenzfunktion || pow(2,3) || 8&lt;br /&gt;
|-&lt;br /&gt;
| exp|| Exponentialfunktion || exp(1) || %e&lt;br /&gt;
|-&lt;br /&gt;
| log || natürlicher Logarythmus || log(%e) || 1&lt;br /&gt;
|-&lt;br /&gt;
| ln || natürlicher Logarythmus || ln(%e) || 1&lt;br /&gt;
|-&lt;br /&gt;
| log10 || Logarythmus zur Basis 10 || log10(100) || 2&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===komplexe Zahlen===&lt;br /&gt;
Die Funktionen zu komplexen Zahlen werden (anders als in Maxima) nur ausgewertet wenn das Ergebnis numerisch berechenbar ist, ansonsten bleibt die Funktion symbolisch erhalten.&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| abs || Liefert den Absolutbetrag einer komplexen Zahl || abs(3+4*%i) || 5&lt;br /&gt;
|-&lt;br /&gt;
| cabs || Liefert den Absolutbetrag einer komplexen Zahl || cabs(3+4*%i) || 5&lt;br /&gt;
|-&lt;br /&gt;
| carg || Liefert das Argument einer komplexen Zahl || carg(4*%e^(3*%i)) || 3&lt;br /&gt;
|-&lt;br /&gt;
| realpart || Liefert den Realteil einer komplexen Zahl || realpart(3+4*%i) || 3&lt;br /&gt;
|-&lt;br /&gt;
| imagpart || Liefert den Imaginärteil einer komplexen Zahl || imagpart(3+4*%i) || 4&lt;br /&gt;
|-&lt;br /&gt;
| conjugate || Liefert die konjugiert komplexe Zahl einer komplexen Zahl || conjugate(3+4*%i) || 3-4*%i&lt;br /&gt;
|-&lt;br /&gt;
| rectform || hat in LeTTo keine Relevanz, da die Zahlendarstellung bei der Ausgabe definiert wird wie zB.: {=3arg2;karti} ||  || &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===statistische Funktionen===&lt;br /&gt;
Die Funktionen funktionieren nur ohne Einheiten.&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| factorial || Liefert die Fakultät einer positiven ganzen Zahl || factorial(5) || 120&lt;br /&gt;
|-&lt;br /&gt;
| binomial || Liefert den Binomialkoeffizienten von zwei positiven ganzen Zahlen || binomial(5,2) || 10&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Mengen-Funktionen===&lt;br /&gt;
Mengen werden intern als Vektoren verarbeitet und sind deshalb auch direkt durch Vektoren ersetzbar. Auch alle Vektor-Funktionen sind somit auch auf Mengen anwendbar und umgekehrt.&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis || ab Rev&lt;br /&gt;
|-&lt;br /&gt;
| setget || Liefert ein Element einer Menge oder einer Matrix (Menge von Mengen) || setget([12,13,14],1) &amp;lt;br&amp;gt; setget(matrix([9,2],[3,4]),0,1) || 13 &amp;lt;br&amp;gt; 2 &lt;br /&gt;
|-&lt;br /&gt;
| setset || setzt ein Element einer Menge oder einer Matrix (Menge von Mengen) || setset([12,13,14],1,35) &amp;lt;br&amp;gt; setset(matrix([9,2],[3,4]),0,0,-9) || [12,35,14] &amp;lt;br&amp;gt; [[-9,2],[3,4]]&lt;br /&gt;
|-&lt;br /&gt;
| setinsert || fügt ein Element in eine Menge an eine gegebene Stelle ein || setinsert([12,13,14],1,25) || [12,25,13,14]&lt;br /&gt;
|-&lt;br /&gt;
| setremove || löscht ein Element einer Menge || setremove([12,13,14],1) || [12,14]&lt;br /&gt;
|-&lt;br /&gt;
| setapply || wendet einen Ausdruck oder Funktion auf alle Elemente einer Menge an || setapply(y,[1,2,3],y*2) || [2,4,6] || 5965&lt;br /&gt;
|-&lt;br /&gt;
| setmedian || Liefert den Median einer Menge || setmedian([4,3,1,5,6]) || 4&lt;br /&gt;
|-&lt;br /&gt;
| setboxplot || Liefert die Werte des Boxplot einer Menge (Minimum, unteres Quartil, Median, oberes Quartil, Maximum) als Vektor verwendbar für das [[Plot#definierte_Zeichenelemente|Plot-Plugin]] || setboxplot([1,2,3,10,8,9]) || [1,2,5.5,9,10]&lt;br /&gt;
|-&lt;br /&gt;
| setsort || Sortiert die Elemente einer Menge aufsteigend || setsort([3,-3,2,0,5,2]) || [-3,0,2,2,3,5]&lt;br /&gt;
|-&lt;br /&gt;
| setsortnd || Sortiert die Elemente einer Menge aufsteigend und entfernt alle mehrfach vorkommenden Elemente || setsortnd([31,-3,2,31,0,5,2]) || [-3,0,2,5,31]&lt;br /&gt;
|-&lt;br /&gt;
| setcount || Bestimmt die Anzahl wie oft ein Element in einer Menge vorkommt oder die Anzahl der Elemente der Menge || setcount([31,-3,2,31,0,5,2],31) &amp;lt;br&amp;gt; setcount([2,5,3,6]) || 2 &amp;lt;br&amp;gt; 4&lt;br /&gt;
|-&lt;br /&gt;
| setmodus || Liefert das Element einer Menge, welches am öftesten vorkommt oder die Elemente als Menge wenn mehrere Elemente gleich oft vorkommen || setmodus([3,-3,2,0,5,2]) || 2&lt;br /&gt;
|-&lt;br /&gt;
| setreverse || Dreht die Reihenfolge einer Menge um || setreverse([3,-3,2,0,5,2]) || [2,5,0,2,-3,3]&lt;br /&gt;
|-&lt;br /&gt;
| setnd || Löscht alle Duplikate aus der Menge || setnd([3,-3,2,0,5,2]) || [3,-3,2,0,5]&lt;br /&gt;
|-&lt;br /&gt;
| setshuffle || Mischt eine  Menge in eine zufällige Reihenfolge || setshuffle([3,-3,2,0,5,2]) || [2,0,5,-3,2,3]&lt;br /&gt;
|-&lt;br /&gt;
| setmittel || Bestimmt den Mittelwert einer Menge || setmittel([1,3,2,4]) || 2.5&lt;br /&gt;
|-&lt;br /&gt;
| setgeomittel || Bestimmt das geometrische Mittelwert einer Menge aus positiven reellen Zahlen || setgeomittel([10,20,30]) || 18.171206&lt;br /&gt;
|-&lt;br /&gt;
| setvarianz || Bestimmt die empirische Varianz einer Menge || setvarianz([3,1,2,5,4]) || ((3-3)^2+(1-3)^2+(2-3)^2+(5-3)^2+(4-3)^2)/5=2&lt;br /&gt;
|-&lt;br /&gt;
| setquadratmittel || Bestimmt den quadratischen Mittelwert einer Menge || setquadratmittel([10,20,30]) || 21.6025&lt;br /&gt;
|-&lt;br /&gt;
| setsum || Bestimmt die Summe aller Werte einer Menge || setsum([1,3,2,4]) || 10&lt;br /&gt;
|-&lt;br /&gt;
| setprod || Bestimmt das Produkt aller Werte einer Menge || setprod([1,3,2,4]) || 24&lt;br /&gt;
|-&lt;br /&gt;
| setunion || Fügt mehrere Mengen zu einer neuen Menge zusammen || setunion([1,3,2,4],[3,7]) || {1,3,2,4,3,7}&lt;br /&gt;
|-&lt;br /&gt;
| setunionnd || Fügt mehrere Mengen zu einer neuen Menge zusammen, sortiert diese und entfernt alle mehrfachen Elemente || setunionnd([1,3,2,4],[3,7]) || {1,2,3,4,7}&lt;br /&gt;
|-&lt;br /&gt;
| setcut || Bildet die Schnittmenge aus mehreren Mengen || setcut([1,3,2,4],[3,7]) || {3}&lt;br /&gt;
|-&lt;br /&gt;
| setcompare || vergleicht zwei Mengen miteinander, wobei die Reihenfolge egal ist  || setcompare([1,3,2,4],[3,7]) &amp;lt;br&amp;gt; setcompare([1,3,2],[1,2,3]) &amp;lt;br&amp;gt; setcompare([1,3,2],[1,3,2,3]) &amp;lt;br&amp;gt; setcompare([1,2,3],[1,2,3])  || false &amp;lt;br&amp;gt; true &amp;lt;br&amp;gt; false &amp;lt;br&amp;gt; true&lt;br /&gt;
|-&lt;br /&gt;
| setcomparend || vergleicht zwei Mengen miteinander, wobei die Reihenfolge egal ist und doppelte Werte als einfach behandelt werden. || setcomparend([1,3,2,4],[3,7]) &amp;lt;br&amp;gt; setcomparend([1,3,2],[1,2,3]) &amp;lt;br&amp;gt; setcomparend([1,3,2],[1,3,2,3]) &amp;lt;br&amp;gt; setcomparend([1,2,3],[1,2,3])  || false &amp;lt;br&amp;gt; true &amp;lt;br&amp;gt; true &amp;lt;br&amp;gt; true&lt;br /&gt;
|-&lt;br /&gt;
| setpartof || prüft ob die erste Menge eine Teilmenge der zweite Menge ist wobei die Reihenfolge egal ist aber mehrfache Werte berücksichtigt werden  || setpartof([1,4],[1,3,7]) &amp;lt;br&amp;gt; setpartof([1,3],[1,2,3]) &amp;lt;br&amp;gt; setpartof([1,3,3],[1,3,5,7]) &amp;lt;br&amp;gt; setpartof([1,4,4],[1,2,3,4])  || false &amp;lt;br&amp;gt; true &amp;lt;br&amp;gt; false &amp;lt;br&amp;gt; false&lt;br /&gt;
|-&lt;br /&gt;
| setpartofnd || prüft ob die erste Menge eine Teilmenge der zweite Menge ist wobei die Reihenfolge und mehrfache Werte egal sind  || setpartofnd([1,4],[1,3,7]) &amp;lt;br&amp;gt; setpartofnd([1,3],[1,2,3]) &amp;lt;br&amp;gt; setpartofnd([1,3,3],[1,3,5,7]) &amp;lt;br&amp;gt; setpartofnd([1,4,4],[1,2,3,4])  || false &amp;lt;br&amp;gt; true &amp;lt;br&amp;gt; true &amp;lt;br&amp;gt; true&lt;br /&gt;
|-&lt;br /&gt;
| setgetmin || Liefert den kleinsten Wert einer Menge || setgetmin([1,3,-2,4]) || -2&lt;br /&gt;
|-&lt;br /&gt;
| setgetmax || Liefert den größten Wert einer Menge || setgetmax([1,3,-2,4]) || 4&lt;br /&gt;
|-&lt;br /&gt;
| setremovefirst || Entfernt den ersten Wert einer Menge || setremovefirst([1,3,-2,4]) || {3,-2,4}&lt;br /&gt;
|-&lt;br /&gt;
| setremovelast || Entfernt den letzten Wert einer Menge || setremovelast([1,3,-2,4]) || {1,3,-2}&lt;br /&gt;
|-&lt;br /&gt;
| setgetfirst || Liefert den ersten Wert einer Menge || setgetfirst([1,3,-2,4]) || 1&lt;br /&gt;
|-&lt;br /&gt;
| setgetlast || Liefert den letzten Wert einer Menge || setgetlast([1,3,-2,4]) || 4&lt;br /&gt;
|-&lt;br /&gt;
| setsub || setsub(M,x,y) Liefert eine Teilmenge von M der Elemente vom index x bis zum Index y || setsub([1,3,-2,4],1,2) || {3,-2}&lt;br /&gt;
|-&lt;br /&gt;
| setmakelist || setmakelist(f,x,start,stop) setzt in den Ausdruck f für x die Werte von start bis stop mit einer Schrittweite von 1 ein. || setmakelist(x^2,x,1,4) || [ 1,4,9,16 ]&lt;br /&gt;
|-&lt;br /&gt;
| || setmakelist(f,x,start,stop,schrittweite) setzt in den Ausdruck f für x die Werte von start bis stop mit dem Abstand schrittweite ein. || setmakelist(x^2,x,1,2,0.5) || [ 1,2.25,4 ]&lt;br /&gt;
|-&lt;br /&gt;
| || setmakelist(f,x,set) setzt die Werte des Vektors set in den Ausdruck f für x ein. || setmakelist(x^2,x,[3,1,2])  ||[ 9,1,4 ]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Typ-Funktionen===&lt;br /&gt;
Werden nur dann ausgewertet wenn der Parameter ein numerischer Wert oder eine Menge ist.&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| isset || Prüft ob es sich um eine Menge handelt. || isset([12,13,14]) || true &lt;br /&gt;
|-&lt;br /&gt;
| issetnumeric || Prüft ob es sich um eine Menge aus reellen Zahlen handelt. || issetnumeric([12,13.4,14]) || true &lt;br /&gt;
|-&lt;br /&gt;
| issetlong || Prüft ob es sich um eine Menge aus ganzen Zahlen handelt. || issetlong([12,13,14]) || true &lt;br /&gt;
|-&lt;br /&gt;
| islong || Prüft ob es sich um eine ganze Zahl handelt. || islong(12) || true &lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Algebra===&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;Hinweis:&#039;&#039; Die Indizes eines Vektors oder einer Matrix werden in Letto ausgehend von 0 weg gezählt.  &lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| matrix || erzeugt aus mehreren gleich langen Vektoren eine Matrix || matrix([1,2],[3,4]) || [[1,2],[3,4]]&lt;br /&gt;
|-&lt;br /&gt;
| inv || invertiert eine quadratische Matrix oder bildet 1/x || inv(matrix([1,2],[3,4])) || [[-2,1],[3/2,-1/2]]&lt;br /&gt;
|-&lt;br /&gt;
| vget || liefert ein Element eines Vektors oder einer Matrix || vget([12,13,14],1) &amp;lt;br&amp;gt; vget(matrix([9,2],[3,4]),0,1) || 13 &amp;lt;br&amp;gt; 2 &lt;br /&gt;
|-&lt;br /&gt;
| vset || setzt ein Element eines Vektors oder einer Matrix || vset([12,13,14],1,35) &amp;lt;br&amp;gt; vset(matrix([9,2],[3,4]),0,0,-9) || [12,35,14] &amp;lt;br&amp;gt; [[-9,2],[3,4]]&lt;br /&gt;
|-&lt;br /&gt;
| vinsert || fügt ein Element in einen Vektor an eine gegebene Stelle ein || vinsert([12,13,14],1,25) || [12,25,13,14]&lt;br /&gt;
|-&lt;br /&gt;
| vremove || löscht ein Element eines Vektors || vremove([12,13,14],1) || [12,14]&lt;br /&gt;
|-&lt;br /&gt;
| vabs || Berechnet den Betrag eines Vektors || vabs([3,4]) || 5&lt;br /&gt;
|-&lt;br /&gt;
| vin || Berechnet das innere Produkt von 2 Vektoren || vin([1,2,3],[4,5,6]) || 32&lt;br /&gt;
|-&lt;br /&gt;
| vex || Berechnet das ex-Produkt von 2 Vektoren im 3-dimensionalen Raum || vex([1,2,3],[4,5,6]) || [-3,6,-3]&lt;br /&gt;
|-&lt;br /&gt;
| mprod || Bildet das Matrixprodukt aus zwei Matrizen || mprod([[1,2],[3,4]],[[5,6],[7,8]]) || [[19,22],[43,50]]&lt;br /&gt;
|-&lt;br /&gt;
| mtrans || Bildet die transponierte Matrix || mtrans([[1,2],[3,4]]) || [[1,3],[2,4]]&lt;br /&gt;
|-&lt;br /&gt;
| minv || Bildet die inverse Matrix || minv([[1,2],[3,4]]) || [[-2,1],[3/2,-1/2]]&lt;br /&gt;
|-&lt;br /&gt;
| mdet || Bildet die Determinante einer quadratischen Matrix || mdet([[1,2],[3,4]]) || -2&lt;br /&gt;
|-&lt;br /&gt;
| vindex || vindex(v,x) liefert den Index des Elementes eines Vektors, welcher am nächsten bei x liegt || vindex([10,30,70],40) || 1 &lt;br /&gt;
|-&lt;br /&gt;
| vindexup || vindexup(v,x) liefert den Index des Elementes eines Vektors, welcher größer oder gleich x ist || vindexup([10,30,70],40) || 2 &lt;br /&gt;
|-&lt;br /&gt;
| vindexdown || vindexdown(v,x) liefert den Index des Elementes eines Vektors, welcher kleiner oder gleich x ist || vindexdown([10,30,70],60) || 1&lt;br /&gt;
|-&lt;br /&gt;
| verweis || verweis(M,x,n) liefert den Wert der n-ten Spalte (ohne Angabe von n die 2.Spalte) einer Matrix M wo x dem Wert in der ersten Spalte am nächsten liegt || verweis([[10,33],[20,77],[30,99]],21) || 77&lt;br /&gt;
|-&lt;br /&gt;
| verweisup || verweisup(M,x,n) liefert den Wert der n-ten Spalte (ohne Angabe von n die 2.Spalte) einer Matrix M wo x dem Wert in der ersten Spalte am nächsten liegt || verweisup([[10,33],[20,77],[30,99]],21) || 99&lt;br /&gt;
|-&lt;br /&gt;
| verweisdown || verweisdown(M,x,n) liefert den Wert der n-ten Spalte (ohne Angabe von n die 2.Spalte) einer Matrix M wo x dem Wert in der ersten Spalte am nächsten liegt || verweisdown([[10,33],[20,77],[30,99]],27,1) || 77&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Variable===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| kill || löscht Variable aus dem Variablenspeicher || kill(x,y) &amp;lt;br&amp;gt; kill(allbut(y)) &amp;lt;br&amp;gt; kill(all) || löscht die Variablen x und y &amp;lt;br&amp;gt; löscht alle Variablen mit Ausnahme von y &amp;lt;br&amp;gt; löscht alle Variable&lt;br /&gt;
|-&lt;br /&gt;
| allbut || Liefert eine Liste aller Variablen des Parsers als Menge(Vektor) mit Ausnahme der als Parameter angegebenen Variablen || allbut(x,y) || [a,b,c]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Auswertung und Programmierung===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| ev || Auswertung eines Ausdruckes, als Parameter können Gleichungen angegeben werden, welche dann in den Ausdruck eingesetzt werden || ev(x*y,y=4) || x*4&lt;br /&gt;
|-&lt;br /&gt;
| evruntime || Auswertung eines Ausdruckes, als Parameter können Gleichungen angegeben werden, welche dann in den Ausdruck eingesetzt werden. Das &#039;&#039;&#039;Einsetzen erfolgt erst bei der Ergebnisberechnung&#039;&#039;&#039;! || evruntime(x*y,y=4) || x*4&lt;br /&gt;
|-&lt;br /&gt;
| [[nv]] || Auswertung eines Ausdruckes, als Parameter können Gleichungen angegeben werden, welche dann in den Ausdruck eingesetzt werden. Im Gegensatz zu ev werden bestehende Variable nur in den Gleichungen, aber nicht im Ausdruck selbst eingesetzt! || nv(x*y,y=4) || x*4&lt;br /&gt;
|-&lt;br /&gt;
| [[if]] || Bedingungsfunktion if(bedingung,wahrwert,falschwert) || if(4&amp;lt;6,10,12) || 10&lt;br /&gt;
|-&lt;br /&gt;
| [[if|wenn]] || Bedingungsfunktion wenn(bedingung,wahrwert,falschwert). Im Prinzip identisch wie if, jedoch kann if mit Maxima nicht verwendet werden. || wenn(4&amp;lt;6,10,12) || 10&lt;br /&gt;
|-&lt;br /&gt;
| plugin || Ruft die Berechnungsmethode des Plugins, welches als erster Stringparameter angegeben werden muss auf und übergibt die weiteren Parameter an die Berechnungsmethode des Plugins.  || plugin(&amp;quot;plugin1&amp;quot;,3) || führt die Berechnung des Plugins mit dem Namen &amp;quot;plugin1&amp;quot; mit dem Parameter 3 aus. &lt;br /&gt;
|-&lt;br /&gt;
| symbolic || Bei allen Variablen innerhalb von symbolic werden nur nicht-numerische Werte eingesetzt! Wird vor allem im Angabtext bei {= } verwendet || symbolic(x^2+2) || x^2+2&lt;br /&gt;
|-&lt;br /&gt;
| runtime || Bei dieser Funktion wird &#039;&#039;&#039;erst bei der Berechnung der Frageantwort, nach dem Einsetzen der Datensätze&#039;&#039;&#039; das &#039;&#039;&#039;komplette Maxima-Feld&#039;&#039;&#039; mit dem internen &#039;&#039;&#039;Parser&#039;&#039;&#039; durchgerechnet und danach der Parameter-Ausdruck berechnet. Dadurch kann man bei komplizierten Berechnungen eine sehr aufwendige symbolische Berechnung verhindern! || runtime(U) || &lt;br /&gt;
|-&lt;br /&gt;
| dataset || liefert alle Datensätze einer Datensatz-Definition in einem Vektor || dataset(x) || &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Optimierung der Ausdrücke===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| opt   || Ausdruck wird vollständig optimiert, die Funktion wird ausgewertet und ist danach nicht mehr vorhanden. Nur bei der Verwendung des internen Parser sinnvoll. || opt(x+x) || 2*x&lt;br /&gt;
|-&lt;br /&gt;
| ratsimp || Ausdruck wird vollständig optimiert, die Funktion wird ausgewertet und ist danach nicht mehr vorhanden (wie opt, wird jedoch auch von Maxima ausgewertet) || ratsimp(x+x) || 2*x&lt;br /&gt;
|-&lt;br /&gt;
| noopt || Ausdruck wird nicht optimiert, bleibt also so erhalten wie angegeben. Die Funktion an sich geht aber verloren. || noopt(2+3) || 2+3&lt;br /&gt;
|-&lt;br /&gt;
| nopt || Ausdruck wird nicht optimiert, bleibt also so erhalten wie angegeben. Die Funktion bleibt erhalten und wird erst bei der Lösungsberechnung oder durch opt() entfernt. || noopt(2+3) || 2+3&lt;br /&gt;
|-&lt;br /&gt;
| lopt || Im Maximafeld bleibt die Funktion ohne Funktion erhalten, im Ergebnis {=  wird die Funktion entfernt und in der Lösung wird nach dem Einsetzen der Werte der Ausdruck vollständig optimiert. || lopt(x+3)  || lopt(x+3)  &lt;br /&gt;
|-&lt;br /&gt;
| lnoopt || Im Maximafeld bleibt die Funktion ohne Funktion erhalten, im Ergebnis {=  wird die Funktion entfernt und in der Lösung wird nach dem Einsetzen der Werte der Ausdruck nicht mehr optimiert. || lnoopt(x+3+2)  || lnoopt(x+5) &lt;br /&gt;
|-&lt;br /&gt;
| loptnumeric || Im Maximafeld bleibt die Funktion ohne Funktion erhalten, im Ergebnis {=  wird die Funktion entfernt und in der Lösung wird nach dem Einsetzen der Werte der Ausdruck nur numerisch optimiert. || loptnumeric(x+y)  || loptnumeric(x+y)&lt;br /&gt;
|-&lt;br /&gt;
| aopt || Bei Maxima und Lösung geht die Funktion verloren, nur innerhalb von noopt bleibt sie erhalten. Bei der Anzeige führt sie zur Optimierung das Ausdruckes nach Einsetzen der Datensätze. || aopt(x)  || x&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Anzeige und Lösungsberechnung===&lt;br /&gt;
Diese Funktionen haben entweder einen oder zwei Parameter. Der erste Parameter stellt die darzustellende Funktion dar, der zweite Parameter, welcher eine Ganzzahl sein muss, gibt an, wie die Darstellung erfolgen soll. Wird der 2.Parameter weggelassen, so wird er als 0 interpretiert.&lt;br /&gt;
* 0 Bei Berechnungen hat die Funktion keine Wirkung, bleibt aber als Funktion erhalten. Bei Lösung und Anzeige wird die Funktion ausgewertet&lt;br /&gt;
* 1 Wirkt nur bei Lösung, bei Berechnungen bleibt die Funktion erhalten&lt;br /&gt;
* 2 Wirkt nur bei Anzeige, bei Berechnungen bleibt die Funktion erhalten&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| viewpow || Gibt alle Wurzeln als Potenzen aus, und stellt alle Potenzen im Nenner als negativen Exponenten im Zähler dar || viewpow(sqrt(x)) || x^(1/2)&lt;br /&gt;
|-&lt;br /&gt;
| viewsqrt || Gibt Potenzen welche als Wurzel darstellbar sind auch als als Wurzeln mit der Funktion sqrt oder root aus || viewsqrt(x^(1/2)) || sqrt(x)&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Spezialfunktionen LeTTo ===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| points || Berechnet die erreichbare Gesamtpunkteanzahl einer Frage || points() || 2&lt;br /&gt;
|-&lt;br /&gt;
| points || Berechnet die erreichbare Punkteanzahl einer Teilfrage. Als Parameter wird die Fragenummer als Ganzzahl angegeben. || points(0) || 1&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Spezialfunktionen Technik===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| color || Widerstandsfarbcode berechnen.&amp;lt;br&amp;gt;1. Parameter muss ein Double sein&amp;lt;br&amp;gt; 2.Parameter sind die Anzahl der Farbringe&amp;lt;br&amp;gt; 3.Parameter ist der Modus (0..2-St,1..3St,2..Deutsch,3..2StEng,4..3StEng,5..Englisch || color(120,3,2) || braun,rot,braun&lt;br /&gt;
|-&lt;br /&gt;
| parsecolor || Wandelt einen String mit einem Widerstandsfarbcode in einen Double-Wert || parsecolor(&amp;quot;br-rt-br&amp;quot;) || 120&lt;br /&gt;
|-&lt;br /&gt;
| ip || Wandelt eine Long-Zahl in einen String als IP-Adresse um, oder 4 Byte-Zahlen in eine Long Zahl als IP-32-bit-Adresse || ip(1534536453)&amp;lt;br&amp;gt;ip(10,20,30,40) || &amp;quot;91.119.43.5&amp;quot;&amp;lt;br&amp;gt;169090600&lt;br /&gt;
|-&lt;br /&gt;
| parseip || Wandelt einen String mit einer IP-Adresse in einen Long-Wert || parseip(&amp;quot;91.119.43.5&amp;quot;) || 1534536453&lt;br /&gt;
|-&lt;br /&gt;
| e12 || rundet einen Zahlenwert auf den nächstliegenden Wert der [[Normreihe]] E12.&amp;lt;br&amp;gt;Die Rundung erfolgt geometrisch d.h. der Quotient zwischen Normwert und zu rundendem Wert wird minimiert. || e12(700Ohm) || 680Ohm&lt;br /&gt;
|-&lt;br /&gt;
| e12up || rundet einen Zahlenwert auf den nächstgrößerern Wert der [[Normreihe]] E12 || e12(670Ohm) || 680Ohm&lt;br /&gt;
|-&lt;br /&gt;
| e12down || rundet einen Zahlenwert auf den nächstkleineren Wert der [[Normreihe]] E12 || e12(700Ohm) || 680Ohm&lt;br /&gt;
|-&lt;br /&gt;
| ise12 || prüft ob der als Parameter übergebenen Wert ein Wert der [[Normreihe]] E12 ist.|| ise12(680Ohm) || true&lt;br /&gt;
|-&lt;br /&gt;
| norm || rundet einen Zahlenwert auf den nächstliegenden Wert einer gegebenen Wertereihe oder [[Normreihe]].&amp;lt;br&amp;gt;Die Rundung erfolgt geometrisch wenn es sich um eine logarithmisch aufgeteilte Normreihe handelt, oder sonst linear. || norm(700Ohm,E12) || 680Ohm&lt;br /&gt;
|-&lt;br /&gt;
| normup || rundet einen Zahlenwert auf den nächstgrößerern Wert einer gegebenen Wertereihe oder [[Normreihe]]. || normup(730Ohm,[1,3,5,8]) || 800Ohm&lt;br /&gt;
|-&lt;br /&gt;
| normdown || rundet einen Zahlenwert auf den nächstkleineren Wert einer gegebenen Wertereihe oder [[Normreihe]]. || normdown(700Ohm,E12) || 680Ohm&lt;br /&gt;
|-&lt;br /&gt;
| isnorm || prüft ob der als Parameter übergebenen Wert ein Wert einer gegebenen Wertereihe oder [[Normreihe]] ist. || isnorm(680Ohm,E12) || true&lt;br /&gt;
|}&lt;br /&gt;
===Raumzeiger für elektrische Maschinen===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| [[svphtosv]](a,b,c) || berechnet aus den Stranggrößen (a,b,c) einen komplexen Raumzeiger || svphtosv(0.5,0.5,-1) || 1arg60°&lt;br /&gt;
|-&lt;br /&gt;
| [[svsvtoph]](sv)&amp;lt;br&amp;gt;svsvtoph(sv,index) || berechnet aus einem komplexen Rauzeiger die Phasengrößen &amp;lt;br&amp;gt; berechnet aus einem komplexen Rauzeiger die Phasengrößen, index selektiert Stranggröße als Rückgabewert || svsvtoph(1arg60°)&amp;lt;br&amp;gt; svsvtoph(1arg60°,3)|| [0.5,0.5,-1] &amp;lt;br&amp;gt; -1&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=Ergebnisvorschau=&lt;br /&gt;
Aufruf dieses Dialoges über den [[Datei:ClipCapIt-180904-181443.PNG|25px]]-Button aus dem [[Toolbar]].&lt;br /&gt;
&lt;br /&gt;
Die Berechnungen aus dem Maxima-Feld bei der [[Beispiele Bearbeiten|Fragendefinition]] können auch über den [[Datei:ClipCapIt-180904-182120.PNG|25px]]-Button durchgeführt werden. Hier wird die Berechnung durchgeführt und das Lösungsfeld ausgefüllt, aber der Rechengang wird nicht angezeigt. &lt;br /&gt;
:[[Datei:ClipCapIt-180904-181415.PNG|400px]]&lt;br /&gt;
&lt;br /&gt;
Beim Fehlersuchen oder bei komplexen Berechnungen kann es aber hilfreich sein, den ganzen Maxima-Lösungsweg zu sehen, dies ist über den [[Datei:ClipCapIt-180904-181443.PNG|25px]]-Button möchlich.&lt;br /&gt;
&lt;br /&gt;
[[Kategorie:Berechnung]]&lt;/div&gt;</summary>
		<author><name>Ckral</name></author>
	</entry>
	<entry>
		<id>https://wiki.letto.at/wiki/index.php?title=Datei:Pulse_x_2_4.png&amp;diff=2865</id>
		<title>Datei:Pulse x 2 4.png</title>
		<link rel="alternate" type="text/html" href="https://wiki.letto.at/wiki/index.php?title=Datei:Pulse_x_2_4.png&amp;diff=2865"/>
		<updated>2021-04-27T19:33:21Z</updated>

		<summary type="html">&lt;p&gt;Ckral: Beispiel pulse(x,2,4)&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Beispiel pulse(x,2,4)&lt;/div&gt;</summary>
		<author><name>Ckral</name></author>
	</entry>
	<entry>
		<id>https://wiki.letto.at/wiki/index.php?title=Datei:Pulse.png&amp;diff=2864</id>
		<title>Datei:Pulse.png</title>
		<link rel="alternate" type="text/html" href="https://wiki.letto.at/wiki/index.php?title=Datei:Pulse.png&amp;diff=2864"/>
		<updated>2021-04-27T19:32:38Z</updated>

		<summary type="html">&lt;p&gt;Ckral: Erklärung der Parameter der Funktion pulse&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Erklärung der Parameter der Funktion pulse&lt;/div&gt;</summary>
		<author><name>Ckral</name></author>
	</entry>
	<entry>
		<id>https://wiki.letto.at/wiki/index.php?title=Klasse&amp;diff=2859</id>
		<title>Klasse</title>
		<link rel="alternate" type="text/html" href="https://wiki.letto.at/wiki/index.php?title=Klasse&amp;diff=2859"/>
		<updated>2021-03-19T18:32:20Z</updated>

		<summary type="html">&lt;p&gt;Ckral: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Allgemeines =&lt;br /&gt;
&lt;br /&gt;
Änderungen dürfen nicht in der Rolle &#039;&#039;Lehrer&#039;&#039;, sondern müssen in der Rolle &#039;&#039;Admin&#039;&#039; vorgenommen werden. &lt;br /&gt;
&lt;br /&gt;
:[[Datei:ClipCapIt-190128-120308.PNG]]&lt;br /&gt;
&lt;br /&gt;
== Klasse semestriert zuweisen ==&lt;br /&gt;
&lt;br /&gt;
Mögliche Optionen sind:&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;Klasse ist nicht semestriert&#039;&#039;&#039;: das sind typisch die 9. Schulstufe und höhere Schulstufen die nicht in der NOST sind, z.B. 1AHET&lt;br /&gt;
* &#039;&#039;&#039;Klasse im Wintersemester&#039;&#039;&#039;: das sind typisch die ungeraden Klassen des Kollegs, z.B. 3AKENS&lt;br /&gt;
* &#039;&#039;&#039;Klasse im Sommersemester&#039;&#039;&#039;: das sind typisch die geraden Klassen des Kollegs, z.B. 4AKENS&lt;br /&gt;
* &#039;&#039;&#039;Klasse ganzes Jahr gültig&#039;&#039;&#039;: das sind typisch die höheren Schulstufen, die sich in der NOST befinden&lt;br /&gt;
* &#039;&#039;&#039;WS/SS abwechselnd zuweisen&#039;&#039;&#039;: das ermöglich die automatisierte Zuweisung von z.B. Kollegklassen, die andernfalls manuell über &#039;&#039;&#039;Klasse im Wintersemester&#039;&#039;&#039; oder &#039;&#039;&#039;Klasse im Sommersemester&#039;&#039;&#039; eingestellt werden; bei dieser Auswahl kann man über eine Checkbox auswählen, ob Wintersemester den ungeraden Zahlen zugeordnet ist&lt;br /&gt;
&lt;br /&gt;
:[[Datei:WSSS_abwechselnd_zuweisen.png]]&lt;br /&gt;
&lt;br /&gt;
== Semestriert geführte Klassenbezeichnungen ==&lt;br /&gt;
&lt;br /&gt;
Semestriert geführte Klassen, beispielsweise eines Kollegs, können über die Schaltfläche &#039;&#039;Klasse semestriert zuweisen&#039;&#039; gesondert dem Winter- oder Sommersemester zugewiesen werden. &lt;br /&gt;
&lt;br /&gt;
Bei einer semestriert geführten Klassenbezeichnung müssen die Schüler aus den Klassen des Wintersemesters nach den Semesterferien in die Klasse des Sommersemesters übernommen werden. Neue hinzugekommene Schüler müssen entweder eine Export-CSV-Datei der Daten aus Sokrates oder vom Administrator einzeln hinzugefügt werden. &lt;br /&gt;
&lt;br /&gt;
Um beispielsweise die Schüler der Klasse 1AKENS in die Klasse 2AKENS zu übertragen, klickt in der Zeile der Klasse 2AKENS, der man die Schüler zuordnen möchte, auf das ganz links befindliche Symbol &#039;&#039;Anzeige von Schülern und Lehrern in dieser Klasse&#039;&#039;. Dann wählt man die Abteilung die Klasse 1AKENS aus der man die Schüler hinzufügen möchte.&lt;br /&gt;
&lt;br /&gt;
:[[Datei:1AKENS-in-2AKENS.png]]&lt;br /&gt;
&lt;br /&gt;
Wählt man das Häkchen ganz links oben aus, so werden alle Schüler markiert. Andernfalls kann man die Häkchen auch manuell auswählen. Danach klickt man auf die Schaltfläche &#039;&#039;Selektierte Schüler zur Klasse 2AKENS hinzufügen&#039;&#039; aus.&lt;br /&gt;
&lt;br /&gt;
= siehe auch =&lt;br /&gt;
&lt;br /&gt;
* [[Schul-Administrator]]&lt;/div&gt;</summary>
		<author><name>Ckral</name></author>
	</entry>
	<entry>
		<id>https://wiki.letto.at/wiki/index.php?title=Datei:WSSS_abwechselnd_zuweisen.png&amp;diff=2858</id>
		<title>Datei:WSSS abwechselnd zuweisen.png</title>
		<link rel="alternate" type="text/html" href="https://wiki.letto.at/wiki/index.php?title=Datei:WSSS_abwechselnd_zuweisen.png&amp;diff=2858"/>
		<updated>2021-03-19T18:21:06Z</updated>

		<summary type="html">&lt;p&gt;Ckral: WS/SS abwechselnd zuweisen aus 
Admin =&amp;gt; Klasse =&amp;gt; Klasse semestriert zuweisen&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;WS/SS abwechselnd zuweisen aus &lt;br /&gt;
Admin =&amp;gt; Klasse =&amp;gt; Klasse semestriert zuweisen&lt;/div&gt;</summary>
		<author><name>Ckral</name></author>
	</entry>
	<entry>
		<id>https://wiki.letto.at/wiki/index.php?title=Datei:Cosx.png&amp;diff=2674</id>
		<title>Datei:Cosx.png</title>
		<link rel="alternate" type="text/html" href="https://wiki.letto.at/wiki/index.php?title=Datei:Cosx.png&amp;diff=2674"/>
		<updated>2020-10-21T12:57:32Z</updated>

		<summary type="html">&lt;p&gt;Ckral: cos(x)&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;cos(x)&lt;/div&gt;</summary>
		<author><name>Ckral</name></author>
	</entry>
	<entry>
		<id>https://wiki.letto.at/wiki/index.php?title=Datei:Exp-x.png&amp;diff=2673</id>
		<title>Datei:Exp-x.png</title>
		<link rel="alternate" type="text/html" href="https://wiki.letto.at/wiki/index.php?title=Datei:Exp-x.png&amp;diff=2673"/>
		<updated>2020-10-21T12:54:21Z</updated>

		<summary type="html">&lt;p&gt;Ckral: exp(-x)&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;exp(-x)&lt;/div&gt;</summary>
		<author><name>Ckral</name></author>
	</entry>
	<entry>
		<id>https://wiki.letto.at/wiki/index.php?title=Datei:Root3x2.png&amp;diff=2672</id>
		<title>Datei:Root3x2.png</title>
		<link rel="alternate" type="text/html" href="https://wiki.letto.at/wiki/index.php?title=Datei:Root3x2.png&amp;diff=2672"/>
		<updated>2020-10-21T12:51:19Z</updated>

		<summary type="html">&lt;p&gt;Ckral: Ckral lud eine neue Version von Datei:Root3x2.png hoch&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Dritte Wurzel aus x²&lt;/div&gt;</summary>
		<author><name>Ckral</name></author>
	</entry>
	<entry>
		<id>https://wiki.letto.at/wiki/index.php?title=Datei:Root3x2.png&amp;diff=2671</id>
		<title>Datei:Root3x2.png</title>
		<link rel="alternate" type="text/html" href="https://wiki.letto.at/wiki/index.php?title=Datei:Root3x2.png&amp;diff=2671"/>
		<updated>2020-10-21T12:50:17Z</updated>

		<summary type="html">&lt;p&gt;Ckral: Dritte Wurzel aus x²&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Dritte Wurzel aus x²&lt;/div&gt;</summary>
		<author><name>Ckral</name></author>
	</entry>
	<entry>
		<id>https://wiki.letto.at/wiki/index.php?title=Datei:Xpowery.png&amp;diff=2670</id>
		<title>Datei:Xpowery.png</title>
		<link rel="alternate" type="text/html" href="https://wiki.letto.at/wiki/index.php?title=Datei:Xpowery.png&amp;diff=2670"/>
		<updated>2020-10-21T12:43:11Z</updated>

		<summary type="html">&lt;p&gt;Ckral: x hoch y&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;x hoch y&lt;/div&gt;</summary>
		<author><name>Ckral</name></author>
	</entry>
	<entry>
		<id>https://wiki.letto.at/wiki/index.php?title=Datei:Sqrt2.png&amp;diff=2669</id>
		<title>Datei:Sqrt2.png</title>
		<link rel="alternate" type="text/html" href="https://wiki.letto.at/wiki/index.php?title=Datei:Sqrt2.png&amp;diff=2669"/>
		<updated>2020-10-21T12:41:15Z</updated>

		<summary type="html">&lt;p&gt;Ckral: Wurzel aus 2&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Wurzel aus 2&lt;/div&gt;</summary>
		<author><name>Ckral</name></author>
	</entry>
	<entry>
		<id>https://wiki.letto.at/wiki/index.php?title=Berechnungen&amp;diff=2415</id>
		<title>Berechnungen</title>
		<link rel="alternate" type="text/html" href="https://wiki.letto.at/wiki/index.php?title=Berechnungen&amp;diff=2415"/>
		<updated>2020-05-27T17:11:31Z</updated>

		<summary type="html">&lt;p&gt;Ckral: Korrektur atan2(y,x) &amp;lt;= atan2(x,y)&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Allgemeines =&lt;br /&gt;
Berechnungen werden in mehreren Bereichen der Frageerstellung verwendet und bilden die Basis für [[Fragetypen#Berechnungsfrage|Berechnungsfrage]] und [[Fragetypen#Mehrfachberechnungsfrage|Mehrfachberechnungsfrage]].&lt;br /&gt;
&lt;br /&gt;
Alle Berechnungen unterstützen [[Einheit|Einheiten]] und symbolische Auswertung.&lt;br /&gt;
&lt;br /&gt;
=Grundsätzlicher Aufbau der Ergebnis-Berechnung bei Fragen mit Berechnungen=&lt;br /&gt;
[[Datei:BerechnungSchema.png|mini|hochkant=2.0|Schema der Berechnung]]&lt;br /&gt;
Die Berechnung und die Beurteilung einer Frage teilt sich in 3 grundsätzliche Schritte:&lt;br /&gt;
* Berechnnug der geschlossenen Lösung (Formel) aus den Maxima-Feldern &lt;br /&gt;
* Berechnung des Ergebnisses einer Frage durch Einsetzen der Zahlenwerte aus den Datensätzen in die geschlossene Lösung&lt;br /&gt;
* Beurteilung der Schülereingabe durch Vergleich mit dem Ergebnis&lt;br /&gt;
&lt;br /&gt;
=Konstante=&lt;br /&gt;
Alle Konstante welche in Letto definiert sind beginnen mit einem Prozentzeichen. Verwendet man den Variablennamen ohne Prozenzzeichen, so wird die Konstante wie eine Variable mit dem Wert der Konstanten verwendet.&lt;br /&gt;
&lt;br /&gt;
Liste der definierten Konstanten:&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%&amp;quot; &lt;br /&gt;
| Name || Wert || Beschreibung&lt;br /&gt;
|-&lt;br /&gt;
| %i || i || komplexer Parameter als Lösung der Gleichung x^2=-1&lt;br /&gt;
|-&lt;br /&gt;
| %j || i || komplexer Parameter als Lösung der Gleichung x^2=-1&lt;br /&gt;
|-&lt;br /&gt;
| %e || 2.718281828459045 || Eulersche Zahl &lt;br /&gt;
|-&lt;br /&gt;
| %pi || 3.141592653589793 || Kreiszahl&lt;br /&gt;
|-&lt;br /&gt;
| %mu0 || magnetische Feldkonstante || 4*%pi*1E-7&#039;Vs/Am&#039;&lt;br /&gt;
|-&lt;br /&gt;
| %m0 || magnetische Feldkonstante (alt, wird bald entfernt werden) || 4*%pi*1E-7&#039;Vs/Am&#039;&lt;br /&gt;
|-&lt;br /&gt;
| %epsilon0 || elektrische Feldkonstante || 8.85418781762039E-12&#039;As/Vm&#039;&lt;br /&gt;
|-&lt;br /&gt;
| %e0 || elektrische Feldkonstante (alt, wird bald entfernt werden) || 8.85418781762039E-12&#039;As/Vm&#039;&lt;br /&gt;
|-&lt;br /&gt;
| %c0 || Lichtgeschwindigkeit || 299792458&#039;m/s&#039;&lt;br /&gt;
|-&lt;br /&gt;
| %Qe || Elementarladung || 1.602176620898E-19As&lt;br /&gt;
|-&lt;br /&gt;
| %g  || Erdbeschleunigung || 9.81&#039;m/s^2&#039;&lt;br /&gt;
|-&lt;br /&gt;
| %NA || Avogadro Konstante || 6.02214085774E23/mol&lt;br /&gt;
|-&lt;br /&gt;
| %k  || Stefan Bolzman Konstante || 1.3806485279E-23&#039;J/K&#039;&lt;br /&gt;
|-&lt;br /&gt;
| %R0 || Universelle Gaskonstante || 8.314459848&#039;J/Kmol&#039;&lt;br /&gt;
|-&lt;br /&gt;
| %h || planksches Wirkungsquantum || 6.6260704081E-34Js&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=Berechnung mit Maxima=&lt;br /&gt;
* Maxima wird &#039;&#039;&#039;nur für symbolische Berechnungen&#039;&#039;&#039; bei der Erstellung von Beispielen verwendet. Hierbei wird, wie schon oberhalb im Schema angegeben, zuerst die Moodle.mac geladen, dann das [[Beispielsammlung Editieren#Maxima-Feld|Maxima-Feld]] berechnet und anschließend die Maxima-Felder aller Teilfragen. Das Ergebnis der Berechnung wird dann als symbolischer Ausdruck im Lösungfeld eingetragen.&lt;br /&gt;
* Da zum Zeitpunkt der &#039;&#039;&#039;Maxima-Berechnung keine Datensätze&#039;&#039;&#039; vorhanden sind, kann keine numerische Berechnung in Maxima durchgeführt werden, welche die [[Datensätze]] benötigt. Dies muss der interne Parser zum Zeitpunkt des Online-Test-Laufes erledigen. Numerische Berechnungen, welche der interne Parser nicht kann können deshalb auch nicht mit Maxima berechnet werden.&lt;br /&gt;
* Da das Lösungsfeld, welches mit Maxima berechnet wird symbolisch ausgewertet wird, können in Maxima sämtliche symbolischen Berechnungsverfahren angewendet werden, welche ein symbolisches Ergebnis liefern und keine numerischen Werte der Datensätze benötigen.&lt;br /&gt;
* Reicht im Maximafeld die Zeilenlänge nicht aus ist es möglich einen defninierten Zeilenumbruch zu realisieren. Schreiben Sie dazu &amp;quot;\&amp;quot; (einfacher Backslash) am Ende der Zeile.  &lt;br /&gt;
* &#039;&#039;&#039;Funktionsdeklarationen&#039;&#039;&#039; wie &#039;&#039;&#039;f(x):=&#039;&#039;&#039;x^2 mit Doppelpunkt-Ist-Gleich sind im Maxima-Feld nur eingeschränkt bis gar &#039;&#039;&#039;nicht verwendbar&#039;&#039;&#039;, da sie vom Parser nicht unterstützt werden.&lt;br /&gt;
* &#039;&#039;&#039;Mengen von Maxima&#039;&#039;&#039; sind in LeTTo n&#039;&#039;&#039;icht verwendbar&#039;&#039;&#039;. LeTTo verwender hierzu eigene Funktionen des Parsers welche mit &amp;quot;set&amp;quot; beginnen und auf Vektoren basieren.&lt;br /&gt;
&lt;br /&gt;
=Berechnung mit dem internen Parser=&lt;br /&gt;
* Der interne Parser kann durch Wahl der Checkbox &amp;quot;Parser&amp;quot; anstatt von Maxima für die Berechnung des Maxima-Feldes verwendet werden. &lt;br /&gt;
* Jedenfalls wird der Parser zur Test-Laufzeit für die Berechnung des Ergebnisses einer Frage aus Lösung und Datensätzen und zum Berechnen der Schülereingabe verwendet.&lt;br /&gt;
&lt;br /&gt;
==Operatoren==&lt;br /&gt;
=== VORSICHT mit MAXIMA ===&lt;br /&gt;
* Einige Operatoren sind in &#039;&#039;&#039;Maxima anders&#039;&#039;&#039;, oder &#039;&#039;&#039;nicht definiert&#039;&#039;&#039;. Möchte man im Maximafeld die Operatoren des Parsers-verwenden, so muss das gesamte Maxima-Feld &#039;&#039;&#039;mit dem Parser gerechnet&#039;&#039;&#039; werden. Man verliert dadurch jedoch die Vorteile der Maxima-Berechnung.&lt;br /&gt;
* Alternativ kann man statt der Operatoren auch &#039;&#039;&#039;Funktionen verwenden&#039;&#039;&#039; (zB: ne() statt != ). Diese werden dann von Maxima zwar nicht ausgewertet, die Berechnung bleibt aber trotzdem korrekt und kann mit Maxima durchgeführt werden.&lt;br /&gt;
* Es gibt einige Funktionen welche in &#039;&#039;&#039;Maxima existieren&#039;&#039;&#039; aber im &#039;&#039;&#039;Parser nicht, oder mit anderem Syntax&#039;&#039;&#039;.&lt;br /&gt;
** Wenn diese von Maxima nicht ausgewertet werden können, da sie &#039;&#039;&#039;Datensätze&#039;&#039;&#039; enthalten welche zu Auswertezeitpunkt von Maxima noch &#039;&#039;&#039;nicht mit Werten belegt&#039;&#039;&#039; sind, &#039;&#039;&#039;dürfen sie in der Berechnung nicht verwendet werden&#039;&#039;&#039;, da der Parser dann damit nichts anfangen kann.&lt;br /&gt;
** Solche Funktionen haben entweder im Parser eine alternative Schreibweise welche auch mit Maxima verwendet werden kann (z.B.: wenn), oder sie können prinzipell nicht verwendet werden. (Für wichtige Funktionsweisen könnte man in zukünftigen Versionen neue Funktionalitäten in den Parser einbauen, die die gewünschte Funktion erfüllen)&lt;br /&gt;
** Ein weiter Möglichkeit für die Verwendung solcher Funktionen ist der Verzicht auf Datensätze in diesen Funktionen, damit diese Funktion beim Auswerten des Maxima-Feldes bereits ausgewertet werden kann und somit der Parser davon nichts mehr sieht.&lt;br /&gt;
** zB:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
if then&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Infix Operatoren===&lt;br /&gt;
====arithmetische Operatoren====&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Operator || Priorität || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| + || 40 || Addition || 4+5 || 9 &lt;br /&gt;
|-&lt;br /&gt;
| - || 40 || Subtraktion || 6-2 || 4&lt;br /&gt;
|-&lt;br /&gt;
| * || 50 || Multiplikation || 4*5 || 20&lt;br /&gt;
|-&lt;br /&gt;
| / || 51 || Division || 20/4 || 5&lt;br /&gt;
|-&lt;br /&gt;
| % || 51 || Divisionsrest || 104%20 || 4&lt;br /&gt;
|-&lt;br /&gt;
| / / || 60 || Parallelschaltung || x / / y || x*y/(x+y)&lt;br /&gt;
|-&lt;br /&gt;
| ^ || 90 || Potenz || 2^3 || 8&lt;br /&gt;
|-&lt;br /&gt;
| .*. || 200 || Operator der intern für eine fehlende bindende Multiplikation verwendet wird || 4x || 4*x&lt;br /&gt;
|-&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
====Bitoperatoren====&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Operator || Priorität || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
||  |  || 20 || Bitweise oder logisches ODER ||| 9|5 &amp;lt;br&amp;gt; true|false || 13 &amp;lt;br&amp;gt;true&lt;br /&gt;
|-&lt;br /&gt;
| or || 20 || Bitweise oder logisches ODER || 9 or 5 || 13&lt;br /&gt;
|-&lt;br /&gt;
| &amp;amp;  || 21 || Bitweise oder logisches UND  || 13&amp;amp;10 || 8&lt;br /&gt;
|-&lt;br /&gt;
| and || 21 || Bitweise oder logisches UND  || 13 and 10 || 8&lt;br /&gt;
|-&lt;br /&gt;
| xor || 22 || Bitweise oder logisches exklusiv oder XOR  || 13 xor 10 || 7&lt;br /&gt;
|-&lt;br /&gt;
| imp || 23 || Bitweise oder logisches impliziert IMP || 13 imp 10 || 8&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;&amp;lt;  || 35 || Bitweise links schieben  || 5&amp;lt;&amp;lt;2 || 20&lt;br /&gt;
|-&lt;br /&gt;
| &amp;gt;&amp;gt;  || 35 || Bitweise rechts schieben || 8&amp;gt;&amp;gt;2 || 2&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
====Vergleichsoperatoren====&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Operator || Priorität || Beschreibung || Beispiel&lt;br /&gt;
|-&lt;br /&gt;
| =  || 3 || Gleichungsoperator || x=y&lt;br /&gt;
|-&lt;br /&gt;
| == || 30 || Gleichungsoperator || x==y&lt;br /&gt;
|-&lt;br /&gt;
| != || 30 || Ungleichungsoperator || x!=y&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt; || 32 || Kleiner || x&amp;lt;y&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;= || 32 || Kleiner gleich || x&amp;lt;=y&lt;br /&gt;
|-&lt;br /&gt;
| &amp;gt; || 32 || größer || x&amp;gt;y&lt;br /&gt;
|-&lt;br /&gt;
| &amp;gt;= || 32 || größer gleich || x&amp;gt;=y&lt;br /&gt;
|}&lt;br /&gt;
====Organisative Operatoren====&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Operator || Priorität || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| , || 0 || Listen-Trennzeichen || x,y ||&lt;br /&gt;
|-&lt;br /&gt;
| $ || 1 || Trennzeichen zwischen mehreren Berechnungen || ||&lt;br /&gt;
|-&lt;br /&gt;
| ; || 1 || Trennzeichen zwischen mehreren Berechnungen || ||&lt;br /&gt;
|-&lt;br /&gt;
| : || 2 || Zuweisung an eine Variablen auf der linken Seite || x:5 || &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Prefix Operatoren===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Operator || Priorität || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| + || 45 || positives Vorzeichen || +5 || 5&lt;br /&gt;
|-&lt;br /&gt;
| - || 45 || negatives Vorzeichen || -(-5) || 5&lt;br /&gt;
|-&lt;br /&gt;
| ~ || 95  || bitweise Inversion einer 64bit-Ganzzahl || ~0x0F0F || 0xFFFFFFFFFFFFF0F0&lt;br /&gt;
|-&lt;br /&gt;
| ! || 120 || logisches NOT || !(3&amp;lt;4) || false&lt;br /&gt;
|-&lt;br /&gt;
| ++ || 130 || Inkrement von Ganzzahlen || ++x || erhöht x um eins und gibt das Ergebnis nach der Erhöhung zurück&lt;br /&gt;
|-&lt;br /&gt;
| -- || 130 || Dekrement von Ganzzahlen || --x || vermindert x um eins und gibt das Ergebnis nach der Verminderung zurück&lt;br /&gt;
|-&lt;br /&gt;
| % || 200 || Prefix für Namen, welche als Konstante definiert sind || %pi || 3.141592653589793&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Suffix Operatoren===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Operator || Priorität || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| ++ || 135 || Inkrement von Ganzzahlen || x++ || erhöht x um eins und gibt den Variablenwert vor der Erhöhung zurück&lt;br /&gt;
|-&lt;br /&gt;
| -- || 135 || Dekrement von Ganzzahlen || x-- || vermindert x um eins und gibt den Variablenwert vor der Verminderung zurück&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==Klammern==&lt;br /&gt;
* () runde Klammern werden für mathematische Ausdrücke zur Klammerung verwendet&lt;br /&gt;
* {} geschwungene Klammer werden im Angabetext für die Namen der Datensätze verwendet&lt;br /&gt;
* [] eckige Klammern werden für Vektoren und Matrizen verwendet&lt;br /&gt;
&lt;br /&gt;
==Funktionen==&lt;br /&gt;
===Funktionen für Ganzzahlen===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| band || bitweises UND || band(4,12) || 4&lt;br /&gt;
|-&lt;br /&gt;
| bor  || bitweises ODER || bor(4,1) || 5&lt;br /&gt;
|-&lt;br /&gt;
| bxor || bitweises EXKLUSIV ODER || band(4,5) || 1&lt;br /&gt;
|-&lt;br /&gt;
| bimp || bitweises Parameter1 impliziert Parameter2 || bimp(13,10) || 8&lt;br /&gt;
|-&lt;br /&gt;
| binv || bitweises NICHT mit 8 bit || binv(0x0F) || 0xF0&lt;br /&gt;
|-&lt;br /&gt;
| shl || Schiebe Ganzzahl bitweise nach links || shl(8,2) || 32&lt;br /&gt;
|-&lt;br /&gt;
| shr || Schiebe Ganzzahl bitweise nach rechts || shr(8,2) || 2&lt;br /&gt;
|-&lt;br /&gt;
| div || Ganzzahldivision, Ergebnis wird abgeschnitten || div(5,2) || 2&lt;br /&gt;
|-&lt;br /&gt;
| inv8  || bitweise Invertieren und die letzten 8 Bit bestimmen  || inv8(0b1001) || 0b11110110&lt;br /&gt;
|-&lt;br /&gt;
| inv16 || bitweise Invertieren und die letzten 16 Bit bestimmen || inv16(0xF0)  || 0xFF0F&lt;br /&gt;
|-&lt;br /&gt;
| inv32 || bitweise Invertieren und die letzten 32 Bit bestimmen || inv32(0xF0)  || 0bFFFFFF0F&lt;br /&gt;
|-&lt;br /&gt;
| inv64 || bitweise Invertieren und die letzten 64 Bit bestimmen || inv64(0xF0)  || 0bFFFFFFFFFFFFFF0F&lt;br /&gt;
|-&lt;br /&gt;
| byte  || Zahl in eine Ganzzahl wandeln und die letzten 8bit der Zahl Abschneiden, Einheit geht verloren  || byte(34.2) || 34&lt;br /&gt;
|-&lt;br /&gt;
| word  || Zahl in eine Ganzzahl wandeln und die letzten 16bit der Zahl Abschneiden, Einheit geht verloren || word(34.2) || 34&lt;br /&gt;
|-&lt;br /&gt;
| int   || Zahl in eine Ganzzahl wandeln und die letzten 32bit der Zahl Abschneiden, Einheit geht verloren || int(34.2) || 34&lt;br /&gt;
|-&lt;br /&gt;
| long  || Zahl in eine Ganzzahl wandeln , Einheit geht verloren || long(34.2) || 34&lt;br /&gt;
|-&lt;br /&gt;
| [[parity]]  || Paritätsberechnung : parity(Parität,Codewortlänge,Datenwort[,Datenwort,....]) || parity(even,7,&amp;quot;xy&amp;quot;) || &lt;br /&gt;
|-&lt;br /&gt;
| [[blockparity]]  || Kreuz oder Blockparität : blockparity(Parität,Codewortlänge,Codewortanzahl,Datenwort[,Datenwort,....]) || blockparity(even,7,3,&amp;quot;abc&amp;quot;) || &lt;br /&gt;
|-&lt;br /&gt;
| [[bcd]]  || Wandelt in eine Long-Zahl in ein Feld aus BCD-kodierten Zahlen um || bcd(124) || [1,2,4]&lt;br /&gt;
|-&lt;br /&gt;
| [[code]] || Code aus mehreren Codeworten zusammensetzen : code(Codewortlänge,Datenwort[,Datenwort,....]) || code(5,4,3,5) || 0b1000001100101&lt;br /&gt;
|-&lt;br /&gt;
| [[hamming]] || Bestimmt den Hamming-Abstand von mehreren Codeworten || hamming(1,2,4,8,16) || 2&lt;br /&gt;
|-&lt;br /&gt;
| [[komplement]] ||  Bildet das Zweierkomplement mit einer negativen Zahl mit einer bestimmten Bitanzahl, fehlt die Bitanzahl, so wird ein 32Bit-2er-komplement gebildet || komplement(-5,8) || 0b11111011&lt;br /&gt;
|-&lt;br /&gt;
| [[bitstream]] || Erzeugt aus einer Ganzzahl einen Bitstrom als String mit einer definierten Anzahl von Bit (MSB werden nötigenfalls mit 0 gefüllt) : bitstream(Daten,Bitanzahl) || bitstream(0x184,12) || &amp;quot;000110000100&amp;quot;&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Funktionen für rationale und Ganzzahlen===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| kgV || berechnet das kleinste gemeinsame Vielfache von mehreren Zahlen || kgV(3,10) || 30&lt;br /&gt;
|-&lt;br /&gt;
| ggT || berechnet den größten gemeinsamen Teiler von mehreren Zahlen || ggT(12,10) || 2&lt;br /&gt;
|- &lt;br /&gt;
| isprim || prüft ob die angegebene Zahl eine Primzahl ist || isprim(13) || true&lt;br /&gt;
|-&lt;br /&gt;
| prims || zerlegt eine Ganzzahl in ihre Primfaktoren || prims(12) || [2,2,3]&lt;br /&gt;
|-&lt;br /&gt;
| defracmix || zerlegt eine rationale Zahl in einen gemischten Bruch aus ganzzahligem Summanden, Zähler und Nenner als Menge&amp;lt;br&amp;gt;Die erhaltene Menge kann mit dem Format-Modfier &#039;&#039;&#039;frac&#039;&#039;&#039; als gemischter Bruch dargestellt werden (siehe [[Zahlendarstellung]]) || defracmix(14/12)&amp;lt;br&amp;gt;defracmix(-15/12)&amp;lt;br&amp;gt;defracmix(3/12) || [1,2/12]&amp;lt;br&amp;gt;[-1,3,12]&amp;lt;br&amp;gt;[0,3,12] &lt;br /&gt;
|-&lt;br /&gt;
| defrac || zerlegt eine rationale Zahl in Zähler und Nenner als Menge &amp;lt;br&amp;gt;Die erhaltene Menge kann mit dem Format-Modfier &#039;&#039;&#039;frac&#039;&#039;&#039; als gemischter Bruch dargestellt werden || defrac(14/12) || [13,12]&lt;br /&gt;
|-&lt;br /&gt;
| frac || erzeugt aus einer Menge aus 2 oder 3 Elementen (von defrac) eine rationale Zahl || frac([3,7])&amp;lt;br&amp;gt;frac([1,2,3]) || 3/7 &amp;lt;br&amp;gt; 5/3&lt;br /&gt;
|-&lt;br /&gt;
| mod || Modulo: Divisionsrest einer Division mit ganzzahligem Ergebnis || mod(5,2) &amp;lt;br&amp;gt; mod(6.2,2.5) || 1&amp;lt;br&amp;gt;1.2&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===boolsche Funktionen===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| eq || gleich || eq(4,4) || true&lt;br /&gt;
|-&lt;br /&gt;
| eqruntime || symbolischer Vergleich, welcher &#039;&#039;&#039;symbolisch erst bei der Ergebnisberechnung&#039;&#039;&#039; ausgeführt wird. Muss verwendet werden, wenn bei Vergleichen symbolische Antworten von Schülern (Q0,Q1,...) verwendet werden.  || eqruntime(x+3*y,3*y+x) || true&lt;br /&gt;
|-&lt;br /&gt;
| ne || ungleich || ne(6,4) || true&lt;br /&gt;
|-&lt;br /&gt;
| ge || größer gleich || ge(6,4) || true&lt;br /&gt;
|-&lt;br /&gt;
| le || kleiner gleich || le(6,4) || false&lt;br /&gt;
|-&lt;br /&gt;
| gt || größer || gt(6,4) || true&lt;br /&gt;
|-&lt;br /&gt;
| lt || kleiner || lt(6,4) || false&lt;br /&gt;
|-&lt;br /&gt;
| between || prüft ob Parameter1 kleiner als Parameter2 und Parameter2 kleiner als Parameter 3 || between(3,4,5) || true&lt;br /&gt;
|-&lt;br /&gt;
| land || logisches UND || land(a&amp;lt;b,b&amp;lt;c) || &lt;br /&gt;
|-&lt;br /&gt;
| lor  || logisches ODER || lor(a&amp;lt;b,b&amp;lt;c) || &lt;br /&gt;
|-&lt;br /&gt;
| not  || logisches NICHT. Vorsicht ein symbolisches Ergebnis von Maxima liefert not als Prefix-Operator, welcher vom Parser nicht unterstützt wird ( Verwende statt dessen &#039;&#039;&#039;lnot&#039;&#039;&#039; ) || not(a&amp;lt;b) || &lt;br /&gt;
|-&lt;br /&gt;
| lnot  || logisches NICHT, wie not jedoch wird es von Maxima nicht ausgewertet || lnot(a&amp;lt;b) || &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===arithmetische Funktionen===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| double || Zahl ein eine Gleitkommazahl umwandeln, die Einheit geht dabei verloren || double(3.4V) || 3.4&lt;br /&gt;
|-&lt;br /&gt;
| numeric || verwirft die Einheit, wenn eine vorhanden ist und liefert nur den Zahlenwert || numeric(2.3mA) &amp;lt;br&amp;gt; numeric(5%)|| 0.0023 &amp;lt;br&amp;gt; 5&lt;br /&gt;
|-&lt;br /&gt;
| unit || gibt die SI-Einheit mit dem Zahlenwert 1 zurück || unit(3.1kA) &amp;lt;br&amp;gt; unit(5%) || 1A &amp;lt;br&amp;gt; 1%&lt;br /&gt;
|-&lt;br /&gt;
| cround  || Rundet die Zahl kaufmännisch, der zweite Parameter gibt die Anzahl der Kommastellen an, ohne 2.Parameter wird auf Ganzzahlen gerundet, bei komplexen Zahlen wird Betrag und Winkel in Grad gerundet. || cround(23.535,2)&amp;lt;br&amp;gt;cround(2.435arg34.5364°,1) || 23.54&amp;lt;br&amp;gt;2.4arg34.5°&lt;br /&gt;
|-&lt;br /&gt;
| ccround  || Rundet die Zahl kaufmännisch, der zweite Parameter gibt die Anzahl der Kommastellen an, bei komplexe Zahlen wird Real und Imaginärteil gerundet. || ccround(2.4534+5.645*%i,2) || 2.45+5.65i&lt;br /&gt;
|-&lt;br /&gt;
| round  || Rundet die Zahl kaufmännisch, aus Kompatibilitätsgründen zu Maxima hat round nur einen Parameter || round(23.535) || 24&lt;br /&gt;
|-&lt;br /&gt;
| ground || Rundet die Zahl auf die im zweiten Parameter angegebenen gültigen Ziffern || ground(2453.43,2) || 2500&lt;br /&gt;
|-&lt;br /&gt;
| floor  || Rundet auf die größte ganze Zahl, welche kleiner oder gleich x ist || floor(24.5) || 24&lt;br /&gt;
|-&lt;br /&gt;
| trunc  || Schneidet die Zahl nach dem Komma ab || trunc(24.5) || 24&lt;br /&gt;
|-&lt;br /&gt;
| ceiling || ceiling(x) Rundet auf die kleinste ganze Zahl, welche größer oder gleich x ist || ceiling(13.2) || 14&lt;br /&gt;
|-&lt;br /&gt;
| pow || Potenzfunktion || pow(2,3) || 8&lt;br /&gt;
|-&lt;br /&gt;
| par || Parallelschaltung von Widerständen || par(x,y) || x*y/(x+y)&lt;br /&gt;
|-&lt;br /&gt;
| min  || Minimum von mehrere Werten suchen || min(3,5,1) || 1&lt;br /&gt;
|-&lt;br /&gt;
| max  || Maximum von mehreren Werten suchen || max(3,5,1) ||  5&lt;br /&gt;
|-&lt;br /&gt;
| random  || Zufallszahl aus einem definierten Zahlenbereich random(minimal,maximal)&amp;lt;br&amp;gt;VORSICHT! Die Zufallszahl wird bei jedem Aufruf neu berechnet, weshalb sich der Wert bei jedem Anzeigevorgang einer Frage ändert. Sollte sich der berechnete Wert für eine Schülerangabe zwischen Fragestellung und Ergebniskontrolle nicht ändern dürfen (ist der Normalfall) muss man einen &#039;&#039;&#039;Datensatz statt einer Zufallszahl&#039;&#039;&#039; verwenden! &amp;lt;br&amp;gt; Zufallszahlen haben in der Ergebnisberechnung keinen Sinn, und sollten maximal für angezeigte zufällige Werte verwendet werden! || random(2,8) ||  3.4532&lt;br /&gt;
|-&lt;br /&gt;
| randomC  || komplexe Zufallszahl aus einem definierten Zahlenbereich für den Betrag&amp;lt;br&amp;gt;VORSICHT! Die Zufallszahl wird bei jedem Aufruf neu berechnet!  || randomC(2,8) ||  3.4532arg40.3°&lt;br /&gt;
|-&lt;br /&gt;
| signum  || Liefert das Vorzeichen einer Zahl (-1,0,1). Bei einer komplexen Zahl das Vorzeichen des Realteils. || signum(-4) || -1&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===erweiterte arithmetische Funktionen===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| sigma || Sprungfunktion: sigma(x) liefert 0 für x&amp;lt;0 und 1 für x&amp;gt;=0 || sigma(243.3) || 1&lt;br /&gt;
|-&lt;br /&gt;
| interpol || Interpolationsfunktion zwischen mehreren Stützpunkten in einem Koordinatensystem. &amp;lt;br&amp;gt; interpol(WerteX,WerteY,x) || interpol([0,1,2],[0,3,3],1.5) || 3&lt;br /&gt;
|-&lt;br /&gt;
| periodic || Erzeugt aus einer beliebigen Funktion zwischen 0 und Periodendauer eine periodische Funktion &amp;lt;br&amp;gt; periodic(Variable,Periodendauer,Funktion)&amp;lt;br&amp;gt; periodic(Variable,Periodendauer,Funktionsperiodendauer,Funktion) || ch1(t):periodic(t,5ms,2&#039;Vms-2&#039;*t^2) &amp;lt;br&amp;gt; ch1(t):periodic(t,5ms,1,2V*t^2) || :[[Datei:ClipCapIt-190318-113524.PNG|100px]] &amp;lt;br&amp;gt; :[[Datei:ClipCapIt-190318-113644.PNG|100px]]&lt;br /&gt;
|-&lt;br /&gt;
| numint || numerische Integration &amp;lt;br&amp;gt; numint(untereGrenze,obereGrenze,funktion,Variable)&amp;lt;br&amp;gt; numint(untereGrenze,obereGrenze,funktion,Variable,punkteAnzahl) || numint(0,2pi,sin(t),t) || 0&lt;br /&gt;
|-&lt;br /&gt;
| numdif || numerisches Differenzieren einer Funktion &amp;quot;funktion&amp;quot; nach einer Variablen &amp;quot;Variable&amp;quot; an der Stelle &amp;quot;position&amp;quot; mit einer Differenz der Variablen von &amp;quot;differenz&amp;quot; &amp;lt;br&amp;gt; numdif(position,funktion,Variable,differenz) || numdif(0,sin(t),t,0.01) || 1&lt;br /&gt;
|-&lt;br /&gt;
| solve || löst eine Gleichung oder ein Gleichungssystem nach einer oder mehrerer Variablen || solve([2*x+y=3,x-y=0],[x,y]) || [ [ x=1,y=1 ] ]&lt;br /&gt;
|-&lt;br /&gt;
| solvevalue || löst eine Gleichung oder ein Gleichungssystem nach einer Variablen und liefert genau die erste Lösung wenn sie numerisch berechenbar ist || solvevalue([ 2*x+y=3,x-y=0 ],[ x,y ],x)  || 1&lt;br /&gt;
|-&lt;br /&gt;
| newton || Bestimmt eine Nullstelle einer Funktion nach dem Newton-Verfahren. Der erste Parameter ist ein Ausdruck in einer Variablen, der zweite Parameter ist der Startwert. || newton(x^2-4,4) || 2&lt;br /&gt;
|-&lt;br /&gt;
| cnewton || Bestimmt eine komplexe Nullstelle einer Funktion nach dem Newton-Verfahren. Der erste Parameter ist ein Ausdruck in einer Variablen, der zweite Parameter ist der komplexe Startwert. || newton(x^2+4,4) || 2*%i&lt;br /&gt;
|-&lt;br /&gt;
| newtonall || Bestimmt alle Nullstellen einer Funktion mit einem Betrag des Funktionsparameters kleiner als ein definierter Wert nach dem Newton-Verfahren. Der erste Parameter ist ein Ausdruck in einer Variablen, der zweite Parameter ist der maximale Betrag des Funktionsparameters. Das Ergebnis ist immer ein Vektor mit den nach aufsteigendem Funktionswert sortierten Nullstellen. || newton(x^2-4,4) || [-2,2]&lt;br /&gt;
|-&lt;br /&gt;
| cnewtonall || Bestimmt alle komplexen Nullstellen einer Funktion mit einem Betrag des Funktionsparameters kleiner als ein definierter Wert nach dem Newton-Verfahren. Der erste Parameter ist ein Ausdruck in einer Variablen, der zweite Parameter ist der maximale Betrag des Funktionsparameters. Das Ergebnis ist immer ein Vektor mit den Nullstellen. || newton(x^2+4,4) || [-2*%i,2*%i]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Stringfunktionen===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| dechex || Zahl in eine Ganzzahl wandeln und als Hexadezimal-String ausgeben || dexhex(12) || &amp;quot;0xC&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| chr || Bestimmt die Zeichen mit dem ASC-II-Code der Long-Parameter und setzt daraus einen String zusammen. || chr(0x65,105) || &amp;quot;ei&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| val || Bestimmt den ASC-II-Code des ersten Zeichens welches als String-Parameter übergeben wurde.|| val(&amp;quot;a&amp;quot;) || 97&lt;br /&gt;
|-&lt;br /&gt;
| strcat || Fügt mehrere Strings zusammen.|| strcat(&amp;quot;a&amp;quot;,&amp;quot;b&amp;quot;) || &amp;quot;ab&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===trigonometrische Funktionen===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| sin || Sinus || sin(%pi/2) || 1&lt;br /&gt;
|-&lt;br /&gt;
| cos || Cosinus || cos(%pi/2) || 0&lt;br /&gt;
|-&lt;br /&gt;
| tan || Tangens || tan(%pi/4) || 1&lt;br /&gt;
|-&lt;br /&gt;
| asin || Arcus-Sinus || asin(1) || %pi/2&lt;br /&gt;
|-&lt;br /&gt;
| arcsin || Arcus-Sinus || asin(1) || %pi/2&lt;br /&gt;
|-&lt;br /&gt;
| acos || Arcus-Cosinus || acos(1) || 0&lt;br /&gt;
|-&lt;br /&gt;
| arccos || Arcus-Cosinus || acos(1) || 0&lt;br /&gt;
|-&lt;br /&gt;
| atan || Arcus-Tangens || atan(1) || %pi/4&lt;br /&gt;
|-&lt;br /&gt;
| arctan || Arcus-Tangens || arctan(1) || %pi/4&lt;br /&gt;
|-&lt;br /&gt;
| atan2 || Arcus-Tangens atan2(y,x)=arctan(y/x) || atan2(-2,-2) || -%pi*3/4&lt;br /&gt;
|-&lt;br /&gt;
| arctan2 || Arcus-Tangens arctan2(y,x)=arctan(y/x) || arctan2(-2,-2) || -%pi*3/4&lt;br /&gt;
|-&lt;br /&gt;
| sinh || Sinus-Hyperbolicus || sinh(1) || 1.1752012&lt;br /&gt;
|-&lt;br /&gt;
| cosh || Cosinus-Hyperbolicus || cosh(1) || 1.5430806&lt;br /&gt;
|-&lt;br /&gt;
| tanh || Tangens-Hyperbolicus || tanh(1) || 0.7615941&lt;br /&gt;
|-&lt;br /&gt;
| coth || Cotangens-Hyperbolicus || coth(1) || 1.313035&lt;br /&gt;
|-&lt;br /&gt;
| asinh || Area-Sinus-Hyperbolicus || asinh(1.1752012) || 1&lt;br /&gt;
|-&lt;br /&gt;
| acosh || Area-Cosinus-Hyperbolicus || acosh(1.5430806) || 1&lt;br /&gt;
|-&lt;br /&gt;
| atanh || Area-Tangens-Hyperbolicus || atanh(0.7615941) || 1&lt;br /&gt;
|-&lt;br /&gt;
| acoth || Area-Cotangens-Hyperbolicus || acoth(1.313035) || 1&lt;br /&gt;
|-&lt;br /&gt;
| [[csin]] || Erzeugt aus einer komplexen Zahl (Effektivwert) und einer Frequenz einen Sinusfunktion in der Zeit || csin(U) || sqrt(2)*cabs(U)*sin(2*pi*f*t+carg(U))&lt;br /&gt;
|-&lt;br /&gt;
| [[quadrant]] || Liefert den Quadranten eines Winkels mit einer Toleranzangabe. || quadrant(20°,5°) || 1&lt;br /&gt;
|-&lt;br /&gt;
| argnorm || Wandelt einen Winkel auf den Bereich von 0°-360° || argnorm(-50°) || 310°&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Exponentialfunktionen===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| pow || Potenzfunktion || pow(2,3) || 8&lt;br /&gt;
|-&lt;br /&gt;
| exp|| Exponentialfunktion || exp(1) || %e&lt;br /&gt;
|-&lt;br /&gt;
| log || natürlicher Logarythmus || log(%e) || 1&lt;br /&gt;
|-&lt;br /&gt;
| ln || natürlicher Logarythmus || ln(%e) || 1&lt;br /&gt;
|-&lt;br /&gt;
| log10 || Logarythmus zur Basis 10 || log10(100) || 2&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===komplexe Zahlen===&lt;br /&gt;
Die Funktionen zu komplexen Zahlen werden (anders als in Maxima) nur ausgewertet wenn das Ergebnis numerisch berechenbar ist, ansonsten bleibt die Funktion symbolisch erhalten.&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| abs || Liefert den Absolutbetrag einer komplexen Zahl || abs(3+4*%i) || 5&lt;br /&gt;
|-&lt;br /&gt;
| cabs || Liefert den Absolutbetrag einer komplexen Zahl || cabs(3+4*%i) || 5&lt;br /&gt;
|-&lt;br /&gt;
| carg || Liefert das Argument einer komplexen Zahl || carg(4*%e^(3*%i)) || 3&lt;br /&gt;
|-&lt;br /&gt;
| realpart || Liefert den Realteil einer komplexen Zahl || abs(3+4*%i) || 3&lt;br /&gt;
|-&lt;br /&gt;
| imagpart || Liefert den Imaginärteil einer komplexen Zahl || abs(3+4*%i) || 4&lt;br /&gt;
|-&lt;br /&gt;
| conjugate || Liefert die konjugiert komplexe Zahl einer komplexen Zahl || abs(3+4*%i) || 3-4*%i&lt;br /&gt;
|-&lt;br /&gt;
| rectform || wandelt die komplexe Zahl in eine Ansicht mit Real- und Imaginärteil || 3+4*%i || 3+4*%i&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===statistische Funktionen===&lt;br /&gt;
Die Funktionen funktionieren nur ohne Einheiten.&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| factorial || Liefert die Fakultät einer positiven ganzen Zahl || factorial(5) || 120&lt;br /&gt;
|-&lt;br /&gt;
| binomial || Liefert den Binomialkoeffizienten von zwei positiven ganzen Zahlen || binomial(5,2) || 10&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Mengen-Funktionen===&lt;br /&gt;
Mengen werden intern als Vektoren verarbeitet und sind deshalb auch direkt durch Vektoren ersetzbar. Auch alle Vektor-Funktionen sind somit auch auf Mengen anwendbar und umgekehrt.&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| setget || liefert ein Element einer Menge oder einer Matrix (Menge von Mengen) || setget([12,13,14],1) &amp;lt;br&amp;gt; setget(matrix([9,2],[3,4]),0,1) || 13 &amp;lt;br&amp;gt; 2 &lt;br /&gt;
|-&lt;br /&gt;
| setset || setzt ein Element einer Menge oder einer Matrix (Menge von Mengen) || setset([12,13,14],1,35) &amp;lt;br&amp;gt; setset(matrix([9,2],[3,4]),0,0,-9) || [12,35,14] &amp;lt;br&amp;gt; [[-9,2],[3,4]]&lt;br /&gt;
|-&lt;br /&gt;
| setinsert || fügt ein Element in eine Menge an eine gegebene Stelle ein || setinsert([12,13,14],1,25) || [12,25,13,14]&lt;br /&gt;
|-&lt;br /&gt;
| setremove || löscht ein Element einer Menge || setremove([12,13,14],1) || [12,14]&lt;br /&gt;
|-&lt;br /&gt;
| setmedian || Liefert den Median einer Menge || setmedian(4,3,1,5,6) || 4&lt;br /&gt;
|-&lt;br /&gt;
| setsort || Sortiert die Elemente einer Menge aufsteigend || setsort([3,-3,2,0,5,2]) || [-3,0,2,2,3,5]&lt;br /&gt;
|-&lt;br /&gt;
| setsortnd || Sortiert die Elemente einer Menge aufsteigend und entfernt alle mehrfach vorkommenden Elemente || setsortnd([31,-3,2,31,0,5,2]) || [-3,0,2,5,31]&lt;br /&gt;
|-&lt;br /&gt;
| setcount || Bestimmt die Anzahl wie oft ein Element in einer Menge vorkommt oder die Anzahl der Elemente der Menge || setcount([31,-3,2,31,0,5,2],31) &amp;lt;br&amp;gt; setcount([2,5,3,6]) || 2 &amp;lt;br&amp;gt; 4&lt;br /&gt;
|-&lt;br /&gt;
| setmodus || Liefert das Element einer Menge, welches am öftesten vorkommt oder die Elemente als Menge wenn mehrere Elemente gleich oft vorkommen || setmodus([3,-3,2,0,5,2]) || 2&lt;br /&gt;
|-&lt;br /&gt;
| setreverse || Dreht die Reihenfolge einer Menge um || setreverse([3,-3,2,0,5,2]) || [2,5,0,2,-3,3]&lt;br /&gt;
|-&lt;br /&gt;
| setnd || Löscht alle Duplikate aus der Menge || setnd([3,-3,2,0,5,2]) || [3,-3,2,0,5]&lt;br /&gt;
|-&lt;br /&gt;
| setshuffle || Mischt eine  Menge in eine zufällige Reihenfolge || setshuffle([3,-3,2,0,5,2]) || [2,0,5,-3,2,3]&lt;br /&gt;
|-&lt;br /&gt;
| setmittel || Bestimmt den Mittelwert einer Menge || setmittel([1,3,2,4]) || 2.5&lt;br /&gt;
|-&lt;br /&gt;
| setgeomittel || Bestimmt das geometrische Mittelwert einer Menge aus positiven reellen Zahlen || setgeomittel([10,20,30]) || 18.171206&lt;br /&gt;
|-&lt;br /&gt;
| setvarianz || Bestimmt die empirische Varianz einer Menge || setvarianz([3,1,2,5,4]) || ((3-3)^2+(1-3)^2+(2-3)^2+(5-3)^2+(4-3)^2)/5=2&lt;br /&gt;
|-&lt;br /&gt;
| setquadratmittel || Bestimmt den quadratischen Mittelwert einer Menge || setquadratmittel([10,20,30]) || 21.6025&lt;br /&gt;
|-&lt;br /&gt;
| setsum || Bestimmt die Summe aller Werte einer Menge || setsum([1,3,2,4]) || 10&lt;br /&gt;
|-&lt;br /&gt;
| setprod || Bestimmt das Produkt aller Werte einer Menge || setprod([1,3,2,4]) || 24&lt;br /&gt;
|-&lt;br /&gt;
| setunion || Fügt mehrere Mengen zu einer neuen Menge zusammen || setunion([1,3,2,4],[3,7]) || {1,3,2,4,3,7}&lt;br /&gt;
|-&lt;br /&gt;
| setunionnd || Fügt mehrere Mengen zu einer neuen Menge zusammen, sortiert diese und entfernt alle mehrfachen Elemente || setunionnd([1,3,2,4],[3,7]) || {1,2,3,4,7}&lt;br /&gt;
|-&lt;br /&gt;
| setcut || Bildet die Schnittmenge aus mehreren Mengen || setcut([1,3,2,4],[3,7]) || {3}&lt;br /&gt;
|-&lt;br /&gt;
| setcompare || vergleicht zwei Mengen miteinander, wobei die Reihenfolge egal ist  || setcompare([1,3,2,4],[3,7]) &amp;lt;br&amp;gt; setcompare([1,3,2],[1,2,3]) &amp;lt;br&amp;gt; setcompare([1,3,2],[1,3,2,3]) &amp;lt;br&amp;gt; setcompare([1,2,3],[1,2,3])  || false &amp;lt;br&amp;gt; true &amp;lt;br&amp;gt; false &amp;lt;br&amp;gt; true&lt;br /&gt;
|-&lt;br /&gt;
| setcomparend || vergleicht zwei Mengen miteinander, wobei die Reihenfolge egal ist und doppelte Werte als einfach behandelt werden. || setcomparend([1,3,2,4],[3,7]) &amp;lt;br&amp;gt; setcomparend([1,3,2],[1,2,3]) &amp;lt;br&amp;gt; setcomparend([1,3,2],[1,3,2,3]) &amp;lt;br&amp;gt; setcomparend([1,2,3],[1,2,3])  || false &amp;lt;br&amp;gt; true &amp;lt;br&amp;gt; true &amp;lt;br&amp;gt; true&lt;br /&gt;
|-&lt;br /&gt;
| setpartof || prüft ob die erste Menge eine Teilmenge der zweite Menge ist wobei die Reihenfolge egal ist aber mehrfache Werte berücksichtigt werden  || setpartof([1,4],[1,3,7]) &amp;lt;br&amp;gt; setpartof([1,3],[1,2,3]) &amp;lt;br&amp;gt; setpartof([1,3,3],[1,3,5,7]) &amp;lt;br&amp;gt; setpartof([1,4,4],[1,2,3,4])  || false &amp;lt;br&amp;gt; true &amp;lt;br&amp;gt; false &amp;lt;br&amp;gt; false&lt;br /&gt;
|-&lt;br /&gt;
| setpartofnd || prüft ob die erste Menge eine Teilmenge der zweite Menge ist wobei die Reihenfolge und mehrfache Werte egal sind  || setpartofnd([1,4],[1,3,7]) &amp;lt;br&amp;gt; setpartofnd([1,3],[1,2,3]) &amp;lt;br&amp;gt; setpartofnd([1,3,3],[1,3,5,7]) &amp;lt;br&amp;gt; setpartofnd([1,4,4],[1,2,3,4])  || false &amp;lt;br&amp;gt; true &amp;lt;br&amp;gt; true &amp;lt;br&amp;gt; true&lt;br /&gt;
|-&lt;br /&gt;
| setgetmin || Liefert den kleinsten Wert einer Menge || setgetmin([1,3,-2,4]) || -2&lt;br /&gt;
|-&lt;br /&gt;
| setgetmax || Liefert den größten Wert einer Menge || setgetmax([1,3,-2,4]) || 4&lt;br /&gt;
|-&lt;br /&gt;
| setremovefirst || Entfernt den ersten Wert einer Menge || setremovefirst([1,3,-2,4]) || {3,-2,4}&lt;br /&gt;
|-&lt;br /&gt;
| setremovelast || Entfernt den letzten Wert einer Menge || setremovelast([1,3,-2,4]) || {1,3,-2}&lt;br /&gt;
|-&lt;br /&gt;
| setgetfirst || Liefert den ersten Wert einer Menge || setgetfirst([1,3,-2,4]) || 1&lt;br /&gt;
|-&lt;br /&gt;
| setgetlast || Liefert den letzten Wert einer Menge || setgetlast([1,3,-2,4]) || 4&lt;br /&gt;
|-&lt;br /&gt;
| setsub || setsub(M,x,y) Liefert eine Teilmenge von M der Elemente vom index x bis zum Index y || setsub([1,3,-2,4],1,2) || {3,-2}&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Typ-Funktionen===&lt;br /&gt;
Werden nur dann ausgewertet wenn der Parameter ein numerischer Wert oder eine Menge ist.&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| isset || Prüft ob es sich um eine Menge handelt. || isset([12,13,14]) || true &lt;br /&gt;
|-&lt;br /&gt;
| issetnumeric || Prüft ob es sich um eine Menge aus reellen Zahlen handelt. || issetnumeric([12,13.4,14]) || true &lt;br /&gt;
|-&lt;br /&gt;
| issetlong || Prüft ob es sich um eine Menge aus ganzen Zahlen handelt. || issetlong([12,13,14]) || true &lt;br /&gt;
|-&lt;br /&gt;
| islong || Prüft ob es sich um eine ganze Zahl handelt. || islong(12) || true &lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Algebra===&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;Hinweis:&#039;&#039; Die Indizes eines Vektors oder einer Matrix werden in Letto ausgehend von 0 weg gezählt.  &lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| matrix || erzeugt aus mehreren gleich langen Vektoren eine Matrix || matrix([1,2],[3,4]) || [[1,2],[3,4]]&lt;br /&gt;
|-&lt;br /&gt;
| inv || invertiert eine quadratische Matrix oder bildet 1/x || inv(matrix([1,2],[3,4])) || [[-2,1],[3/2,-1/2]]&lt;br /&gt;
|-&lt;br /&gt;
| vget || liefert ein Element eines Vektors oder einer Matrix || vget([12,13,14],1) &amp;lt;br&amp;gt; vget(matrix([9,2],[3,4]),0,1) || 13 &amp;lt;br&amp;gt; 2 &lt;br /&gt;
|-&lt;br /&gt;
| vset || setzt ein Element eines Vektors oder einer Matrix || vset([12,13,14],1,35) &amp;lt;br&amp;gt; vset(matrix([9,2],[3,4]),0,0,-9) || [12,35,14] &amp;lt;br&amp;gt; [[-9,2],[3,4]]&lt;br /&gt;
|-&lt;br /&gt;
| vinsert || fügt ein Element in einen Vektor an eine gegebene Stelle ein || vinsert([12,13,14],1,25) || [12,25,13,14]&lt;br /&gt;
|-&lt;br /&gt;
| vremove || löscht ein Element eines Vektors || vremove([12,13,14],1) || [12,14]&lt;br /&gt;
|-&lt;br /&gt;
| vabs || Berechnet den Betrag eines Vektors || vabs([3,4]) || 5&lt;br /&gt;
|-&lt;br /&gt;
| vin || Berechnet das innere Produkt von 2 Vektoren || vin([1,2,3],[4,5,6]) || 32&lt;br /&gt;
|-&lt;br /&gt;
| vex || Berechnet das ex-Produkt von 2 Vektoren im 3-dimensionalen Raum || vex([1,2,3],[4,5,6]) || [-3,6,-3]&lt;br /&gt;
|-&lt;br /&gt;
| mprod || Bildet das Matrixprodukt aus zwei Matrizen || mprod([[1,2],[3,4]],[[5,6],[7,8]]) || [[19,22],[43,50]]&lt;br /&gt;
|-&lt;br /&gt;
| mtrans || Bildet die transponierte Matrix || mtrans([[1,2],[3,4]]) || [[1,3],[2,4]]&lt;br /&gt;
|-&lt;br /&gt;
| minv || Bildet die inverse Matrix || minv([[1,2],[3,4]]) || [[-2,1],[3/2,-1/2]]&lt;br /&gt;
|-&lt;br /&gt;
| mdet || Bildet die Determinante einer quadratischen Matrix || mdet([[1,2],[3,4]]) || -2&lt;br /&gt;
|-&lt;br /&gt;
| vindex || vindex(v,x) liefert den Index des Elementes eines Vektors, welcher am nächsten bei x liegt || vindex([10,30,70],40) || 1 &lt;br /&gt;
|-&lt;br /&gt;
| vindexup || vindexup(v,x) liefert den Index des Elementes eines Vektors, welcher größer oder gleich x ist || vindexup([10,30,70],40) || 2 &lt;br /&gt;
|-&lt;br /&gt;
| vindexdown || vindexdown(v,x) liefert den Index des Elementes eines Vektors, welcher kleiner oder gleich x ist || vindexdown([10,30,70],60) || 1&lt;br /&gt;
|-&lt;br /&gt;
| verweis || verweis(M,x,n) liefert den Wert der n-ten Spalte (ohne Angabe von n die 2.Spalte) einer Matrix M wo x dem Wert in der ersten Spalte am nächsten liegt || verweis([[10,33],[20,77],[30,99]],21) || 77&lt;br /&gt;
|-&lt;br /&gt;
| verweisup || verweisup(M,x,n) liefert den Wert der n-ten Spalte (ohne Angabe von n die 2.Spalte) einer Matrix M wo x dem Wert in der ersten Spalte am nächsten liegt || verweisup([[10,33],[20,77],[30,99]],21) || 99&lt;br /&gt;
|-&lt;br /&gt;
| verweisdown || verweisdown(M,x,n) liefert den Wert der n-ten Spalte (ohne Angabe von n die 2.Spalte) einer Matrix M wo x dem Wert in der ersten Spalte am nächsten liegt || verweisdown([[10,33],[20,77],[30,99]],27,1) || 77&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Variable===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| kill || löscht Variable aus dem Variablenspeicher || kill(x,y) &amp;lt;br&amp;gt; kill(allbut(y)) &amp;lt;br&amp;gt; kill(all) || löscht die Variablen x und y &amp;lt;br&amp;gt; löscht alle Variablen mit Ausnahme von y &amp;lt;br&amp;gt; löscht alle Variable&lt;br /&gt;
|-&lt;br /&gt;
| allbut || Liefert eine Liste aller Variablen des Parsers als Menge(Vektor) mit Ausnahme der als Parameter angegebenen Variablen || allbut(x,y) || [a,b,c]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Auswertung und Programmierung===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| ev || Auswertung eines Ausdruckes, als Parameter können Gleichungen angegeben werden, welche dann in den Ausdruck eingesetzt werden || ev(x*y,y=4) || x*4&lt;br /&gt;
|-&lt;br /&gt;
| evruntime || Auswertung eines Ausdruckes, als Parameter können Gleichungen angegeben werden, welche dann in den Ausdruck eingesetzt werden. Das &#039;&#039;&#039;Einsetzen erfolgt erst bei der Ergebnisberechnung&#039;&#039;&#039;! || evruntime(x*y,y=4) || x*4&lt;br /&gt;
|-&lt;br /&gt;
| nv || Auswertung eines Ausdruckes, als Parameter können Gleichungen angegeben werden, welche dann in den Ausdruck eingesetzt werden. Im Gegensatz zu ev werden bestehende Variable nur in den Gleichungen, aber nicht im Ausdruck selbst eingesetzt! || nv(x*y,y=4) || x*4&lt;br /&gt;
|-&lt;br /&gt;
| [[if]] || Bedingungsfunktion if(bedingung,wahrwert,falschwert) || if(4&amp;lt;6,10,12) || 10&lt;br /&gt;
|-&lt;br /&gt;
| [[if|wenn]] || Bedingungsfunktion wenn(bedingung,wahrwert,falschwert). Im Prinzip identisch wie if, jedoch kann if mit Maxima nicht verwendet werden. || wenn(4&amp;lt;6,10,12) || 10&lt;br /&gt;
|-&lt;br /&gt;
| plugin || Ruft die Berechnungsmethode des Plugins, welches als erster Stringparameter angegeben werden muss auf und übergibt die weiteren Parameter an die Berechnungsmethode des Plugins.  || plugin(&amp;quot;plugin1&amp;quot;,3) || führt die Berechnung des Plugins mit dem Namen &amp;quot;plugin1&amp;quot; mit dem Parameter 3 aus. &lt;br /&gt;
|-&lt;br /&gt;
| symbolic || Bei allen Variablen innerhalb von symbolic werden nur nicht-numerische Werte eingesetzt! Wird vor allem im Angabtext bei {= } verwendet || symbolic(x^2+2) || x^2+2&lt;br /&gt;
|-&lt;br /&gt;
| runtime || Bei dieser Funktion wird &#039;&#039;&#039;erst bei der Berechnung der Frageantwort, nach dem Einsetzen der Datensätze&#039;&#039;&#039; das &#039;&#039;&#039;komplette Maxima-Feld&#039;&#039;&#039; mit dem internen &#039;&#039;&#039;Parser&#039;&#039;&#039; durchgerechnet und danach der Parameter-Ausdruck berechnet. Dadurch kann man bei komplizierten Berechnungen eine sehr aufwendige symbolische Berechnung verhindern! || runtime(U) || &lt;br /&gt;
|-&lt;br /&gt;
| dataset || liefert alle Datensätze einer Datensatz-Definition in einem Vektor || dataset(x) || &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Optimierung der Ausdrücke===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| opt   || Ausdruck wird vollständig optimiert, die Funktion wird ausgewertet und ist danach nicht mehr vorhanden || opt(x+x) || 2*x&lt;br /&gt;
|-&lt;br /&gt;
| ratsimp || Ausdruck wird vollständig optimiert, die Funktion wird ausgewertet und ist danach nicht mehr vorhanden (wie opt) || ratsimp(x+x) || 2*x&lt;br /&gt;
|-&lt;br /&gt;
| noopt || Ausdruck wird nicht optimiert, bleibt also so erhalten wie angegeben. Die Funktion an sich geht aber verloren. || noopt(2+3) || 2+3&lt;br /&gt;
|-&lt;br /&gt;
| lopt || Im Maximafeld bleibt die Funktion ohne Funktion erhalten, im Ergebnis {=  wird die Funktion entfernt und in der Lösung wird nach dem Einsetzen der Werte der Ausdruck vollständig optimiert. || lopt(x+3)  || lopt(x+3)  &lt;br /&gt;
|-&lt;br /&gt;
| lnoopt || Im Maximafeld bleibt die Funktion ohne Funktion erhalten, im Ergebnis {=  wird die Funktion entfernt und in der Lösung wird nach dem Einsetzen der Werte der Ausdruck nicht mehr optimiert. || lnoopt(x+3+2)  || lnoopt(x+5) &lt;br /&gt;
|-&lt;br /&gt;
| loptnumeric || Im Maximafeld bleibt die Funktion ohne Funktion erhalten, im Ergebnis {=  wird die Funktion entfernt und in der Lösung wird nach dem Einsetzen der Werte der Ausdruck nur numerisch optimiert. || loptnumeric(x+y)  || loptnumeric(x+y)&lt;br /&gt;
|-&lt;br /&gt;
| aopt || Bei Maxima und Lösung geht die Funktion verloren, nur innerhalb von noopt bleibt sie erhalten. Bei der Anzeige führt sie zur Optimierung das Ausdruckes nach Einsetzen der Datensätze. || aopt(x)  || x&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Anzeige und Lösungsberechnung===&lt;br /&gt;
Diese Funktionen haben entweder einen oder zwei Parameter. Der erste Parameter stellt die darzustellende Funktion dar, der zweite Parameter, welcher eine Ganzzahl sein muss, gibt an, wie die Darstellung erfolgen soll. Wird der 2.Parameter weggelassen, so wird er als 0 interpretiert.&lt;br /&gt;
* 0 Bei Berechnungen hat die Funktion keine Wirkung, bleibt aber als Funktion erhalten. Bei Lösung und Anzeige wird die Funktion ausgewertet&lt;br /&gt;
* 1 Wirkt nur bei Lösung, bei Berechnungen bleibt die Funktion erhalten&lt;br /&gt;
* 2 Wirkt nur bei Anzeige, bei Berechnungen bleibt die Funktion erhalten&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| viewpow || Gibt alle Wurzeln als Potenzen aus, und stellt alle Potenzen im Nenner als negativen Exponenten im Zähler dar || viewpow(sqrt(x)) || x^(1/2)&lt;br /&gt;
|-&lt;br /&gt;
| viewsqrt || Gibt Potenzen welche als Wurzel darstellbar sind auch als als Wurzeln mit der Funktion sqrt oder root aus || viewsqrt(x^(1/2)) || sqrt(x)&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Spezialfunktionen Technik===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| color || Widerstandsfarbcode berechnen.&amp;lt;br&amp;gt;1. Parameter muss ein Double sein&amp;lt;br&amp;gt; 2.Parameter sind die Anzahl der Farbringe&amp;lt;br&amp;gt; 3.Parameter ist der Modus (0..2-St,1..3St,2..Deutsch,3..2StEng,4..3StEng,5..Englisch || color(120,3,2) || braun,rot,braun&lt;br /&gt;
|-&lt;br /&gt;
| parsecolor || Wandelt einen String mit einem Widerstandsfarbcode in einen Double-Wert || parsecolor(&amp;quot;br-rt-br&amp;quot;) || 120&lt;br /&gt;
|-&lt;br /&gt;
| ip || Wandelt eine Long-Zahl in einen String als IP-Adresse um, oder 4 Byte-Zahlen in eine Long Zahl als IP-32-bit-Adresse || ip(1534536453)&amp;lt;br&amp;gt;ip(10,20,30,40) || &amp;quot;91.119.43.5&amp;quot;&amp;lt;br&amp;gt;169090600&lt;br /&gt;
|-&lt;br /&gt;
| parseip || Wandelt einen String mit einer IP-Adresse in einen Long-Wert || parseip(&amp;quot;91.119.43.5&amp;quot;) || 1534536453&lt;br /&gt;
|-&lt;br /&gt;
| e12 || rundet einen Zahlenwert auf den nächstliegenden Wert der [[Normreihe]] E12.&amp;lt;br&amp;gt;Die Rundung erfolgt geometrisch d.h. der Quotient zwischen Normwert und zu rundendem Wert wird minimiert. || e12(700Ohm) || 680Ohm&lt;br /&gt;
|-&lt;br /&gt;
| e12up || rundet einen Zahlenwert auf den nächstgrößerern Wert der [[Normreihe]] E12 || e12(670Ohm) || 680Ohm&lt;br /&gt;
|-&lt;br /&gt;
| e12down || rundet einen Zahlenwert auf den nächstkleineren Wert der [[Normreihe]] E12 || e12(700Ohm) || 680Ohm&lt;br /&gt;
|-&lt;br /&gt;
| ise12 || prüft ob der als Parameter übergebenen Wert ein Wert der [[Normreihe]] E12 ist.|| ise12(680Ohm) || true&lt;br /&gt;
|-&lt;br /&gt;
| norm || rundet einen Zahlenwert auf den nächstliegenden Wert einer gegebenen Wertereihe oder [[Normreihe]].&amp;lt;br&amp;gt;Die Rundung erfolgt geometrisch wenn es sich um eine logarithmisch aufgeteilte Normreihe handelt, oder sonst linear. || norm(700Ohm,E12) || 680Ohm&lt;br /&gt;
|-&lt;br /&gt;
| normup || rundet einen Zahlenwert auf den nächstgrößerern Wert einer gegebenen Wertereihe oder [[Normreihe]]. || normup(730Ohm,[1,3,5,8]) || 800Ohm&lt;br /&gt;
|-&lt;br /&gt;
| normdown || rundet einen Zahlenwert auf den nächstkleineren Wert einer gegebenen Wertereihe oder [[Normreihe]]. || normdown(700Ohm,E12) || 680Ohm&lt;br /&gt;
|-&lt;br /&gt;
| isnorm || prüft ob der als Parameter übergebenen Wert ein Wert einer gegebenen Wertereihe oder [[Normreihe]] ist. || isnorm(680Ohm,E12) || true&lt;br /&gt;
|}&lt;br /&gt;
===Raumzeiger für elektrische Maschinen===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| [[svphtosv]](a,b,c) || berechnet aus den Stranggrößen (a,b,c) einen komplexen Raumzeiger || svphtosv(0.5,0.5,-1) || 1arg60°&lt;br /&gt;
|-&lt;br /&gt;
| [[svsvtoph]](sv)&amp;lt;br&amp;gt;svsvtoph(sv,index) || berechnet aus einem komplexen Rauzeiger die Phasengrößen &amp;lt;br&amp;gt; berechnet aus einem komplexen Rauzeiger die Phasengrößen, index selektiert Stranggröße als Rückgabewert || svsvtoph(1arg60°)&amp;lt;br&amp;gt; svsvtoph(1arg60°,3)|| [0.5,0.5,-1] &amp;lt;br&amp;gt; -1&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=Ergebnisvorschau=&lt;br /&gt;
Aufruf dieses Dialoges über den [[Datei:ClipCapIt-180904-181443.PNG|25px]]-Button aus dem [[Toolbar]].&lt;br /&gt;
&lt;br /&gt;
Die Berechnungen aus dem Maxima-Feld bei der [[Beispiele Bearbeiten|Fragendefinition]] können auch über den [[Datei:ClipCapIt-180904-182120.PNG|25px]]-Button durchgeführt werden. Hier wird die Berechnung durchgeführt und das Lösungsfeld ausgefüllt, aber der Rechengang wird nicht angezeigt. &lt;br /&gt;
:[[Datei:ClipCapIt-180904-181415.PNG|400px]]&lt;br /&gt;
&lt;br /&gt;
Beim Fehlersuchen oder bei komplexen Berechnungen kann es aber hilfreich sein, den ganzen Maxima-Lösungsweg zu sehen, dies ist über den [[Datei:ClipCapIt-180904-181443.PNG|25px]]-Button möchlich.&lt;br /&gt;
&lt;br /&gt;
[[Kategorie:Berechnung]]&lt;/div&gt;</summary>
		<author><name>Ckral</name></author>
	</entry>
	<entry>
		<id>https://wiki.letto.at/wiki/index.php?title=Datei:Beschleunigungsvektor.png&amp;diff=2375</id>
		<title>Datei:Beschleunigungsvektor.png</title>
		<link rel="alternate" type="text/html" href="https://wiki.letto.at/wiki/index.php?title=Datei:Beschleunigungsvektor.png&amp;diff=2375"/>
		<updated>2020-05-20T10:51:41Z</updated>

		<summary type="html">&lt;p&gt;Ckral: Ckral lud eine neue Version von Datei:Beschleunigungsvektor.png hoch&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Beschleunigungsvektor&lt;/div&gt;</summary>
		<author><name>Ckral</name></author>
	</entry>
	<entry>
		<id>https://wiki.letto.at/wiki/index.php?title=Datei:Beschleunigungsvektor.png&amp;diff=2374</id>
		<title>Datei:Beschleunigungsvektor.png</title>
		<link rel="alternate" type="text/html" href="https://wiki.letto.at/wiki/index.php?title=Datei:Beschleunigungsvektor.png&amp;diff=2374"/>
		<updated>2020-05-20T10:50:36Z</updated>

		<summary type="html">&lt;p&gt;Ckral: Beschleunigungsvektor&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Beschleunigungsvektor&lt;/div&gt;</summary>
		<author><name>Ckral</name></author>
	</entry>
	<entry>
		<id>https://wiki.letto.at/wiki/index.php?title=Datei:Drehmomentvektor.png&amp;diff=2357</id>
		<title>Datei:Drehmomentvektor.png</title>
		<link rel="alternate" type="text/html" href="https://wiki.letto.at/wiki/index.php?title=Datei:Drehmomentvektor.png&amp;diff=2357"/>
		<updated>2020-05-16T10:26:26Z</updated>

		<summary type="html">&lt;p&gt;Ckral: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Ckral</name></author>
	</entry>
	<entry>
		<id>https://wiki.letto.at/wiki/index.php?title=Datei:Kraftvektor.png&amp;diff=2356</id>
		<title>Datei:Kraftvektor.png</title>
		<link rel="alternate" type="text/html" href="https://wiki.letto.at/wiki/index.php?title=Datei:Kraftvektor.png&amp;diff=2356"/>
		<updated>2020-05-16T10:24:17Z</updated>

		<summary type="html">&lt;p&gt;Ckral: Beispiel eines Kraftvektors&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Beispiel eines Kraftvektors&lt;/div&gt;</summary>
		<author><name>Ckral</name></author>
	</entry>
	<entry>
		<id>https://wiki.letto.at/wiki/index.php?title=Beispielsammlung_Editieren&amp;diff=2352</id>
		<title>Beispielsammlung Editieren</title>
		<link rel="alternate" type="text/html" href="https://wiki.letto.at/wiki/index.php?title=Beispielsammlung_Editieren&amp;diff=2352"/>
		<updated>2020-05-16T09:51:37Z</updated>

		<summary type="html">&lt;p&gt;Ckral: Doppelpunkt (:) aus Überschrift entfernt&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;In der Edit-Ansicht können Beispiele verändert, geprüft und neu erstellt werden. &lt;br /&gt;
&lt;br /&gt;
Zurück zu [[Letto-Hauptansicht|LeTTo]], [[Beispielsammlung]]&lt;br /&gt;
[[Datei:FrageEditor.jpg|thumb|700px|Ansicht von &#039;Beispielsammlung Editieren&#039;]]&lt;br /&gt;
&lt;br /&gt;
=Übersicht=&lt;br /&gt;
Im Modus &#039;&#039;&#039;Beispielsammlung editieren&#039;&#039;&#039; ist oben eine [[Toolbar|Symbolleiste]] zur Steuerung der Anwendung angeordnet. Nähere Beschreibung der jeweiligen Buttons finden Sie unter [[Toolbar]].&lt;br /&gt;
&lt;br /&gt;
Im Bereich der Themen (siehe obige Abbildung) finden Sie eine [[Ordnerverwaltung|Ordnerstruktur]] ähnlich einem Dateimanager zur Sortierung und Speicherung der Fragen. Weiters finden Sie in diesem Bereich unten die Definition von [[Online-Tests]]. &lt;br /&gt;
&lt;br /&gt;
Die [[Fragenliste]] enthält alle Fragen eines Ordners sowie Möglichkeiten zum Hinzufügen, Ändern und Klonen ... von Fragen. &lt;br /&gt;
&lt;br /&gt;
Darunter finden sie die [[Bildvorschau]], die immer das zuletzt im [[Editor für den Angabetext|Editor]] angewählte Bild (Image, IMG) anzeigt.&lt;br /&gt;
&lt;br /&gt;
Der rechte Bereich des Editiermodus enthält alle Infos zur aktuell ausgewählten und gerade bearbeiteten Frage. Der obere Teil der Eingabemaske für Fragen ist für alle [[Fragetypen]] gleich.&lt;br /&gt;
&lt;br /&gt;
=Name der Frage=&lt;br /&gt;
:[[Datei:ClipCapIt-180618-180519.PNG|400px|thumb|Eingabefeld für den Fragenamen]]&lt;br /&gt;
Der Fragename bezeichnet die Frage und sollte Information über den Frageninhalt bringen. Alle Fragen einer [[Ordnerverwaltung|Kategorie oder Ordners]] werden mit ihrem Fragennamen in der [[Fragenliste]] angezeigt. Der Name sollte sprechend aber nicht zu lange sein, damit die Übersicht in der Fragenliste erhalten bleibt.&lt;br /&gt;
&lt;br /&gt;
Oberhalb des Fragennamens finden Sie noch den Fragetyp, den diese Frage hat.&lt;br /&gt;
&lt;br /&gt;
=Dokumente zu dieser Frage hochladen=&lt;br /&gt;
:[[Datei:ClipCapIt-181021-141443.PNG|500px]]&lt;br /&gt;
Ist die Checkbox &#039;&#039;&#039;Doks:&#039;&#039;&#039; ausgewählt, dann kann der Schüler bei der Beantwortung der Fragen auch Dokumente zur Testfrage auf den Server hochladen. &lt;br /&gt;
&lt;br /&gt;
Die folgende Abbildung zeigt die Buttons zum Testen der Lösung und den zusätzlichen Button &#039;&#039;&#039;Datei zur Frage hochladen&#039;&#039;&#039;, der dann eingeblendet wird, wenn bei der Fragedefinition die Option &#039;&#039;&#039;Doks:&#039;&#039;&#039; ausgewählt wurde.&lt;br /&gt;
:[[Datei:ClipCapIt-181021-142155.PNG|350px]]&lt;br /&gt;
Solange der Testversuch aktiv ist, können die Dokumnete vom Schüler wieder über den &#039;&#039;&#039;X&#039;&#039;&#039;-Button gelöscht werden oder weitere Dokumnete zu dieser Testfrage hochgeladen werden.&lt;br /&gt;
&lt;br /&gt;
Nach Beendigung des Testversuchs können die Dokumente nicht mehr geändert, sondern nur mehr heruntergeladen und angesehen werden.&lt;br /&gt;
&lt;br /&gt;
=Gefundene Werte=&lt;br /&gt;
Hier sind alle Konstante, die im Angabetext gefunden wurden, aufgelistet. Dieses Feld wird nach dem Verlassen des Editors für den Angabetext automatisch aktualisiert: Enthält der Fragetext Konstante in geschwungenen Klammern, die keine Datensätze sind, so werden diese Variablen automatisch aus dem Text extrahiert und angezeigt. Diese Werte können dann für die Berechnung der Lösung herangezogen werden.&lt;br /&gt;
&lt;br /&gt;
=Frage-Textfeld=&lt;br /&gt;
Siehe [[Editor für den Angabetext]].&lt;br /&gt;
&lt;br /&gt;
=Plugin-Info=&lt;br /&gt;
Im Bereich Plugin-Info finden Sie einen Button &#039;&#039;&#039;Plugins&#039;&#039;&#039; zur Definition der Plugins der Frage. Dadurch wird der [[Definition von Plugins|Dialog zur Plugindefinition]] geöffnet.&lt;br /&gt;
&lt;br /&gt;
Die Plugindefinition bildet immer einen Text-String. Dieser wird nach dem Schliessen des Dialogs im nebenstehenden Feld angezeigt und kann theoretisch auch verändert werden. Diese Option sollten aber nur erfahrene Benutzer verwenden, die sich mit der Syntax der Plugin-Definition auskennen.&lt;br /&gt;
&lt;br /&gt;
Der Scroller [[Datei:ClipCapIt-180831-204926.PNG|40px]] neben dem Eingabefeld dient zum Durchlaufen von allen definierten [[Datensätze|Datensätzen]] und zeigt die Änderungen der Grafiken an, wenn der Cursor auf einem [[Editor für den Angabetext#Spezielle TAGs im Fragentext|Plugin-Grafik-Tag]] [PIG...] im [[Editor für den Angabetext]] steht.&lt;br /&gt;
&lt;br /&gt;
=Beurteilungsbereich=&lt;br /&gt;
====&amp;lt;span id=&amp;quot;qPunkte&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;Punkte====&lt;br /&gt;
Punkte, die bei richtiger Beantwortung der Frage für die gesamte Frage maximal vergeben werden können. Bei Mehrfachberechnungsfragen ist dieses Feld gesperrt und die Punkteanzahl wird automatisch als Gesamtpunktezahl aus allen Teilfragen berechnet.&lt;br /&gt;
&lt;br /&gt;
====&amp;lt;span id=&amp;quot;qPenalty&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;Penalty====&lt;br /&gt;
Abzug, der bei einer falschen Beantwortung im [[Online-Tests#Testart|Rechenübungs- oder Hausübungmodus]] pro Versuch abgezogen wird.&lt;br /&gt;
&lt;br /&gt;
====&amp;lt;span id=&amp;quot;qEinheitenFehler&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;Einheitenfehler====&lt;br /&gt;
Im Feld &amp;quot;EH-Fehler&amp;quot; wird ein Faktor angeben, der von den Punkten der richtigen Lösung abgezogen wird, wenn die Einheit falsch angegeben wurde.&lt;br /&gt;
&lt;br /&gt;
Der Wert von EH-Fehler muss zwischen 0 und 1 liegen!&lt;br /&gt;
&lt;br /&gt;
Erreichtepunkte = Maximalpunkte* (1 - EHFehler)&lt;br /&gt;
&lt;br /&gt;
z.B:&lt;br /&gt;
Das Beispiel hat 4 Punkte, der EH-Faktor ist 0.1.&lt;br /&gt;
Gibt nun der Schüler statt 0.2A den Wert 0.2V an, so erhält er 4*(1-0.1) = 3.6 Punkte.&lt;br /&gt;
Gibt der Schüler einen falschen Einheitenvorsatz wie 0.2mA an, so erhält er keine Punkte, da der Wert falsch ist!&lt;br /&gt;
&lt;br /&gt;
Siehe auch [[Einheit|Einheiten]], [[Online-Tests#Einheiteneinstellungen|Einheiteneinstellungen]]!&lt;br /&gt;
&lt;br /&gt;
====&amp;lt;span id=&amp;quot;cbParser&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;Checkbox Parser====&lt;br /&gt;
Ist diese Checkbox ausgewählt, dann wird beim Berechnen der Symbolischen Lösung für das Ergebnis der Frage ud allen Teilfragen nicht [[Berechnungen#Berechnung mit Maxima|Maxima]], sondern der [[Berechnungen#Berechnung mit dem internen Parser|Interne Parser verwendet]].&lt;br /&gt;
&lt;br /&gt;
Siehe auch [[Berechnungen]]!&lt;br /&gt;
&lt;br /&gt;
====&amp;lt;span id=&amp;quot;cbSymbolisch&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;Checkbox Symbolisch====&lt;br /&gt;
Ist diese Checkbox ausgewählt, dann werden beim Berechnen der Lösung mathematische Konstanten nur dann eingesetzt, wenn sie mit einer Gleitkommazahl verrechnet werden. Weiters werden Berechnungen mit Ganzzahlen nur dann als Gleitkommazahl ausgerechnet, wenn sie mit einer Gleitkommazahl verrechnet werden.&lt;br /&gt;
&lt;br /&gt;
=Datensätze=&lt;br /&gt;
Siehe [[Datensätze definieren#Erstellung / Änderung über den Datensatz-Bereich|Datensätze definieren]]&lt;br /&gt;
&lt;br /&gt;
=Kompetenzen zuordnen=&lt;br /&gt;
Mit dem Button [[Datei:ClipCapIt-180901-220702.PNG|20px]] aus dem [[Toolbar]] kann man zwischen der Datensatz- und der Kompetenz-Ansicht umschalten.&lt;br /&gt;
&lt;br /&gt;
Siehe auch [[Kompetenzzuordnung]].&lt;br /&gt;
&lt;br /&gt;
=Maxima-Feld=&lt;br /&gt;
&lt;br /&gt;
Das Maximafeld wird für die Berechnung der Ergebnisformel verwendet. Für die Berechnung des Maxima-Feldes wird der Inhalt des Feldes mit einem Präprozessor vorbearbeitet und dann an Maxima gesendet, oder der Inhalt wird direkt mit dem internen Parser von Letto verarbeitet. Da einige Funktionen des internen Parsers von Maxima nicht unterstützt werden und umgekehrt der interne Parser nicht den vollen Funktionsumfang von Maxima unterstützt, ist je nach Aufgabenstellung die eine oder andere Variante zu verwenden.&lt;br /&gt;
&lt;br /&gt;
Siehe auch [[Berechnungen]]!&lt;br /&gt;
&lt;br /&gt;
====Maxima Berechnung====&lt;br /&gt;
Siehe [[Berechnungen#Berechnung mit Maxima|Maxima-Berechnungen]]&lt;br /&gt;
&lt;br /&gt;
* Zahlenwerte mit Einheiten werden, bevor das Feld an Maxima geschickt wird, durch interne Variablen ersetzt, die bei der Berechnung des Ergebnisses dann wieder mit Einheiten eingesetzt werden. Die Maxima-Berechnung erfolgt dadurch wie in Maxima üblich ohne Einheiten.&lt;br /&gt;
* graphische Elemente von Maxima wie plot etc. können nicht verwendet werden&lt;br /&gt;
* Jeder Durchlauf des Maximafeldes beginnt mit einer neuen leeren Maxima-Umgebung in der die Datei letto.mac geladen wird. Die Datei moodle.mac kann in der globalen Einstellungen des Servers für alle Benutzer gemeinsam vom Administrator konfiguriert werden. Unter anderem wird hier der Operator || definiert, der für die Parallelschaltung von Widerständen und Impedanzen verwendet werden kann.&lt;br /&gt;
* Es können auch alle Funktionen des internen Parsers, die Maxima nicht kennt verwendet werden. Jedoch kann Maxima diese Funktionen weder vereinfachen noch berechnen, dies muss dann Online beim Berechnen des Lösungsfeldes durch Letto direkt erfolgen. Dementsprechend kann auch der Befehl &#039;&#039;&#039;solve&#039;&#039;&#039; von Maxima keine Funktionen auflösen, die nur vom internen Parser untersützt werden.&lt;br /&gt;
&lt;br /&gt;
====Interner Parser von Letto====&lt;br /&gt;
Siehe [[Berechnungen#Berechnung_mit_dem_internen_Parser|Interner Parser]]&lt;br /&gt;
&lt;br /&gt;
* unterstützt Einheiten&lt;br /&gt;
* unterstützt Dualzahlen und Hexadezimalzahlen&lt;br /&gt;
* unterstützt einige Funktionen, die für technische Berechnungen vorteilhaft verwendet werden können. Die Liste der möglichen Funktionen ist in der Hilfe direkt nachzulesen.&lt;br /&gt;
* Der interne Parser von Letto wird immer für die Berechnung des Lösungsfeldes einer Berechnungs- oder Mehrfachberechnungsfrage verwendet.&lt;br /&gt;
&lt;br /&gt;
====Einheiten====&lt;br /&gt;
Zahlenwerte mit Einheit können auf mehrere Arten im Maximafeld verwendet werden:&lt;br /&gt;
* Als Datensatz mit Einheit durch Verwendung des Datensatzbezeichners: Dies ist die einfachste Variante, bei der gleichzeitig auch für jeden Schüler ein anderer Zahlenwert definiert werden kann&lt;br /&gt;
* Als Direkteingabe im Maxima-Feld mit Zahlenwert, gefolgt von der Einheit in einfachen Hochkomma ( x:13&#039;A/m&#039; oder y:x*56&#039;VA-1&#039; )&lt;br /&gt;
* Wenn die Einheit keine Rechenoperatoren enthält kann die Einheit direkt am Zahlenwert angehängt werden: zB.: U:23V oder I:U/2Ohm&lt;br /&gt;
&lt;br /&gt;
Der Präprozessor, der das Maximafeld vor der Berechnung durchläuft hat folgende Aufgaben:&lt;br /&gt;
&lt;br /&gt;
* Bei Maxima-Berechnungsmodi werden alle Zahlenwerte welche eine Einheit haben durch Variable ersetzt welche bei der späteren Berechnung wieder eingesetzt werden können&lt;br /&gt;
* jede Zeile wird automatisch abgeschlossen, man benötigt daher kein ; oder $ am Zeilenende und es sind dadurch keine mehrzeiligen Befehle möglich&lt;br /&gt;
* Bezeichner dürfen nur die Zeichen a-zA-Z0-9 enthalten (zB. der Unterstrich ist verboten)&lt;br /&gt;
* Bemerkungen werden wie in C oder Java übliche am Zeilenanfang mit einem doppelten Schrägstrich eingefügt&lt;br /&gt;
&lt;br /&gt;
====Wichtige Funktionen====&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Funktion !!  Beschreibung 	!! Beispiel 	!! Ergebnis&lt;br /&gt;
|-&lt;br /&gt;
| floor(x) ||  Kommazahl auf die nächste Ganzzahl abrunden 	|| ||&lt;br /&gt;
|-&lt;br /&gt;
| round(x) ||  Kommazahl auf Ganzzahl runden 	|| ||&lt;br /&gt;
|-&lt;br /&gt;
| pi() 	   ||  die Zahl Pi 	|| ||&lt;br /&gt;
|-&lt;br /&gt;
| exp(1)   ||  die eulersche Zahl e || ||&lt;br /&gt;
|-&lt;br /&gt;
| exp(x)   ||  Exponentialfunktion e hoch x 	|| ||&lt;br /&gt;
|-&lt;br /&gt;
| abs(x)   ||  Absolutbetrag  ||  abs(-2) 	||  2&lt;br /&gt;
|-&lt;br /&gt;
| acos(x), acosh(x), asin(x), &lt;br /&gt;
&lt;br /&gt;
asinh(x), atan2(y,x), atan(x), &lt;br /&gt;
&lt;br /&gt;
atanh(x), cos(x), cosh(x), &lt;br /&gt;
&lt;br /&gt;
sin(x), sinh(x), tan(x), tanh(x)  &lt;br /&gt;
||	Winkelfunktionen 	|| ||&lt;br /&gt;
|-&lt;br /&gt;
| deg2rad(x) ||	Grad in Radianten umwandeln 	|| ||&lt;br /&gt;
|-&lt;br /&gt;
| rad2deg(x) ||	Radianten in Grad umwandeln 	|| ||&lt;br /&gt;
|-&lt;br /&gt;
| max(x,y,z) ||	Liefert das Maximum der angegebenen Parameter 	|| max(2,5,3)  ||	5&lt;br /&gt;
|-&lt;br /&gt;
| min(x,y,z) ||	Liefert das Minimum der angegebenen Parameter 	|| min(3,2,6,34) ||	2&lt;br /&gt;
|-&lt;br /&gt;
| log10(x)   ||	10er Logarithmus 	||  log10(100)  || 	2&lt;br /&gt;
|-&lt;br /&gt;
| log(x)     ||	natürlicher Logarithmus 	|| ||&lt;br /&gt;
|-&lt;br /&gt;
| pow(x,y)   ||	berechnet die Potenz x hoch y  ||	pow(2,3) 	|| 8&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
====Tipps für Maxima-Newcomer====&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Befehl 	!!  Beschreibung&lt;br /&gt;
|-&lt;br /&gt;
| a:5  || 	Der Variablen a den Wert5 zuweisen&lt;br /&gt;
|-&lt;br /&gt;
| g1:x+y=5&lt;br /&gt;
&lt;br /&gt;
g2:x-y=3&lt;br /&gt;
&lt;br /&gt;
L:solve([g1,g2],[x,y])&lt;br /&gt;
&lt;br /&gt;
x:ev(x,L)&lt;br /&gt;
&lt;br /&gt;
y:ev(y,L)&lt;br /&gt;
|| 	Gleichungssystem lösen mit den Gleichungen g1 und g2&lt;br /&gt;
&lt;br /&gt;
solve löst das Gleichungssystem und liefert den Ergebnisvektor L&lt;br /&gt;
&lt;br /&gt;
ev berechnet aus dem Lösungsvektor die Variablen&lt;br /&gt;
|-&lt;br /&gt;
| c:4+5*%i   ||	komplexe Zahl&lt;br /&gt;
|-&lt;br /&gt;
| e:ratsimp(c*(2+3*%i)) 	|| komplexes Ergebnis auswerten&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=Eingabemasken für die unterschiedlichen Fragetypen=&lt;br /&gt;
&lt;br /&gt;
==Mehrfachberechnungsfrage==&lt;br /&gt;
&lt;br /&gt;
* Fragen dieses Typs sind sehr flexibel.&lt;br /&gt;
* Die Frage kann mehrere Teilantworten beinhalten. Jede Teilfrage wird im Fragetext durch einen [Qx]-Tag (x..Fragenummer) positioniert. Bei der Schülereingabe wird der Tag durch ein Eingabefeld für die Ergebniseingabe ersetzt.&lt;br /&gt;
* Die Angabewerte sind wie bei Berechnungsfragen mittels [[Datensätze|Datensätzen]] definierbar und variieren von Schüler zu Schüler.&lt;br /&gt;
* Alle verwendeten [[Datensätze|Variablen]] müssen im Angabtext in geschwungene Klammern gesetzt werden. Im [[Berechnungen|Maximafeld]] und im Lösungsfeld ist die Klammer nicht notwendig.&lt;br /&gt;
* Für jede Variable wird ein Dataset mit möglichen Werten angelegt. Diese Datasets können über einen [[Datensätze_definieren#Definition_der_Werte|Formatierungsstring]] definiert werden und danach auch direkt in einer Liste bearbeitet werden.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
:[[Datei:ClipCapIt-180831-220929.PNG|600px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Übersicht über alle Spalten der Detail-Ansicht:&#039;&#039;&#039;&lt;br /&gt;
====Q....====&lt;br /&gt;
Spalte mit der Kurzbezeichnung für die Teilfrage. Unter diesem Namen wird im Editor für die Angabe die Teilfrage mit [Qx] referenziert. An dieser Position steht dann bei der Testausführung das Eingabeelement für diese Teilfrage.&lt;br /&gt;
&lt;br /&gt;
====&amp;lt;span id=&amp;quot;sqProzInput&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;Prozent für die Antwort einer Teilfrage====&lt;br /&gt;
&lt;br /&gt;
Wenn der Schüler die Antwort gibt, die in der Zeile dieser Teilantwort steht, bekommt er den prozentuellen Anteil der Gesamtpunkt der Teilfrage.&lt;br /&gt;
&lt;br /&gt;
Je nach Antwort-Modus muss sichergestellt sein, dass der Schüler durch die richtige Eingabe der Antwort 100 Prozent erreichen kann.&lt;br /&gt;
&lt;br /&gt;
====&amp;lt;span id=&amp;quot;sqGradeInput&amp;quot;&amp;gt;Punkte einer Teilfrage====&lt;br /&gt;
Punkteanzahl für die richtige Beantwortung einer Teilfrage.&lt;br /&gt;
&lt;br /&gt;
Die Gesamtpunktanzahl einer Mehrfachberechnungsfrage ergibt sich immer aus der Summe der Punkte der Teilfragen.&lt;br /&gt;
&lt;br /&gt;
====&amp;lt;span id=&amp;quot;sqMaximaInput&amp;quot;&amp;gt;Maximafeld für die Antwort einer Teilfrage====&lt;br /&gt;
Siehe auch [[Berechnungen]]!&lt;br /&gt;
&lt;br /&gt;
Dieses Feld wird nach dem Durchlaufen des globalen Maxima-Feldes der Frage mit Maxima aufgerufen und liefert als Lösung den Ausdruck, der im Lösungsfeld eingesetzt wird.&lt;br /&gt;
&lt;br /&gt;
Es wird nur im Antwort-MODE &amp;quot;calculated&amp;quot; und &amp;quot;boolsch&amp;quot; berechnet.&lt;br /&gt;
&lt;br /&gt;
====&amp;lt;span id=&amp;quot;sqEinheitInput&amp;quot;&amp;gt;Ziel-Einheit der Antwort einer Teilfrage:====&lt;br /&gt;
Siehe unter [[ZielEinheit]]!&lt;br /&gt;
&lt;br /&gt;
====&amp;lt;span id=&amp;quot;modeSel_focus&amp;quot;&amp;gt;Antwortmode====&lt;br /&gt;
Art der Antwort:&lt;br /&gt;
&lt;br /&gt;
* Single-Choice: Es gibt mehrere Lösungen, die dem Schüler vorgeschlagen werden. Der Schüler muss nun von diesen Lösungen genau eine Auswählen. Die Lösungen stehen als String im Lösungsfeld&lt;br /&gt;
* Text: Die Lösung welche im Lösungsfeld steht ist eine Zeichenkette die vom Schüler genau so eingegeben werden muss&lt;br /&gt;
* Regexp: Im Lösungsfeld wird ein regulärer Ausdruck angeben, mit dem überprüft wird, ob die Antwort des Schülers richtig ist.&lt;br /&gt;
* Multichoice: Es gibt mehrere Lösungen, die dem Schüler vorgeschlagen werden. Der Schüler muss nun von diesen Lösungen eine oder mehrere Auswählen. Die Lösungen stehen als String in Lösungsfeld.&lt;br /&gt;
* Calculated: Im Lösungsfeld steht ein symbolischer Ausdruck, der aus dem Maxima-Feld errechnet wurde. Zur Laufzeit wird daraus mit dem Parser die Lösung berechnet.&lt;br /&gt;
* Boolsch: Dieser Fragemode kann nur sinnvoll bei einer Mehrfachberechnungsfrage verwendet werden. In diesem Modus kann man die Schülereingaben anderer Teilfragen nach Eingabe durch den Parser auswerten lassen und damit Punkte vergeben. Es lassen sich somit Folgefehler von Schülern berücksichtigen und bei der Dimensionierung können Angabe-Bedingungen geprüft werden, die über die Lösung einer Teilfrage nicht eindeutig wären. Der Zugriff auf die Schülereingabe einer anderen Teilfrage erfolgt im Lösungsfeld mit der Variablen Q gefolgt von der Teilfragenummer (zB. Q1 für die Teilfrage 1)&lt;br /&gt;
&lt;br /&gt;
====&amp;lt;span id=&amp;quot;sqToleranceInput&amp;quot;&amp;gt;Toleranz der Antwort einer Teilfrage====&lt;br /&gt;
Die Toleranz, wie genau ein Schüler seine Antwort angeben muss:&lt;br /&gt;
* Die Toleranz ist im Normalfall eine &#039;&#039;&#039;relative Angabe&#039;&#039;&#039; und wird in &#039;&#039;&#039;Prozent&#039;&#039;&#039; angegeben&lt;br /&gt;
* Wird bei der Toleranz kein Prozent angegeben, so muss der Wert zwischen 0 und 1 liegen und entspricht dann dem Prozentwert durch 100&lt;br /&gt;
* Wird bei der Toleranz vor oder nach dem Wert ohne Prozentzeichen ein &#039;&#039;&#039;a&#039;&#039;&#039; angegeben, so wird dieser Wert als &#039;&#039;&#039;absolute Toleranz&#039;&#039;&#039; der Größe in SI-Einheiten interpretiert. ( z.B.: 0.1a bei einem eletrischen Strom in Ampere entspricht einer absoluten Toleranz von 0.1A ) Absolute Toleranzen sind vor allem bei Ergebnissen welche Null sind notwendig, da die Berechnung statt 0 meist eine sehr kleine Zahl berechnet, welche dann mit einer relativen Toleranz auch extrem genau eingegeben werden muss und 0 dadurch nicht im Toleranzbereich liegen kann!&lt;br /&gt;
&lt;br /&gt;
====&amp;lt;span id=&amp;quot;sqLoesungInput&amp;quot;&amp;gt;Lösung der Antwort einer Teilfrage====&lt;br /&gt;
In der Lösungsformel steht die richtige Antwort der Frage, je nach Fragemode hat das Lösungsfeld verschiedene Funktionalität!&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Fragemode 	!! Bedeutung des Lösungsfeldes 	!! Inhalt&lt;br /&gt;
|-&lt;br /&gt;
| Single-Choice || Lösung wie sie am Browser ausgegeben wird 	|| Eingabe&lt;br /&gt;
|-&lt;br /&gt;
| Text 	        || Lösung wie sie der Schüler eingeben sollte 	|| Eingabe&lt;br /&gt;
|-&lt;br /&gt;
| Regexp 	|| Regulärer Ausdruck (in Java Syntax) welcher für die richtige Lösung treffen muss 	|| Eingabe&lt;br /&gt;
|-&lt;br /&gt;
| Multichoice 	|| Lösung wie sie am Browser ausgegeben wird. 	|| Eingabe&lt;br /&gt;
|-&lt;br /&gt;
| Calculated 	|| Berechnungsformel, mit der zur Testzeit die richtige Lösung berechnet wird, die mit der Schülereingaben verglichen wird. 	|| automatische Berechnung aus dem Maximafeld&lt;br /&gt;
|-&lt;br /&gt;
| Boolsch 	|| Berechnungsformel, die nach der Schülereingabe berechnet wird. Das Ergebnis der Formel muss boolsch sein. Wenn das Ergebnis true ist bekommt der Schüler die angegebenen Punkte. 	|| automatische Berechnung aus dem Maximafeld&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
====&amp;lt;span id=&amp;quot;sqErgInfoInput&amp;quot;&amp;gt;Infofeld der Antwort einer Teilfrage====&lt;br /&gt;
* Bei Berechnungsfragen die Antwort des ersten Datensatzes, das Feld ist dann schreibgeschützt&lt;br /&gt;
* Bei Boolschen Fragen kann hier eine Information erfolgen, wie die Frage bewertet wurde.&lt;br /&gt;
&lt;br /&gt;
==Berechnungsfrage==&lt;br /&gt;
:[[Datei:ClipCapIt-180901-122143.PNG|400px]]&lt;br /&gt;
&lt;br /&gt;
Die Berechnungsfrage ist ähnlich aufgebaut wie eine Mehrfachberechnungsfrage mit nur einer Berechnung. Diese Frage kann aber mehrere unterschiedliche Lösungen bereitstellen, um zB. typische Berechnungsfehler mit Punkteabzügen zu beurteilen. Es können also zusätzliche Reiter mit mehreren Antwortmöglichkeiten über das Kontextmenü erzeugt bzw. wieder gelöscht werden.&lt;br /&gt;
&lt;br /&gt;
:[[Datei:ClipCapIt-180901-212431.PNG|thumb|450px|Übersicht Erstellung einer Berechnungsfrage]]&lt;br /&gt;
&lt;br /&gt;
:[[Datei:ClipCapIt-180901-132831.PNG|400px]]&lt;br /&gt;
&lt;br /&gt;
* Berechnende Fragen sind wie Mehrfachberechnungsfragen mit nur einer Teilfrage bei dem das Antwortfeld automatisch erscheint.&lt;br /&gt;
* Jeder Schüler bekommt eine eigene Angabe&lt;br /&gt;
* Für den Druck kann die Frage auch für Projektangaben verwendet werden.&lt;br /&gt;
* Berechnungen erfolgen mit Maxima&lt;br /&gt;
* Alle verwendeten Variablen müssen im Angabtext in geschwungene Klammern gesetzt werden. Im Maximafeld und im Lösungsfeld ist die Klammer nicht notwendig.&lt;br /&gt;
* Für jede Variable wird ein Dataset mit möglichen Werten angelegt. Diese Datasets können über einen Formatierungsstring definiert werden und danach auch direkt in einer Liste bearbeitet werden.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Wenn mehrer Antwortmöglichkeiten definiert wurden, wird links ein zusätzliches Eingabefeld &#039;&#039;&#039;Antwort Maxima:&#039;&#039;&#039; angezeigt. Damit können Sie unterschiedliche Ergebnisse der Maxima-Berechnungen den unterschiedlichen Antworten zuordnen.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Feld !!  Beschreibung&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;Antwort Maxima  ||    [[#Lösung_der_Antwort_einer_Teilfrage|Verhalten wie bei der Mehrfachberechnungsfrage]], siehe [[Berechnungen]] &lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;Einheit:&#039;&#039;&#039;   || [[ZielEinheit|Defiition der Einheit oder sonstiges Frageerhalten]]&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;Prozent:&#039;&#039;&#039;   || [[#Prozent_für_die_Antwort_einer_Teilfrage|Prozentangaben für unterschiedliche Lösungen]]&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;Toleranz:&#039;&#039;&#039;  ||  [[#Toleranz_der_Antwort_einer_Teilfrage|Toleranz für den Ergebniswert wie bei Mehrfachberechnungsfrage]]&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;Mode:&#039;&#039;&#039;      ||  [[#Antwortmode|Berechungs-Modus]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Die Zeile &#039;Lösung für 1. Datenstatz&#039; zeigt das Ergebnis an, wenn der Werte des 1. Datensatzes in die Lösungsformel eingesetzt werden. Diese Zeile dient der Kontrolle, ob die Lösung mit Zahlenwerten auch Sinn macht und ob die Einheiten zusammenpassen.&lt;br /&gt;
&lt;br /&gt;
Das Eingabefeld &#039;&#039;&#039;Lösung&#039;&#039;&#039; ist schreibgeschützt und kann nur durch die [[Berechnungen#Berechnung mit Maxima|Maxima-Berechnung]] oder den [[Berechnungen#Berechnung_mit_dem_internen_Parser|internen Parser]] bestimmt werden.&lt;br /&gt;
&lt;br /&gt;
==Lückentextfrage==&lt;br /&gt;
Ein Lückentext enthält Lücken innerhalb eines Fragetextes, die durch den Schüler mit dem korrekten Inhalt gefüllt werden sollen.&lt;br /&gt;
&lt;br /&gt;
Folgende Modi sind dabei für die Lücken möglich:&lt;br /&gt;
* Texteingabe: Der Schüler muss das fehlende Wort je nach Fragemodus in die Lücke über die Tastatur eingeben oder per Drag&amp;amp;Drop auf die Lücke ziehen&lt;br /&gt;
* Multiple-Choice: Der Schüler kann aus mehreren Antwortmöglichkeiten eine oder mehrere richtige Elemente selektieren&lt;br /&gt;
* Single-Choice: Der Schüler kann mit einem Drop-Down-Auswahlfeld aus mehreren Antwortmöglichkeiten genau ein richtiges Element selektieren&lt;br /&gt;
&lt;br /&gt;
Da es bei Lückentextfragen um Texte geht, gibt es hier keine Datensätze oder Maxima-Berechnungen.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Fragemodus:&#039;&#039;&#039;&lt;br /&gt;
:[[Datei:ClipCapIt-180901-155006.PNG|200px]]&lt;br /&gt;
&lt;br /&gt;
Der Fragemodus gibt an wie Texteingabe-Lücken verarbeitet werden&lt;br /&gt;
&lt;br /&gt;
* Normal: Der Schüler muss den Text über die Tastatur in die Lücke eintragen.&lt;br /&gt;
* Drag-and-Drop: Der Schüler muss aus einer Liste von möglichen Antworten die richtigen Antworten auf die Lücken ziehen.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Funktionstasten:&#039;&#039;&#039;&lt;br /&gt;
F8: aktuelles Wort, bei dem der Cursor steht, als Textlücke definieren (Vorsicht: Wort nicht markieren!), siche auch  [[Editor_für_den_Angabetext#Schnelleingabe_.2F_Tastatur-Shortcuts|alle Funktionstasten]]&lt;br /&gt;
&lt;br /&gt;
====Erstellung der Frage:====&lt;br /&gt;
&lt;br /&gt;
Im [[Editor für den Angabetext|Textbereich des Editors]] werden die Lücken durch Antwortformulierungen in eckigen Klammern realisiert. Mit &#039;&#039;&#039;F8&#039;&#039;&#039; kann das aktuelle Wort, bei dem der Cursor steht, als Textlücke definiert werden.&lt;br /&gt;
&lt;br /&gt;
:[[Datei:ClipCapIt-180901-161337.PNG|thumb|450px|Beispiel einer Eingabe]]&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;Texteingabe:&#039;&#039;&#039;&lt;br /&gt;
** Im Fragemodus &amp;quot;Normal&amp;quot; muss der Schüler den Text in der Lücke eingeben&lt;br /&gt;
** Im Fragemodus &amp;quot;Drag and Drop&amp;quot; muss der Schüler aus einer Liste von Antworttexten den richtigen Text über die Lücke ziehen. Hierbei wird die Liste der Antworttexte aus allen richtigen und falschen Antworten der Texteingabe-Felder zusammengesetzt.&lt;br /&gt;
** Syntax:&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;margin-left:50px&amp;quot;&lt;br /&gt;
| [text]     || 	Das Wort &amp;quot;text&amp;quot; als Lücke mit 1 Punkt für die richtige Antwort&lt;br /&gt;
|-&lt;br /&gt;
| [2&amp;lt;nowiki&amp;gt;|&amp;lt;/nowiki&amp;gt;text]     || 	Das Wort &amp;quot;text&amp;quot; mit 2 Punkten für die richtige Antwort&lt;br /&gt;
|-&lt;br /&gt;
| [1&amp;lt;nowiki&amp;gt;|&amp;lt;/nowiki&amp;gt;text,50:alt,0:nix]   ||	2 Punkte für die richtige Antwort &amp;quot;text&amp;quot;, 50%von zwei Punkten für &amp;quot;alt&amp;quot;, &amp;quot;nix&amp;quot; als falsche Antwort für &amp;quot;Drag and Drop&amp;quot;-Fragen&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;Multiple-Choice:&#039;&#039;&#039;&lt;br /&gt;
**      unabhängig vom Fragemodus&lt;br /&gt;
**      mindestens eine Antwort muss richtig sein&lt;br /&gt;
**      Syntax:&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;margin-left:50px&amp;quot;&lt;br /&gt;
| [M&amp;lt;nowiki&amp;gt;|&amp;lt;/nowiki&amp;gt;x:richtig,falsch1,falsch2]  ||	Die richtigen Antwortfelder sind mit x: markiert&lt;br /&gt;
|-&lt;br /&gt;
| [M&amp;lt;nowiki&amp;gt;|&amp;lt;/nowiki&amp;gt;x:rot,x:grün,blau,gelb] 	 ||     rot und grün sind richtig&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;Single-Choice:&#039;&#039;&#039;&lt;br /&gt;
**      unabhängig vom Fragemodus&lt;br /&gt;
**      der Schüler muss eine Antwort aus mehreren wählen&lt;br /&gt;
**      Syntax:&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;margin-left:50px&amp;quot;&lt;br /&gt;
| [S&amp;lt;nowiki&amp;gt;|&amp;lt;/nowiki&amp;gt;x:richtig,falsch,falsch] 	||  x kennzeichnet eine richtige Antwort&lt;br /&gt;
|-&lt;br /&gt;
| [S&amp;lt;nowiki&amp;gt;|&amp;lt;/nowiki&amp;gt;x:rot,x:grün,50:blau,gelb] ||  bei rot und grün alle Punkte, bei blau 50 Prozent der Punkt, bei gelb 0 Punkte&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;Sonderzeichen&#039;&#039;&#039; innerhalb einer Lücke &lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;margin-left:50px&amp;quot;&lt;br /&gt;
| Bezeichnung || Zeichen || Ersatzzeichen &lt;br /&gt;
|-&lt;br /&gt;
| Komma(Beistrich) || ,  || ,, &lt;br /&gt;
|-&lt;br /&gt;
| Komma(Beistrich) || ,  || \, &lt;br /&gt;
|-&lt;br /&gt;
| eckige Klammer auf || [ || \[ &lt;br /&gt;
|-&lt;br /&gt;
| eckige Klammer zu || ] || \]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;Sonderzeichen&#039;&#039;&#039; im Fragetext, welche nicht in einer Lücke sind:&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;margin-left:50px&amp;quot;&lt;br /&gt;
| Bezeichnung || Zeichen || Ersatzzeichen &lt;br /&gt;
|-&lt;br /&gt;
| eckige Klammer auf || [ || \[ &lt;br /&gt;
|-&lt;br /&gt;
| eckige Klammer zu || ] || \]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
====Schülereingabe der Frage:====&lt;br /&gt;
Die oben in der Abbildung definierte Lückentextfrage führt zu der links abgebildeten Aufgabenstellung während eines [[Online-Tests]].&lt;br /&gt;
:[[Datei:ClipCapIt-180901-185126.PNG|350px]]&lt;br /&gt;
&lt;br /&gt;
==Multiple-Choice-Frage==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* Der Schüler kann eine oder mehrere vorgegebene Antworten als richtig ankreuzen.&lt;br /&gt;
* Die Antworten werden bei jedem Schüler in einer anderen Reihenfolge vorgeschlagen.&lt;br /&gt;
* Es gibt zwei mögliche Eingabeansichten&lt;br /&gt;
**        automatische Prozentvergabe: Alle richtigen Antworten bekommen einen Haken. Der Computer teilt dann die Prozentwerte gleichmäßig auf alle richtigen Antworten auf.&lt;br /&gt;
**        explizite Definition der Prozentwerte: Neben jeder Antwort kann ein Prozentwert angegeben werden, welcher zugewiesen wird wenn die Antwort angekreuzt ist. Die Summe der Prozentwerte aller richtigen Antworten muss dabei 100 ergeben!&lt;br /&gt;
&lt;br /&gt;
====Beispiele für eine Multiple-Choice-Frage in unterschiedlichen Ansichten====&lt;br /&gt;
&#039;&#039;&#039;CheckboxFeedback: &#039;&#039;&#039;&lt;br /&gt;
Eingabe der Antworten der Multiple-Choice-Frage durch Checkboxen: Die richtigen Antworten bekommen links davon in der Checkbox ein Häckchen. Neben den Antworten können Sie ein Feedback angeben, warum Antworten falsch oder richtig sind.&lt;br /&gt;
:[[Datei:ClipCapIt-180901-214517.PNG|400px]]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Checkbox: &#039;&#039;&#039;&lt;br /&gt;
Eingabe der Antworten der Multiple-Choice-Frage durch Checkboxen: Die richtigen Antworten bekommen ein Häckchen. Feedback-Eingaben sind nicht möglich.&lt;br /&gt;
:[[Datei:ClipCapIt-180901-214538.PNG|400px]]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;ProzentFeedback: &#039;&#039;&#039;&lt;br /&gt;
Die Antworten werden mit Prozentwerten versehen. Die Summe über alle positiven Prozent-Werte muss genau 100 Prozent ergeben! &lt;br /&gt;
Bei falschen Antworten können Sie Werte von -100 eingeben, dann wird bei einer falschen Antwort die ganze Frage als falsch beurteilt.&lt;br /&gt;
Wird dieser negative Prozentwert geringer als -100 gewählt, dann kann die Frage noch teilweise richtig beurteilt werden.&lt;br /&gt;
Neben den Antworten können Sie ein Feedback angeben, warum Antworten falsch oder richtig sind.&lt;br /&gt;
:[[Datei:ClipCapIt-180901-214557.PNG|400px]]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Prozent: &#039;&#039;&#039;&lt;br /&gt;
Die Antworten werden mit Prozentwerten versehen. Die Summe über alle positiven Prozent-Werte muss genau 100 Prozent ergeben! &lt;br /&gt;
Bei falschen Antworten können Sie Werte von -100 eingeben, dann wird bei einer falschen Antwort die ganze Frage als falsch beurteilt.&lt;br /&gt;
Wird dieser negative Prozentwert geringer als -100 gewählt, dann kann die Frage noch teilweise richtig beurteilt werden.&lt;br /&gt;
:[[Datei:ClipCapIt-180901-214616.PNG|400px]]&lt;br /&gt;
&lt;br /&gt;
Das Maxima-Feld kann auch für Multiple-Choice-Fragen für Berechnungen und für die Definition von Formeln verwendet werden. In den Antworten für die Multiple-Choice-Frage können Sie sich über {= ...} auf die Ergebnisse beziehen.&lt;br /&gt;
:[[Datei:ClipCapIt-180901-215517.PNG|400px]]&lt;br /&gt;
Die obige Frage wurde mit dieser Berechnung durchgeführt.&lt;br /&gt;
&lt;br /&gt;
==Zuordnungsfrage==&lt;br /&gt;
&lt;br /&gt;
Die Antwort auf jede der Unterfragen muss aus einer Liste von Möglichkeiten ausgewählt werden.&lt;br /&gt;
Im Prinzip hat der Schüler 2 Listen mit Antworten und Fragen, die er richtig zuordnen muss.&lt;br /&gt;
&lt;br /&gt;
[[Datei:ClipCapIt-180618-225643.PNG|500px]]&lt;br /&gt;
&lt;br /&gt;
Mit der Auswahlliste für das Anzeigeverhalten kann gesteuert werden, ob und wie die Zuordnungen bei einem Test gemischt werden.&lt;br /&gt;
&#039;&#039;Nur links mischen&#039;&#039; bedeutet, dass die Antwortmöglichkeiten auf der linken Seite der Zuordnungsfrage bei jedem Öffnen der Frage anders dargestellt werden.&lt;br /&gt;
&lt;br /&gt;
Folgende Einstellungen sind möglich:&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|Nicht mischen      ||  Die Reihenfolge wird so, wie sie in der Frage definiert ist, gewählt&lt;br /&gt;
|+&lt;br /&gt;
|Mischen            ||  Auf der linken und auf der rechten Seite werden die Antwortmöglichkeiten zufällig angeordnet&lt;br /&gt;
|+&lt;br /&gt;
|Nur links mischen  ||  Nur auf der linken Seite werden die Antwortmöglichkeiten zufällig angeordnet&lt;br /&gt;
|+&lt;br /&gt;
|Nur rechts mischen  || Nur auf der rechten Seite werden die Antwortmöglichkeiten zufällig angeordnet&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Pro Zeile werden die zusammengehörenden Begriffe in die Tabelle eingetragen.&lt;br /&gt;
Um Zuordnungsfragen zu erschweren, können auf der rechten Seite auch falsche Begrife angeführt werden, die nicht eine Entsprechung auf der linken Seite haben.&lt;br /&gt;
&lt;br /&gt;
Weiters können auf der linken Seite auch mehrere gleichnamige Begriffe verwendet werden, um Zuordnungen zu Themengruppen zu ermöglichen.&lt;br /&gt;
&lt;br /&gt;
==Freitextfrage==&lt;br /&gt;
Der Schüler erhält zur Fragebeantwortung ein Textfeld, in dem die Antwort eingetragen werden kann. Diese Fragen müssen aber manuell korrigiert werden!&lt;br /&gt;
Bei der Frageerstellung kann nur das Feedbackfeld ausgefüllt werden. Dieses kann eine mögliche Lösung der Aufgabenstellung enthalten und wird dem Schüler nach der Testausführung (Test wurde bereits beendet) angezeigt.&lt;br /&gt;
&lt;br /&gt;
* Eine Freitextfrage hat keine automatische Korrekturmöglichkeit!&lt;br /&gt;
* Verwendung für:&lt;br /&gt;
**        Fragen, die online über die Tastatur beantwortet werden und vom Lehrer über den Letto-Server händisch beurteilt werden.&lt;br /&gt;
**        Fragen, die nur als Angabe für Projekte, Laborübungen usw. dienen.&lt;br /&gt;
**        Fragen, die auf Papier beantwortet werden.&lt;br /&gt;
* Das Ergebnis kann im Feedback-Feld angegeben werden&lt;br /&gt;
**        und beim Online-Test dem Schüler als Feedback nach dem Test bekanntgegeben werden.&lt;br /&gt;
**        Bei Beispielsammlungen kann der Schüler das Feedbackfeld nie einsehen!&lt;br /&gt;
**        Bei Hausübungen kann der Schüler das Feedbackfeld erst nach Ablauf der Abgabefrist einsehen!&lt;br /&gt;
* Sowohl Feedbackfeld als auch das Fragefeld kann Bilder, Tabellen, externe Dateien und Sourcode-Listings enthalten.&lt;/div&gt;</summary>
		<author><name>Ckral</name></author>
	</entry>
	<entry>
		<id>https://wiki.letto.at/wiki/index.php?title=Beispielsammlung_Editieren&amp;diff=2351</id>
		<title>Beispielsammlung Editieren</title>
		<link rel="alternate" type="text/html" href="https://wiki.letto.at/wiki/index.php?title=Beispielsammlung_Editieren&amp;diff=2351"/>
		<updated>2020-05-16T09:51:26Z</updated>

		<summary type="html">&lt;p&gt;Ckral: Doppelpunkt (:) aus Überschrift entfernt&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;In der Edit-Ansicht können Beispiele verändert, geprüft und neu erstellt werden. &lt;br /&gt;
&lt;br /&gt;
Zurück zu [[Letto-Hauptansicht|LeTTo]], [[Beispielsammlung]]&lt;br /&gt;
[[Datei:FrageEditor.jpg|thumb|700px|Ansicht von &#039;Beispielsammlung Editieren&#039;]]&lt;br /&gt;
&lt;br /&gt;
=Übersicht=&lt;br /&gt;
Im Modus &#039;&#039;&#039;Beispielsammlung editieren&#039;&#039;&#039; ist oben eine [[Toolbar|Symbolleiste]] zur Steuerung der Anwendung angeordnet. Nähere Beschreibung der jeweiligen Buttons finden Sie unter [[Toolbar]].&lt;br /&gt;
&lt;br /&gt;
Im Bereich der Themen (siehe obige Abbildung) finden Sie eine [[Ordnerverwaltung|Ordnerstruktur]] ähnlich einem Dateimanager zur Sortierung und Speicherung der Fragen. Weiters finden Sie in diesem Bereich unten die Definition von [[Online-Tests]]. &lt;br /&gt;
&lt;br /&gt;
Die [[Fragenliste]] enthält alle Fragen eines Ordners sowie Möglichkeiten zum Hinzufügen, Ändern und Klonen ... von Fragen. &lt;br /&gt;
&lt;br /&gt;
Darunter finden sie die [[Bildvorschau]], die immer das zuletzt im [[Editor für den Angabetext|Editor]] angewählte Bild (Image, IMG) anzeigt.&lt;br /&gt;
&lt;br /&gt;
Der rechte Bereich des Editiermodus enthält alle Infos zur aktuell ausgewählten und gerade bearbeiteten Frage. Der obere Teil der Eingabemaske für Fragen ist für alle [[Fragetypen]] gleich.&lt;br /&gt;
&lt;br /&gt;
=Name der Frage=&lt;br /&gt;
:[[Datei:ClipCapIt-180618-180519.PNG|400px|thumb|Eingabefeld für den Fragenamen]]&lt;br /&gt;
Der Fragename bezeichnet die Frage und sollte Information über den Frageninhalt bringen. Alle Fragen einer [[Ordnerverwaltung|Kategorie oder Ordners]] werden mit ihrem Fragennamen in der [[Fragenliste]] angezeigt. Der Name sollte sprechend aber nicht zu lange sein, damit die Übersicht in der Fragenliste erhalten bleibt.&lt;br /&gt;
&lt;br /&gt;
Oberhalb des Fragennamens finden Sie noch den Fragetyp, den diese Frage hat.&lt;br /&gt;
&lt;br /&gt;
=Dokumente zu dieser Frage hochladen=&lt;br /&gt;
:[[Datei:ClipCapIt-181021-141443.PNG|500px]]&lt;br /&gt;
Ist die Checkbox &#039;&#039;&#039;Doks:&#039;&#039;&#039; ausgewählt, dann kann der Schüler bei der Beantwortung der Fragen auch Dokumente zur Testfrage auf den Server hochladen. &lt;br /&gt;
&lt;br /&gt;
Die folgende Abbildung zeigt die Buttons zum Testen der Lösung und den zusätzlichen Button &#039;&#039;&#039;Datei zur Frage hochladen&#039;&#039;&#039;, der dann eingeblendet wird, wenn bei der Fragedefinition die Option &#039;&#039;&#039;Doks:&#039;&#039;&#039; ausgewählt wurde.&lt;br /&gt;
:[[Datei:ClipCapIt-181021-142155.PNG|350px]]&lt;br /&gt;
Solange der Testversuch aktiv ist, können die Dokumnete vom Schüler wieder über den &#039;&#039;&#039;X&#039;&#039;&#039;-Button gelöscht werden oder weitere Dokumnete zu dieser Testfrage hochgeladen werden.&lt;br /&gt;
&lt;br /&gt;
Nach Beendigung des Testversuchs können die Dokumente nicht mehr geändert, sondern nur mehr heruntergeladen und angesehen werden.&lt;br /&gt;
&lt;br /&gt;
=Gefundene Werte=&lt;br /&gt;
Hier sind alle Konstante, die im Angabetext gefunden wurden, aufgelistet. Dieses Feld wird nach dem Verlassen des Editors für den Angabetext automatisch aktualisiert: Enthält der Fragetext Konstante in geschwungenen Klammern, die keine Datensätze sind, so werden diese Variablen automatisch aus dem Text extrahiert und angezeigt. Diese Werte können dann für die Berechnung der Lösung herangezogen werden.&lt;br /&gt;
&lt;br /&gt;
=Frage-Textfeld=&lt;br /&gt;
Siehe [[Editor für den Angabetext]].&lt;br /&gt;
&lt;br /&gt;
=Plugin-Info=&lt;br /&gt;
Im Bereich Plugin-Info finden Sie einen Button &#039;&#039;&#039;Plugins&#039;&#039;&#039; zur Definition der Plugins der Frage. Dadurch wird der [[Definition von Plugins|Dialog zur Plugindefinition]] geöffnet.&lt;br /&gt;
&lt;br /&gt;
Die Plugindefinition bildet immer einen Text-String. Dieser wird nach dem Schliessen des Dialogs im nebenstehenden Feld angezeigt und kann theoretisch auch verändert werden. Diese Option sollten aber nur erfahrene Benutzer verwenden, die sich mit der Syntax der Plugin-Definition auskennen.&lt;br /&gt;
&lt;br /&gt;
Der Scroller [[Datei:ClipCapIt-180831-204926.PNG|40px]] neben dem Eingabefeld dient zum Durchlaufen von allen definierten [[Datensätze|Datensätzen]] und zeigt die Änderungen der Grafiken an, wenn der Cursor auf einem [[Editor für den Angabetext#Spezielle TAGs im Fragentext|Plugin-Grafik-Tag]] [PIG...] im [[Editor für den Angabetext]] steht.&lt;br /&gt;
&lt;br /&gt;
=Beurteilungsbereich=&lt;br /&gt;
====&amp;lt;span id=&amp;quot;qPunkte&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;Punkte====&lt;br /&gt;
Punkte, die bei richtiger Beantwortung der Frage für die gesamte Frage maximal vergeben werden können. Bei Mehrfachberechnungsfragen ist dieses Feld gesperrt und die Punkteanzahl wird automatisch als Gesamtpunktezahl aus allen Teilfragen berechnet.&lt;br /&gt;
&lt;br /&gt;
====&amp;lt;span id=&amp;quot;qPenalty&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;Penalty====&lt;br /&gt;
Abzug, der bei einer falschen Beantwortung im [[Online-Tests#Testart|Rechenübungs- oder Hausübungmodus]] pro Versuch abgezogen wird.&lt;br /&gt;
&lt;br /&gt;
====&amp;lt;span id=&amp;quot;qEinheitenFehler&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;Einheitenfehler====&lt;br /&gt;
Im Feld &amp;quot;EH-Fehler&amp;quot; wird ein Faktor angeben, der von den Punkten der richtigen Lösung abgezogen wird, wenn die Einheit falsch angegeben wurde.&lt;br /&gt;
&lt;br /&gt;
Der Wert von EH-Fehler muss zwischen 0 und 1 liegen!&lt;br /&gt;
&lt;br /&gt;
Erreichtepunkte = Maximalpunkte* (1 - EHFehler)&lt;br /&gt;
&lt;br /&gt;
z.B:&lt;br /&gt;
Das Beispiel hat 4 Punkte, der EH-Faktor ist 0.1.&lt;br /&gt;
Gibt nun der Schüler statt 0.2A den Wert 0.2V an, so erhält er 4*(1-0.1) = 3.6 Punkte.&lt;br /&gt;
Gibt der Schüler einen falschen Einheitenvorsatz wie 0.2mA an, so erhält er keine Punkte, da der Wert falsch ist!&lt;br /&gt;
&lt;br /&gt;
Siehe auch [[Einheit|Einheiten]], [[Online-Tests#Einheiteneinstellungen|Einheiteneinstellungen]]!&lt;br /&gt;
&lt;br /&gt;
====&amp;lt;span id=&amp;quot;cbParser&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;Checkbox Parser:====&lt;br /&gt;
Ist diese Checkbox ausgewählt, dann wird beim Berechnen der Symbolischen Lösung für das Ergebnis der Frage ud allen Teilfragen nicht [[Berechnungen#Berechnung mit Maxima|Maxima]], sondern der [[Berechnungen#Berechnung mit dem internen Parser|Interne Parser verwendet]].&lt;br /&gt;
&lt;br /&gt;
Siehe auch [[Berechnungen]]!&lt;br /&gt;
&lt;br /&gt;
====&amp;lt;span id=&amp;quot;cbSymbolisch&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;Checkbox Symbolisch====&lt;br /&gt;
Ist diese Checkbox ausgewählt, dann werden beim Berechnen der Lösung mathematische Konstanten nur dann eingesetzt, wenn sie mit einer Gleitkommazahl verrechnet werden. Weiters werden Berechnungen mit Ganzzahlen nur dann als Gleitkommazahl ausgerechnet, wenn sie mit einer Gleitkommazahl verrechnet werden.&lt;br /&gt;
&lt;br /&gt;
=Datensätze=&lt;br /&gt;
Siehe [[Datensätze definieren#Erstellung / Änderung über den Datensatz-Bereich|Datensätze definieren]]&lt;br /&gt;
&lt;br /&gt;
=Kompetenzen zuordnen=&lt;br /&gt;
Mit dem Button [[Datei:ClipCapIt-180901-220702.PNG|20px]] aus dem [[Toolbar]] kann man zwischen der Datensatz- und der Kompetenz-Ansicht umschalten.&lt;br /&gt;
&lt;br /&gt;
Siehe auch [[Kompetenzzuordnung]].&lt;br /&gt;
&lt;br /&gt;
=Maxima-Feld=&lt;br /&gt;
&lt;br /&gt;
Das Maximafeld wird für die Berechnung der Ergebnisformel verwendet. Für die Berechnung des Maxima-Feldes wird der Inhalt des Feldes mit einem Präprozessor vorbearbeitet und dann an Maxima gesendet, oder der Inhalt wird direkt mit dem internen Parser von Letto verarbeitet. Da einige Funktionen des internen Parsers von Maxima nicht unterstützt werden und umgekehrt der interne Parser nicht den vollen Funktionsumfang von Maxima unterstützt, ist je nach Aufgabenstellung die eine oder andere Variante zu verwenden.&lt;br /&gt;
&lt;br /&gt;
Siehe auch [[Berechnungen]]!&lt;br /&gt;
&lt;br /&gt;
====Maxima Berechnung====&lt;br /&gt;
Siehe [[Berechnungen#Berechnung mit Maxima|Maxima-Berechnungen]]&lt;br /&gt;
&lt;br /&gt;
* Zahlenwerte mit Einheiten werden, bevor das Feld an Maxima geschickt wird, durch interne Variablen ersetzt, die bei der Berechnung des Ergebnisses dann wieder mit Einheiten eingesetzt werden. Die Maxima-Berechnung erfolgt dadurch wie in Maxima üblich ohne Einheiten.&lt;br /&gt;
* graphische Elemente von Maxima wie plot etc. können nicht verwendet werden&lt;br /&gt;
* Jeder Durchlauf des Maximafeldes beginnt mit einer neuen leeren Maxima-Umgebung in der die Datei letto.mac geladen wird. Die Datei moodle.mac kann in der globalen Einstellungen des Servers für alle Benutzer gemeinsam vom Administrator konfiguriert werden. Unter anderem wird hier der Operator || definiert, der für die Parallelschaltung von Widerständen und Impedanzen verwendet werden kann.&lt;br /&gt;
* Es können auch alle Funktionen des internen Parsers, die Maxima nicht kennt verwendet werden. Jedoch kann Maxima diese Funktionen weder vereinfachen noch berechnen, dies muss dann Online beim Berechnen des Lösungsfeldes durch Letto direkt erfolgen. Dementsprechend kann auch der Befehl &#039;&#039;&#039;solve&#039;&#039;&#039; von Maxima keine Funktionen auflösen, die nur vom internen Parser untersützt werden.&lt;br /&gt;
&lt;br /&gt;
====Interner Parser von Letto====&lt;br /&gt;
Siehe [[Berechnungen#Berechnung_mit_dem_internen_Parser|Interner Parser]]&lt;br /&gt;
&lt;br /&gt;
* unterstützt Einheiten&lt;br /&gt;
* unterstützt Dualzahlen und Hexadezimalzahlen&lt;br /&gt;
* unterstützt einige Funktionen, die für technische Berechnungen vorteilhaft verwendet werden können. Die Liste der möglichen Funktionen ist in der Hilfe direkt nachzulesen.&lt;br /&gt;
* Der interne Parser von Letto wird immer für die Berechnung des Lösungsfeldes einer Berechnungs- oder Mehrfachberechnungsfrage verwendet.&lt;br /&gt;
&lt;br /&gt;
====Einheiten====&lt;br /&gt;
Zahlenwerte mit Einheit können auf mehrere Arten im Maximafeld verwendet werden:&lt;br /&gt;
* Als Datensatz mit Einheit durch Verwendung des Datensatzbezeichners: Dies ist die einfachste Variante, bei der gleichzeitig auch für jeden Schüler ein anderer Zahlenwert definiert werden kann&lt;br /&gt;
* Als Direkteingabe im Maxima-Feld mit Zahlenwert, gefolgt von der Einheit in einfachen Hochkomma ( x:13&#039;A/m&#039; oder y:x*56&#039;VA-1&#039; )&lt;br /&gt;
* Wenn die Einheit keine Rechenoperatoren enthält kann die Einheit direkt am Zahlenwert angehängt werden: zB.: U:23V oder I:U/2Ohm&lt;br /&gt;
&lt;br /&gt;
Der Präprozessor, der das Maximafeld vor der Berechnung durchläuft hat folgende Aufgaben:&lt;br /&gt;
&lt;br /&gt;
* Bei Maxima-Berechnungsmodi werden alle Zahlenwerte welche eine Einheit haben durch Variable ersetzt welche bei der späteren Berechnung wieder eingesetzt werden können&lt;br /&gt;
* jede Zeile wird automatisch abgeschlossen, man benötigt daher kein ; oder $ am Zeilenende und es sind dadurch keine mehrzeiligen Befehle möglich&lt;br /&gt;
* Bezeichner dürfen nur die Zeichen a-zA-Z0-9 enthalten (zB. der Unterstrich ist verboten)&lt;br /&gt;
* Bemerkungen werden wie in C oder Java übliche am Zeilenanfang mit einem doppelten Schrägstrich eingefügt&lt;br /&gt;
&lt;br /&gt;
====Wichtige Funktionen====&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Funktion !!  Beschreibung 	!! Beispiel 	!! Ergebnis&lt;br /&gt;
|-&lt;br /&gt;
| floor(x) ||  Kommazahl auf die nächste Ganzzahl abrunden 	|| ||&lt;br /&gt;
|-&lt;br /&gt;
| round(x) ||  Kommazahl auf Ganzzahl runden 	|| ||&lt;br /&gt;
|-&lt;br /&gt;
| pi() 	   ||  die Zahl Pi 	|| ||&lt;br /&gt;
|-&lt;br /&gt;
| exp(1)   ||  die eulersche Zahl e || ||&lt;br /&gt;
|-&lt;br /&gt;
| exp(x)   ||  Exponentialfunktion e hoch x 	|| ||&lt;br /&gt;
|-&lt;br /&gt;
| abs(x)   ||  Absolutbetrag  ||  abs(-2) 	||  2&lt;br /&gt;
|-&lt;br /&gt;
| acos(x), acosh(x), asin(x), &lt;br /&gt;
&lt;br /&gt;
asinh(x), atan2(y,x), atan(x), &lt;br /&gt;
&lt;br /&gt;
atanh(x), cos(x), cosh(x), &lt;br /&gt;
&lt;br /&gt;
sin(x), sinh(x), tan(x), tanh(x)  &lt;br /&gt;
||	Winkelfunktionen 	|| ||&lt;br /&gt;
|-&lt;br /&gt;
| deg2rad(x) ||	Grad in Radianten umwandeln 	|| ||&lt;br /&gt;
|-&lt;br /&gt;
| rad2deg(x) ||	Radianten in Grad umwandeln 	|| ||&lt;br /&gt;
|-&lt;br /&gt;
| max(x,y,z) ||	Liefert das Maximum der angegebenen Parameter 	|| max(2,5,3)  ||	5&lt;br /&gt;
|-&lt;br /&gt;
| min(x,y,z) ||	Liefert das Minimum der angegebenen Parameter 	|| min(3,2,6,34) ||	2&lt;br /&gt;
|-&lt;br /&gt;
| log10(x)   ||	10er Logarithmus 	||  log10(100)  || 	2&lt;br /&gt;
|-&lt;br /&gt;
| log(x)     ||	natürlicher Logarithmus 	|| ||&lt;br /&gt;
|-&lt;br /&gt;
| pow(x,y)   ||	berechnet die Potenz x hoch y  ||	pow(2,3) 	|| 8&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
====Tipps für Maxima-Newcomer====&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Befehl 	!!  Beschreibung&lt;br /&gt;
|-&lt;br /&gt;
| a:5  || 	Der Variablen a den Wert5 zuweisen&lt;br /&gt;
|-&lt;br /&gt;
| g1:x+y=5&lt;br /&gt;
&lt;br /&gt;
g2:x-y=3&lt;br /&gt;
&lt;br /&gt;
L:solve([g1,g2],[x,y])&lt;br /&gt;
&lt;br /&gt;
x:ev(x,L)&lt;br /&gt;
&lt;br /&gt;
y:ev(y,L)&lt;br /&gt;
|| 	Gleichungssystem lösen mit den Gleichungen g1 und g2&lt;br /&gt;
&lt;br /&gt;
solve löst das Gleichungssystem und liefert den Ergebnisvektor L&lt;br /&gt;
&lt;br /&gt;
ev berechnet aus dem Lösungsvektor die Variablen&lt;br /&gt;
|-&lt;br /&gt;
| c:4+5*%i   ||	komplexe Zahl&lt;br /&gt;
|-&lt;br /&gt;
| e:ratsimp(c*(2+3*%i)) 	|| komplexes Ergebnis auswerten&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=Eingabemasken für die unterschiedlichen Fragetypen=&lt;br /&gt;
&lt;br /&gt;
==Mehrfachberechnungsfrage==&lt;br /&gt;
&lt;br /&gt;
* Fragen dieses Typs sind sehr flexibel.&lt;br /&gt;
* Die Frage kann mehrere Teilantworten beinhalten. Jede Teilfrage wird im Fragetext durch einen [Qx]-Tag (x..Fragenummer) positioniert. Bei der Schülereingabe wird der Tag durch ein Eingabefeld für die Ergebniseingabe ersetzt.&lt;br /&gt;
* Die Angabewerte sind wie bei Berechnungsfragen mittels [[Datensätze|Datensätzen]] definierbar und variieren von Schüler zu Schüler.&lt;br /&gt;
* Alle verwendeten [[Datensätze|Variablen]] müssen im Angabtext in geschwungene Klammern gesetzt werden. Im [[Berechnungen|Maximafeld]] und im Lösungsfeld ist die Klammer nicht notwendig.&lt;br /&gt;
* Für jede Variable wird ein Dataset mit möglichen Werten angelegt. Diese Datasets können über einen [[Datensätze_definieren#Definition_der_Werte|Formatierungsstring]] definiert werden und danach auch direkt in einer Liste bearbeitet werden.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
:[[Datei:ClipCapIt-180831-220929.PNG|600px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Übersicht über alle Spalten der Detail-Ansicht:&#039;&#039;&#039;&lt;br /&gt;
====Q....====&lt;br /&gt;
Spalte mit der Kurzbezeichnung für die Teilfrage. Unter diesem Namen wird im Editor für die Angabe die Teilfrage mit [Qx] referenziert. An dieser Position steht dann bei der Testausführung das Eingabeelement für diese Teilfrage.&lt;br /&gt;
&lt;br /&gt;
====&amp;lt;span id=&amp;quot;sqProzInput&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;Prozent für die Antwort einer Teilfrage====&lt;br /&gt;
&lt;br /&gt;
Wenn der Schüler die Antwort gibt, die in der Zeile dieser Teilantwort steht, bekommt er den prozentuellen Anteil der Gesamtpunkt der Teilfrage.&lt;br /&gt;
&lt;br /&gt;
Je nach Antwort-Modus muss sichergestellt sein, dass der Schüler durch die richtige Eingabe der Antwort 100 Prozent erreichen kann.&lt;br /&gt;
&lt;br /&gt;
====&amp;lt;span id=&amp;quot;sqGradeInput&amp;quot;&amp;gt;Punkte einer Teilfrage====&lt;br /&gt;
Punkteanzahl für die richtige Beantwortung einer Teilfrage.&lt;br /&gt;
&lt;br /&gt;
Die Gesamtpunktanzahl einer Mehrfachberechnungsfrage ergibt sich immer aus der Summe der Punkte der Teilfragen.&lt;br /&gt;
&lt;br /&gt;
====&amp;lt;span id=&amp;quot;sqMaximaInput&amp;quot;&amp;gt;Maximafeld für die Antwort einer Teilfrage====&lt;br /&gt;
Siehe auch [[Berechnungen]]!&lt;br /&gt;
&lt;br /&gt;
Dieses Feld wird nach dem Durchlaufen des globalen Maxima-Feldes der Frage mit Maxima aufgerufen und liefert als Lösung den Ausdruck, der im Lösungsfeld eingesetzt wird.&lt;br /&gt;
&lt;br /&gt;
Es wird nur im Antwort-MODE &amp;quot;calculated&amp;quot; und &amp;quot;boolsch&amp;quot; berechnet.&lt;br /&gt;
&lt;br /&gt;
====&amp;lt;span id=&amp;quot;sqEinheitInput&amp;quot;&amp;gt;Ziel-Einheit der Antwort einer Teilfrage:====&lt;br /&gt;
Siehe unter [[ZielEinheit]]!&lt;br /&gt;
&lt;br /&gt;
====&amp;lt;span id=&amp;quot;modeSel_focus&amp;quot;&amp;gt;Antwortmode====&lt;br /&gt;
Art der Antwort:&lt;br /&gt;
&lt;br /&gt;
* Single-Choice: Es gibt mehrere Lösungen, die dem Schüler vorgeschlagen werden. Der Schüler muss nun von diesen Lösungen genau eine Auswählen. Die Lösungen stehen als String im Lösungsfeld&lt;br /&gt;
* Text: Die Lösung welche im Lösungsfeld steht ist eine Zeichenkette die vom Schüler genau so eingegeben werden muss&lt;br /&gt;
* Regexp: Im Lösungsfeld wird ein regulärer Ausdruck angeben, mit dem überprüft wird, ob die Antwort des Schülers richtig ist.&lt;br /&gt;
* Multichoice: Es gibt mehrere Lösungen, die dem Schüler vorgeschlagen werden. Der Schüler muss nun von diesen Lösungen eine oder mehrere Auswählen. Die Lösungen stehen als String in Lösungsfeld.&lt;br /&gt;
* Calculated: Im Lösungsfeld steht ein symbolischer Ausdruck, der aus dem Maxima-Feld errechnet wurde. Zur Laufzeit wird daraus mit dem Parser die Lösung berechnet.&lt;br /&gt;
* Boolsch: Dieser Fragemode kann nur sinnvoll bei einer Mehrfachberechnungsfrage verwendet werden. In diesem Modus kann man die Schülereingaben anderer Teilfragen nach Eingabe durch den Parser auswerten lassen und damit Punkte vergeben. Es lassen sich somit Folgefehler von Schülern berücksichtigen und bei der Dimensionierung können Angabe-Bedingungen geprüft werden, die über die Lösung einer Teilfrage nicht eindeutig wären. Der Zugriff auf die Schülereingabe einer anderen Teilfrage erfolgt im Lösungsfeld mit der Variablen Q gefolgt von der Teilfragenummer (zB. Q1 für die Teilfrage 1)&lt;br /&gt;
&lt;br /&gt;
====&amp;lt;span id=&amp;quot;sqToleranceInput&amp;quot;&amp;gt;Toleranz der Antwort einer Teilfrage====&lt;br /&gt;
Die Toleranz, wie genau ein Schüler seine Antwort angeben muss:&lt;br /&gt;
* Die Toleranz ist im Normalfall eine &#039;&#039;&#039;relative Angabe&#039;&#039;&#039; und wird in &#039;&#039;&#039;Prozent&#039;&#039;&#039; angegeben&lt;br /&gt;
* Wird bei der Toleranz kein Prozent angegeben, so muss der Wert zwischen 0 und 1 liegen und entspricht dann dem Prozentwert durch 100&lt;br /&gt;
* Wird bei der Toleranz vor oder nach dem Wert ohne Prozentzeichen ein &#039;&#039;&#039;a&#039;&#039;&#039; angegeben, so wird dieser Wert als &#039;&#039;&#039;absolute Toleranz&#039;&#039;&#039; der Größe in SI-Einheiten interpretiert. ( z.B.: 0.1a bei einem eletrischen Strom in Ampere entspricht einer absoluten Toleranz von 0.1A ) Absolute Toleranzen sind vor allem bei Ergebnissen welche Null sind notwendig, da die Berechnung statt 0 meist eine sehr kleine Zahl berechnet, welche dann mit einer relativen Toleranz auch extrem genau eingegeben werden muss und 0 dadurch nicht im Toleranzbereich liegen kann!&lt;br /&gt;
&lt;br /&gt;
====&amp;lt;span id=&amp;quot;sqLoesungInput&amp;quot;&amp;gt;Lösung der Antwort einer Teilfrage====&lt;br /&gt;
In der Lösungsformel steht die richtige Antwort der Frage, je nach Fragemode hat das Lösungsfeld verschiedene Funktionalität!&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Fragemode 	!! Bedeutung des Lösungsfeldes 	!! Inhalt&lt;br /&gt;
|-&lt;br /&gt;
| Single-Choice || Lösung wie sie am Browser ausgegeben wird 	|| Eingabe&lt;br /&gt;
|-&lt;br /&gt;
| Text 	        || Lösung wie sie der Schüler eingeben sollte 	|| Eingabe&lt;br /&gt;
|-&lt;br /&gt;
| Regexp 	|| Regulärer Ausdruck (in Java Syntax) welcher für die richtige Lösung treffen muss 	|| Eingabe&lt;br /&gt;
|-&lt;br /&gt;
| Multichoice 	|| Lösung wie sie am Browser ausgegeben wird. 	|| Eingabe&lt;br /&gt;
|-&lt;br /&gt;
| Calculated 	|| Berechnungsformel, mit der zur Testzeit die richtige Lösung berechnet wird, die mit der Schülereingaben verglichen wird. 	|| automatische Berechnung aus dem Maximafeld&lt;br /&gt;
|-&lt;br /&gt;
| Boolsch 	|| Berechnungsformel, die nach der Schülereingabe berechnet wird. Das Ergebnis der Formel muss boolsch sein. Wenn das Ergebnis true ist bekommt der Schüler die angegebenen Punkte. 	|| automatische Berechnung aus dem Maximafeld&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
====&amp;lt;span id=&amp;quot;sqErgInfoInput&amp;quot;&amp;gt;Infofeld der Antwort einer Teilfrage====&lt;br /&gt;
* Bei Berechnungsfragen die Antwort des ersten Datensatzes, das Feld ist dann schreibgeschützt&lt;br /&gt;
* Bei Boolschen Fragen kann hier eine Information erfolgen, wie die Frage bewertet wurde.&lt;br /&gt;
&lt;br /&gt;
==Berechnungsfrage==&lt;br /&gt;
:[[Datei:ClipCapIt-180901-122143.PNG|400px]]&lt;br /&gt;
&lt;br /&gt;
Die Berechnungsfrage ist ähnlich aufgebaut wie eine Mehrfachberechnungsfrage mit nur einer Berechnung. Diese Frage kann aber mehrere unterschiedliche Lösungen bereitstellen, um zB. typische Berechnungsfehler mit Punkteabzügen zu beurteilen. Es können also zusätzliche Reiter mit mehreren Antwortmöglichkeiten über das Kontextmenü erzeugt bzw. wieder gelöscht werden.&lt;br /&gt;
&lt;br /&gt;
:[[Datei:ClipCapIt-180901-212431.PNG|thumb|450px|Übersicht Erstellung einer Berechnungsfrage]]&lt;br /&gt;
&lt;br /&gt;
:[[Datei:ClipCapIt-180901-132831.PNG|400px]]&lt;br /&gt;
&lt;br /&gt;
* Berechnende Fragen sind wie Mehrfachberechnungsfragen mit nur einer Teilfrage bei dem das Antwortfeld automatisch erscheint.&lt;br /&gt;
* Jeder Schüler bekommt eine eigene Angabe&lt;br /&gt;
* Für den Druck kann die Frage auch für Projektangaben verwendet werden.&lt;br /&gt;
* Berechnungen erfolgen mit Maxima&lt;br /&gt;
* Alle verwendeten Variablen müssen im Angabtext in geschwungene Klammern gesetzt werden. Im Maximafeld und im Lösungsfeld ist die Klammer nicht notwendig.&lt;br /&gt;
* Für jede Variable wird ein Dataset mit möglichen Werten angelegt. Diese Datasets können über einen Formatierungsstring definiert werden und danach auch direkt in einer Liste bearbeitet werden.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Wenn mehrer Antwortmöglichkeiten definiert wurden, wird links ein zusätzliches Eingabefeld &#039;&#039;&#039;Antwort Maxima:&#039;&#039;&#039; angezeigt. Damit können Sie unterschiedliche Ergebnisse der Maxima-Berechnungen den unterschiedlichen Antworten zuordnen.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Feld !!  Beschreibung&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;Antwort Maxima  ||    [[#Lösung_der_Antwort_einer_Teilfrage|Verhalten wie bei der Mehrfachberechnungsfrage]], siehe [[Berechnungen]] &lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;Einheit:&#039;&#039;&#039;   || [[ZielEinheit|Defiition der Einheit oder sonstiges Frageerhalten]]&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;Prozent:&#039;&#039;&#039;   || [[#Prozent_für_die_Antwort_einer_Teilfrage|Prozentangaben für unterschiedliche Lösungen]]&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;Toleranz:&#039;&#039;&#039;  ||  [[#Toleranz_der_Antwort_einer_Teilfrage|Toleranz für den Ergebniswert wie bei Mehrfachberechnungsfrage]]&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;Mode:&#039;&#039;&#039;      ||  [[#Antwortmode|Berechungs-Modus]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Die Zeile &#039;Lösung für 1. Datenstatz&#039; zeigt das Ergebnis an, wenn der Werte des 1. Datensatzes in die Lösungsformel eingesetzt werden. Diese Zeile dient der Kontrolle, ob die Lösung mit Zahlenwerten auch Sinn macht und ob die Einheiten zusammenpassen.&lt;br /&gt;
&lt;br /&gt;
Das Eingabefeld &#039;&#039;&#039;Lösung&#039;&#039;&#039; ist schreibgeschützt und kann nur durch die [[Berechnungen#Berechnung mit Maxima|Maxima-Berechnung]] oder den [[Berechnungen#Berechnung_mit_dem_internen_Parser|internen Parser]] bestimmt werden.&lt;br /&gt;
&lt;br /&gt;
==Lückentextfrage==&lt;br /&gt;
Ein Lückentext enthält Lücken innerhalb eines Fragetextes, die durch den Schüler mit dem korrekten Inhalt gefüllt werden sollen.&lt;br /&gt;
&lt;br /&gt;
Folgende Modi sind dabei für die Lücken möglich:&lt;br /&gt;
* Texteingabe: Der Schüler muss das fehlende Wort je nach Fragemodus in die Lücke über die Tastatur eingeben oder per Drag&amp;amp;Drop auf die Lücke ziehen&lt;br /&gt;
* Multiple-Choice: Der Schüler kann aus mehreren Antwortmöglichkeiten eine oder mehrere richtige Elemente selektieren&lt;br /&gt;
* Single-Choice: Der Schüler kann mit einem Drop-Down-Auswahlfeld aus mehreren Antwortmöglichkeiten genau ein richtiges Element selektieren&lt;br /&gt;
&lt;br /&gt;
Da es bei Lückentextfragen um Texte geht, gibt es hier keine Datensätze oder Maxima-Berechnungen.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Fragemodus:&#039;&#039;&#039;&lt;br /&gt;
:[[Datei:ClipCapIt-180901-155006.PNG|200px]]&lt;br /&gt;
&lt;br /&gt;
Der Fragemodus gibt an wie Texteingabe-Lücken verarbeitet werden&lt;br /&gt;
&lt;br /&gt;
* Normal: Der Schüler muss den Text über die Tastatur in die Lücke eintragen.&lt;br /&gt;
* Drag-and-Drop: Der Schüler muss aus einer Liste von möglichen Antworten die richtigen Antworten auf die Lücken ziehen.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Funktionstasten:&#039;&#039;&#039;&lt;br /&gt;
F8: aktuelles Wort, bei dem der Cursor steht, als Textlücke definieren (Vorsicht: Wort nicht markieren!), siche auch  [[Editor_für_den_Angabetext#Schnelleingabe_.2F_Tastatur-Shortcuts|alle Funktionstasten]]&lt;br /&gt;
&lt;br /&gt;
====Erstellung der Frage:====&lt;br /&gt;
&lt;br /&gt;
Im [[Editor für den Angabetext|Textbereich des Editors]] werden die Lücken durch Antwortformulierungen in eckigen Klammern realisiert. Mit &#039;&#039;&#039;F8&#039;&#039;&#039; kann das aktuelle Wort, bei dem der Cursor steht, als Textlücke definiert werden.&lt;br /&gt;
&lt;br /&gt;
:[[Datei:ClipCapIt-180901-161337.PNG|thumb|450px|Beispiel einer Eingabe]]&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;Texteingabe:&#039;&#039;&#039;&lt;br /&gt;
** Im Fragemodus &amp;quot;Normal&amp;quot; muss der Schüler den Text in der Lücke eingeben&lt;br /&gt;
** Im Fragemodus &amp;quot;Drag and Drop&amp;quot; muss der Schüler aus einer Liste von Antworttexten den richtigen Text über die Lücke ziehen. Hierbei wird die Liste der Antworttexte aus allen richtigen und falschen Antworten der Texteingabe-Felder zusammengesetzt.&lt;br /&gt;
** Syntax:&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;margin-left:50px&amp;quot;&lt;br /&gt;
| [text]     || 	Das Wort &amp;quot;text&amp;quot; als Lücke mit 1 Punkt für die richtige Antwort&lt;br /&gt;
|-&lt;br /&gt;
| [2&amp;lt;nowiki&amp;gt;|&amp;lt;/nowiki&amp;gt;text]     || 	Das Wort &amp;quot;text&amp;quot; mit 2 Punkten für die richtige Antwort&lt;br /&gt;
|-&lt;br /&gt;
| [1&amp;lt;nowiki&amp;gt;|&amp;lt;/nowiki&amp;gt;text,50:alt,0:nix]   ||	2 Punkte für die richtige Antwort &amp;quot;text&amp;quot;, 50%von zwei Punkten für &amp;quot;alt&amp;quot;, &amp;quot;nix&amp;quot; als falsche Antwort für &amp;quot;Drag and Drop&amp;quot;-Fragen&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;Multiple-Choice:&#039;&#039;&#039;&lt;br /&gt;
**      unabhängig vom Fragemodus&lt;br /&gt;
**      mindestens eine Antwort muss richtig sein&lt;br /&gt;
**      Syntax:&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;margin-left:50px&amp;quot;&lt;br /&gt;
| [M&amp;lt;nowiki&amp;gt;|&amp;lt;/nowiki&amp;gt;x:richtig,falsch1,falsch2]  ||	Die richtigen Antwortfelder sind mit x: markiert&lt;br /&gt;
|-&lt;br /&gt;
| [M&amp;lt;nowiki&amp;gt;|&amp;lt;/nowiki&amp;gt;x:rot,x:grün,blau,gelb] 	 ||     rot und grün sind richtig&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;Single-Choice:&#039;&#039;&#039;&lt;br /&gt;
**      unabhängig vom Fragemodus&lt;br /&gt;
**      der Schüler muss eine Antwort aus mehreren wählen&lt;br /&gt;
**      Syntax:&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;margin-left:50px&amp;quot;&lt;br /&gt;
| [S&amp;lt;nowiki&amp;gt;|&amp;lt;/nowiki&amp;gt;x:richtig,falsch,falsch] 	||  x kennzeichnet eine richtige Antwort&lt;br /&gt;
|-&lt;br /&gt;
| [S&amp;lt;nowiki&amp;gt;|&amp;lt;/nowiki&amp;gt;x:rot,x:grün,50:blau,gelb] ||  bei rot und grün alle Punkte, bei blau 50 Prozent der Punkt, bei gelb 0 Punkte&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;Sonderzeichen&#039;&#039;&#039; innerhalb einer Lücke &lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;margin-left:50px&amp;quot;&lt;br /&gt;
| Bezeichnung || Zeichen || Ersatzzeichen &lt;br /&gt;
|-&lt;br /&gt;
| Komma(Beistrich) || ,  || ,, &lt;br /&gt;
|-&lt;br /&gt;
| Komma(Beistrich) || ,  || \, &lt;br /&gt;
|-&lt;br /&gt;
| eckige Klammer auf || [ || \[ &lt;br /&gt;
|-&lt;br /&gt;
| eckige Klammer zu || ] || \]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;Sonderzeichen&#039;&#039;&#039; im Fragetext, welche nicht in einer Lücke sind:&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;margin-left:50px&amp;quot;&lt;br /&gt;
| Bezeichnung || Zeichen || Ersatzzeichen &lt;br /&gt;
|-&lt;br /&gt;
| eckige Klammer auf || [ || \[ &lt;br /&gt;
|-&lt;br /&gt;
| eckige Klammer zu || ] || \]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
====Schülereingabe der Frage:====&lt;br /&gt;
Die oben in der Abbildung definierte Lückentextfrage führt zu der links abgebildeten Aufgabenstellung während eines [[Online-Tests]].&lt;br /&gt;
:[[Datei:ClipCapIt-180901-185126.PNG|350px]]&lt;br /&gt;
&lt;br /&gt;
==Multiple-Choice-Frage==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* Der Schüler kann eine oder mehrere vorgegebene Antworten als richtig ankreuzen.&lt;br /&gt;
* Die Antworten werden bei jedem Schüler in einer anderen Reihenfolge vorgeschlagen.&lt;br /&gt;
* Es gibt zwei mögliche Eingabeansichten&lt;br /&gt;
**        automatische Prozentvergabe: Alle richtigen Antworten bekommen einen Haken. Der Computer teilt dann die Prozentwerte gleichmäßig auf alle richtigen Antworten auf.&lt;br /&gt;
**        explizite Definition der Prozentwerte: Neben jeder Antwort kann ein Prozentwert angegeben werden, welcher zugewiesen wird wenn die Antwort angekreuzt ist. Die Summe der Prozentwerte aller richtigen Antworten muss dabei 100 ergeben!&lt;br /&gt;
&lt;br /&gt;
====Beispiele für eine Multiple-Choice-Frage in unterschiedlichen Ansichten====&lt;br /&gt;
&#039;&#039;&#039;CheckboxFeedback: &#039;&#039;&#039;&lt;br /&gt;
Eingabe der Antworten der Multiple-Choice-Frage durch Checkboxen: Die richtigen Antworten bekommen links davon in der Checkbox ein Häckchen. Neben den Antworten können Sie ein Feedback angeben, warum Antworten falsch oder richtig sind.&lt;br /&gt;
:[[Datei:ClipCapIt-180901-214517.PNG|400px]]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Checkbox: &#039;&#039;&#039;&lt;br /&gt;
Eingabe der Antworten der Multiple-Choice-Frage durch Checkboxen: Die richtigen Antworten bekommen ein Häckchen. Feedback-Eingaben sind nicht möglich.&lt;br /&gt;
:[[Datei:ClipCapIt-180901-214538.PNG|400px]]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;ProzentFeedback: &#039;&#039;&#039;&lt;br /&gt;
Die Antworten werden mit Prozentwerten versehen. Die Summe über alle positiven Prozent-Werte muss genau 100 Prozent ergeben! &lt;br /&gt;
Bei falschen Antworten können Sie Werte von -100 eingeben, dann wird bei einer falschen Antwort die ganze Frage als falsch beurteilt.&lt;br /&gt;
Wird dieser negative Prozentwert geringer als -100 gewählt, dann kann die Frage noch teilweise richtig beurteilt werden.&lt;br /&gt;
Neben den Antworten können Sie ein Feedback angeben, warum Antworten falsch oder richtig sind.&lt;br /&gt;
:[[Datei:ClipCapIt-180901-214557.PNG|400px]]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Prozent: &#039;&#039;&#039;&lt;br /&gt;
Die Antworten werden mit Prozentwerten versehen. Die Summe über alle positiven Prozent-Werte muss genau 100 Prozent ergeben! &lt;br /&gt;
Bei falschen Antworten können Sie Werte von -100 eingeben, dann wird bei einer falschen Antwort die ganze Frage als falsch beurteilt.&lt;br /&gt;
Wird dieser negative Prozentwert geringer als -100 gewählt, dann kann die Frage noch teilweise richtig beurteilt werden.&lt;br /&gt;
:[[Datei:ClipCapIt-180901-214616.PNG|400px]]&lt;br /&gt;
&lt;br /&gt;
Das Maxima-Feld kann auch für Multiple-Choice-Fragen für Berechnungen und für die Definition von Formeln verwendet werden. In den Antworten für die Multiple-Choice-Frage können Sie sich über {= ...} auf die Ergebnisse beziehen.&lt;br /&gt;
:[[Datei:ClipCapIt-180901-215517.PNG|400px]]&lt;br /&gt;
Die obige Frage wurde mit dieser Berechnung durchgeführt.&lt;br /&gt;
&lt;br /&gt;
==Zuordnungsfrage==&lt;br /&gt;
&lt;br /&gt;
Die Antwort auf jede der Unterfragen muss aus einer Liste von Möglichkeiten ausgewählt werden.&lt;br /&gt;
Im Prinzip hat der Schüler 2 Listen mit Antworten und Fragen, die er richtig zuordnen muss.&lt;br /&gt;
&lt;br /&gt;
[[Datei:ClipCapIt-180618-225643.PNG|500px]]&lt;br /&gt;
&lt;br /&gt;
Mit der Auswahlliste für das Anzeigeverhalten kann gesteuert werden, ob und wie die Zuordnungen bei einem Test gemischt werden.&lt;br /&gt;
&#039;&#039;Nur links mischen&#039;&#039; bedeutet, dass die Antwortmöglichkeiten auf der linken Seite der Zuordnungsfrage bei jedem Öffnen der Frage anders dargestellt werden.&lt;br /&gt;
&lt;br /&gt;
Folgende Einstellungen sind möglich:&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|Nicht mischen      ||  Die Reihenfolge wird so, wie sie in der Frage definiert ist, gewählt&lt;br /&gt;
|+&lt;br /&gt;
|Mischen            ||  Auf der linken und auf der rechten Seite werden die Antwortmöglichkeiten zufällig angeordnet&lt;br /&gt;
|+&lt;br /&gt;
|Nur links mischen  ||  Nur auf der linken Seite werden die Antwortmöglichkeiten zufällig angeordnet&lt;br /&gt;
|+&lt;br /&gt;
|Nur rechts mischen  || Nur auf der rechten Seite werden die Antwortmöglichkeiten zufällig angeordnet&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Pro Zeile werden die zusammengehörenden Begriffe in die Tabelle eingetragen.&lt;br /&gt;
Um Zuordnungsfragen zu erschweren, können auf der rechten Seite auch falsche Begrife angeführt werden, die nicht eine Entsprechung auf der linken Seite haben.&lt;br /&gt;
&lt;br /&gt;
Weiters können auf der linken Seite auch mehrere gleichnamige Begriffe verwendet werden, um Zuordnungen zu Themengruppen zu ermöglichen.&lt;br /&gt;
&lt;br /&gt;
==Freitextfrage==&lt;br /&gt;
Der Schüler erhält zur Fragebeantwortung ein Textfeld, in dem die Antwort eingetragen werden kann. Diese Fragen müssen aber manuell korrigiert werden!&lt;br /&gt;
Bei der Frageerstellung kann nur das Feedbackfeld ausgefüllt werden. Dieses kann eine mögliche Lösung der Aufgabenstellung enthalten und wird dem Schüler nach der Testausführung (Test wurde bereits beendet) angezeigt.&lt;br /&gt;
&lt;br /&gt;
* Eine Freitextfrage hat keine automatische Korrekturmöglichkeit!&lt;br /&gt;
* Verwendung für:&lt;br /&gt;
**        Fragen, die online über die Tastatur beantwortet werden und vom Lehrer über den Letto-Server händisch beurteilt werden.&lt;br /&gt;
**        Fragen, die nur als Angabe für Projekte, Laborübungen usw. dienen.&lt;br /&gt;
**        Fragen, die auf Papier beantwortet werden.&lt;br /&gt;
* Das Ergebnis kann im Feedback-Feld angegeben werden&lt;br /&gt;
**        und beim Online-Test dem Schüler als Feedback nach dem Test bekanntgegeben werden.&lt;br /&gt;
**        Bei Beispielsammlungen kann der Schüler das Feedbackfeld nie einsehen!&lt;br /&gt;
**        Bei Hausübungen kann der Schüler das Feedbackfeld erst nach Ablauf der Abgabefrist einsehen!&lt;br /&gt;
* Sowohl Feedbackfeld als auch das Fragefeld kann Bilder, Tabellen, externe Dateien und Sourcode-Listings enthalten.&lt;/div&gt;</summary>
		<author><name>Ckral</name></author>
	</entry>
	<entry>
		<id>https://wiki.letto.at/wiki/index.php?title=Beispielsammlung_Editieren&amp;diff=2350</id>
		<title>Beispielsammlung Editieren</title>
		<link rel="alternate" type="text/html" href="https://wiki.letto.at/wiki/index.php?title=Beispielsammlung_Editieren&amp;diff=2350"/>
		<updated>2020-05-16T09:51:12Z</updated>

		<summary type="html">&lt;p&gt;Ckral: Doppelpunkt (:) aus Überschrift entfernt&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;In der Edit-Ansicht können Beispiele verändert, geprüft und neu erstellt werden. &lt;br /&gt;
&lt;br /&gt;
Zurück zu [[Letto-Hauptansicht|LeTTo]], [[Beispielsammlung]]&lt;br /&gt;
[[Datei:FrageEditor.jpg|thumb|700px|Ansicht von &#039;Beispielsammlung Editieren&#039;]]&lt;br /&gt;
&lt;br /&gt;
=Übersicht=&lt;br /&gt;
Im Modus &#039;&#039;&#039;Beispielsammlung editieren&#039;&#039;&#039; ist oben eine [[Toolbar|Symbolleiste]] zur Steuerung der Anwendung angeordnet. Nähere Beschreibung der jeweiligen Buttons finden Sie unter [[Toolbar]].&lt;br /&gt;
&lt;br /&gt;
Im Bereich der Themen (siehe obige Abbildung) finden Sie eine [[Ordnerverwaltung|Ordnerstruktur]] ähnlich einem Dateimanager zur Sortierung und Speicherung der Fragen. Weiters finden Sie in diesem Bereich unten die Definition von [[Online-Tests]]. &lt;br /&gt;
&lt;br /&gt;
Die [[Fragenliste]] enthält alle Fragen eines Ordners sowie Möglichkeiten zum Hinzufügen, Ändern und Klonen ... von Fragen. &lt;br /&gt;
&lt;br /&gt;
Darunter finden sie die [[Bildvorschau]], die immer das zuletzt im [[Editor für den Angabetext|Editor]] angewählte Bild (Image, IMG) anzeigt.&lt;br /&gt;
&lt;br /&gt;
Der rechte Bereich des Editiermodus enthält alle Infos zur aktuell ausgewählten und gerade bearbeiteten Frage. Der obere Teil der Eingabemaske für Fragen ist für alle [[Fragetypen]] gleich.&lt;br /&gt;
&lt;br /&gt;
=Name der Frage=&lt;br /&gt;
:[[Datei:ClipCapIt-180618-180519.PNG|400px|thumb|Eingabefeld für den Fragenamen]]&lt;br /&gt;
Der Fragename bezeichnet die Frage und sollte Information über den Frageninhalt bringen. Alle Fragen einer [[Ordnerverwaltung|Kategorie oder Ordners]] werden mit ihrem Fragennamen in der [[Fragenliste]] angezeigt. Der Name sollte sprechend aber nicht zu lange sein, damit die Übersicht in der Fragenliste erhalten bleibt.&lt;br /&gt;
&lt;br /&gt;
Oberhalb des Fragennamens finden Sie noch den Fragetyp, den diese Frage hat.&lt;br /&gt;
&lt;br /&gt;
=Dokumente zu dieser Frage hochladen=&lt;br /&gt;
:[[Datei:ClipCapIt-181021-141443.PNG|500px]]&lt;br /&gt;
Ist die Checkbox &#039;&#039;&#039;Doks:&#039;&#039;&#039; ausgewählt, dann kann der Schüler bei der Beantwortung der Fragen auch Dokumente zur Testfrage auf den Server hochladen. &lt;br /&gt;
&lt;br /&gt;
Die folgende Abbildung zeigt die Buttons zum Testen der Lösung und den zusätzlichen Button &#039;&#039;&#039;Datei zur Frage hochladen&#039;&#039;&#039;, der dann eingeblendet wird, wenn bei der Fragedefinition die Option &#039;&#039;&#039;Doks:&#039;&#039;&#039; ausgewählt wurde.&lt;br /&gt;
:[[Datei:ClipCapIt-181021-142155.PNG|350px]]&lt;br /&gt;
Solange der Testversuch aktiv ist, können die Dokumnete vom Schüler wieder über den &#039;&#039;&#039;X&#039;&#039;&#039;-Button gelöscht werden oder weitere Dokumnete zu dieser Testfrage hochgeladen werden.&lt;br /&gt;
&lt;br /&gt;
Nach Beendigung des Testversuchs können die Dokumente nicht mehr geändert, sondern nur mehr heruntergeladen und angesehen werden.&lt;br /&gt;
&lt;br /&gt;
=Gefundene Werte=&lt;br /&gt;
Hier sind alle Konstante, die im Angabetext gefunden wurden, aufgelistet. Dieses Feld wird nach dem Verlassen des Editors für den Angabetext automatisch aktualisiert: Enthält der Fragetext Konstante in geschwungenen Klammern, die keine Datensätze sind, so werden diese Variablen automatisch aus dem Text extrahiert und angezeigt. Diese Werte können dann für die Berechnung der Lösung herangezogen werden.&lt;br /&gt;
&lt;br /&gt;
=Frage-Textfeld=&lt;br /&gt;
Siehe [[Editor für den Angabetext]].&lt;br /&gt;
&lt;br /&gt;
=Plugin-Info=&lt;br /&gt;
Im Bereich Plugin-Info finden Sie einen Button &#039;&#039;&#039;Plugins&#039;&#039;&#039; zur Definition der Plugins der Frage. Dadurch wird der [[Definition von Plugins|Dialog zur Plugindefinition]] geöffnet.&lt;br /&gt;
&lt;br /&gt;
Die Plugindefinition bildet immer einen Text-String. Dieser wird nach dem Schliessen des Dialogs im nebenstehenden Feld angezeigt und kann theoretisch auch verändert werden. Diese Option sollten aber nur erfahrene Benutzer verwenden, die sich mit der Syntax der Plugin-Definition auskennen.&lt;br /&gt;
&lt;br /&gt;
Der Scroller [[Datei:ClipCapIt-180831-204926.PNG|40px]] neben dem Eingabefeld dient zum Durchlaufen von allen definierten [[Datensätze|Datensätzen]] und zeigt die Änderungen der Grafiken an, wenn der Cursor auf einem [[Editor für den Angabetext#Spezielle TAGs im Fragentext|Plugin-Grafik-Tag]] [PIG...] im [[Editor für den Angabetext]] steht.&lt;br /&gt;
&lt;br /&gt;
=Beurteilungsbereich=&lt;br /&gt;
====&amp;lt;span id=&amp;quot;qPunkte&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;Punkte====&lt;br /&gt;
Punkte, die bei richtiger Beantwortung der Frage für die gesamte Frage maximal vergeben werden können. Bei Mehrfachberechnungsfragen ist dieses Feld gesperrt und die Punkteanzahl wird automatisch als Gesamtpunktezahl aus allen Teilfragen berechnet.&lt;br /&gt;
&lt;br /&gt;
====&amp;lt;span id=&amp;quot;qPenalty&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;Penalty====&lt;br /&gt;
Abzug, der bei einer falschen Beantwortung im [[Online-Tests#Testart|Rechenübungs- oder Hausübungmodus]] pro Versuch abgezogen wird.&lt;br /&gt;
&lt;br /&gt;
====&amp;lt;span id=&amp;quot;qEinheitenFehler&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;Einheitenfehler:====&lt;br /&gt;
Im Feld &amp;quot;EH-Fehler&amp;quot; wird ein Faktor angeben, der von den Punkten der richtigen Lösung abgezogen wird, wenn die Einheit falsch angegeben wurde.&lt;br /&gt;
&lt;br /&gt;
Der Wert von EH-Fehler muss zwischen 0 und 1 liegen!&lt;br /&gt;
&lt;br /&gt;
Erreichtepunkte = Maximalpunkte* (1 - EHFehler)&lt;br /&gt;
&lt;br /&gt;
z.B:&lt;br /&gt;
Das Beispiel hat 4 Punkte, der EH-Faktor ist 0.1.&lt;br /&gt;
Gibt nun der Schüler statt 0.2A den Wert 0.2V an, so erhält er 4*(1-0.1) = 3.6 Punkte.&lt;br /&gt;
Gibt der Schüler einen falschen Einheitenvorsatz wie 0.2mA an, so erhält er keine Punkte, da der Wert falsch ist!&lt;br /&gt;
&lt;br /&gt;
Siehe auch [[Einheit|Einheiten]], [[Online-Tests#Einheiteneinstellungen|Einheiteneinstellungen]]!&lt;br /&gt;
&lt;br /&gt;
====&amp;lt;span id=&amp;quot;cbParser&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;Checkbox Parser:====&lt;br /&gt;
Ist diese Checkbox ausgewählt, dann wird beim Berechnen der Symbolischen Lösung für das Ergebnis der Frage ud allen Teilfragen nicht [[Berechnungen#Berechnung mit Maxima|Maxima]], sondern der [[Berechnungen#Berechnung mit dem internen Parser|Interne Parser verwendet]].&lt;br /&gt;
&lt;br /&gt;
Siehe auch [[Berechnungen]]!&lt;br /&gt;
&lt;br /&gt;
====&amp;lt;span id=&amp;quot;cbSymbolisch&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;Checkbox Symbolisch====&lt;br /&gt;
Ist diese Checkbox ausgewählt, dann werden beim Berechnen der Lösung mathematische Konstanten nur dann eingesetzt, wenn sie mit einer Gleitkommazahl verrechnet werden. Weiters werden Berechnungen mit Ganzzahlen nur dann als Gleitkommazahl ausgerechnet, wenn sie mit einer Gleitkommazahl verrechnet werden.&lt;br /&gt;
&lt;br /&gt;
=Datensätze=&lt;br /&gt;
Siehe [[Datensätze definieren#Erstellung / Änderung über den Datensatz-Bereich|Datensätze definieren]]&lt;br /&gt;
&lt;br /&gt;
=Kompetenzen zuordnen=&lt;br /&gt;
Mit dem Button [[Datei:ClipCapIt-180901-220702.PNG|20px]] aus dem [[Toolbar]] kann man zwischen der Datensatz- und der Kompetenz-Ansicht umschalten.&lt;br /&gt;
&lt;br /&gt;
Siehe auch [[Kompetenzzuordnung]].&lt;br /&gt;
&lt;br /&gt;
=Maxima-Feld=&lt;br /&gt;
&lt;br /&gt;
Das Maximafeld wird für die Berechnung der Ergebnisformel verwendet. Für die Berechnung des Maxima-Feldes wird der Inhalt des Feldes mit einem Präprozessor vorbearbeitet und dann an Maxima gesendet, oder der Inhalt wird direkt mit dem internen Parser von Letto verarbeitet. Da einige Funktionen des internen Parsers von Maxima nicht unterstützt werden und umgekehrt der interne Parser nicht den vollen Funktionsumfang von Maxima unterstützt, ist je nach Aufgabenstellung die eine oder andere Variante zu verwenden.&lt;br /&gt;
&lt;br /&gt;
Siehe auch [[Berechnungen]]!&lt;br /&gt;
&lt;br /&gt;
====Maxima Berechnung====&lt;br /&gt;
Siehe [[Berechnungen#Berechnung mit Maxima|Maxima-Berechnungen]]&lt;br /&gt;
&lt;br /&gt;
* Zahlenwerte mit Einheiten werden, bevor das Feld an Maxima geschickt wird, durch interne Variablen ersetzt, die bei der Berechnung des Ergebnisses dann wieder mit Einheiten eingesetzt werden. Die Maxima-Berechnung erfolgt dadurch wie in Maxima üblich ohne Einheiten.&lt;br /&gt;
* graphische Elemente von Maxima wie plot etc. können nicht verwendet werden&lt;br /&gt;
* Jeder Durchlauf des Maximafeldes beginnt mit einer neuen leeren Maxima-Umgebung in der die Datei letto.mac geladen wird. Die Datei moodle.mac kann in der globalen Einstellungen des Servers für alle Benutzer gemeinsam vom Administrator konfiguriert werden. Unter anderem wird hier der Operator || definiert, der für die Parallelschaltung von Widerständen und Impedanzen verwendet werden kann.&lt;br /&gt;
* Es können auch alle Funktionen des internen Parsers, die Maxima nicht kennt verwendet werden. Jedoch kann Maxima diese Funktionen weder vereinfachen noch berechnen, dies muss dann Online beim Berechnen des Lösungsfeldes durch Letto direkt erfolgen. Dementsprechend kann auch der Befehl &#039;&#039;&#039;solve&#039;&#039;&#039; von Maxima keine Funktionen auflösen, die nur vom internen Parser untersützt werden.&lt;br /&gt;
&lt;br /&gt;
====Interner Parser von Letto====&lt;br /&gt;
Siehe [[Berechnungen#Berechnung_mit_dem_internen_Parser|Interner Parser]]&lt;br /&gt;
&lt;br /&gt;
* unterstützt Einheiten&lt;br /&gt;
* unterstützt Dualzahlen und Hexadezimalzahlen&lt;br /&gt;
* unterstützt einige Funktionen, die für technische Berechnungen vorteilhaft verwendet werden können. Die Liste der möglichen Funktionen ist in der Hilfe direkt nachzulesen.&lt;br /&gt;
* Der interne Parser von Letto wird immer für die Berechnung des Lösungsfeldes einer Berechnungs- oder Mehrfachberechnungsfrage verwendet.&lt;br /&gt;
&lt;br /&gt;
====Einheiten====&lt;br /&gt;
Zahlenwerte mit Einheit können auf mehrere Arten im Maximafeld verwendet werden:&lt;br /&gt;
* Als Datensatz mit Einheit durch Verwendung des Datensatzbezeichners: Dies ist die einfachste Variante, bei der gleichzeitig auch für jeden Schüler ein anderer Zahlenwert definiert werden kann&lt;br /&gt;
* Als Direkteingabe im Maxima-Feld mit Zahlenwert, gefolgt von der Einheit in einfachen Hochkomma ( x:13&#039;A/m&#039; oder y:x*56&#039;VA-1&#039; )&lt;br /&gt;
* Wenn die Einheit keine Rechenoperatoren enthält kann die Einheit direkt am Zahlenwert angehängt werden: zB.: U:23V oder I:U/2Ohm&lt;br /&gt;
&lt;br /&gt;
Der Präprozessor, der das Maximafeld vor der Berechnung durchläuft hat folgende Aufgaben:&lt;br /&gt;
&lt;br /&gt;
* Bei Maxima-Berechnungsmodi werden alle Zahlenwerte welche eine Einheit haben durch Variable ersetzt welche bei der späteren Berechnung wieder eingesetzt werden können&lt;br /&gt;
* jede Zeile wird automatisch abgeschlossen, man benötigt daher kein ; oder $ am Zeilenende und es sind dadurch keine mehrzeiligen Befehle möglich&lt;br /&gt;
* Bezeichner dürfen nur die Zeichen a-zA-Z0-9 enthalten (zB. der Unterstrich ist verboten)&lt;br /&gt;
* Bemerkungen werden wie in C oder Java übliche am Zeilenanfang mit einem doppelten Schrägstrich eingefügt&lt;br /&gt;
&lt;br /&gt;
====Wichtige Funktionen====&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Funktion !!  Beschreibung 	!! Beispiel 	!! Ergebnis&lt;br /&gt;
|-&lt;br /&gt;
| floor(x) ||  Kommazahl auf die nächste Ganzzahl abrunden 	|| ||&lt;br /&gt;
|-&lt;br /&gt;
| round(x) ||  Kommazahl auf Ganzzahl runden 	|| ||&lt;br /&gt;
|-&lt;br /&gt;
| pi() 	   ||  die Zahl Pi 	|| ||&lt;br /&gt;
|-&lt;br /&gt;
| exp(1)   ||  die eulersche Zahl e || ||&lt;br /&gt;
|-&lt;br /&gt;
| exp(x)   ||  Exponentialfunktion e hoch x 	|| ||&lt;br /&gt;
|-&lt;br /&gt;
| abs(x)   ||  Absolutbetrag  ||  abs(-2) 	||  2&lt;br /&gt;
|-&lt;br /&gt;
| acos(x), acosh(x), asin(x), &lt;br /&gt;
&lt;br /&gt;
asinh(x), atan2(y,x), atan(x), &lt;br /&gt;
&lt;br /&gt;
atanh(x), cos(x), cosh(x), &lt;br /&gt;
&lt;br /&gt;
sin(x), sinh(x), tan(x), tanh(x)  &lt;br /&gt;
||	Winkelfunktionen 	|| ||&lt;br /&gt;
|-&lt;br /&gt;
| deg2rad(x) ||	Grad in Radianten umwandeln 	|| ||&lt;br /&gt;
|-&lt;br /&gt;
| rad2deg(x) ||	Radianten in Grad umwandeln 	|| ||&lt;br /&gt;
|-&lt;br /&gt;
| max(x,y,z) ||	Liefert das Maximum der angegebenen Parameter 	|| max(2,5,3)  ||	5&lt;br /&gt;
|-&lt;br /&gt;
| min(x,y,z) ||	Liefert das Minimum der angegebenen Parameter 	|| min(3,2,6,34) ||	2&lt;br /&gt;
|-&lt;br /&gt;
| log10(x)   ||	10er Logarithmus 	||  log10(100)  || 	2&lt;br /&gt;
|-&lt;br /&gt;
| log(x)     ||	natürlicher Logarithmus 	|| ||&lt;br /&gt;
|-&lt;br /&gt;
| pow(x,y)   ||	berechnet die Potenz x hoch y  ||	pow(2,3) 	|| 8&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
====Tipps für Maxima-Newcomer====&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Befehl 	!!  Beschreibung&lt;br /&gt;
|-&lt;br /&gt;
| a:5  || 	Der Variablen a den Wert5 zuweisen&lt;br /&gt;
|-&lt;br /&gt;
| g1:x+y=5&lt;br /&gt;
&lt;br /&gt;
g2:x-y=3&lt;br /&gt;
&lt;br /&gt;
L:solve([g1,g2],[x,y])&lt;br /&gt;
&lt;br /&gt;
x:ev(x,L)&lt;br /&gt;
&lt;br /&gt;
y:ev(y,L)&lt;br /&gt;
|| 	Gleichungssystem lösen mit den Gleichungen g1 und g2&lt;br /&gt;
&lt;br /&gt;
solve löst das Gleichungssystem und liefert den Ergebnisvektor L&lt;br /&gt;
&lt;br /&gt;
ev berechnet aus dem Lösungsvektor die Variablen&lt;br /&gt;
|-&lt;br /&gt;
| c:4+5*%i   ||	komplexe Zahl&lt;br /&gt;
|-&lt;br /&gt;
| e:ratsimp(c*(2+3*%i)) 	|| komplexes Ergebnis auswerten&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=Eingabemasken für die unterschiedlichen Fragetypen=&lt;br /&gt;
&lt;br /&gt;
==Mehrfachberechnungsfrage==&lt;br /&gt;
&lt;br /&gt;
* Fragen dieses Typs sind sehr flexibel.&lt;br /&gt;
* Die Frage kann mehrere Teilantworten beinhalten. Jede Teilfrage wird im Fragetext durch einen [Qx]-Tag (x..Fragenummer) positioniert. Bei der Schülereingabe wird der Tag durch ein Eingabefeld für die Ergebniseingabe ersetzt.&lt;br /&gt;
* Die Angabewerte sind wie bei Berechnungsfragen mittels [[Datensätze|Datensätzen]] definierbar und variieren von Schüler zu Schüler.&lt;br /&gt;
* Alle verwendeten [[Datensätze|Variablen]] müssen im Angabtext in geschwungene Klammern gesetzt werden. Im [[Berechnungen|Maximafeld]] und im Lösungsfeld ist die Klammer nicht notwendig.&lt;br /&gt;
* Für jede Variable wird ein Dataset mit möglichen Werten angelegt. Diese Datasets können über einen [[Datensätze_definieren#Definition_der_Werte|Formatierungsstring]] definiert werden und danach auch direkt in einer Liste bearbeitet werden.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
:[[Datei:ClipCapIt-180831-220929.PNG|600px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Übersicht über alle Spalten der Detail-Ansicht:&#039;&#039;&#039;&lt;br /&gt;
====Q....====&lt;br /&gt;
Spalte mit der Kurzbezeichnung für die Teilfrage. Unter diesem Namen wird im Editor für die Angabe die Teilfrage mit [Qx] referenziert. An dieser Position steht dann bei der Testausführung das Eingabeelement für diese Teilfrage.&lt;br /&gt;
&lt;br /&gt;
====&amp;lt;span id=&amp;quot;sqProzInput&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;Prozent für die Antwort einer Teilfrage====&lt;br /&gt;
&lt;br /&gt;
Wenn der Schüler die Antwort gibt, die in der Zeile dieser Teilantwort steht, bekommt er den prozentuellen Anteil der Gesamtpunkt der Teilfrage.&lt;br /&gt;
&lt;br /&gt;
Je nach Antwort-Modus muss sichergestellt sein, dass der Schüler durch die richtige Eingabe der Antwort 100 Prozent erreichen kann.&lt;br /&gt;
&lt;br /&gt;
====&amp;lt;span id=&amp;quot;sqGradeInput&amp;quot;&amp;gt;Punkte einer Teilfrage====&lt;br /&gt;
Punkteanzahl für die richtige Beantwortung einer Teilfrage.&lt;br /&gt;
&lt;br /&gt;
Die Gesamtpunktanzahl einer Mehrfachberechnungsfrage ergibt sich immer aus der Summe der Punkte der Teilfragen.&lt;br /&gt;
&lt;br /&gt;
====&amp;lt;span id=&amp;quot;sqMaximaInput&amp;quot;&amp;gt;Maximafeld für die Antwort einer Teilfrage====&lt;br /&gt;
Siehe auch [[Berechnungen]]!&lt;br /&gt;
&lt;br /&gt;
Dieses Feld wird nach dem Durchlaufen des globalen Maxima-Feldes der Frage mit Maxima aufgerufen und liefert als Lösung den Ausdruck, der im Lösungsfeld eingesetzt wird.&lt;br /&gt;
&lt;br /&gt;
Es wird nur im Antwort-MODE &amp;quot;calculated&amp;quot; und &amp;quot;boolsch&amp;quot; berechnet.&lt;br /&gt;
&lt;br /&gt;
====&amp;lt;span id=&amp;quot;sqEinheitInput&amp;quot;&amp;gt;Ziel-Einheit der Antwort einer Teilfrage:====&lt;br /&gt;
Siehe unter [[ZielEinheit]]!&lt;br /&gt;
&lt;br /&gt;
====&amp;lt;span id=&amp;quot;modeSel_focus&amp;quot;&amp;gt;Antwortmode====&lt;br /&gt;
Art der Antwort:&lt;br /&gt;
&lt;br /&gt;
* Single-Choice: Es gibt mehrere Lösungen, die dem Schüler vorgeschlagen werden. Der Schüler muss nun von diesen Lösungen genau eine Auswählen. Die Lösungen stehen als String im Lösungsfeld&lt;br /&gt;
* Text: Die Lösung welche im Lösungsfeld steht ist eine Zeichenkette die vom Schüler genau so eingegeben werden muss&lt;br /&gt;
* Regexp: Im Lösungsfeld wird ein regulärer Ausdruck angeben, mit dem überprüft wird, ob die Antwort des Schülers richtig ist.&lt;br /&gt;
* Multichoice: Es gibt mehrere Lösungen, die dem Schüler vorgeschlagen werden. Der Schüler muss nun von diesen Lösungen eine oder mehrere Auswählen. Die Lösungen stehen als String in Lösungsfeld.&lt;br /&gt;
* Calculated: Im Lösungsfeld steht ein symbolischer Ausdruck, der aus dem Maxima-Feld errechnet wurde. Zur Laufzeit wird daraus mit dem Parser die Lösung berechnet.&lt;br /&gt;
* Boolsch: Dieser Fragemode kann nur sinnvoll bei einer Mehrfachberechnungsfrage verwendet werden. In diesem Modus kann man die Schülereingaben anderer Teilfragen nach Eingabe durch den Parser auswerten lassen und damit Punkte vergeben. Es lassen sich somit Folgefehler von Schülern berücksichtigen und bei der Dimensionierung können Angabe-Bedingungen geprüft werden, die über die Lösung einer Teilfrage nicht eindeutig wären. Der Zugriff auf die Schülereingabe einer anderen Teilfrage erfolgt im Lösungsfeld mit der Variablen Q gefolgt von der Teilfragenummer (zB. Q1 für die Teilfrage 1)&lt;br /&gt;
&lt;br /&gt;
====&amp;lt;span id=&amp;quot;sqToleranceInput&amp;quot;&amp;gt;Toleranz der Antwort einer Teilfrage====&lt;br /&gt;
Die Toleranz, wie genau ein Schüler seine Antwort angeben muss:&lt;br /&gt;
* Die Toleranz ist im Normalfall eine &#039;&#039;&#039;relative Angabe&#039;&#039;&#039; und wird in &#039;&#039;&#039;Prozent&#039;&#039;&#039; angegeben&lt;br /&gt;
* Wird bei der Toleranz kein Prozent angegeben, so muss der Wert zwischen 0 und 1 liegen und entspricht dann dem Prozentwert durch 100&lt;br /&gt;
* Wird bei der Toleranz vor oder nach dem Wert ohne Prozentzeichen ein &#039;&#039;&#039;a&#039;&#039;&#039; angegeben, so wird dieser Wert als &#039;&#039;&#039;absolute Toleranz&#039;&#039;&#039; der Größe in SI-Einheiten interpretiert. ( z.B.: 0.1a bei einem eletrischen Strom in Ampere entspricht einer absoluten Toleranz von 0.1A ) Absolute Toleranzen sind vor allem bei Ergebnissen welche Null sind notwendig, da die Berechnung statt 0 meist eine sehr kleine Zahl berechnet, welche dann mit einer relativen Toleranz auch extrem genau eingegeben werden muss und 0 dadurch nicht im Toleranzbereich liegen kann!&lt;br /&gt;
&lt;br /&gt;
====&amp;lt;span id=&amp;quot;sqLoesungInput&amp;quot;&amp;gt;Lösung der Antwort einer Teilfrage====&lt;br /&gt;
In der Lösungsformel steht die richtige Antwort der Frage, je nach Fragemode hat das Lösungsfeld verschiedene Funktionalität!&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Fragemode 	!! Bedeutung des Lösungsfeldes 	!! Inhalt&lt;br /&gt;
|-&lt;br /&gt;
| Single-Choice || Lösung wie sie am Browser ausgegeben wird 	|| Eingabe&lt;br /&gt;
|-&lt;br /&gt;
| Text 	        || Lösung wie sie der Schüler eingeben sollte 	|| Eingabe&lt;br /&gt;
|-&lt;br /&gt;
| Regexp 	|| Regulärer Ausdruck (in Java Syntax) welcher für die richtige Lösung treffen muss 	|| Eingabe&lt;br /&gt;
|-&lt;br /&gt;
| Multichoice 	|| Lösung wie sie am Browser ausgegeben wird. 	|| Eingabe&lt;br /&gt;
|-&lt;br /&gt;
| Calculated 	|| Berechnungsformel, mit der zur Testzeit die richtige Lösung berechnet wird, die mit der Schülereingaben verglichen wird. 	|| automatische Berechnung aus dem Maximafeld&lt;br /&gt;
|-&lt;br /&gt;
| Boolsch 	|| Berechnungsformel, die nach der Schülereingabe berechnet wird. Das Ergebnis der Formel muss boolsch sein. Wenn das Ergebnis true ist bekommt der Schüler die angegebenen Punkte. 	|| automatische Berechnung aus dem Maximafeld&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
====&amp;lt;span id=&amp;quot;sqErgInfoInput&amp;quot;&amp;gt;Infofeld der Antwort einer Teilfrage====&lt;br /&gt;
* Bei Berechnungsfragen die Antwort des ersten Datensatzes, das Feld ist dann schreibgeschützt&lt;br /&gt;
* Bei Boolschen Fragen kann hier eine Information erfolgen, wie die Frage bewertet wurde.&lt;br /&gt;
&lt;br /&gt;
==Berechnungsfrage==&lt;br /&gt;
:[[Datei:ClipCapIt-180901-122143.PNG|400px]]&lt;br /&gt;
&lt;br /&gt;
Die Berechnungsfrage ist ähnlich aufgebaut wie eine Mehrfachberechnungsfrage mit nur einer Berechnung. Diese Frage kann aber mehrere unterschiedliche Lösungen bereitstellen, um zB. typische Berechnungsfehler mit Punkteabzügen zu beurteilen. Es können also zusätzliche Reiter mit mehreren Antwortmöglichkeiten über das Kontextmenü erzeugt bzw. wieder gelöscht werden.&lt;br /&gt;
&lt;br /&gt;
:[[Datei:ClipCapIt-180901-212431.PNG|thumb|450px|Übersicht Erstellung einer Berechnungsfrage]]&lt;br /&gt;
&lt;br /&gt;
:[[Datei:ClipCapIt-180901-132831.PNG|400px]]&lt;br /&gt;
&lt;br /&gt;
* Berechnende Fragen sind wie Mehrfachberechnungsfragen mit nur einer Teilfrage bei dem das Antwortfeld automatisch erscheint.&lt;br /&gt;
* Jeder Schüler bekommt eine eigene Angabe&lt;br /&gt;
* Für den Druck kann die Frage auch für Projektangaben verwendet werden.&lt;br /&gt;
* Berechnungen erfolgen mit Maxima&lt;br /&gt;
* Alle verwendeten Variablen müssen im Angabtext in geschwungene Klammern gesetzt werden. Im Maximafeld und im Lösungsfeld ist die Klammer nicht notwendig.&lt;br /&gt;
* Für jede Variable wird ein Dataset mit möglichen Werten angelegt. Diese Datasets können über einen Formatierungsstring definiert werden und danach auch direkt in einer Liste bearbeitet werden.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Wenn mehrer Antwortmöglichkeiten definiert wurden, wird links ein zusätzliches Eingabefeld &#039;&#039;&#039;Antwort Maxima:&#039;&#039;&#039; angezeigt. Damit können Sie unterschiedliche Ergebnisse der Maxima-Berechnungen den unterschiedlichen Antworten zuordnen.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Feld !!  Beschreibung&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;Antwort Maxima  ||    [[#Lösung_der_Antwort_einer_Teilfrage|Verhalten wie bei der Mehrfachberechnungsfrage]], siehe [[Berechnungen]] &lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;Einheit:&#039;&#039;&#039;   || [[ZielEinheit|Defiition der Einheit oder sonstiges Frageerhalten]]&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;Prozent:&#039;&#039;&#039;   || [[#Prozent_für_die_Antwort_einer_Teilfrage|Prozentangaben für unterschiedliche Lösungen]]&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;Toleranz:&#039;&#039;&#039;  ||  [[#Toleranz_der_Antwort_einer_Teilfrage|Toleranz für den Ergebniswert wie bei Mehrfachberechnungsfrage]]&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;Mode:&#039;&#039;&#039;      ||  [[#Antwortmode|Berechungs-Modus]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Die Zeile &#039;Lösung für 1. Datenstatz&#039; zeigt das Ergebnis an, wenn der Werte des 1. Datensatzes in die Lösungsformel eingesetzt werden. Diese Zeile dient der Kontrolle, ob die Lösung mit Zahlenwerten auch Sinn macht und ob die Einheiten zusammenpassen.&lt;br /&gt;
&lt;br /&gt;
Das Eingabefeld &#039;&#039;&#039;Lösung&#039;&#039;&#039; ist schreibgeschützt und kann nur durch die [[Berechnungen#Berechnung mit Maxima|Maxima-Berechnung]] oder den [[Berechnungen#Berechnung_mit_dem_internen_Parser|internen Parser]] bestimmt werden.&lt;br /&gt;
&lt;br /&gt;
==Lückentextfrage==&lt;br /&gt;
Ein Lückentext enthält Lücken innerhalb eines Fragetextes, die durch den Schüler mit dem korrekten Inhalt gefüllt werden sollen.&lt;br /&gt;
&lt;br /&gt;
Folgende Modi sind dabei für die Lücken möglich:&lt;br /&gt;
* Texteingabe: Der Schüler muss das fehlende Wort je nach Fragemodus in die Lücke über die Tastatur eingeben oder per Drag&amp;amp;Drop auf die Lücke ziehen&lt;br /&gt;
* Multiple-Choice: Der Schüler kann aus mehreren Antwortmöglichkeiten eine oder mehrere richtige Elemente selektieren&lt;br /&gt;
* Single-Choice: Der Schüler kann mit einem Drop-Down-Auswahlfeld aus mehreren Antwortmöglichkeiten genau ein richtiges Element selektieren&lt;br /&gt;
&lt;br /&gt;
Da es bei Lückentextfragen um Texte geht, gibt es hier keine Datensätze oder Maxima-Berechnungen.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Fragemodus:&#039;&#039;&#039;&lt;br /&gt;
:[[Datei:ClipCapIt-180901-155006.PNG|200px]]&lt;br /&gt;
&lt;br /&gt;
Der Fragemodus gibt an wie Texteingabe-Lücken verarbeitet werden&lt;br /&gt;
&lt;br /&gt;
* Normal: Der Schüler muss den Text über die Tastatur in die Lücke eintragen.&lt;br /&gt;
* Drag-and-Drop: Der Schüler muss aus einer Liste von möglichen Antworten die richtigen Antworten auf die Lücken ziehen.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Funktionstasten:&#039;&#039;&#039;&lt;br /&gt;
F8: aktuelles Wort, bei dem der Cursor steht, als Textlücke definieren (Vorsicht: Wort nicht markieren!), siche auch  [[Editor_für_den_Angabetext#Schnelleingabe_.2F_Tastatur-Shortcuts|alle Funktionstasten]]&lt;br /&gt;
&lt;br /&gt;
====Erstellung der Frage:====&lt;br /&gt;
&lt;br /&gt;
Im [[Editor für den Angabetext|Textbereich des Editors]] werden die Lücken durch Antwortformulierungen in eckigen Klammern realisiert. Mit &#039;&#039;&#039;F8&#039;&#039;&#039; kann das aktuelle Wort, bei dem der Cursor steht, als Textlücke definiert werden.&lt;br /&gt;
&lt;br /&gt;
:[[Datei:ClipCapIt-180901-161337.PNG|thumb|450px|Beispiel einer Eingabe]]&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;Texteingabe:&#039;&#039;&#039;&lt;br /&gt;
** Im Fragemodus &amp;quot;Normal&amp;quot; muss der Schüler den Text in der Lücke eingeben&lt;br /&gt;
** Im Fragemodus &amp;quot;Drag and Drop&amp;quot; muss der Schüler aus einer Liste von Antworttexten den richtigen Text über die Lücke ziehen. Hierbei wird die Liste der Antworttexte aus allen richtigen und falschen Antworten der Texteingabe-Felder zusammengesetzt.&lt;br /&gt;
** Syntax:&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;margin-left:50px&amp;quot;&lt;br /&gt;
| [text]     || 	Das Wort &amp;quot;text&amp;quot; als Lücke mit 1 Punkt für die richtige Antwort&lt;br /&gt;
|-&lt;br /&gt;
| [2&amp;lt;nowiki&amp;gt;|&amp;lt;/nowiki&amp;gt;text]     || 	Das Wort &amp;quot;text&amp;quot; mit 2 Punkten für die richtige Antwort&lt;br /&gt;
|-&lt;br /&gt;
| [1&amp;lt;nowiki&amp;gt;|&amp;lt;/nowiki&amp;gt;text,50:alt,0:nix]   ||	2 Punkte für die richtige Antwort &amp;quot;text&amp;quot;, 50%von zwei Punkten für &amp;quot;alt&amp;quot;, &amp;quot;nix&amp;quot; als falsche Antwort für &amp;quot;Drag and Drop&amp;quot;-Fragen&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;Multiple-Choice:&#039;&#039;&#039;&lt;br /&gt;
**      unabhängig vom Fragemodus&lt;br /&gt;
**      mindestens eine Antwort muss richtig sein&lt;br /&gt;
**      Syntax:&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;margin-left:50px&amp;quot;&lt;br /&gt;
| [M&amp;lt;nowiki&amp;gt;|&amp;lt;/nowiki&amp;gt;x:richtig,falsch1,falsch2]  ||	Die richtigen Antwortfelder sind mit x: markiert&lt;br /&gt;
|-&lt;br /&gt;
| [M&amp;lt;nowiki&amp;gt;|&amp;lt;/nowiki&amp;gt;x:rot,x:grün,blau,gelb] 	 ||     rot und grün sind richtig&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;Single-Choice:&#039;&#039;&#039;&lt;br /&gt;
**      unabhängig vom Fragemodus&lt;br /&gt;
**      der Schüler muss eine Antwort aus mehreren wählen&lt;br /&gt;
**      Syntax:&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;margin-left:50px&amp;quot;&lt;br /&gt;
| [S&amp;lt;nowiki&amp;gt;|&amp;lt;/nowiki&amp;gt;x:richtig,falsch,falsch] 	||  x kennzeichnet eine richtige Antwort&lt;br /&gt;
|-&lt;br /&gt;
| [S&amp;lt;nowiki&amp;gt;|&amp;lt;/nowiki&amp;gt;x:rot,x:grün,50:blau,gelb] ||  bei rot und grün alle Punkte, bei blau 50 Prozent der Punkt, bei gelb 0 Punkte&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;Sonderzeichen&#039;&#039;&#039; innerhalb einer Lücke &lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;margin-left:50px&amp;quot;&lt;br /&gt;
| Bezeichnung || Zeichen || Ersatzzeichen &lt;br /&gt;
|-&lt;br /&gt;
| Komma(Beistrich) || ,  || ,, &lt;br /&gt;
|-&lt;br /&gt;
| Komma(Beistrich) || ,  || \, &lt;br /&gt;
|-&lt;br /&gt;
| eckige Klammer auf || [ || \[ &lt;br /&gt;
|-&lt;br /&gt;
| eckige Klammer zu || ] || \]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;Sonderzeichen&#039;&#039;&#039; im Fragetext, welche nicht in einer Lücke sind:&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;margin-left:50px&amp;quot;&lt;br /&gt;
| Bezeichnung || Zeichen || Ersatzzeichen &lt;br /&gt;
|-&lt;br /&gt;
| eckige Klammer auf || [ || \[ &lt;br /&gt;
|-&lt;br /&gt;
| eckige Klammer zu || ] || \]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
====Schülereingabe der Frage:====&lt;br /&gt;
Die oben in der Abbildung definierte Lückentextfrage führt zu der links abgebildeten Aufgabenstellung während eines [[Online-Tests]].&lt;br /&gt;
:[[Datei:ClipCapIt-180901-185126.PNG|350px]]&lt;br /&gt;
&lt;br /&gt;
==Multiple-Choice-Frage==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* Der Schüler kann eine oder mehrere vorgegebene Antworten als richtig ankreuzen.&lt;br /&gt;
* Die Antworten werden bei jedem Schüler in einer anderen Reihenfolge vorgeschlagen.&lt;br /&gt;
* Es gibt zwei mögliche Eingabeansichten&lt;br /&gt;
**        automatische Prozentvergabe: Alle richtigen Antworten bekommen einen Haken. Der Computer teilt dann die Prozentwerte gleichmäßig auf alle richtigen Antworten auf.&lt;br /&gt;
**        explizite Definition der Prozentwerte: Neben jeder Antwort kann ein Prozentwert angegeben werden, welcher zugewiesen wird wenn die Antwort angekreuzt ist. Die Summe der Prozentwerte aller richtigen Antworten muss dabei 100 ergeben!&lt;br /&gt;
&lt;br /&gt;
====Beispiele für eine Multiple-Choice-Frage in unterschiedlichen Ansichten====&lt;br /&gt;
&#039;&#039;&#039;CheckboxFeedback: &#039;&#039;&#039;&lt;br /&gt;
Eingabe der Antworten der Multiple-Choice-Frage durch Checkboxen: Die richtigen Antworten bekommen links davon in der Checkbox ein Häckchen. Neben den Antworten können Sie ein Feedback angeben, warum Antworten falsch oder richtig sind.&lt;br /&gt;
:[[Datei:ClipCapIt-180901-214517.PNG|400px]]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Checkbox: &#039;&#039;&#039;&lt;br /&gt;
Eingabe der Antworten der Multiple-Choice-Frage durch Checkboxen: Die richtigen Antworten bekommen ein Häckchen. Feedback-Eingaben sind nicht möglich.&lt;br /&gt;
:[[Datei:ClipCapIt-180901-214538.PNG|400px]]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;ProzentFeedback: &#039;&#039;&#039;&lt;br /&gt;
Die Antworten werden mit Prozentwerten versehen. Die Summe über alle positiven Prozent-Werte muss genau 100 Prozent ergeben! &lt;br /&gt;
Bei falschen Antworten können Sie Werte von -100 eingeben, dann wird bei einer falschen Antwort die ganze Frage als falsch beurteilt.&lt;br /&gt;
Wird dieser negative Prozentwert geringer als -100 gewählt, dann kann die Frage noch teilweise richtig beurteilt werden.&lt;br /&gt;
Neben den Antworten können Sie ein Feedback angeben, warum Antworten falsch oder richtig sind.&lt;br /&gt;
:[[Datei:ClipCapIt-180901-214557.PNG|400px]]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Prozent: &#039;&#039;&#039;&lt;br /&gt;
Die Antworten werden mit Prozentwerten versehen. Die Summe über alle positiven Prozent-Werte muss genau 100 Prozent ergeben! &lt;br /&gt;
Bei falschen Antworten können Sie Werte von -100 eingeben, dann wird bei einer falschen Antwort die ganze Frage als falsch beurteilt.&lt;br /&gt;
Wird dieser negative Prozentwert geringer als -100 gewählt, dann kann die Frage noch teilweise richtig beurteilt werden.&lt;br /&gt;
:[[Datei:ClipCapIt-180901-214616.PNG|400px]]&lt;br /&gt;
&lt;br /&gt;
Das Maxima-Feld kann auch für Multiple-Choice-Fragen für Berechnungen und für die Definition von Formeln verwendet werden. In den Antworten für die Multiple-Choice-Frage können Sie sich über {= ...} auf die Ergebnisse beziehen.&lt;br /&gt;
:[[Datei:ClipCapIt-180901-215517.PNG|400px]]&lt;br /&gt;
Die obige Frage wurde mit dieser Berechnung durchgeführt.&lt;br /&gt;
&lt;br /&gt;
==Zuordnungsfrage==&lt;br /&gt;
&lt;br /&gt;
Die Antwort auf jede der Unterfragen muss aus einer Liste von Möglichkeiten ausgewählt werden.&lt;br /&gt;
Im Prinzip hat der Schüler 2 Listen mit Antworten und Fragen, die er richtig zuordnen muss.&lt;br /&gt;
&lt;br /&gt;
[[Datei:ClipCapIt-180618-225643.PNG|500px]]&lt;br /&gt;
&lt;br /&gt;
Mit der Auswahlliste für das Anzeigeverhalten kann gesteuert werden, ob und wie die Zuordnungen bei einem Test gemischt werden.&lt;br /&gt;
&#039;&#039;Nur links mischen&#039;&#039; bedeutet, dass die Antwortmöglichkeiten auf der linken Seite der Zuordnungsfrage bei jedem Öffnen der Frage anders dargestellt werden.&lt;br /&gt;
&lt;br /&gt;
Folgende Einstellungen sind möglich:&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|Nicht mischen      ||  Die Reihenfolge wird so, wie sie in der Frage definiert ist, gewählt&lt;br /&gt;
|+&lt;br /&gt;
|Mischen            ||  Auf der linken und auf der rechten Seite werden die Antwortmöglichkeiten zufällig angeordnet&lt;br /&gt;
|+&lt;br /&gt;
|Nur links mischen  ||  Nur auf der linken Seite werden die Antwortmöglichkeiten zufällig angeordnet&lt;br /&gt;
|+&lt;br /&gt;
|Nur rechts mischen  || Nur auf der rechten Seite werden die Antwortmöglichkeiten zufällig angeordnet&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Pro Zeile werden die zusammengehörenden Begriffe in die Tabelle eingetragen.&lt;br /&gt;
Um Zuordnungsfragen zu erschweren, können auf der rechten Seite auch falsche Begrife angeführt werden, die nicht eine Entsprechung auf der linken Seite haben.&lt;br /&gt;
&lt;br /&gt;
Weiters können auf der linken Seite auch mehrere gleichnamige Begriffe verwendet werden, um Zuordnungen zu Themengruppen zu ermöglichen.&lt;br /&gt;
&lt;br /&gt;
==Freitextfrage==&lt;br /&gt;
Der Schüler erhält zur Fragebeantwortung ein Textfeld, in dem die Antwort eingetragen werden kann. Diese Fragen müssen aber manuell korrigiert werden!&lt;br /&gt;
Bei der Frageerstellung kann nur das Feedbackfeld ausgefüllt werden. Dieses kann eine mögliche Lösung der Aufgabenstellung enthalten und wird dem Schüler nach der Testausführung (Test wurde bereits beendet) angezeigt.&lt;br /&gt;
&lt;br /&gt;
* Eine Freitextfrage hat keine automatische Korrekturmöglichkeit!&lt;br /&gt;
* Verwendung für:&lt;br /&gt;
**        Fragen, die online über die Tastatur beantwortet werden und vom Lehrer über den Letto-Server händisch beurteilt werden.&lt;br /&gt;
**        Fragen, die nur als Angabe für Projekte, Laborübungen usw. dienen.&lt;br /&gt;
**        Fragen, die auf Papier beantwortet werden.&lt;br /&gt;
* Das Ergebnis kann im Feedback-Feld angegeben werden&lt;br /&gt;
**        und beim Online-Test dem Schüler als Feedback nach dem Test bekanntgegeben werden.&lt;br /&gt;
**        Bei Beispielsammlungen kann der Schüler das Feedbackfeld nie einsehen!&lt;br /&gt;
**        Bei Hausübungen kann der Schüler das Feedbackfeld erst nach Ablauf der Abgabefrist einsehen!&lt;br /&gt;
* Sowohl Feedbackfeld als auch das Fragefeld kann Bilder, Tabellen, externe Dateien und Sourcode-Listings enthalten.&lt;/div&gt;</summary>
		<author><name>Ckral</name></author>
	</entry>
	<entry>
		<id>https://wiki.letto.at/wiki/index.php?title=Beispielsammlung_Editieren&amp;diff=2349</id>
		<title>Beispielsammlung Editieren</title>
		<link rel="alternate" type="text/html" href="https://wiki.letto.at/wiki/index.php?title=Beispielsammlung_Editieren&amp;diff=2349"/>
		<updated>2020-05-16T09:51:02Z</updated>

		<summary type="html">&lt;p&gt;Ckral: Doppelpunkt (:) aus Überschrift entfernt&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;In der Edit-Ansicht können Beispiele verändert, geprüft und neu erstellt werden. &lt;br /&gt;
&lt;br /&gt;
Zurück zu [[Letto-Hauptansicht|LeTTo]], [[Beispielsammlung]]&lt;br /&gt;
[[Datei:FrageEditor.jpg|thumb|700px|Ansicht von &#039;Beispielsammlung Editieren&#039;]]&lt;br /&gt;
&lt;br /&gt;
=Übersicht=&lt;br /&gt;
Im Modus &#039;&#039;&#039;Beispielsammlung editieren&#039;&#039;&#039; ist oben eine [[Toolbar|Symbolleiste]] zur Steuerung der Anwendung angeordnet. Nähere Beschreibung der jeweiligen Buttons finden Sie unter [[Toolbar]].&lt;br /&gt;
&lt;br /&gt;
Im Bereich der Themen (siehe obige Abbildung) finden Sie eine [[Ordnerverwaltung|Ordnerstruktur]] ähnlich einem Dateimanager zur Sortierung und Speicherung der Fragen. Weiters finden Sie in diesem Bereich unten die Definition von [[Online-Tests]]. &lt;br /&gt;
&lt;br /&gt;
Die [[Fragenliste]] enthält alle Fragen eines Ordners sowie Möglichkeiten zum Hinzufügen, Ändern und Klonen ... von Fragen. &lt;br /&gt;
&lt;br /&gt;
Darunter finden sie die [[Bildvorschau]], die immer das zuletzt im [[Editor für den Angabetext|Editor]] angewählte Bild (Image, IMG) anzeigt.&lt;br /&gt;
&lt;br /&gt;
Der rechte Bereich des Editiermodus enthält alle Infos zur aktuell ausgewählten und gerade bearbeiteten Frage. Der obere Teil der Eingabemaske für Fragen ist für alle [[Fragetypen]] gleich.&lt;br /&gt;
&lt;br /&gt;
=Name der Frage=&lt;br /&gt;
:[[Datei:ClipCapIt-180618-180519.PNG|400px|thumb|Eingabefeld für den Fragenamen]]&lt;br /&gt;
Der Fragename bezeichnet die Frage und sollte Information über den Frageninhalt bringen. Alle Fragen einer [[Ordnerverwaltung|Kategorie oder Ordners]] werden mit ihrem Fragennamen in der [[Fragenliste]] angezeigt. Der Name sollte sprechend aber nicht zu lange sein, damit die Übersicht in der Fragenliste erhalten bleibt.&lt;br /&gt;
&lt;br /&gt;
Oberhalb des Fragennamens finden Sie noch den Fragetyp, den diese Frage hat.&lt;br /&gt;
&lt;br /&gt;
=Dokumente zu dieser Frage hochladen=&lt;br /&gt;
:[[Datei:ClipCapIt-181021-141443.PNG|500px]]&lt;br /&gt;
Ist die Checkbox &#039;&#039;&#039;Doks:&#039;&#039;&#039; ausgewählt, dann kann der Schüler bei der Beantwortung der Fragen auch Dokumente zur Testfrage auf den Server hochladen. &lt;br /&gt;
&lt;br /&gt;
Die folgende Abbildung zeigt die Buttons zum Testen der Lösung und den zusätzlichen Button &#039;&#039;&#039;Datei zur Frage hochladen&#039;&#039;&#039;, der dann eingeblendet wird, wenn bei der Fragedefinition die Option &#039;&#039;&#039;Doks:&#039;&#039;&#039; ausgewählt wurde.&lt;br /&gt;
:[[Datei:ClipCapIt-181021-142155.PNG|350px]]&lt;br /&gt;
Solange der Testversuch aktiv ist, können die Dokumnete vom Schüler wieder über den &#039;&#039;&#039;X&#039;&#039;&#039;-Button gelöscht werden oder weitere Dokumnete zu dieser Testfrage hochgeladen werden.&lt;br /&gt;
&lt;br /&gt;
Nach Beendigung des Testversuchs können die Dokumente nicht mehr geändert, sondern nur mehr heruntergeladen und angesehen werden.&lt;br /&gt;
&lt;br /&gt;
=Gefundene Werte=&lt;br /&gt;
Hier sind alle Konstante, die im Angabetext gefunden wurden, aufgelistet. Dieses Feld wird nach dem Verlassen des Editors für den Angabetext automatisch aktualisiert: Enthält der Fragetext Konstante in geschwungenen Klammern, die keine Datensätze sind, so werden diese Variablen automatisch aus dem Text extrahiert und angezeigt. Diese Werte können dann für die Berechnung der Lösung herangezogen werden.&lt;br /&gt;
&lt;br /&gt;
=Frage-Textfeld=&lt;br /&gt;
Siehe [[Editor für den Angabetext]].&lt;br /&gt;
&lt;br /&gt;
=Plugin-Info=&lt;br /&gt;
Im Bereich Plugin-Info finden Sie einen Button &#039;&#039;&#039;Plugins&#039;&#039;&#039; zur Definition der Plugins der Frage. Dadurch wird der [[Definition von Plugins|Dialog zur Plugindefinition]] geöffnet.&lt;br /&gt;
&lt;br /&gt;
Die Plugindefinition bildet immer einen Text-String. Dieser wird nach dem Schliessen des Dialogs im nebenstehenden Feld angezeigt und kann theoretisch auch verändert werden. Diese Option sollten aber nur erfahrene Benutzer verwenden, die sich mit der Syntax der Plugin-Definition auskennen.&lt;br /&gt;
&lt;br /&gt;
Der Scroller [[Datei:ClipCapIt-180831-204926.PNG|40px]] neben dem Eingabefeld dient zum Durchlaufen von allen definierten [[Datensätze|Datensätzen]] und zeigt die Änderungen der Grafiken an, wenn der Cursor auf einem [[Editor für den Angabetext#Spezielle TAGs im Fragentext|Plugin-Grafik-Tag]] [PIG...] im [[Editor für den Angabetext]] steht.&lt;br /&gt;
&lt;br /&gt;
=Beurteilungsbereich=&lt;br /&gt;
====&amp;lt;span id=&amp;quot;qPunkte&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;Punkte====&lt;br /&gt;
Punkte, die bei richtiger Beantwortung der Frage für die gesamte Frage maximal vergeben werden können. Bei Mehrfachberechnungsfragen ist dieses Feld gesperrt und die Punkteanzahl wird automatisch als Gesamtpunktezahl aus allen Teilfragen berechnet.&lt;br /&gt;
&lt;br /&gt;
====&amp;lt;span id=&amp;quot;qPenalty&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;Penalty:====&lt;br /&gt;
Abzug, der bei einer falschen Beantwortung im [[Online-Tests#Testart|Rechenübungs- oder Hausübungmodus]] pro Versuch abgezogen wird.&lt;br /&gt;
&lt;br /&gt;
====&amp;lt;span id=&amp;quot;qEinheitenFehler&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;Einheitenfehler:====&lt;br /&gt;
Im Feld &amp;quot;EH-Fehler&amp;quot; wird ein Faktor angeben, der von den Punkten der richtigen Lösung abgezogen wird, wenn die Einheit falsch angegeben wurde.&lt;br /&gt;
&lt;br /&gt;
Der Wert von EH-Fehler muss zwischen 0 und 1 liegen!&lt;br /&gt;
&lt;br /&gt;
Erreichtepunkte = Maximalpunkte* (1 - EHFehler)&lt;br /&gt;
&lt;br /&gt;
z.B:&lt;br /&gt;
Das Beispiel hat 4 Punkte, der EH-Faktor ist 0.1.&lt;br /&gt;
Gibt nun der Schüler statt 0.2A den Wert 0.2V an, so erhält er 4*(1-0.1) = 3.6 Punkte.&lt;br /&gt;
Gibt der Schüler einen falschen Einheitenvorsatz wie 0.2mA an, so erhält er keine Punkte, da der Wert falsch ist!&lt;br /&gt;
&lt;br /&gt;
Siehe auch [[Einheit|Einheiten]], [[Online-Tests#Einheiteneinstellungen|Einheiteneinstellungen]]!&lt;br /&gt;
&lt;br /&gt;
====&amp;lt;span id=&amp;quot;cbParser&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;Checkbox Parser:====&lt;br /&gt;
Ist diese Checkbox ausgewählt, dann wird beim Berechnen der Symbolischen Lösung für das Ergebnis der Frage ud allen Teilfragen nicht [[Berechnungen#Berechnung mit Maxima|Maxima]], sondern der [[Berechnungen#Berechnung mit dem internen Parser|Interne Parser verwendet]].&lt;br /&gt;
&lt;br /&gt;
Siehe auch [[Berechnungen]]!&lt;br /&gt;
&lt;br /&gt;
====&amp;lt;span id=&amp;quot;cbSymbolisch&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;Checkbox Symbolisch====&lt;br /&gt;
Ist diese Checkbox ausgewählt, dann werden beim Berechnen der Lösung mathematische Konstanten nur dann eingesetzt, wenn sie mit einer Gleitkommazahl verrechnet werden. Weiters werden Berechnungen mit Ganzzahlen nur dann als Gleitkommazahl ausgerechnet, wenn sie mit einer Gleitkommazahl verrechnet werden.&lt;br /&gt;
&lt;br /&gt;
=Datensätze=&lt;br /&gt;
Siehe [[Datensätze definieren#Erstellung / Änderung über den Datensatz-Bereich|Datensätze definieren]]&lt;br /&gt;
&lt;br /&gt;
=Kompetenzen zuordnen=&lt;br /&gt;
Mit dem Button [[Datei:ClipCapIt-180901-220702.PNG|20px]] aus dem [[Toolbar]] kann man zwischen der Datensatz- und der Kompetenz-Ansicht umschalten.&lt;br /&gt;
&lt;br /&gt;
Siehe auch [[Kompetenzzuordnung]].&lt;br /&gt;
&lt;br /&gt;
=Maxima-Feld=&lt;br /&gt;
&lt;br /&gt;
Das Maximafeld wird für die Berechnung der Ergebnisformel verwendet. Für die Berechnung des Maxima-Feldes wird der Inhalt des Feldes mit einem Präprozessor vorbearbeitet und dann an Maxima gesendet, oder der Inhalt wird direkt mit dem internen Parser von Letto verarbeitet. Da einige Funktionen des internen Parsers von Maxima nicht unterstützt werden und umgekehrt der interne Parser nicht den vollen Funktionsumfang von Maxima unterstützt, ist je nach Aufgabenstellung die eine oder andere Variante zu verwenden.&lt;br /&gt;
&lt;br /&gt;
Siehe auch [[Berechnungen]]!&lt;br /&gt;
&lt;br /&gt;
====Maxima Berechnung====&lt;br /&gt;
Siehe [[Berechnungen#Berechnung mit Maxima|Maxima-Berechnungen]]&lt;br /&gt;
&lt;br /&gt;
* Zahlenwerte mit Einheiten werden, bevor das Feld an Maxima geschickt wird, durch interne Variablen ersetzt, die bei der Berechnung des Ergebnisses dann wieder mit Einheiten eingesetzt werden. Die Maxima-Berechnung erfolgt dadurch wie in Maxima üblich ohne Einheiten.&lt;br /&gt;
* graphische Elemente von Maxima wie plot etc. können nicht verwendet werden&lt;br /&gt;
* Jeder Durchlauf des Maximafeldes beginnt mit einer neuen leeren Maxima-Umgebung in der die Datei letto.mac geladen wird. Die Datei moodle.mac kann in der globalen Einstellungen des Servers für alle Benutzer gemeinsam vom Administrator konfiguriert werden. Unter anderem wird hier der Operator || definiert, der für die Parallelschaltung von Widerständen und Impedanzen verwendet werden kann.&lt;br /&gt;
* Es können auch alle Funktionen des internen Parsers, die Maxima nicht kennt verwendet werden. Jedoch kann Maxima diese Funktionen weder vereinfachen noch berechnen, dies muss dann Online beim Berechnen des Lösungsfeldes durch Letto direkt erfolgen. Dementsprechend kann auch der Befehl &#039;&#039;&#039;solve&#039;&#039;&#039; von Maxima keine Funktionen auflösen, die nur vom internen Parser untersützt werden.&lt;br /&gt;
&lt;br /&gt;
====Interner Parser von Letto====&lt;br /&gt;
Siehe [[Berechnungen#Berechnung_mit_dem_internen_Parser|Interner Parser]]&lt;br /&gt;
&lt;br /&gt;
* unterstützt Einheiten&lt;br /&gt;
* unterstützt Dualzahlen und Hexadezimalzahlen&lt;br /&gt;
* unterstützt einige Funktionen, die für technische Berechnungen vorteilhaft verwendet werden können. Die Liste der möglichen Funktionen ist in der Hilfe direkt nachzulesen.&lt;br /&gt;
* Der interne Parser von Letto wird immer für die Berechnung des Lösungsfeldes einer Berechnungs- oder Mehrfachberechnungsfrage verwendet.&lt;br /&gt;
&lt;br /&gt;
====Einheiten====&lt;br /&gt;
Zahlenwerte mit Einheit können auf mehrere Arten im Maximafeld verwendet werden:&lt;br /&gt;
* Als Datensatz mit Einheit durch Verwendung des Datensatzbezeichners: Dies ist die einfachste Variante, bei der gleichzeitig auch für jeden Schüler ein anderer Zahlenwert definiert werden kann&lt;br /&gt;
* Als Direkteingabe im Maxima-Feld mit Zahlenwert, gefolgt von der Einheit in einfachen Hochkomma ( x:13&#039;A/m&#039; oder y:x*56&#039;VA-1&#039; )&lt;br /&gt;
* Wenn die Einheit keine Rechenoperatoren enthält kann die Einheit direkt am Zahlenwert angehängt werden: zB.: U:23V oder I:U/2Ohm&lt;br /&gt;
&lt;br /&gt;
Der Präprozessor, der das Maximafeld vor der Berechnung durchläuft hat folgende Aufgaben:&lt;br /&gt;
&lt;br /&gt;
* Bei Maxima-Berechnungsmodi werden alle Zahlenwerte welche eine Einheit haben durch Variable ersetzt welche bei der späteren Berechnung wieder eingesetzt werden können&lt;br /&gt;
* jede Zeile wird automatisch abgeschlossen, man benötigt daher kein ; oder $ am Zeilenende und es sind dadurch keine mehrzeiligen Befehle möglich&lt;br /&gt;
* Bezeichner dürfen nur die Zeichen a-zA-Z0-9 enthalten (zB. der Unterstrich ist verboten)&lt;br /&gt;
* Bemerkungen werden wie in C oder Java übliche am Zeilenanfang mit einem doppelten Schrägstrich eingefügt&lt;br /&gt;
&lt;br /&gt;
====Wichtige Funktionen====&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Funktion !!  Beschreibung 	!! Beispiel 	!! Ergebnis&lt;br /&gt;
|-&lt;br /&gt;
| floor(x) ||  Kommazahl auf die nächste Ganzzahl abrunden 	|| ||&lt;br /&gt;
|-&lt;br /&gt;
| round(x) ||  Kommazahl auf Ganzzahl runden 	|| ||&lt;br /&gt;
|-&lt;br /&gt;
| pi() 	   ||  die Zahl Pi 	|| ||&lt;br /&gt;
|-&lt;br /&gt;
| exp(1)   ||  die eulersche Zahl e || ||&lt;br /&gt;
|-&lt;br /&gt;
| exp(x)   ||  Exponentialfunktion e hoch x 	|| ||&lt;br /&gt;
|-&lt;br /&gt;
| abs(x)   ||  Absolutbetrag  ||  abs(-2) 	||  2&lt;br /&gt;
|-&lt;br /&gt;
| acos(x), acosh(x), asin(x), &lt;br /&gt;
&lt;br /&gt;
asinh(x), atan2(y,x), atan(x), &lt;br /&gt;
&lt;br /&gt;
atanh(x), cos(x), cosh(x), &lt;br /&gt;
&lt;br /&gt;
sin(x), sinh(x), tan(x), tanh(x)  &lt;br /&gt;
||	Winkelfunktionen 	|| ||&lt;br /&gt;
|-&lt;br /&gt;
| deg2rad(x) ||	Grad in Radianten umwandeln 	|| ||&lt;br /&gt;
|-&lt;br /&gt;
| rad2deg(x) ||	Radianten in Grad umwandeln 	|| ||&lt;br /&gt;
|-&lt;br /&gt;
| max(x,y,z) ||	Liefert das Maximum der angegebenen Parameter 	|| max(2,5,3)  ||	5&lt;br /&gt;
|-&lt;br /&gt;
| min(x,y,z) ||	Liefert das Minimum der angegebenen Parameter 	|| min(3,2,6,34) ||	2&lt;br /&gt;
|-&lt;br /&gt;
| log10(x)   ||	10er Logarithmus 	||  log10(100)  || 	2&lt;br /&gt;
|-&lt;br /&gt;
| log(x)     ||	natürlicher Logarithmus 	|| ||&lt;br /&gt;
|-&lt;br /&gt;
| pow(x,y)   ||	berechnet die Potenz x hoch y  ||	pow(2,3) 	|| 8&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
====Tipps für Maxima-Newcomer====&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Befehl 	!!  Beschreibung&lt;br /&gt;
|-&lt;br /&gt;
| a:5  || 	Der Variablen a den Wert5 zuweisen&lt;br /&gt;
|-&lt;br /&gt;
| g1:x+y=5&lt;br /&gt;
&lt;br /&gt;
g2:x-y=3&lt;br /&gt;
&lt;br /&gt;
L:solve([g1,g2],[x,y])&lt;br /&gt;
&lt;br /&gt;
x:ev(x,L)&lt;br /&gt;
&lt;br /&gt;
y:ev(y,L)&lt;br /&gt;
|| 	Gleichungssystem lösen mit den Gleichungen g1 und g2&lt;br /&gt;
&lt;br /&gt;
solve löst das Gleichungssystem und liefert den Ergebnisvektor L&lt;br /&gt;
&lt;br /&gt;
ev berechnet aus dem Lösungsvektor die Variablen&lt;br /&gt;
|-&lt;br /&gt;
| c:4+5*%i   ||	komplexe Zahl&lt;br /&gt;
|-&lt;br /&gt;
| e:ratsimp(c*(2+3*%i)) 	|| komplexes Ergebnis auswerten&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=Eingabemasken für die unterschiedlichen Fragetypen=&lt;br /&gt;
&lt;br /&gt;
==Mehrfachberechnungsfrage==&lt;br /&gt;
&lt;br /&gt;
* Fragen dieses Typs sind sehr flexibel.&lt;br /&gt;
* Die Frage kann mehrere Teilantworten beinhalten. Jede Teilfrage wird im Fragetext durch einen [Qx]-Tag (x..Fragenummer) positioniert. Bei der Schülereingabe wird der Tag durch ein Eingabefeld für die Ergebniseingabe ersetzt.&lt;br /&gt;
* Die Angabewerte sind wie bei Berechnungsfragen mittels [[Datensätze|Datensätzen]] definierbar und variieren von Schüler zu Schüler.&lt;br /&gt;
* Alle verwendeten [[Datensätze|Variablen]] müssen im Angabtext in geschwungene Klammern gesetzt werden. Im [[Berechnungen|Maximafeld]] und im Lösungsfeld ist die Klammer nicht notwendig.&lt;br /&gt;
* Für jede Variable wird ein Dataset mit möglichen Werten angelegt. Diese Datasets können über einen [[Datensätze_definieren#Definition_der_Werte|Formatierungsstring]] definiert werden und danach auch direkt in einer Liste bearbeitet werden.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
:[[Datei:ClipCapIt-180831-220929.PNG|600px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Übersicht über alle Spalten der Detail-Ansicht:&#039;&#039;&#039;&lt;br /&gt;
====Q....====&lt;br /&gt;
Spalte mit der Kurzbezeichnung für die Teilfrage. Unter diesem Namen wird im Editor für die Angabe die Teilfrage mit [Qx] referenziert. An dieser Position steht dann bei der Testausführung das Eingabeelement für diese Teilfrage.&lt;br /&gt;
&lt;br /&gt;
====&amp;lt;span id=&amp;quot;sqProzInput&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;Prozent für die Antwort einer Teilfrage====&lt;br /&gt;
&lt;br /&gt;
Wenn der Schüler die Antwort gibt, die in der Zeile dieser Teilantwort steht, bekommt er den prozentuellen Anteil der Gesamtpunkt der Teilfrage.&lt;br /&gt;
&lt;br /&gt;
Je nach Antwort-Modus muss sichergestellt sein, dass der Schüler durch die richtige Eingabe der Antwort 100 Prozent erreichen kann.&lt;br /&gt;
&lt;br /&gt;
====&amp;lt;span id=&amp;quot;sqGradeInput&amp;quot;&amp;gt;Punkte einer Teilfrage====&lt;br /&gt;
Punkteanzahl für die richtige Beantwortung einer Teilfrage.&lt;br /&gt;
&lt;br /&gt;
Die Gesamtpunktanzahl einer Mehrfachberechnungsfrage ergibt sich immer aus der Summe der Punkte der Teilfragen.&lt;br /&gt;
&lt;br /&gt;
====&amp;lt;span id=&amp;quot;sqMaximaInput&amp;quot;&amp;gt;Maximafeld für die Antwort einer Teilfrage====&lt;br /&gt;
Siehe auch [[Berechnungen]]!&lt;br /&gt;
&lt;br /&gt;
Dieses Feld wird nach dem Durchlaufen des globalen Maxima-Feldes der Frage mit Maxima aufgerufen und liefert als Lösung den Ausdruck, der im Lösungsfeld eingesetzt wird.&lt;br /&gt;
&lt;br /&gt;
Es wird nur im Antwort-MODE &amp;quot;calculated&amp;quot; und &amp;quot;boolsch&amp;quot; berechnet.&lt;br /&gt;
&lt;br /&gt;
====&amp;lt;span id=&amp;quot;sqEinheitInput&amp;quot;&amp;gt;Ziel-Einheit der Antwort einer Teilfrage:====&lt;br /&gt;
Siehe unter [[ZielEinheit]]!&lt;br /&gt;
&lt;br /&gt;
====&amp;lt;span id=&amp;quot;modeSel_focus&amp;quot;&amp;gt;Antwortmode====&lt;br /&gt;
Art der Antwort:&lt;br /&gt;
&lt;br /&gt;
* Single-Choice: Es gibt mehrere Lösungen, die dem Schüler vorgeschlagen werden. Der Schüler muss nun von diesen Lösungen genau eine Auswählen. Die Lösungen stehen als String im Lösungsfeld&lt;br /&gt;
* Text: Die Lösung welche im Lösungsfeld steht ist eine Zeichenkette die vom Schüler genau so eingegeben werden muss&lt;br /&gt;
* Regexp: Im Lösungsfeld wird ein regulärer Ausdruck angeben, mit dem überprüft wird, ob die Antwort des Schülers richtig ist.&lt;br /&gt;
* Multichoice: Es gibt mehrere Lösungen, die dem Schüler vorgeschlagen werden. Der Schüler muss nun von diesen Lösungen eine oder mehrere Auswählen. Die Lösungen stehen als String in Lösungsfeld.&lt;br /&gt;
* Calculated: Im Lösungsfeld steht ein symbolischer Ausdruck, der aus dem Maxima-Feld errechnet wurde. Zur Laufzeit wird daraus mit dem Parser die Lösung berechnet.&lt;br /&gt;
* Boolsch: Dieser Fragemode kann nur sinnvoll bei einer Mehrfachberechnungsfrage verwendet werden. In diesem Modus kann man die Schülereingaben anderer Teilfragen nach Eingabe durch den Parser auswerten lassen und damit Punkte vergeben. Es lassen sich somit Folgefehler von Schülern berücksichtigen und bei der Dimensionierung können Angabe-Bedingungen geprüft werden, die über die Lösung einer Teilfrage nicht eindeutig wären. Der Zugriff auf die Schülereingabe einer anderen Teilfrage erfolgt im Lösungsfeld mit der Variablen Q gefolgt von der Teilfragenummer (zB. Q1 für die Teilfrage 1)&lt;br /&gt;
&lt;br /&gt;
====&amp;lt;span id=&amp;quot;sqToleranceInput&amp;quot;&amp;gt;Toleranz der Antwort einer Teilfrage====&lt;br /&gt;
Die Toleranz, wie genau ein Schüler seine Antwort angeben muss:&lt;br /&gt;
* Die Toleranz ist im Normalfall eine &#039;&#039;&#039;relative Angabe&#039;&#039;&#039; und wird in &#039;&#039;&#039;Prozent&#039;&#039;&#039; angegeben&lt;br /&gt;
* Wird bei der Toleranz kein Prozent angegeben, so muss der Wert zwischen 0 und 1 liegen und entspricht dann dem Prozentwert durch 100&lt;br /&gt;
* Wird bei der Toleranz vor oder nach dem Wert ohne Prozentzeichen ein &#039;&#039;&#039;a&#039;&#039;&#039; angegeben, so wird dieser Wert als &#039;&#039;&#039;absolute Toleranz&#039;&#039;&#039; der Größe in SI-Einheiten interpretiert. ( z.B.: 0.1a bei einem eletrischen Strom in Ampere entspricht einer absoluten Toleranz von 0.1A ) Absolute Toleranzen sind vor allem bei Ergebnissen welche Null sind notwendig, da die Berechnung statt 0 meist eine sehr kleine Zahl berechnet, welche dann mit einer relativen Toleranz auch extrem genau eingegeben werden muss und 0 dadurch nicht im Toleranzbereich liegen kann!&lt;br /&gt;
&lt;br /&gt;
====&amp;lt;span id=&amp;quot;sqLoesungInput&amp;quot;&amp;gt;Lösung der Antwort einer Teilfrage====&lt;br /&gt;
In der Lösungsformel steht die richtige Antwort der Frage, je nach Fragemode hat das Lösungsfeld verschiedene Funktionalität!&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Fragemode 	!! Bedeutung des Lösungsfeldes 	!! Inhalt&lt;br /&gt;
|-&lt;br /&gt;
| Single-Choice || Lösung wie sie am Browser ausgegeben wird 	|| Eingabe&lt;br /&gt;
|-&lt;br /&gt;
| Text 	        || Lösung wie sie der Schüler eingeben sollte 	|| Eingabe&lt;br /&gt;
|-&lt;br /&gt;
| Regexp 	|| Regulärer Ausdruck (in Java Syntax) welcher für die richtige Lösung treffen muss 	|| Eingabe&lt;br /&gt;
|-&lt;br /&gt;
| Multichoice 	|| Lösung wie sie am Browser ausgegeben wird. 	|| Eingabe&lt;br /&gt;
|-&lt;br /&gt;
| Calculated 	|| Berechnungsformel, mit der zur Testzeit die richtige Lösung berechnet wird, die mit der Schülereingaben verglichen wird. 	|| automatische Berechnung aus dem Maximafeld&lt;br /&gt;
|-&lt;br /&gt;
| Boolsch 	|| Berechnungsformel, die nach der Schülereingabe berechnet wird. Das Ergebnis der Formel muss boolsch sein. Wenn das Ergebnis true ist bekommt der Schüler die angegebenen Punkte. 	|| automatische Berechnung aus dem Maximafeld&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
====&amp;lt;span id=&amp;quot;sqErgInfoInput&amp;quot;&amp;gt;Infofeld der Antwort einer Teilfrage====&lt;br /&gt;
* Bei Berechnungsfragen die Antwort des ersten Datensatzes, das Feld ist dann schreibgeschützt&lt;br /&gt;
* Bei Boolschen Fragen kann hier eine Information erfolgen, wie die Frage bewertet wurde.&lt;br /&gt;
&lt;br /&gt;
==Berechnungsfrage==&lt;br /&gt;
:[[Datei:ClipCapIt-180901-122143.PNG|400px]]&lt;br /&gt;
&lt;br /&gt;
Die Berechnungsfrage ist ähnlich aufgebaut wie eine Mehrfachberechnungsfrage mit nur einer Berechnung. Diese Frage kann aber mehrere unterschiedliche Lösungen bereitstellen, um zB. typische Berechnungsfehler mit Punkteabzügen zu beurteilen. Es können also zusätzliche Reiter mit mehreren Antwortmöglichkeiten über das Kontextmenü erzeugt bzw. wieder gelöscht werden.&lt;br /&gt;
&lt;br /&gt;
:[[Datei:ClipCapIt-180901-212431.PNG|thumb|450px|Übersicht Erstellung einer Berechnungsfrage]]&lt;br /&gt;
&lt;br /&gt;
:[[Datei:ClipCapIt-180901-132831.PNG|400px]]&lt;br /&gt;
&lt;br /&gt;
* Berechnende Fragen sind wie Mehrfachberechnungsfragen mit nur einer Teilfrage bei dem das Antwortfeld automatisch erscheint.&lt;br /&gt;
* Jeder Schüler bekommt eine eigene Angabe&lt;br /&gt;
* Für den Druck kann die Frage auch für Projektangaben verwendet werden.&lt;br /&gt;
* Berechnungen erfolgen mit Maxima&lt;br /&gt;
* Alle verwendeten Variablen müssen im Angabtext in geschwungene Klammern gesetzt werden. Im Maximafeld und im Lösungsfeld ist die Klammer nicht notwendig.&lt;br /&gt;
* Für jede Variable wird ein Dataset mit möglichen Werten angelegt. Diese Datasets können über einen Formatierungsstring definiert werden und danach auch direkt in einer Liste bearbeitet werden.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Wenn mehrer Antwortmöglichkeiten definiert wurden, wird links ein zusätzliches Eingabefeld &#039;&#039;&#039;Antwort Maxima:&#039;&#039;&#039; angezeigt. Damit können Sie unterschiedliche Ergebnisse der Maxima-Berechnungen den unterschiedlichen Antworten zuordnen.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Feld !!  Beschreibung&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;Antwort Maxima  ||    [[#Lösung_der_Antwort_einer_Teilfrage|Verhalten wie bei der Mehrfachberechnungsfrage]], siehe [[Berechnungen]] &lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;Einheit:&#039;&#039;&#039;   || [[ZielEinheit|Defiition der Einheit oder sonstiges Frageerhalten]]&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;Prozent:&#039;&#039;&#039;   || [[#Prozent_für_die_Antwort_einer_Teilfrage|Prozentangaben für unterschiedliche Lösungen]]&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;Toleranz:&#039;&#039;&#039;  ||  [[#Toleranz_der_Antwort_einer_Teilfrage|Toleranz für den Ergebniswert wie bei Mehrfachberechnungsfrage]]&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;Mode:&#039;&#039;&#039;      ||  [[#Antwortmode|Berechungs-Modus]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Die Zeile &#039;Lösung für 1. Datenstatz&#039; zeigt das Ergebnis an, wenn der Werte des 1. Datensatzes in die Lösungsformel eingesetzt werden. Diese Zeile dient der Kontrolle, ob die Lösung mit Zahlenwerten auch Sinn macht und ob die Einheiten zusammenpassen.&lt;br /&gt;
&lt;br /&gt;
Das Eingabefeld &#039;&#039;&#039;Lösung&#039;&#039;&#039; ist schreibgeschützt und kann nur durch die [[Berechnungen#Berechnung mit Maxima|Maxima-Berechnung]] oder den [[Berechnungen#Berechnung_mit_dem_internen_Parser|internen Parser]] bestimmt werden.&lt;br /&gt;
&lt;br /&gt;
==Lückentextfrage==&lt;br /&gt;
Ein Lückentext enthält Lücken innerhalb eines Fragetextes, die durch den Schüler mit dem korrekten Inhalt gefüllt werden sollen.&lt;br /&gt;
&lt;br /&gt;
Folgende Modi sind dabei für die Lücken möglich:&lt;br /&gt;
* Texteingabe: Der Schüler muss das fehlende Wort je nach Fragemodus in die Lücke über die Tastatur eingeben oder per Drag&amp;amp;Drop auf die Lücke ziehen&lt;br /&gt;
* Multiple-Choice: Der Schüler kann aus mehreren Antwortmöglichkeiten eine oder mehrere richtige Elemente selektieren&lt;br /&gt;
* Single-Choice: Der Schüler kann mit einem Drop-Down-Auswahlfeld aus mehreren Antwortmöglichkeiten genau ein richtiges Element selektieren&lt;br /&gt;
&lt;br /&gt;
Da es bei Lückentextfragen um Texte geht, gibt es hier keine Datensätze oder Maxima-Berechnungen.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Fragemodus:&#039;&#039;&#039;&lt;br /&gt;
:[[Datei:ClipCapIt-180901-155006.PNG|200px]]&lt;br /&gt;
&lt;br /&gt;
Der Fragemodus gibt an wie Texteingabe-Lücken verarbeitet werden&lt;br /&gt;
&lt;br /&gt;
* Normal: Der Schüler muss den Text über die Tastatur in die Lücke eintragen.&lt;br /&gt;
* Drag-and-Drop: Der Schüler muss aus einer Liste von möglichen Antworten die richtigen Antworten auf die Lücken ziehen.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Funktionstasten:&#039;&#039;&#039;&lt;br /&gt;
F8: aktuelles Wort, bei dem der Cursor steht, als Textlücke definieren (Vorsicht: Wort nicht markieren!), siche auch  [[Editor_für_den_Angabetext#Schnelleingabe_.2F_Tastatur-Shortcuts|alle Funktionstasten]]&lt;br /&gt;
&lt;br /&gt;
====Erstellung der Frage:====&lt;br /&gt;
&lt;br /&gt;
Im [[Editor für den Angabetext|Textbereich des Editors]] werden die Lücken durch Antwortformulierungen in eckigen Klammern realisiert. Mit &#039;&#039;&#039;F8&#039;&#039;&#039; kann das aktuelle Wort, bei dem der Cursor steht, als Textlücke definiert werden.&lt;br /&gt;
&lt;br /&gt;
:[[Datei:ClipCapIt-180901-161337.PNG|thumb|450px|Beispiel einer Eingabe]]&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;Texteingabe:&#039;&#039;&#039;&lt;br /&gt;
** Im Fragemodus &amp;quot;Normal&amp;quot; muss der Schüler den Text in der Lücke eingeben&lt;br /&gt;
** Im Fragemodus &amp;quot;Drag and Drop&amp;quot; muss der Schüler aus einer Liste von Antworttexten den richtigen Text über die Lücke ziehen. Hierbei wird die Liste der Antworttexte aus allen richtigen und falschen Antworten der Texteingabe-Felder zusammengesetzt.&lt;br /&gt;
** Syntax:&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;margin-left:50px&amp;quot;&lt;br /&gt;
| [text]     || 	Das Wort &amp;quot;text&amp;quot; als Lücke mit 1 Punkt für die richtige Antwort&lt;br /&gt;
|-&lt;br /&gt;
| [2&amp;lt;nowiki&amp;gt;|&amp;lt;/nowiki&amp;gt;text]     || 	Das Wort &amp;quot;text&amp;quot; mit 2 Punkten für die richtige Antwort&lt;br /&gt;
|-&lt;br /&gt;
| [1&amp;lt;nowiki&amp;gt;|&amp;lt;/nowiki&amp;gt;text,50:alt,0:nix]   ||	2 Punkte für die richtige Antwort &amp;quot;text&amp;quot;, 50%von zwei Punkten für &amp;quot;alt&amp;quot;, &amp;quot;nix&amp;quot; als falsche Antwort für &amp;quot;Drag and Drop&amp;quot;-Fragen&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;Multiple-Choice:&#039;&#039;&#039;&lt;br /&gt;
**      unabhängig vom Fragemodus&lt;br /&gt;
**      mindestens eine Antwort muss richtig sein&lt;br /&gt;
**      Syntax:&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;margin-left:50px&amp;quot;&lt;br /&gt;
| [M&amp;lt;nowiki&amp;gt;|&amp;lt;/nowiki&amp;gt;x:richtig,falsch1,falsch2]  ||	Die richtigen Antwortfelder sind mit x: markiert&lt;br /&gt;
|-&lt;br /&gt;
| [M&amp;lt;nowiki&amp;gt;|&amp;lt;/nowiki&amp;gt;x:rot,x:grün,blau,gelb] 	 ||     rot und grün sind richtig&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;Single-Choice:&#039;&#039;&#039;&lt;br /&gt;
**      unabhängig vom Fragemodus&lt;br /&gt;
**      der Schüler muss eine Antwort aus mehreren wählen&lt;br /&gt;
**      Syntax:&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;margin-left:50px&amp;quot;&lt;br /&gt;
| [S&amp;lt;nowiki&amp;gt;|&amp;lt;/nowiki&amp;gt;x:richtig,falsch,falsch] 	||  x kennzeichnet eine richtige Antwort&lt;br /&gt;
|-&lt;br /&gt;
| [S&amp;lt;nowiki&amp;gt;|&amp;lt;/nowiki&amp;gt;x:rot,x:grün,50:blau,gelb] ||  bei rot und grün alle Punkte, bei blau 50 Prozent der Punkt, bei gelb 0 Punkte&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;Sonderzeichen&#039;&#039;&#039; innerhalb einer Lücke &lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;margin-left:50px&amp;quot;&lt;br /&gt;
| Bezeichnung || Zeichen || Ersatzzeichen &lt;br /&gt;
|-&lt;br /&gt;
| Komma(Beistrich) || ,  || ,, &lt;br /&gt;
|-&lt;br /&gt;
| Komma(Beistrich) || ,  || \, &lt;br /&gt;
|-&lt;br /&gt;
| eckige Klammer auf || [ || \[ &lt;br /&gt;
|-&lt;br /&gt;
| eckige Klammer zu || ] || \]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;Sonderzeichen&#039;&#039;&#039; im Fragetext, welche nicht in einer Lücke sind:&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;margin-left:50px&amp;quot;&lt;br /&gt;
| Bezeichnung || Zeichen || Ersatzzeichen &lt;br /&gt;
|-&lt;br /&gt;
| eckige Klammer auf || [ || \[ &lt;br /&gt;
|-&lt;br /&gt;
| eckige Klammer zu || ] || \]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
====Schülereingabe der Frage:====&lt;br /&gt;
Die oben in der Abbildung definierte Lückentextfrage führt zu der links abgebildeten Aufgabenstellung während eines [[Online-Tests]].&lt;br /&gt;
:[[Datei:ClipCapIt-180901-185126.PNG|350px]]&lt;br /&gt;
&lt;br /&gt;
==Multiple-Choice-Frage==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* Der Schüler kann eine oder mehrere vorgegebene Antworten als richtig ankreuzen.&lt;br /&gt;
* Die Antworten werden bei jedem Schüler in einer anderen Reihenfolge vorgeschlagen.&lt;br /&gt;
* Es gibt zwei mögliche Eingabeansichten&lt;br /&gt;
**        automatische Prozentvergabe: Alle richtigen Antworten bekommen einen Haken. Der Computer teilt dann die Prozentwerte gleichmäßig auf alle richtigen Antworten auf.&lt;br /&gt;
**        explizite Definition der Prozentwerte: Neben jeder Antwort kann ein Prozentwert angegeben werden, welcher zugewiesen wird wenn die Antwort angekreuzt ist. Die Summe der Prozentwerte aller richtigen Antworten muss dabei 100 ergeben!&lt;br /&gt;
&lt;br /&gt;
====Beispiele für eine Multiple-Choice-Frage in unterschiedlichen Ansichten====&lt;br /&gt;
&#039;&#039;&#039;CheckboxFeedback: &#039;&#039;&#039;&lt;br /&gt;
Eingabe der Antworten der Multiple-Choice-Frage durch Checkboxen: Die richtigen Antworten bekommen links davon in der Checkbox ein Häckchen. Neben den Antworten können Sie ein Feedback angeben, warum Antworten falsch oder richtig sind.&lt;br /&gt;
:[[Datei:ClipCapIt-180901-214517.PNG|400px]]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Checkbox: &#039;&#039;&#039;&lt;br /&gt;
Eingabe der Antworten der Multiple-Choice-Frage durch Checkboxen: Die richtigen Antworten bekommen ein Häckchen. Feedback-Eingaben sind nicht möglich.&lt;br /&gt;
:[[Datei:ClipCapIt-180901-214538.PNG|400px]]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;ProzentFeedback: &#039;&#039;&#039;&lt;br /&gt;
Die Antworten werden mit Prozentwerten versehen. Die Summe über alle positiven Prozent-Werte muss genau 100 Prozent ergeben! &lt;br /&gt;
Bei falschen Antworten können Sie Werte von -100 eingeben, dann wird bei einer falschen Antwort die ganze Frage als falsch beurteilt.&lt;br /&gt;
Wird dieser negative Prozentwert geringer als -100 gewählt, dann kann die Frage noch teilweise richtig beurteilt werden.&lt;br /&gt;
Neben den Antworten können Sie ein Feedback angeben, warum Antworten falsch oder richtig sind.&lt;br /&gt;
:[[Datei:ClipCapIt-180901-214557.PNG|400px]]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Prozent: &#039;&#039;&#039;&lt;br /&gt;
Die Antworten werden mit Prozentwerten versehen. Die Summe über alle positiven Prozent-Werte muss genau 100 Prozent ergeben! &lt;br /&gt;
Bei falschen Antworten können Sie Werte von -100 eingeben, dann wird bei einer falschen Antwort die ganze Frage als falsch beurteilt.&lt;br /&gt;
Wird dieser negative Prozentwert geringer als -100 gewählt, dann kann die Frage noch teilweise richtig beurteilt werden.&lt;br /&gt;
:[[Datei:ClipCapIt-180901-214616.PNG|400px]]&lt;br /&gt;
&lt;br /&gt;
Das Maxima-Feld kann auch für Multiple-Choice-Fragen für Berechnungen und für die Definition von Formeln verwendet werden. In den Antworten für die Multiple-Choice-Frage können Sie sich über {= ...} auf die Ergebnisse beziehen.&lt;br /&gt;
:[[Datei:ClipCapIt-180901-215517.PNG|400px]]&lt;br /&gt;
Die obige Frage wurde mit dieser Berechnung durchgeführt.&lt;br /&gt;
&lt;br /&gt;
==Zuordnungsfrage==&lt;br /&gt;
&lt;br /&gt;
Die Antwort auf jede der Unterfragen muss aus einer Liste von Möglichkeiten ausgewählt werden.&lt;br /&gt;
Im Prinzip hat der Schüler 2 Listen mit Antworten und Fragen, die er richtig zuordnen muss.&lt;br /&gt;
&lt;br /&gt;
[[Datei:ClipCapIt-180618-225643.PNG|500px]]&lt;br /&gt;
&lt;br /&gt;
Mit der Auswahlliste für das Anzeigeverhalten kann gesteuert werden, ob und wie die Zuordnungen bei einem Test gemischt werden.&lt;br /&gt;
&#039;&#039;Nur links mischen&#039;&#039; bedeutet, dass die Antwortmöglichkeiten auf der linken Seite der Zuordnungsfrage bei jedem Öffnen der Frage anders dargestellt werden.&lt;br /&gt;
&lt;br /&gt;
Folgende Einstellungen sind möglich:&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|Nicht mischen      ||  Die Reihenfolge wird so, wie sie in der Frage definiert ist, gewählt&lt;br /&gt;
|+&lt;br /&gt;
|Mischen            ||  Auf der linken und auf der rechten Seite werden die Antwortmöglichkeiten zufällig angeordnet&lt;br /&gt;
|+&lt;br /&gt;
|Nur links mischen  ||  Nur auf der linken Seite werden die Antwortmöglichkeiten zufällig angeordnet&lt;br /&gt;
|+&lt;br /&gt;
|Nur rechts mischen  || Nur auf der rechten Seite werden die Antwortmöglichkeiten zufällig angeordnet&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Pro Zeile werden die zusammengehörenden Begriffe in die Tabelle eingetragen.&lt;br /&gt;
Um Zuordnungsfragen zu erschweren, können auf der rechten Seite auch falsche Begrife angeführt werden, die nicht eine Entsprechung auf der linken Seite haben.&lt;br /&gt;
&lt;br /&gt;
Weiters können auf der linken Seite auch mehrere gleichnamige Begriffe verwendet werden, um Zuordnungen zu Themengruppen zu ermöglichen.&lt;br /&gt;
&lt;br /&gt;
==Freitextfrage==&lt;br /&gt;
Der Schüler erhält zur Fragebeantwortung ein Textfeld, in dem die Antwort eingetragen werden kann. Diese Fragen müssen aber manuell korrigiert werden!&lt;br /&gt;
Bei der Frageerstellung kann nur das Feedbackfeld ausgefüllt werden. Dieses kann eine mögliche Lösung der Aufgabenstellung enthalten und wird dem Schüler nach der Testausführung (Test wurde bereits beendet) angezeigt.&lt;br /&gt;
&lt;br /&gt;
* Eine Freitextfrage hat keine automatische Korrekturmöglichkeit!&lt;br /&gt;
* Verwendung für:&lt;br /&gt;
**        Fragen, die online über die Tastatur beantwortet werden und vom Lehrer über den Letto-Server händisch beurteilt werden.&lt;br /&gt;
**        Fragen, die nur als Angabe für Projekte, Laborübungen usw. dienen.&lt;br /&gt;
**        Fragen, die auf Papier beantwortet werden.&lt;br /&gt;
* Das Ergebnis kann im Feedback-Feld angegeben werden&lt;br /&gt;
**        und beim Online-Test dem Schüler als Feedback nach dem Test bekanntgegeben werden.&lt;br /&gt;
**        Bei Beispielsammlungen kann der Schüler das Feedbackfeld nie einsehen!&lt;br /&gt;
**        Bei Hausübungen kann der Schüler das Feedbackfeld erst nach Ablauf der Abgabefrist einsehen!&lt;br /&gt;
* Sowohl Feedbackfeld als auch das Fragefeld kann Bilder, Tabellen, externe Dateien und Sourcode-Listings enthalten.&lt;/div&gt;</summary>
		<author><name>Ckral</name></author>
	</entry>
	<entry>
		<id>https://wiki.letto.at/wiki/index.php?title=Beispielsammlung_Editieren&amp;diff=2348</id>
		<title>Beispielsammlung Editieren</title>
		<link rel="alternate" type="text/html" href="https://wiki.letto.at/wiki/index.php?title=Beispielsammlung_Editieren&amp;diff=2348"/>
		<updated>2020-05-16T09:50:29Z</updated>

		<summary type="html">&lt;p&gt;Ckral: Doppelpunkt (:) aus Überschrift entfernt&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;In der Edit-Ansicht können Beispiele verändert, geprüft und neu erstellt werden. &lt;br /&gt;
&lt;br /&gt;
Zurück zu [[Letto-Hauptansicht|LeTTo]], [[Beispielsammlung]]&lt;br /&gt;
[[Datei:FrageEditor.jpg|thumb|700px|Ansicht von &#039;Beispielsammlung Editieren&#039;]]&lt;br /&gt;
&lt;br /&gt;
=Übersicht=&lt;br /&gt;
Im Modus &#039;&#039;&#039;Beispielsammlung editieren&#039;&#039;&#039; ist oben eine [[Toolbar|Symbolleiste]] zur Steuerung der Anwendung angeordnet. Nähere Beschreibung der jeweiligen Buttons finden Sie unter [[Toolbar]].&lt;br /&gt;
&lt;br /&gt;
Im Bereich der Themen (siehe obige Abbildung) finden Sie eine [[Ordnerverwaltung|Ordnerstruktur]] ähnlich einem Dateimanager zur Sortierung und Speicherung der Fragen. Weiters finden Sie in diesem Bereich unten die Definition von [[Online-Tests]]. &lt;br /&gt;
&lt;br /&gt;
Die [[Fragenliste]] enthält alle Fragen eines Ordners sowie Möglichkeiten zum Hinzufügen, Ändern und Klonen ... von Fragen. &lt;br /&gt;
&lt;br /&gt;
Darunter finden sie die [[Bildvorschau]], die immer das zuletzt im [[Editor für den Angabetext|Editor]] angewählte Bild (Image, IMG) anzeigt.&lt;br /&gt;
&lt;br /&gt;
Der rechte Bereich des Editiermodus enthält alle Infos zur aktuell ausgewählten und gerade bearbeiteten Frage. Der obere Teil der Eingabemaske für Fragen ist für alle [[Fragetypen]] gleich.&lt;br /&gt;
&lt;br /&gt;
=Name der Frage=&lt;br /&gt;
:[[Datei:ClipCapIt-180618-180519.PNG|400px|thumb|Eingabefeld für den Fragenamen]]&lt;br /&gt;
Der Fragename bezeichnet die Frage und sollte Information über den Frageninhalt bringen. Alle Fragen einer [[Ordnerverwaltung|Kategorie oder Ordners]] werden mit ihrem Fragennamen in der [[Fragenliste]] angezeigt. Der Name sollte sprechend aber nicht zu lange sein, damit die Übersicht in der Fragenliste erhalten bleibt.&lt;br /&gt;
&lt;br /&gt;
Oberhalb des Fragennamens finden Sie noch den Fragetyp, den diese Frage hat.&lt;br /&gt;
&lt;br /&gt;
=Dokumente zu dieser Frage hochladen=&lt;br /&gt;
:[[Datei:ClipCapIt-181021-141443.PNG|500px]]&lt;br /&gt;
Ist die Checkbox &#039;&#039;&#039;Doks:&#039;&#039;&#039; ausgewählt, dann kann der Schüler bei der Beantwortung der Fragen auch Dokumente zur Testfrage auf den Server hochladen. &lt;br /&gt;
&lt;br /&gt;
Die folgende Abbildung zeigt die Buttons zum Testen der Lösung und den zusätzlichen Button &#039;&#039;&#039;Datei zur Frage hochladen&#039;&#039;&#039;, der dann eingeblendet wird, wenn bei der Fragedefinition die Option &#039;&#039;&#039;Doks:&#039;&#039;&#039; ausgewählt wurde.&lt;br /&gt;
:[[Datei:ClipCapIt-181021-142155.PNG|350px]]&lt;br /&gt;
Solange der Testversuch aktiv ist, können die Dokumnete vom Schüler wieder über den &#039;&#039;&#039;X&#039;&#039;&#039;-Button gelöscht werden oder weitere Dokumnete zu dieser Testfrage hochgeladen werden.&lt;br /&gt;
&lt;br /&gt;
Nach Beendigung des Testversuchs können die Dokumente nicht mehr geändert, sondern nur mehr heruntergeladen und angesehen werden.&lt;br /&gt;
&lt;br /&gt;
=Gefundene Werte=&lt;br /&gt;
Hier sind alle Konstante, die im Angabetext gefunden wurden, aufgelistet. Dieses Feld wird nach dem Verlassen des Editors für den Angabetext automatisch aktualisiert: Enthält der Fragetext Konstante in geschwungenen Klammern, die keine Datensätze sind, so werden diese Variablen automatisch aus dem Text extrahiert und angezeigt. Diese Werte können dann für die Berechnung der Lösung herangezogen werden.&lt;br /&gt;
&lt;br /&gt;
=Frage-Textfeld=&lt;br /&gt;
Siehe [[Editor für den Angabetext]].&lt;br /&gt;
&lt;br /&gt;
=Plugin-Info=&lt;br /&gt;
Im Bereich Plugin-Info finden Sie einen Button &#039;&#039;&#039;Plugins&#039;&#039;&#039; zur Definition der Plugins der Frage. Dadurch wird der [[Definition von Plugins|Dialog zur Plugindefinition]] geöffnet.&lt;br /&gt;
&lt;br /&gt;
Die Plugindefinition bildet immer einen Text-String. Dieser wird nach dem Schliessen des Dialogs im nebenstehenden Feld angezeigt und kann theoretisch auch verändert werden. Diese Option sollten aber nur erfahrene Benutzer verwenden, die sich mit der Syntax der Plugin-Definition auskennen.&lt;br /&gt;
&lt;br /&gt;
Der Scroller [[Datei:ClipCapIt-180831-204926.PNG|40px]] neben dem Eingabefeld dient zum Durchlaufen von allen definierten [[Datensätze|Datensätzen]] und zeigt die Änderungen der Grafiken an, wenn der Cursor auf einem [[Editor für den Angabetext#Spezielle TAGs im Fragentext|Plugin-Grafik-Tag]] [PIG...] im [[Editor für den Angabetext]] steht.&lt;br /&gt;
&lt;br /&gt;
=Beurteilungsbereich=&lt;br /&gt;
====&amp;lt;span id=&amp;quot;qPunkte&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;Punkte:====&lt;br /&gt;
Punkte, die bei richtiger Beantwortung der Frage für die gesamte Frage maximal vergeben werden können. Bei Mehrfachberechnungsfragen ist dieses Feld gesperrt und die Punkteanzahl wird automatisch als Gesamtpunktezahl aus allen Teilfragen berechnet.&lt;br /&gt;
&lt;br /&gt;
====&amp;lt;span id=&amp;quot;qPenalty&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;Penalty:====&lt;br /&gt;
Abzug, der bei einer falschen Beantwortung im [[Online-Tests#Testart|Rechenübungs- oder Hausübungmodus]] pro Versuch abgezogen wird.&lt;br /&gt;
&lt;br /&gt;
====&amp;lt;span id=&amp;quot;qEinheitenFehler&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;Einheitenfehler:====&lt;br /&gt;
Im Feld &amp;quot;EH-Fehler&amp;quot; wird ein Faktor angeben, der von den Punkten der richtigen Lösung abgezogen wird, wenn die Einheit falsch angegeben wurde.&lt;br /&gt;
&lt;br /&gt;
Der Wert von EH-Fehler muss zwischen 0 und 1 liegen!&lt;br /&gt;
&lt;br /&gt;
Erreichtepunkte = Maximalpunkte* (1 - EHFehler)&lt;br /&gt;
&lt;br /&gt;
z.B:&lt;br /&gt;
Das Beispiel hat 4 Punkte, der EH-Faktor ist 0.1.&lt;br /&gt;
Gibt nun der Schüler statt 0.2A den Wert 0.2V an, so erhält er 4*(1-0.1) = 3.6 Punkte.&lt;br /&gt;
Gibt der Schüler einen falschen Einheitenvorsatz wie 0.2mA an, so erhält er keine Punkte, da der Wert falsch ist!&lt;br /&gt;
&lt;br /&gt;
Siehe auch [[Einheit|Einheiten]], [[Online-Tests#Einheiteneinstellungen|Einheiteneinstellungen]]!&lt;br /&gt;
&lt;br /&gt;
====&amp;lt;span id=&amp;quot;cbParser&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;Checkbox Parser:====&lt;br /&gt;
Ist diese Checkbox ausgewählt, dann wird beim Berechnen der Symbolischen Lösung für das Ergebnis der Frage ud allen Teilfragen nicht [[Berechnungen#Berechnung mit Maxima|Maxima]], sondern der [[Berechnungen#Berechnung mit dem internen Parser|Interne Parser verwendet]].&lt;br /&gt;
&lt;br /&gt;
Siehe auch [[Berechnungen]]!&lt;br /&gt;
&lt;br /&gt;
====&amp;lt;span id=&amp;quot;cbSymbolisch&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;Checkbox Symbolisch====&lt;br /&gt;
Ist diese Checkbox ausgewählt, dann werden beim Berechnen der Lösung mathematische Konstanten nur dann eingesetzt, wenn sie mit einer Gleitkommazahl verrechnet werden. Weiters werden Berechnungen mit Ganzzahlen nur dann als Gleitkommazahl ausgerechnet, wenn sie mit einer Gleitkommazahl verrechnet werden.&lt;br /&gt;
&lt;br /&gt;
=Datensätze=&lt;br /&gt;
Siehe [[Datensätze definieren#Erstellung / Änderung über den Datensatz-Bereich|Datensätze definieren]]&lt;br /&gt;
&lt;br /&gt;
=Kompetenzen zuordnen=&lt;br /&gt;
Mit dem Button [[Datei:ClipCapIt-180901-220702.PNG|20px]] aus dem [[Toolbar]] kann man zwischen der Datensatz- und der Kompetenz-Ansicht umschalten.&lt;br /&gt;
&lt;br /&gt;
Siehe auch [[Kompetenzzuordnung]].&lt;br /&gt;
&lt;br /&gt;
=Maxima-Feld=&lt;br /&gt;
&lt;br /&gt;
Das Maximafeld wird für die Berechnung der Ergebnisformel verwendet. Für die Berechnung des Maxima-Feldes wird der Inhalt des Feldes mit einem Präprozessor vorbearbeitet und dann an Maxima gesendet, oder der Inhalt wird direkt mit dem internen Parser von Letto verarbeitet. Da einige Funktionen des internen Parsers von Maxima nicht unterstützt werden und umgekehrt der interne Parser nicht den vollen Funktionsumfang von Maxima unterstützt, ist je nach Aufgabenstellung die eine oder andere Variante zu verwenden.&lt;br /&gt;
&lt;br /&gt;
Siehe auch [[Berechnungen]]!&lt;br /&gt;
&lt;br /&gt;
====Maxima Berechnung====&lt;br /&gt;
Siehe [[Berechnungen#Berechnung mit Maxima|Maxima-Berechnungen]]&lt;br /&gt;
&lt;br /&gt;
* Zahlenwerte mit Einheiten werden, bevor das Feld an Maxima geschickt wird, durch interne Variablen ersetzt, die bei der Berechnung des Ergebnisses dann wieder mit Einheiten eingesetzt werden. Die Maxima-Berechnung erfolgt dadurch wie in Maxima üblich ohne Einheiten.&lt;br /&gt;
* graphische Elemente von Maxima wie plot etc. können nicht verwendet werden&lt;br /&gt;
* Jeder Durchlauf des Maximafeldes beginnt mit einer neuen leeren Maxima-Umgebung in der die Datei letto.mac geladen wird. Die Datei moodle.mac kann in der globalen Einstellungen des Servers für alle Benutzer gemeinsam vom Administrator konfiguriert werden. Unter anderem wird hier der Operator || definiert, der für die Parallelschaltung von Widerständen und Impedanzen verwendet werden kann.&lt;br /&gt;
* Es können auch alle Funktionen des internen Parsers, die Maxima nicht kennt verwendet werden. Jedoch kann Maxima diese Funktionen weder vereinfachen noch berechnen, dies muss dann Online beim Berechnen des Lösungsfeldes durch Letto direkt erfolgen. Dementsprechend kann auch der Befehl &#039;&#039;&#039;solve&#039;&#039;&#039; von Maxima keine Funktionen auflösen, die nur vom internen Parser untersützt werden.&lt;br /&gt;
&lt;br /&gt;
====Interner Parser von Letto====&lt;br /&gt;
Siehe [[Berechnungen#Berechnung_mit_dem_internen_Parser|Interner Parser]]&lt;br /&gt;
&lt;br /&gt;
* unterstützt Einheiten&lt;br /&gt;
* unterstützt Dualzahlen und Hexadezimalzahlen&lt;br /&gt;
* unterstützt einige Funktionen, die für technische Berechnungen vorteilhaft verwendet werden können. Die Liste der möglichen Funktionen ist in der Hilfe direkt nachzulesen.&lt;br /&gt;
* Der interne Parser von Letto wird immer für die Berechnung des Lösungsfeldes einer Berechnungs- oder Mehrfachberechnungsfrage verwendet.&lt;br /&gt;
&lt;br /&gt;
====Einheiten====&lt;br /&gt;
Zahlenwerte mit Einheit können auf mehrere Arten im Maximafeld verwendet werden:&lt;br /&gt;
* Als Datensatz mit Einheit durch Verwendung des Datensatzbezeichners: Dies ist die einfachste Variante, bei der gleichzeitig auch für jeden Schüler ein anderer Zahlenwert definiert werden kann&lt;br /&gt;
* Als Direkteingabe im Maxima-Feld mit Zahlenwert, gefolgt von der Einheit in einfachen Hochkomma ( x:13&#039;A/m&#039; oder y:x*56&#039;VA-1&#039; )&lt;br /&gt;
* Wenn die Einheit keine Rechenoperatoren enthält kann die Einheit direkt am Zahlenwert angehängt werden: zB.: U:23V oder I:U/2Ohm&lt;br /&gt;
&lt;br /&gt;
Der Präprozessor, der das Maximafeld vor der Berechnung durchläuft hat folgende Aufgaben:&lt;br /&gt;
&lt;br /&gt;
* Bei Maxima-Berechnungsmodi werden alle Zahlenwerte welche eine Einheit haben durch Variable ersetzt welche bei der späteren Berechnung wieder eingesetzt werden können&lt;br /&gt;
* jede Zeile wird automatisch abgeschlossen, man benötigt daher kein ; oder $ am Zeilenende und es sind dadurch keine mehrzeiligen Befehle möglich&lt;br /&gt;
* Bezeichner dürfen nur die Zeichen a-zA-Z0-9 enthalten (zB. der Unterstrich ist verboten)&lt;br /&gt;
* Bemerkungen werden wie in C oder Java übliche am Zeilenanfang mit einem doppelten Schrägstrich eingefügt&lt;br /&gt;
&lt;br /&gt;
====Wichtige Funktionen====&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Funktion !!  Beschreibung 	!! Beispiel 	!! Ergebnis&lt;br /&gt;
|-&lt;br /&gt;
| floor(x) ||  Kommazahl auf die nächste Ganzzahl abrunden 	|| ||&lt;br /&gt;
|-&lt;br /&gt;
| round(x) ||  Kommazahl auf Ganzzahl runden 	|| ||&lt;br /&gt;
|-&lt;br /&gt;
| pi() 	   ||  die Zahl Pi 	|| ||&lt;br /&gt;
|-&lt;br /&gt;
| exp(1)   ||  die eulersche Zahl e || ||&lt;br /&gt;
|-&lt;br /&gt;
| exp(x)   ||  Exponentialfunktion e hoch x 	|| ||&lt;br /&gt;
|-&lt;br /&gt;
| abs(x)   ||  Absolutbetrag  ||  abs(-2) 	||  2&lt;br /&gt;
|-&lt;br /&gt;
| acos(x), acosh(x), asin(x), &lt;br /&gt;
&lt;br /&gt;
asinh(x), atan2(y,x), atan(x), &lt;br /&gt;
&lt;br /&gt;
atanh(x), cos(x), cosh(x), &lt;br /&gt;
&lt;br /&gt;
sin(x), sinh(x), tan(x), tanh(x)  &lt;br /&gt;
||	Winkelfunktionen 	|| ||&lt;br /&gt;
|-&lt;br /&gt;
| deg2rad(x) ||	Grad in Radianten umwandeln 	|| ||&lt;br /&gt;
|-&lt;br /&gt;
| rad2deg(x) ||	Radianten in Grad umwandeln 	|| ||&lt;br /&gt;
|-&lt;br /&gt;
| max(x,y,z) ||	Liefert das Maximum der angegebenen Parameter 	|| max(2,5,3)  ||	5&lt;br /&gt;
|-&lt;br /&gt;
| min(x,y,z) ||	Liefert das Minimum der angegebenen Parameter 	|| min(3,2,6,34) ||	2&lt;br /&gt;
|-&lt;br /&gt;
| log10(x)   ||	10er Logarithmus 	||  log10(100)  || 	2&lt;br /&gt;
|-&lt;br /&gt;
| log(x)     ||	natürlicher Logarithmus 	|| ||&lt;br /&gt;
|-&lt;br /&gt;
| pow(x,y)   ||	berechnet die Potenz x hoch y  ||	pow(2,3) 	|| 8&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
====Tipps für Maxima-Newcomer====&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Befehl 	!!  Beschreibung&lt;br /&gt;
|-&lt;br /&gt;
| a:5  || 	Der Variablen a den Wert5 zuweisen&lt;br /&gt;
|-&lt;br /&gt;
| g1:x+y=5&lt;br /&gt;
&lt;br /&gt;
g2:x-y=3&lt;br /&gt;
&lt;br /&gt;
L:solve([g1,g2],[x,y])&lt;br /&gt;
&lt;br /&gt;
x:ev(x,L)&lt;br /&gt;
&lt;br /&gt;
y:ev(y,L)&lt;br /&gt;
|| 	Gleichungssystem lösen mit den Gleichungen g1 und g2&lt;br /&gt;
&lt;br /&gt;
solve löst das Gleichungssystem und liefert den Ergebnisvektor L&lt;br /&gt;
&lt;br /&gt;
ev berechnet aus dem Lösungsvektor die Variablen&lt;br /&gt;
|-&lt;br /&gt;
| c:4+5*%i   ||	komplexe Zahl&lt;br /&gt;
|-&lt;br /&gt;
| e:ratsimp(c*(2+3*%i)) 	|| komplexes Ergebnis auswerten&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=Eingabemasken für die unterschiedlichen Fragetypen=&lt;br /&gt;
&lt;br /&gt;
==Mehrfachberechnungsfrage==&lt;br /&gt;
&lt;br /&gt;
* Fragen dieses Typs sind sehr flexibel.&lt;br /&gt;
* Die Frage kann mehrere Teilantworten beinhalten. Jede Teilfrage wird im Fragetext durch einen [Qx]-Tag (x..Fragenummer) positioniert. Bei der Schülereingabe wird der Tag durch ein Eingabefeld für die Ergebniseingabe ersetzt.&lt;br /&gt;
* Die Angabewerte sind wie bei Berechnungsfragen mittels [[Datensätze|Datensätzen]] definierbar und variieren von Schüler zu Schüler.&lt;br /&gt;
* Alle verwendeten [[Datensätze|Variablen]] müssen im Angabtext in geschwungene Klammern gesetzt werden. Im [[Berechnungen|Maximafeld]] und im Lösungsfeld ist die Klammer nicht notwendig.&lt;br /&gt;
* Für jede Variable wird ein Dataset mit möglichen Werten angelegt. Diese Datasets können über einen [[Datensätze_definieren#Definition_der_Werte|Formatierungsstring]] definiert werden und danach auch direkt in einer Liste bearbeitet werden.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
:[[Datei:ClipCapIt-180831-220929.PNG|600px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Übersicht über alle Spalten der Detail-Ansicht:&#039;&#039;&#039;&lt;br /&gt;
====Q....====&lt;br /&gt;
Spalte mit der Kurzbezeichnung für die Teilfrage. Unter diesem Namen wird im Editor für die Angabe die Teilfrage mit [Qx] referenziert. An dieser Position steht dann bei der Testausführung das Eingabeelement für diese Teilfrage.&lt;br /&gt;
&lt;br /&gt;
====&amp;lt;span id=&amp;quot;sqProzInput&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;Prozent für die Antwort einer Teilfrage====&lt;br /&gt;
&lt;br /&gt;
Wenn der Schüler die Antwort gibt, die in der Zeile dieser Teilantwort steht, bekommt er den prozentuellen Anteil der Gesamtpunkt der Teilfrage.&lt;br /&gt;
&lt;br /&gt;
Je nach Antwort-Modus muss sichergestellt sein, dass der Schüler durch die richtige Eingabe der Antwort 100 Prozent erreichen kann.&lt;br /&gt;
&lt;br /&gt;
====&amp;lt;span id=&amp;quot;sqGradeInput&amp;quot;&amp;gt;Punkte einer Teilfrage====&lt;br /&gt;
Punkteanzahl für die richtige Beantwortung einer Teilfrage.&lt;br /&gt;
&lt;br /&gt;
Die Gesamtpunktanzahl einer Mehrfachberechnungsfrage ergibt sich immer aus der Summe der Punkte der Teilfragen.&lt;br /&gt;
&lt;br /&gt;
====&amp;lt;span id=&amp;quot;sqMaximaInput&amp;quot;&amp;gt;Maximafeld für die Antwort einer Teilfrage====&lt;br /&gt;
Siehe auch [[Berechnungen]]!&lt;br /&gt;
&lt;br /&gt;
Dieses Feld wird nach dem Durchlaufen des globalen Maxima-Feldes der Frage mit Maxima aufgerufen und liefert als Lösung den Ausdruck, der im Lösungsfeld eingesetzt wird.&lt;br /&gt;
&lt;br /&gt;
Es wird nur im Antwort-MODE &amp;quot;calculated&amp;quot; und &amp;quot;boolsch&amp;quot; berechnet.&lt;br /&gt;
&lt;br /&gt;
====&amp;lt;span id=&amp;quot;sqEinheitInput&amp;quot;&amp;gt;Ziel-Einheit der Antwort einer Teilfrage:====&lt;br /&gt;
Siehe unter [[ZielEinheit]]!&lt;br /&gt;
&lt;br /&gt;
====&amp;lt;span id=&amp;quot;modeSel_focus&amp;quot;&amp;gt;Antwortmode====&lt;br /&gt;
Art der Antwort:&lt;br /&gt;
&lt;br /&gt;
* Single-Choice: Es gibt mehrere Lösungen, die dem Schüler vorgeschlagen werden. Der Schüler muss nun von diesen Lösungen genau eine Auswählen. Die Lösungen stehen als String im Lösungsfeld&lt;br /&gt;
* Text: Die Lösung welche im Lösungsfeld steht ist eine Zeichenkette die vom Schüler genau so eingegeben werden muss&lt;br /&gt;
* Regexp: Im Lösungsfeld wird ein regulärer Ausdruck angeben, mit dem überprüft wird, ob die Antwort des Schülers richtig ist.&lt;br /&gt;
* Multichoice: Es gibt mehrere Lösungen, die dem Schüler vorgeschlagen werden. Der Schüler muss nun von diesen Lösungen eine oder mehrere Auswählen. Die Lösungen stehen als String in Lösungsfeld.&lt;br /&gt;
* Calculated: Im Lösungsfeld steht ein symbolischer Ausdruck, der aus dem Maxima-Feld errechnet wurde. Zur Laufzeit wird daraus mit dem Parser die Lösung berechnet.&lt;br /&gt;
* Boolsch: Dieser Fragemode kann nur sinnvoll bei einer Mehrfachberechnungsfrage verwendet werden. In diesem Modus kann man die Schülereingaben anderer Teilfragen nach Eingabe durch den Parser auswerten lassen und damit Punkte vergeben. Es lassen sich somit Folgefehler von Schülern berücksichtigen und bei der Dimensionierung können Angabe-Bedingungen geprüft werden, die über die Lösung einer Teilfrage nicht eindeutig wären. Der Zugriff auf die Schülereingabe einer anderen Teilfrage erfolgt im Lösungsfeld mit der Variablen Q gefolgt von der Teilfragenummer (zB. Q1 für die Teilfrage 1)&lt;br /&gt;
&lt;br /&gt;
====&amp;lt;span id=&amp;quot;sqToleranceInput&amp;quot;&amp;gt;Toleranz der Antwort einer Teilfrage====&lt;br /&gt;
Die Toleranz, wie genau ein Schüler seine Antwort angeben muss:&lt;br /&gt;
* Die Toleranz ist im Normalfall eine &#039;&#039;&#039;relative Angabe&#039;&#039;&#039; und wird in &#039;&#039;&#039;Prozent&#039;&#039;&#039; angegeben&lt;br /&gt;
* Wird bei der Toleranz kein Prozent angegeben, so muss der Wert zwischen 0 und 1 liegen und entspricht dann dem Prozentwert durch 100&lt;br /&gt;
* Wird bei der Toleranz vor oder nach dem Wert ohne Prozentzeichen ein &#039;&#039;&#039;a&#039;&#039;&#039; angegeben, so wird dieser Wert als &#039;&#039;&#039;absolute Toleranz&#039;&#039;&#039; der Größe in SI-Einheiten interpretiert. ( z.B.: 0.1a bei einem eletrischen Strom in Ampere entspricht einer absoluten Toleranz von 0.1A ) Absolute Toleranzen sind vor allem bei Ergebnissen welche Null sind notwendig, da die Berechnung statt 0 meist eine sehr kleine Zahl berechnet, welche dann mit einer relativen Toleranz auch extrem genau eingegeben werden muss und 0 dadurch nicht im Toleranzbereich liegen kann!&lt;br /&gt;
&lt;br /&gt;
====&amp;lt;span id=&amp;quot;sqLoesungInput&amp;quot;&amp;gt;Lösung der Antwort einer Teilfrage====&lt;br /&gt;
In der Lösungsformel steht die richtige Antwort der Frage, je nach Fragemode hat das Lösungsfeld verschiedene Funktionalität!&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Fragemode 	!! Bedeutung des Lösungsfeldes 	!! Inhalt&lt;br /&gt;
|-&lt;br /&gt;
| Single-Choice || Lösung wie sie am Browser ausgegeben wird 	|| Eingabe&lt;br /&gt;
|-&lt;br /&gt;
| Text 	        || Lösung wie sie der Schüler eingeben sollte 	|| Eingabe&lt;br /&gt;
|-&lt;br /&gt;
| Regexp 	|| Regulärer Ausdruck (in Java Syntax) welcher für die richtige Lösung treffen muss 	|| Eingabe&lt;br /&gt;
|-&lt;br /&gt;
| Multichoice 	|| Lösung wie sie am Browser ausgegeben wird. 	|| Eingabe&lt;br /&gt;
|-&lt;br /&gt;
| Calculated 	|| Berechnungsformel, mit der zur Testzeit die richtige Lösung berechnet wird, die mit der Schülereingaben verglichen wird. 	|| automatische Berechnung aus dem Maximafeld&lt;br /&gt;
|-&lt;br /&gt;
| Boolsch 	|| Berechnungsformel, die nach der Schülereingabe berechnet wird. Das Ergebnis der Formel muss boolsch sein. Wenn das Ergebnis true ist bekommt der Schüler die angegebenen Punkte. 	|| automatische Berechnung aus dem Maximafeld&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
====&amp;lt;span id=&amp;quot;sqErgInfoInput&amp;quot;&amp;gt;Infofeld der Antwort einer Teilfrage====&lt;br /&gt;
* Bei Berechnungsfragen die Antwort des ersten Datensatzes, das Feld ist dann schreibgeschützt&lt;br /&gt;
* Bei Boolschen Fragen kann hier eine Information erfolgen, wie die Frage bewertet wurde.&lt;br /&gt;
&lt;br /&gt;
==Berechnungsfrage==&lt;br /&gt;
:[[Datei:ClipCapIt-180901-122143.PNG|400px]]&lt;br /&gt;
&lt;br /&gt;
Die Berechnungsfrage ist ähnlich aufgebaut wie eine Mehrfachberechnungsfrage mit nur einer Berechnung. Diese Frage kann aber mehrere unterschiedliche Lösungen bereitstellen, um zB. typische Berechnungsfehler mit Punkteabzügen zu beurteilen. Es können also zusätzliche Reiter mit mehreren Antwortmöglichkeiten über das Kontextmenü erzeugt bzw. wieder gelöscht werden.&lt;br /&gt;
&lt;br /&gt;
:[[Datei:ClipCapIt-180901-212431.PNG|thumb|450px|Übersicht Erstellung einer Berechnungsfrage]]&lt;br /&gt;
&lt;br /&gt;
:[[Datei:ClipCapIt-180901-132831.PNG|400px]]&lt;br /&gt;
&lt;br /&gt;
* Berechnende Fragen sind wie Mehrfachberechnungsfragen mit nur einer Teilfrage bei dem das Antwortfeld automatisch erscheint.&lt;br /&gt;
* Jeder Schüler bekommt eine eigene Angabe&lt;br /&gt;
* Für den Druck kann die Frage auch für Projektangaben verwendet werden.&lt;br /&gt;
* Berechnungen erfolgen mit Maxima&lt;br /&gt;
* Alle verwendeten Variablen müssen im Angabtext in geschwungene Klammern gesetzt werden. Im Maximafeld und im Lösungsfeld ist die Klammer nicht notwendig.&lt;br /&gt;
* Für jede Variable wird ein Dataset mit möglichen Werten angelegt. Diese Datasets können über einen Formatierungsstring definiert werden und danach auch direkt in einer Liste bearbeitet werden.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Wenn mehrer Antwortmöglichkeiten definiert wurden, wird links ein zusätzliches Eingabefeld &#039;&#039;&#039;Antwort Maxima:&#039;&#039;&#039; angezeigt. Damit können Sie unterschiedliche Ergebnisse der Maxima-Berechnungen den unterschiedlichen Antworten zuordnen.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Feld !!  Beschreibung&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;Antwort Maxima  ||    [[#Lösung_der_Antwort_einer_Teilfrage|Verhalten wie bei der Mehrfachberechnungsfrage]], siehe [[Berechnungen]] &lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;Einheit:&#039;&#039;&#039;   || [[ZielEinheit|Defiition der Einheit oder sonstiges Frageerhalten]]&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;Prozent:&#039;&#039;&#039;   || [[#Prozent_für_die_Antwort_einer_Teilfrage|Prozentangaben für unterschiedliche Lösungen]]&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;Toleranz:&#039;&#039;&#039;  ||  [[#Toleranz_der_Antwort_einer_Teilfrage|Toleranz für den Ergebniswert wie bei Mehrfachberechnungsfrage]]&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;Mode:&#039;&#039;&#039;      ||  [[#Antwortmode|Berechungs-Modus]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Die Zeile &#039;Lösung für 1. Datenstatz&#039; zeigt das Ergebnis an, wenn der Werte des 1. Datensatzes in die Lösungsformel eingesetzt werden. Diese Zeile dient der Kontrolle, ob die Lösung mit Zahlenwerten auch Sinn macht und ob die Einheiten zusammenpassen.&lt;br /&gt;
&lt;br /&gt;
Das Eingabefeld &#039;&#039;&#039;Lösung&#039;&#039;&#039; ist schreibgeschützt und kann nur durch die [[Berechnungen#Berechnung mit Maxima|Maxima-Berechnung]] oder den [[Berechnungen#Berechnung_mit_dem_internen_Parser|internen Parser]] bestimmt werden.&lt;br /&gt;
&lt;br /&gt;
==Lückentextfrage==&lt;br /&gt;
Ein Lückentext enthält Lücken innerhalb eines Fragetextes, die durch den Schüler mit dem korrekten Inhalt gefüllt werden sollen.&lt;br /&gt;
&lt;br /&gt;
Folgende Modi sind dabei für die Lücken möglich:&lt;br /&gt;
* Texteingabe: Der Schüler muss das fehlende Wort je nach Fragemodus in die Lücke über die Tastatur eingeben oder per Drag&amp;amp;Drop auf die Lücke ziehen&lt;br /&gt;
* Multiple-Choice: Der Schüler kann aus mehreren Antwortmöglichkeiten eine oder mehrere richtige Elemente selektieren&lt;br /&gt;
* Single-Choice: Der Schüler kann mit einem Drop-Down-Auswahlfeld aus mehreren Antwortmöglichkeiten genau ein richtiges Element selektieren&lt;br /&gt;
&lt;br /&gt;
Da es bei Lückentextfragen um Texte geht, gibt es hier keine Datensätze oder Maxima-Berechnungen.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Fragemodus:&#039;&#039;&#039;&lt;br /&gt;
:[[Datei:ClipCapIt-180901-155006.PNG|200px]]&lt;br /&gt;
&lt;br /&gt;
Der Fragemodus gibt an wie Texteingabe-Lücken verarbeitet werden&lt;br /&gt;
&lt;br /&gt;
* Normal: Der Schüler muss den Text über die Tastatur in die Lücke eintragen.&lt;br /&gt;
* Drag-and-Drop: Der Schüler muss aus einer Liste von möglichen Antworten die richtigen Antworten auf die Lücken ziehen.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Funktionstasten:&#039;&#039;&#039;&lt;br /&gt;
F8: aktuelles Wort, bei dem der Cursor steht, als Textlücke definieren (Vorsicht: Wort nicht markieren!), siche auch  [[Editor_für_den_Angabetext#Schnelleingabe_.2F_Tastatur-Shortcuts|alle Funktionstasten]]&lt;br /&gt;
&lt;br /&gt;
====Erstellung der Frage:====&lt;br /&gt;
&lt;br /&gt;
Im [[Editor für den Angabetext|Textbereich des Editors]] werden die Lücken durch Antwortformulierungen in eckigen Klammern realisiert. Mit &#039;&#039;&#039;F8&#039;&#039;&#039; kann das aktuelle Wort, bei dem der Cursor steht, als Textlücke definiert werden.&lt;br /&gt;
&lt;br /&gt;
:[[Datei:ClipCapIt-180901-161337.PNG|thumb|450px|Beispiel einer Eingabe]]&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;Texteingabe:&#039;&#039;&#039;&lt;br /&gt;
** Im Fragemodus &amp;quot;Normal&amp;quot; muss der Schüler den Text in der Lücke eingeben&lt;br /&gt;
** Im Fragemodus &amp;quot;Drag and Drop&amp;quot; muss der Schüler aus einer Liste von Antworttexten den richtigen Text über die Lücke ziehen. Hierbei wird die Liste der Antworttexte aus allen richtigen und falschen Antworten der Texteingabe-Felder zusammengesetzt.&lt;br /&gt;
** Syntax:&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;margin-left:50px&amp;quot;&lt;br /&gt;
| [text]     || 	Das Wort &amp;quot;text&amp;quot; als Lücke mit 1 Punkt für die richtige Antwort&lt;br /&gt;
|-&lt;br /&gt;
| [2&amp;lt;nowiki&amp;gt;|&amp;lt;/nowiki&amp;gt;text]     || 	Das Wort &amp;quot;text&amp;quot; mit 2 Punkten für die richtige Antwort&lt;br /&gt;
|-&lt;br /&gt;
| [1&amp;lt;nowiki&amp;gt;|&amp;lt;/nowiki&amp;gt;text,50:alt,0:nix]   ||	2 Punkte für die richtige Antwort &amp;quot;text&amp;quot;, 50%von zwei Punkten für &amp;quot;alt&amp;quot;, &amp;quot;nix&amp;quot; als falsche Antwort für &amp;quot;Drag and Drop&amp;quot;-Fragen&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;Multiple-Choice:&#039;&#039;&#039;&lt;br /&gt;
**      unabhängig vom Fragemodus&lt;br /&gt;
**      mindestens eine Antwort muss richtig sein&lt;br /&gt;
**      Syntax:&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;margin-left:50px&amp;quot;&lt;br /&gt;
| [M&amp;lt;nowiki&amp;gt;|&amp;lt;/nowiki&amp;gt;x:richtig,falsch1,falsch2]  ||	Die richtigen Antwortfelder sind mit x: markiert&lt;br /&gt;
|-&lt;br /&gt;
| [M&amp;lt;nowiki&amp;gt;|&amp;lt;/nowiki&amp;gt;x:rot,x:grün,blau,gelb] 	 ||     rot und grün sind richtig&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;Single-Choice:&#039;&#039;&#039;&lt;br /&gt;
**      unabhängig vom Fragemodus&lt;br /&gt;
**      der Schüler muss eine Antwort aus mehreren wählen&lt;br /&gt;
**      Syntax:&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;margin-left:50px&amp;quot;&lt;br /&gt;
| [S&amp;lt;nowiki&amp;gt;|&amp;lt;/nowiki&amp;gt;x:richtig,falsch,falsch] 	||  x kennzeichnet eine richtige Antwort&lt;br /&gt;
|-&lt;br /&gt;
| [S&amp;lt;nowiki&amp;gt;|&amp;lt;/nowiki&amp;gt;x:rot,x:grün,50:blau,gelb] ||  bei rot und grün alle Punkte, bei blau 50 Prozent der Punkt, bei gelb 0 Punkte&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;Sonderzeichen&#039;&#039;&#039; innerhalb einer Lücke &lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;margin-left:50px&amp;quot;&lt;br /&gt;
| Bezeichnung || Zeichen || Ersatzzeichen &lt;br /&gt;
|-&lt;br /&gt;
| Komma(Beistrich) || ,  || ,, &lt;br /&gt;
|-&lt;br /&gt;
| Komma(Beistrich) || ,  || \, &lt;br /&gt;
|-&lt;br /&gt;
| eckige Klammer auf || [ || \[ &lt;br /&gt;
|-&lt;br /&gt;
| eckige Klammer zu || ] || \]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;Sonderzeichen&#039;&#039;&#039; im Fragetext, welche nicht in einer Lücke sind:&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;margin-left:50px&amp;quot;&lt;br /&gt;
| Bezeichnung || Zeichen || Ersatzzeichen &lt;br /&gt;
|-&lt;br /&gt;
| eckige Klammer auf || [ || \[ &lt;br /&gt;
|-&lt;br /&gt;
| eckige Klammer zu || ] || \]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
====Schülereingabe der Frage:====&lt;br /&gt;
Die oben in der Abbildung definierte Lückentextfrage führt zu der links abgebildeten Aufgabenstellung während eines [[Online-Tests]].&lt;br /&gt;
:[[Datei:ClipCapIt-180901-185126.PNG|350px]]&lt;br /&gt;
&lt;br /&gt;
==Multiple-Choice-Frage==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* Der Schüler kann eine oder mehrere vorgegebene Antworten als richtig ankreuzen.&lt;br /&gt;
* Die Antworten werden bei jedem Schüler in einer anderen Reihenfolge vorgeschlagen.&lt;br /&gt;
* Es gibt zwei mögliche Eingabeansichten&lt;br /&gt;
**        automatische Prozentvergabe: Alle richtigen Antworten bekommen einen Haken. Der Computer teilt dann die Prozentwerte gleichmäßig auf alle richtigen Antworten auf.&lt;br /&gt;
**        explizite Definition der Prozentwerte: Neben jeder Antwort kann ein Prozentwert angegeben werden, welcher zugewiesen wird wenn die Antwort angekreuzt ist. Die Summe der Prozentwerte aller richtigen Antworten muss dabei 100 ergeben!&lt;br /&gt;
&lt;br /&gt;
====Beispiele für eine Multiple-Choice-Frage in unterschiedlichen Ansichten====&lt;br /&gt;
&#039;&#039;&#039;CheckboxFeedback: &#039;&#039;&#039;&lt;br /&gt;
Eingabe der Antworten der Multiple-Choice-Frage durch Checkboxen: Die richtigen Antworten bekommen links davon in der Checkbox ein Häckchen. Neben den Antworten können Sie ein Feedback angeben, warum Antworten falsch oder richtig sind.&lt;br /&gt;
:[[Datei:ClipCapIt-180901-214517.PNG|400px]]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Checkbox: &#039;&#039;&#039;&lt;br /&gt;
Eingabe der Antworten der Multiple-Choice-Frage durch Checkboxen: Die richtigen Antworten bekommen ein Häckchen. Feedback-Eingaben sind nicht möglich.&lt;br /&gt;
:[[Datei:ClipCapIt-180901-214538.PNG|400px]]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;ProzentFeedback: &#039;&#039;&#039;&lt;br /&gt;
Die Antworten werden mit Prozentwerten versehen. Die Summe über alle positiven Prozent-Werte muss genau 100 Prozent ergeben! &lt;br /&gt;
Bei falschen Antworten können Sie Werte von -100 eingeben, dann wird bei einer falschen Antwort die ganze Frage als falsch beurteilt.&lt;br /&gt;
Wird dieser negative Prozentwert geringer als -100 gewählt, dann kann die Frage noch teilweise richtig beurteilt werden.&lt;br /&gt;
Neben den Antworten können Sie ein Feedback angeben, warum Antworten falsch oder richtig sind.&lt;br /&gt;
:[[Datei:ClipCapIt-180901-214557.PNG|400px]]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Prozent: &#039;&#039;&#039;&lt;br /&gt;
Die Antworten werden mit Prozentwerten versehen. Die Summe über alle positiven Prozent-Werte muss genau 100 Prozent ergeben! &lt;br /&gt;
Bei falschen Antworten können Sie Werte von -100 eingeben, dann wird bei einer falschen Antwort die ganze Frage als falsch beurteilt.&lt;br /&gt;
Wird dieser negative Prozentwert geringer als -100 gewählt, dann kann die Frage noch teilweise richtig beurteilt werden.&lt;br /&gt;
:[[Datei:ClipCapIt-180901-214616.PNG|400px]]&lt;br /&gt;
&lt;br /&gt;
Das Maxima-Feld kann auch für Multiple-Choice-Fragen für Berechnungen und für die Definition von Formeln verwendet werden. In den Antworten für die Multiple-Choice-Frage können Sie sich über {= ...} auf die Ergebnisse beziehen.&lt;br /&gt;
:[[Datei:ClipCapIt-180901-215517.PNG|400px]]&lt;br /&gt;
Die obige Frage wurde mit dieser Berechnung durchgeführt.&lt;br /&gt;
&lt;br /&gt;
==Zuordnungsfrage==&lt;br /&gt;
&lt;br /&gt;
Die Antwort auf jede der Unterfragen muss aus einer Liste von Möglichkeiten ausgewählt werden.&lt;br /&gt;
Im Prinzip hat der Schüler 2 Listen mit Antworten und Fragen, die er richtig zuordnen muss.&lt;br /&gt;
&lt;br /&gt;
[[Datei:ClipCapIt-180618-225643.PNG|500px]]&lt;br /&gt;
&lt;br /&gt;
Mit der Auswahlliste für das Anzeigeverhalten kann gesteuert werden, ob und wie die Zuordnungen bei einem Test gemischt werden.&lt;br /&gt;
&#039;&#039;Nur links mischen&#039;&#039; bedeutet, dass die Antwortmöglichkeiten auf der linken Seite der Zuordnungsfrage bei jedem Öffnen der Frage anders dargestellt werden.&lt;br /&gt;
&lt;br /&gt;
Folgende Einstellungen sind möglich:&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|Nicht mischen      ||  Die Reihenfolge wird so, wie sie in der Frage definiert ist, gewählt&lt;br /&gt;
|+&lt;br /&gt;
|Mischen            ||  Auf der linken und auf der rechten Seite werden die Antwortmöglichkeiten zufällig angeordnet&lt;br /&gt;
|+&lt;br /&gt;
|Nur links mischen  ||  Nur auf der linken Seite werden die Antwortmöglichkeiten zufällig angeordnet&lt;br /&gt;
|+&lt;br /&gt;
|Nur rechts mischen  || Nur auf der rechten Seite werden die Antwortmöglichkeiten zufällig angeordnet&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Pro Zeile werden die zusammengehörenden Begriffe in die Tabelle eingetragen.&lt;br /&gt;
Um Zuordnungsfragen zu erschweren, können auf der rechten Seite auch falsche Begrife angeführt werden, die nicht eine Entsprechung auf der linken Seite haben.&lt;br /&gt;
&lt;br /&gt;
Weiters können auf der linken Seite auch mehrere gleichnamige Begriffe verwendet werden, um Zuordnungen zu Themengruppen zu ermöglichen.&lt;br /&gt;
&lt;br /&gt;
==Freitextfrage==&lt;br /&gt;
Der Schüler erhält zur Fragebeantwortung ein Textfeld, in dem die Antwort eingetragen werden kann. Diese Fragen müssen aber manuell korrigiert werden!&lt;br /&gt;
Bei der Frageerstellung kann nur das Feedbackfeld ausgefüllt werden. Dieses kann eine mögliche Lösung der Aufgabenstellung enthalten und wird dem Schüler nach der Testausführung (Test wurde bereits beendet) angezeigt.&lt;br /&gt;
&lt;br /&gt;
* Eine Freitextfrage hat keine automatische Korrekturmöglichkeit!&lt;br /&gt;
* Verwendung für:&lt;br /&gt;
**        Fragen, die online über die Tastatur beantwortet werden und vom Lehrer über den Letto-Server händisch beurteilt werden.&lt;br /&gt;
**        Fragen, die nur als Angabe für Projekte, Laborübungen usw. dienen.&lt;br /&gt;
**        Fragen, die auf Papier beantwortet werden.&lt;br /&gt;
* Das Ergebnis kann im Feedback-Feld angegeben werden&lt;br /&gt;
**        und beim Online-Test dem Schüler als Feedback nach dem Test bekanntgegeben werden.&lt;br /&gt;
**        Bei Beispielsammlungen kann der Schüler das Feedbackfeld nie einsehen!&lt;br /&gt;
**        Bei Hausübungen kann der Schüler das Feedbackfeld erst nach Ablauf der Abgabefrist einsehen!&lt;br /&gt;
* Sowohl Feedbackfeld als auch das Fragefeld kann Bilder, Tabellen, externe Dateien und Sourcode-Listings enthalten.&lt;/div&gt;</summary>
		<author><name>Ckral</name></author>
	</entry>
	<entry>
		<id>https://wiki.letto.at/wiki/index.php?title=Beispielsammlung_Editieren&amp;diff=2347</id>
		<title>Beispielsammlung Editieren</title>
		<link rel="alternate" type="text/html" href="https://wiki.letto.at/wiki/index.php?title=Beispielsammlung_Editieren&amp;diff=2347"/>
		<updated>2020-05-16T09:50:11Z</updated>

		<summary type="html">&lt;p&gt;Ckral: Doppelpunkt (:) aus Überschrift entfernt&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;In der Edit-Ansicht können Beispiele verändert, geprüft und neu erstellt werden. &lt;br /&gt;
&lt;br /&gt;
Zurück zu [[Letto-Hauptansicht|LeTTo]], [[Beispielsammlung]]&lt;br /&gt;
[[Datei:FrageEditor.jpg|thumb|700px|Ansicht von &#039;Beispielsammlung Editieren&#039;]]&lt;br /&gt;
&lt;br /&gt;
=Übersicht=&lt;br /&gt;
Im Modus &#039;&#039;&#039;Beispielsammlung editieren&#039;&#039;&#039; ist oben eine [[Toolbar|Symbolleiste]] zur Steuerung der Anwendung angeordnet. Nähere Beschreibung der jeweiligen Buttons finden Sie unter [[Toolbar]].&lt;br /&gt;
&lt;br /&gt;
Im Bereich der Themen (siehe obige Abbildung) finden Sie eine [[Ordnerverwaltung|Ordnerstruktur]] ähnlich einem Dateimanager zur Sortierung und Speicherung der Fragen. Weiters finden Sie in diesem Bereich unten die Definition von [[Online-Tests]]. &lt;br /&gt;
&lt;br /&gt;
Die [[Fragenliste]] enthält alle Fragen eines Ordners sowie Möglichkeiten zum Hinzufügen, Ändern und Klonen ... von Fragen. &lt;br /&gt;
&lt;br /&gt;
Darunter finden sie die [[Bildvorschau]], die immer das zuletzt im [[Editor für den Angabetext|Editor]] angewählte Bild (Image, IMG) anzeigt.&lt;br /&gt;
&lt;br /&gt;
Der rechte Bereich des Editiermodus enthält alle Infos zur aktuell ausgewählten und gerade bearbeiteten Frage. Der obere Teil der Eingabemaske für Fragen ist für alle [[Fragetypen]] gleich.&lt;br /&gt;
&lt;br /&gt;
=Name der Frage=&lt;br /&gt;
:[[Datei:ClipCapIt-180618-180519.PNG|400px|thumb|Eingabefeld für den Fragenamen]]&lt;br /&gt;
Der Fragename bezeichnet die Frage und sollte Information über den Frageninhalt bringen. Alle Fragen einer [[Ordnerverwaltung|Kategorie oder Ordners]] werden mit ihrem Fragennamen in der [[Fragenliste]] angezeigt. Der Name sollte sprechend aber nicht zu lange sein, damit die Übersicht in der Fragenliste erhalten bleibt.&lt;br /&gt;
&lt;br /&gt;
Oberhalb des Fragennamens finden Sie noch den Fragetyp, den diese Frage hat.&lt;br /&gt;
&lt;br /&gt;
=Dokumente zu dieser Frage hochladen=&lt;br /&gt;
:[[Datei:ClipCapIt-181021-141443.PNG|500px]]&lt;br /&gt;
Ist die Checkbox &#039;&#039;&#039;Doks:&#039;&#039;&#039; ausgewählt, dann kann der Schüler bei der Beantwortung der Fragen auch Dokumente zur Testfrage auf den Server hochladen. &lt;br /&gt;
&lt;br /&gt;
Die folgende Abbildung zeigt die Buttons zum Testen der Lösung und den zusätzlichen Button &#039;&#039;&#039;Datei zur Frage hochladen&#039;&#039;&#039;, der dann eingeblendet wird, wenn bei der Fragedefinition die Option &#039;&#039;&#039;Doks:&#039;&#039;&#039; ausgewählt wurde.&lt;br /&gt;
:[[Datei:ClipCapIt-181021-142155.PNG|350px]]&lt;br /&gt;
Solange der Testversuch aktiv ist, können die Dokumnete vom Schüler wieder über den &#039;&#039;&#039;X&#039;&#039;&#039;-Button gelöscht werden oder weitere Dokumnete zu dieser Testfrage hochgeladen werden.&lt;br /&gt;
&lt;br /&gt;
Nach Beendigung des Testversuchs können die Dokumente nicht mehr geändert, sondern nur mehr heruntergeladen und angesehen werden.&lt;br /&gt;
&lt;br /&gt;
=Gefundene Werte=&lt;br /&gt;
Hier sind alle Konstante, die im Angabetext gefunden wurden, aufgelistet. Dieses Feld wird nach dem Verlassen des Editors für den Angabetext automatisch aktualisiert: Enthält der Fragetext Konstante in geschwungenen Klammern, die keine Datensätze sind, so werden diese Variablen automatisch aus dem Text extrahiert und angezeigt. Diese Werte können dann für die Berechnung der Lösung herangezogen werden.&lt;br /&gt;
&lt;br /&gt;
=Frage-Textfeld=&lt;br /&gt;
Siehe [[Editor für den Angabetext]].&lt;br /&gt;
&lt;br /&gt;
=Plugin-Info=&lt;br /&gt;
Im Bereich Plugin-Info finden Sie einen Button &#039;&#039;&#039;Plugins&#039;&#039;&#039; zur Definition der Plugins der Frage. Dadurch wird der [[Definition von Plugins|Dialog zur Plugindefinition]] geöffnet.&lt;br /&gt;
&lt;br /&gt;
Die Plugindefinition bildet immer einen Text-String. Dieser wird nach dem Schliessen des Dialogs im nebenstehenden Feld angezeigt und kann theoretisch auch verändert werden. Diese Option sollten aber nur erfahrene Benutzer verwenden, die sich mit der Syntax der Plugin-Definition auskennen.&lt;br /&gt;
&lt;br /&gt;
Der Scroller [[Datei:ClipCapIt-180831-204926.PNG|40px]] neben dem Eingabefeld dient zum Durchlaufen von allen definierten [[Datensätze|Datensätzen]] und zeigt die Änderungen der Grafiken an, wenn der Cursor auf einem [[Editor für den Angabetext#Spezielle TAGs im Fragentext|Plugin-Grafik-Tag]] [PIG...] im [[Editor für den Angabetext]] steht.&lt;br /&gt;
&lt;br /&gt;
=Beurteilungsbereich=&lt;br /&gt;
====&amp;lt;span id=&amp;quot;qPunkte&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;Punkte:====&lt;br /&gt;
Punkte, die bei richtiger Beantwortung der Frage für die gesamte Frage maximal vergeben werden können. Bei Mehrfachberechnungsfragen ist dieses Feld gesperrt und die Punkteanzahl wird automatisch als Gesamtpunktezahl aus allen Teilfragen berechnet.&lt;br /&gt;
&lt;br /&gt;
====&amp;lt;span id=&amp;quot;qPenalty&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;Penalty:====&lt;br /&gt;
Abzug, der bei einer falschen Beantwortung im [[Online-Tests#Testart|Rechenübungs- oder Hausübungmodus]] pro Versuch abgezogen wird.&lt;br /&gt;
&lt;br /&gt;
====&amp;lt;span id=&amp;quot;qEinheitenFehler&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;Einheitenfehler:====&lt;br /&gt;
Im Feld &amp;quot;EH-Fehler&amp;quot; wird ein Faktor angeben, der von den Punkten der richtigen Lösung abgezogen wird, wenn die Einheit falsch angegeben wurde.&lt;br /&gt;
&lt;br /&gt;
Der Wert von EH-Fehler muss zwischen 0 und 1 liegen!&lt;br /&gt;
&lt;br /&gt;
Erreichtepunkte = Maximalpunkte* (1 - EHFehler)&lt;br /&gt;
&lt;br /&gt;
z.B:&lt;br /&gt;
Das Beispiel hat 4 Punkte, der EH-Faktor ist 0.1.&lt;br /&gt;
Gibt nun der Schüler statt 0.2A den Wert 0.2V an, so erhält er 4*(1-0.1) = 3.6 Punkte.&lt;br /&gt;
Gibt der Schüler einen falschen Einheitenvorsatz wie 0.2mA an, so erhält er keine Punkte, da der Wert falsch ist!&lt;br /&gt;
&lt;br /&gt;
Siehe auch [[Einheit|Einheiten]], [[Online-Tests#Einheiteneinstellungen|Einheiteneinstellungen]]!&lt;br /&gt;
&lt;br /&gt;
====&amp;lt;span id=&amp;quot;cbParser&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;Checkbox Parser:====&lt;br /&gt;
Ist diese Checkbox ausgewählt, dann wird beim Berechnen der Symbolischen Lösung für das Ergebnis der Frage ud allen Teilfragen nicht [[Berechnungen#Berechnung mit Maxima|Maxima]], sondern der [[Berechnungen#Berechnung mit dem internen Parser|Interne Parser verwendet]].&lt;br /&gt;
&lt;br /&gt;
Siehe auch [[Berechnungen]]!&lt;br /&gt;
&lt;br /&gt;
====&amp;lt;span id=&amp;quot;cbSymbolisch&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;Checkbox Symbolisch:====&lt;br /&gt;
Ist diese Checkbox ausgewählt, dann werden beim Berechnen der Lösung mathematische Konstanten nur dann eingesetzt, wenn sie mit einer Gleitkommazahl verrechnet werden. Weiters werden Berechnungen mit Ganzzahlen nur dann als Gleitkommazahl ausgerechnet, wenn sie mit einer Gleitkommazahl verrechnet werden.&lt;br /&gt;
&lt;br /&gt;
=Datensätze=&lt;br /&gt;
Siehe [[Datensätze definieren#Erstellung / Änderung über den Datensatz-Bereich|Datensätze definieren]]&lt;br /&gt;
&lt;br /&gt;
=Kompetenzen zuordnen=&lt;br /&gt;
Mit dem Button [[Datei:ClipCapIt-180901-220702.PNG|20px]] aus dem [[Toolbar]] kann man zwischen der Datensatz- und der Kompetenz-Ansicht umschalten.&lt;br /&gt;
&lt;br /&gt;
Siehe auch [[Kompetenzzuordnung]].&lt;br /&gt;
&lt;br /&gt;
=Maxima-Feld=&lt;br /&gt;
&lt;br /&gt;
Das Maximafeld wird für die Berechnung der Ergebnisformel verwendet. Für die Berechnung des Maxima-Feldes wird der Inhalt des Feldes mit einem Präprozessor vorbearbeitet und dann an Maxima gesendet, oder der Inhalt wird direkt mit dem internen Parser von Letto verarbeitet. Da einige Funktionen des internen Parsers von Maxima nicht unterstützt werden und umgekehrt der interne Parser nicht den vollen Funktionsumfang von Maxima unterstützt, ist je nach Aufgabenstellung die eine oder andere Variante zu verwenden.&lt;br /&gt;
&lt;br /&gt;
Siehe auch [[Berechnungen]]!&lt;br /&gt;
&lt;br /&gt;
====Maxima Berechnung====&lt;br /&gt;
Siehe [[Berechnungen#Berechnung mit Maxima|Maxima-Berechnungen]]&lt;br /&gt;
&lt;br /&gt;
* Zahlenwerte mit Einheiten werden, bevor das Feld an Maxima geschickt wird, durch interne Variablen ersetzt, die bei der Berechnung des Ergebnisses dann wieder mit Einheiten eingesetzt werden. Die Maxima-Berechnung erfolgt dadurch wie in Maxima üblich ohne Einheiten.&lt;br /&gt;
* graphische Elemente von Maxima wie plot etc. können nicht verwendet werden&lt;br /&gt;
* Jeder Durchlauf des Maximafeldes beginnt mit einer neuen leeren Maxima-Umgebung in der die Datei letto.mac geladen wird. Die Datei moodle.mac kann in der globalen Einstellungen des Servers für alle Benutzer gemeinsam vom Administrator konfiguriert werden. Unter anderem wird hier der Operator || definiert, der für die Parallelschaltung von Widerständen und Impedanzen verwendet werden kann.&lt;br /&gt;
* Es können auch alle Funktionen des internen Parsers, die Maxima nicht kennt verwendet werden. Jedoch kann Maxima diese Funktionen weder vereinfachen noch berechnen, dies muss dann Online beim Berechnen des Lösungsfeldes durch Letto direkt erfolgen. Dementsprechend kann auch der Befehl &#039;&#039;&#039;solve&#039;&#039;&#039; von Maxima keine Funktionen auflösen, die nur vom internen Parser untersützt werden.&lt;br /&gt;
&lt;br /&gt;
====Interner Parser von Letto====&lt;br /&gt;
Siehe [[Berechnungen#Berechnung_mit_dem_internen_Parser|Interner Parser]]&lt;br /&gt;
&lt;br /&gt;
* unterstützt Einheiten&lt;br /&gt;
* unterstützt Dualzahlen und Hexadezimalzahlen&lt;br /&gt;
* unterstützt einige Funktionen, die für technische Berechnungen vorteilhaft verwendet werden können. Die Liste der möglichen Funktionen ist in der Hilfe direkt nachzulesen.&lt;br /&gt;
* Der interne Parser von Letto wird immer für die Berechnung des Lösungsfeldes einer Berechnungs- oder Mehrfachberechnungsfrage verwendet.&lt;br /&gt;
&lt;br /&gt;
====Einheiten====&lt;br /&gt;
Zahlenwerte mit Einheit können auf mehrere Arten im Maximafeld verwendet werden:&lt;br /&gt;
* Als Datensatz mit Einheit durch Verwendung des Datensatzbezeichners: Dies ist die einfachste Variante, bei der gleichzeitig auch für jeden Schüler ein anderer Zahlenwert definiert werden kann&lt;br /&gt;
* Als Direkteingabe im Maxima-Feld mit Zahlenwert, gefolgt von der Einheit in einfachen Hochkomma ( x:13&#039;A/m&#039; oder y:x*56&#039;VA-1&#039; )&lt;br /&gt;
* Wenn die Einheit keine Rechenoperatoren enthält kann die Einheit direkt am Zahlenwert angehängt werden: zB.: U:23V oder I:U/2Ohm&lt;br /&gt;
&lt;br /&gt;
Der Präprozessor, der das Maximafeld vor der Berechnung durchläuft hat folgende Aufgaben:&lt;br /&gt;
&lt;br /&gt;
* Bei Maxima-Berechnungsmodi werden alle Zahlenwerte welche eine Einheit haben durch Variable ersetzt welche bei der späteren Berechnung wieder eingesetzt werden können&lt;br /&gt;
* jede Zeile wird automatisch abgeschlossen, man benötigt daher kein ; oder $ am Zeilenende und es sind dadurch keine mehrzeiligen Befehle möglich&lt;br /&gt;
* Bezeichner dürfen nur die Zeichen a-zA-Z0-9 enthalten (zB. der Unterstrich ist verboten)&lt;br /&gt;
* Bemerkungen werden wie in C oder Java übliche am Zeilenanfang mit einem doppelten Schrägstrich eingefügt&lt;br /&gt;
&lt;br /&gt;
====Wichtige Funktionen====&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Funktion !!  Beschreibung 	!! Beispiel 	!! Ergebnis&lt;br /&gt;
|-&lt;br /&gt;
| floor(x) ||  Kommazahl auf die nächste Ganzzahl abrunden 	|| ||&lt;br /&gt;
|-&lt;br /&gt;
| round(x) ||  Kommazahl auf Ganzzahl runden 	|| ||&lt;br /&gt;
|-&lt;br /&gt;
| pi() 	   ||  die Zahl Pi 	|| ||&lt;br /&gt;
|-&lt;br /&gt;
| exp(1)   ||  die eulersche Zahl e || ||&lt;br /&gt;
|-&lt;br /&gt;
| exp(x)   ||  Exponentialfunktion e hoch x 	|| ||&lt;br /&gt;
|-&lt;br /&gt;
| abs(x)   ||  Absolutbetrag  ||  abs(-2) 	||  2&lt;br /&gt;
|-&lt;br /&gt;
| acos(x), acosh(x), asin(x), &lt;br /&gt;
&lt;br /&gt;
asinh(x), atan2(y,x), atan(x), &lt;br /&gt;
&lt;br /&gt;
atanh(x), cos(x), cosh(x), &lt;br /&gt;
&lt;br /&gt;
sin(x), sinh(x), tan(x), tanh(x)  &lt;br /&gt;
||	Winkelfunktionen 	|| ||&lt;br /&gt;
|-&lt;br /&gt;
| deg2rad(x) ||	Grad in Radianten umwandeln 	|| ||&lt;br /&gt;
|-&lt;br /&gt;
| rad2deg(x) ||	Radianten in Grad umwandeln 	|| ||&lt;br /&gt;
|-&lt;br /&gt;
| max(x,y,z) ||	Liefert das Maximum der angegebenen Parameter 	|| max(2,5,3)  ||	5&lt;br /&gt;
|-&lt;br /&gt;
| min(x,y,z) ||	Liefert das Minimum der angegebenen Parameter 	|| min(3,2,6,34) ||	2&lt;br /&gt;
|-&lt;br /&gt;
| log10(x)   ||	10er Logarithmus 	||  log10(100)  || 	2&lt;br /&gt;
|-&lt;br /&gt;
| log(x)     ||	natürlicher Logarithmus 	|| ||&lt;br /&gt;
|-&lt;br /&gt;
| pow(x,y)   ||	berechnet die Potenz x hoch y  ||	pow(2,3) 	|| 8&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
====Tipps für Maxima-Newcomer====&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Befehl 	!!  Beschreibung&lt;br /&gt;
|-&lt;br /&gt;
| a:5  || 	Der Variablen a den Wert5 zuweisen&lt;br /&gt;
|-&lt;br /&gt;
| g1:x+y=5&lt;br /&gt;
&lt;br /&gt;
g2:x-y=3&lt;br /&gt;
&lt;br /&gt;
L:solve([g1,g2],[x,y])&lt;br /&gt;
&lt;br /&gt;
x:ev(x,L)&lt;br /&gt;
&lt;br /&gt;
y:ev(y,L)&lt;br /&gt;
|| 	Gleichungssystem lösen mit den Gleichungen g1 und g2&lt;br /&gt;
&lt;br /&gt;
solve löst das Gleichungssystem und liefert den Ergebnisvektor L&lt;br /&gt;
&lt;br /&gt;
ev berechnet aus dem Lösungsvektor die Variablen&lt;br /&gt;
|-&lt;br /&gt;
| c:4+5*%i   ||	komplexe Zahl&lt;br /&gt;
|-&lt;br /&gt;
| e:ratsimp(c*(2+3*%i)) 	|| komplexes Ergebnis auswerten&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=Eingabemasken für die unterschiedlichen Fragetypen=&lt;br /&gt;
&lt;br /&gt;
==Mehrfachberechnungsfrage==&lt;br /&gt;
&lt;br /&gt;
* Fragen dieses Typs sind sehr flexibel.&lt;br /&gt;
* Die Frage kann mehrere Teilantworten beinhalten. Jede Teilfrage wird im Fragetext durch einen [Qx]-Tag (x..Fragenummer) positioniert. Bei der Schülereingabe wird der Tag durch ein Eingabefeld für die Ergebniseingabe ersetzt.&lt;br /&gt;
* Die Angabewerte sind wie bei Berechnungsfragen mittels [[Datensätze|Datensätzen]] definierbar und variieren von Schüler zu Schüler.&lt;br /&gt;
* Alle verwendeten [[Datensätze|Variablen]] müssen im Angabtext in geschwungene Klammern gesetzt werden. Im [[Berechnungen|Maximafeld]] und im Lösungsfeld ist die Klammer nicht notwendig.&lt;br /&gt;
* Für jede Variable wird ein Dataset mit möglichen Werten angelegt. Diese Datasets können über einen [[Datensätze_definieren#Definition_der_Werte|Formatierungsstring]] definiert werden und danach auch direkt in einer Liste bearbeitet werden.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
:[[Datei:ClipCapIt-180831-220929.PNG|600px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Übersicht über alle Spalten der Detail-Ansicht:&#039;&#039;&#039;&lt;br /&gt;
====Q....====&lt;br /&gt;
Spalte mit der Kurzbezeichnung für die Teilfrage. Unter diesem Namen wird im Editor für die Angabe die Teilfrage mit [Qx] referenziert. An dieser Position steht dann bei der Testausführung das Eingabeelement für diese Teilfrage.&lt;br /&gt;
&lt;br /&gt;
====&amp;lt;span id=&amp;quot;sqProzInput&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;Prozent für die Antwort einer Teilfrage====&lt;br /&gt;
&lt;br /&gt;
Wenn der Schüler die Antwort gibt, die in der Zeile dieser Teilantwort steht, bekommt er den prozentuellen Anteil der Gesamtpunkt der Teilfrage.&lt;br /&gt;
&lt;br /&gt;
Je nach Antwort-Modus muss sichergestellt sein, dass der Schüler durch die richtige Eingabe der Antwort 100 Prozent erreichen kann.&lt;br /&gt;
&lt;br /&gt;
====&amp;lt;span id=&amp;quot;sqGradeInput&amp;quot;&amp;gt;Punkte einer Teilfrage====&lt;br /&gt;
Punkteanzahl für die richtige Beantwortung einer Teilfrage.&lt;br /&gt;
&lt;br /&gt;
Die Gesamtpunktanzahl einer Mehrfachberechnungsfrage ergibt sich immer aus der Summe der Punkte der Teilfragen.&lt;br /&gt;
&lt;br /&gt;
====&amp;lt;span id=&amp;quot;sqMaximaInput&amp;quot;&amp;gt;Maximafeld für die Antwort einer Teilfrage====&lt;br /&gt;
Siehe auch [[Berechnungen]]!&lt;br /&gt;
&lt;br /&gt;
Dieses Feld wird nach dem Durchlaufen des globalen Maxima-Feldes der Frage mit Maxima aufgerufen und liefert als Lösung den Ausdruck, der im Lösungsfeld eingesetzt wird.&lt;br /&gt;
&lt;br /&gt;
Es wird nur im Antwort-MODE &amp;quot;calculated&amp;quot; und &amp;quot;boolsch&amp;quot; berechnet.&lt;br /&gt;
&lt;br /&gt;
====&amp;lt;span id=&amp;quot;sqEinheitInput&amp;quot;&amp;gt;Ziel-Einheit der Antwort einer Teilfrage:====&lt;br /&gt;
Siehe unter [[ZielEinheit]]!&lt;br /&gt;
&lt;br /&gt;
====&amp;lt;span id=&amp;quot;modeSel_focus&amp;quot;&amp;gt;Antwortmode====&lt;br /&gt;
Art der Antwort:&lt;br /&gt;
&lt;br /&gt;
* Single-Choice: Es gibt mehrere Lösungen, die dem Schüler vorgeschlagen werden. Der Schüler muss nun von diesen Lösungen genau eine Auswählen. Die Lösungen stehen als String im Lösungsfeld&lt;br /&gt;
* Text: Die Lösung welche im Lösungsfeld steht ist eine Zeichenkette die vom Schüler genau so eingegeben werden muss&lt;br /&gt;
* Regexp: Im Lösungsfeld wird ein regulärer Ausdruck angeben, mit dem überprüft wird, ob die Antwort des Schülers richtig ist.&lt;br /&gt;
* Multichoice: Es gibt mehrere Lösungen, die dem Schüler vorgeschlagen werden. Der Schüler muss nun von diesen Lösungen eine oder mehrere Auswählen. Die Lösungen stehen als String in Lösungsfeld.&lt;br /&gt;
* Calculated: Im Lösungsfeld steht ein symbolischer Ausdruck, der aus dem Maxima-Feld errechnet wurde. Zur Laufzeit wird daraus mit dem Parser die Lösung berechnet.&lt;br /&gt;
* Boolsch: Dieser Fragemode kann nur sinnvoll bei einer Mehrfachberechnungsfrage verwendet werden. In diesem Modus kann man die Schülereingaben anderer Teilfragen nach Eingabe durch den Parser auswerten lassen und damit Punkte vergeben. Es lassen sich somit Folgefehler von Schülern berücksichtigen und bei der Dimensionierung können Angabe-Bedingungen geprüft werden, die über die Lösung einer Teilfrage nicht eindeutig wären. Der Zugriff auf die Schülereingabe einer anderen Teilfrage erfolgt im Lösungsfeld mit der Variablen Q gefolgt von der Teilfragenummer (zB. Q1 für die Teilfrage 1)&lt;br /&gt;
&lt;br /&gt;
====&amp;lt;span id=&amp;quot;sqToleranceInput&amp;quot;&amp;gt;Toleranz der Antwort einer Teilfrage====&lt;br /&gt;
Die Toleranz, wie genau ein Schüler seine Antwort angeben muss:&lt;br /&gt;
* Die Toleranz ist im Normalfall eine &#039;&#039;&#039;relative Angabe&#039;&#039;&#039; und wird in &#039;&#039;&#039;Prozent&#039;&#039;&#039; angegeben&lt;br /&gt;
* Wird bei der Toleranz kein Prozent angegeben, so muss der Wert zwischen 0 und 1 liegen und entspricht dann dem Prozentwert durch 100&lt;br /&gt;
* Wird bei der Toleranz vor oder nach dem Wert ohne Prozentzeichen ein &#039;&#039;&#039;a&#039;&#039;&#039; angegeben, so wird dieser Wert als &#039;&#039;&#039;absolute Toleranz&#039;&#039;&#039; der Größe in SI-Einheiten interpretiert. ( z.B.: 0.1a bei einem eletrischen Strom in Ampere entspricht einer absoluten Toleranz von 0.1A ) Absolute Toleranzen sind vor allem bei Ergebnissen welche Null sind notwendig, da die Berechnung statt 0 meist eine sehr kleine Zahl berechnet, welche dann mit einer relativen Toleranz auch extrem genau eingegeben werden muss und 0 dadurch nicht im Toleranzbereich liegen kann!&lt;br /&gt;
&lt;br /&gt;
====&amp;lt;span id=&amp;quot;sqLoesungInput&amp;quot;&amp;gt;Lösung der Antwort einer Teilfrage====&lt;br /&gt;
In der Lösungsformel steht die richtige Antwort der Frage, je nach Fragemode hat das Lösungsfeld verschiedene Funktionalität!&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Fragemode 	!! Bedeutung des Lösungsfeldes 	!! Inhalt&lt;br /&gt;
|-&lt;br /&gt;
| Single-Choice || Lösung wie sie am Browser ausgegeben wird 	|| Eingabe&lt;br /&gt;
|-&lt;br /&gt;
| Text 	        || Lösung wie sie der Schüler eingeben sollte 	|| Eingabe&lt;br /&gt;
|-&lt;br /&gt;
| Regexp 	|| Regulärer Ausdruck (in Java Syntax) welcher für die richtige Lösung treffen muss 	|| Eingabe&lt;br /&gt;
|-&lt;br /&gt;
| Multichoice 	|| Lösung wie sie am Browser ausgegeben wird. 	|| Eingabe&lt;br /&gt;
|-&lt;br /&gt;
| Calculated 	|| Berechnungsformel, mit der zur Testzeit die richtige Lösung berechnet wird, die mit der Schülereingaben verglichen wird. 	|| automatische Berechnung aus dem Maximafeld&lt;br /&gt;
|-&lt;br /&gt;
| Boolsch 	|| Berechnungsformel, die nach der Schülereingabe berechnet wird. Das Ergebnis der Formel muss boolsch sein. Wenn das Ergebnis true ist bekommt der Schüler die angegebenen Punkte. 	|| automatische Berechnung aus dem Maximafeld&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
====&amp;lt;span id=&amp;quot;sqErgInfoInput&amp;quot;&amp;gt;Infofeld der Antwort einer Teilfrage====&lt;br /&gt;
* Bei Berechnungsfragen die Antwort des ersten Datensatzes, das Feld ist dann schreibgeschützt&lt;br /&gt;
* Bei Boolschen Fragen kann hier eine Information erfolgen, wie die Frage bewertet wurde.&lt;br /&gt;
&lt;br /&gt;
==Berechnungsfrage==&lt;br /&gt;
:[[Datei:ClipCapIt-180901-122143.PNG|400px]]&lt;br /&gt;
&lt;br /&gt;
Die Berechnungsfrage ist ähnlich aufgebaut wie eine Mehrfachberechnungsfrage mit nur einer Berechnung. Diese Frage kann aber mehrere unterschiedliche Lösungen bereitstellen, um zB. typische Berechnungsfehler mit Punkteabzügen zu beurteilen. Es können also zusätzliche Reiter mit mehreren Antwortmöglichkeiten über das Kontextmenü erzeugt bzw. wieder gelöscht werden.&lt;br /&gt;
&lt;br /&gt;
:[[Datei:ClipCapIt-180901-212431.PNG|thumb|450px|Übersicht Erstellung einer Berechnungsfrage]]&lt;br /&gt;
&lt;br /&gt;
:[[Datei:ClipCapIt-180901-132831.PNG|400px]]&lt;br /&gt;
&lt;br /&gt;
* Berechnende Fragen sind wie Mehrfachberechnungsfragen mit nur einer Teilfrage bei dem das Antwortfeld automatisch erscheint.&lt;br /&gt;
* Jeder Schüler bekommt eine eigene Angabe&lt;br /&gt;
* Für den Druck kann die Frage auch für Projektangaben verwendet werden.&lt;br /&gt;
* Berechnungen erfolgen mit Maxima&lt;br /&gt;
* Alle verwendeten Variablen müssen im Angabtext in geschwungene Klammern gesetzt werden. Im Maximafeld und im Lösungsfeld ist die Klammer nicht notwendig.&lt;br /&gt;
* Für jede Variable wird ein Dataset mit möglichen Werten angelegt. Diese Datasets können über einen Formatierungsstring definiert werden und danach auch direkt in einer Liste bearbeitet werden.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Wenn mehrer Antwortmöglichkeiten definiert wurden, wird links ein zusätzliches Eingabefeld &#039;&#039;&#039;Antwort Maxima:&#039;&#039;&#039; angezeigt. Damit können Sie unterschiedliche Ergebnisse der Maxima-Berechnungen den unterschiedlichen Antworten zuordnen.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Feld !!  Beschreibung&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;Antwort Maxima  ||    [[#Lösung_der_Antwort_einer_Teilfrage|Verhalten wie bei der Mehrfachberechnungsfrage]], siehe [[Berechnungen]] &lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;Einheit:&#039;&#039;&#039;   || [[ZielEinheit|Defiition der Einheit oder sonstiges Frageerhalten]]&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;Prozent:&#039;&#039;&#039;   || [[#Prozent_für_die_Antwort_einer_Teilfrage|Prozentangaben für unterschiedliche Lösungen]]&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;Toleranz:&#039;&#039;&#039;  ||  [[#Toleranz_der_Antwort_einer_Teilfrage|Toleranz für den Ergebniswert wie bei Mehrfachberechnungsfrage]]&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;Mode:&#039;&#039;&#039;      ||  [[#Antwortmode|Berechungs-Modus]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Die Zeile &#039;Lösung für 1. Datenstatz&#039; zeigt das Ergebnis an, wenn der Werte des 1. Datensatzes in die Lösungsformel eingesetzt werden. Diese Zeile dient der Kontrolle, ob die Lösung mit Zahlenwerten auch Sinn macht und ob die Einheiten zusammenpassen.&lt;br /&gt;
&lt;br /&gt;
Das Eingabefeld &#039;&#039;&#039;Lösung&#039;&#039;&#039; ist schreibgeschützt und kann nur durch die [[Berechnungen#Berechnung mit Maxima|Maxima-Berechnung]] oder den [[Berechnungen#Berechnung_mit_dem_internen_Parser|internen Parser]] bestimmt werden.&lt;br /&gt;
&lt;br /&gt;
==Lückentextfrage==&lt;br /&gt;
Ein Lückentext enthält Lücken innerhalb eines Fragetextes, die durch den Schüler mit dem korrekten Inhalt gefüllt werden sollen.&lt;br /&gt;
&lt;br /&gt;
Folgende Modi sind dabei für die Lücken möglich:&lt;br /&gt;
* Texteingabe: Der Schüler muss das fehlende Wort je nach Fragemodus in die Lücke über die Tastatur eingeben oder per Drag&amp;amp;Drop auf die Lücke ziehen&lt;br /&gt;
* Multiple-Choice: Der Schüler kann aus mehreren Antwortmöglichkeiten eine oder mehrere richtige Elemente selektieren&lt;br /&gt;
* Single-Choice: Der Schüler kann mit einem Drop-Down-Auswahlfeld aus mehreren Antwortmöglichkeiten genau ein richtiges Element selektieren&lt;br /&gt;
&lt;br /&gt;
Da es bei Lückentextfragen um Texte geht, gibt es hier keine Datensätze oder Maxima-Berechnungen.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Fragemodus:&#039;&#039;&#039;&lt;br /&gt;
:[[Datei:ClipCapIt-180901-155006.PNG|200px]]&lt;br /&gt;
&lt;br /&gt;
Der Fragemodus gibt an wie Texteingabe-Lücken verarbeitet werden&lt;br /&gt;
&lt;br /&gt;
* Normal: Der Schüler muss den Text über die Tastatur in die Lücke eintragen.&lt;br /&gt;
* Drag-and-Drop: Der Schüler muss aus einer Liste von möglichen Antworten die richtigen Antworten auf die Lücken ziehen.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Funktionstasten:&#039;&#039;&#039;&lt;br /&gt;
F8: aktuelles Wort, bei dem der Cursor steht, als Textlücke definieren (Vorsicht: Wort nicht markieren!), siche auch  [[Editor_für_den_Angabetext#Schnelleingabe_.2F_Tastatur-Shortcuts|alle Funktionstasten]]&lt;br /&gt;
&lt;br /&gt;
====Erstellung der Frage:====&lt;br /&gt;
&lt;br /&gt;
Im [[Editor für den Angabetext|Textbereich des Editors]] werden die Lücken durch Antwortformulierungen in eckigen Klammern realisiert. Mit &#039;&#039;&#039;F8&#039;&#039;&#039; kann das aktuelle Wort, bei dem der Cursor steht, als Textlücke definiert werden.&lt;br /&gt;
&lt;br /&gt;
:[[Datei:ClipCapIt-180901-161337.PNG|thumb|450px|Beispiel einer Eingabe]]&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;Texteingabe:&#039;&#039;&#039;&lt;br /&gt;
** Im Fragemodus &amp;quot;Normal&amp;quot; muss der Schüler den Text in der Lücke eingeben&lt;br /&gt;
** Im Fragemodus &amp;quot;Drag and Drop&amp;quot; muss der Schüler aus einer Liste von Antworttexten den richtigen Text über die Lücke ziehen. Hierbei wird die Liste der Antworttexte aus allen richtigen und falschen Antworten der Texteingabe-Felder zusammengesetzt.&lt;br /&gt;
** Syntax:&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;margin-left:50px&amp;quot;&lt;br /&gt;
| [text]     || 	Das Wort &amp;quot;text&amp;quot; als Lücke mit 1 Punkt für die richtige Antwort&lt;br /&gt;
|-&lt;br /&gt;
| [2&amp;lt;nowiki&amp;gt;|&amp;lt;/nowiki&amp;gt;text]     || 	Das Wort &amp;quot;text&amp;quot; mit 2 Punkten für die richtige Antwort&lt;br /&gt;
|-&lt;br /&gt;
| [1&amp;lt;nowiki&amp;gt;|&amp;lt;/nowiki&amp;gt;text,50:alt,0:nix]   ||	2 Punkte für die richtige Antwort &amp;quot;text&amp;quot;, 50%von zwei Punkten für &amp;quot;alt&amp;quot;, &amp;quot;nix&amp;quot; als falsche Antwort für &amp;quot;Drag and Drop&amp;quot;-Fragen&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;Multiple-Choice:&#039;&#039;&#039;&lt;br /&gt;
**      unabhängig vom Fragemodus&lt;br /&gt;
**      mindestens eine Antwort muss richtig sein&lt;br /&gt;
**      Syntax:&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;margin-left:50px&amp;quot;&lt;br /&gt;
| [M&amp;lt;nowiki&amp;gt;|&amp;lt;/nowiki&amp;gt;x:richtig,falsch1,falsch2]  ||	Die richtigen Antwortfelder sind mit x: markiert&lt;br /&gt;
|-&lt;br /&gt;
| [M&amp;lt;nowiki&amp;gt;|&amp;lt;/nowiki&amp;gt;x:rot,x:grün,blau,gelb] 	 ||     rot und grün sind richtig&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;Single-Choice:&#039;&#039;&#039;&lt;br /&gt;
**      unabhängig vom Fragemodus&lt;br /&gt;
**      der Schüler muss eine Antwort aus mehreren wählen&lt;br /&gt;
**      Syntax:&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;margin-left:50px&amp;quot;&lt;br /&gt;
| [S&amp;lt;nowiki&amp;gt;|&amp;lt;/nowiki&amp;gt;x:richtig,falsch,falsch] 	||  x kennzeichnet eine richtige Antwort&lt;br /&gt;
|-&lt;br /&gt;
| [S&amp;lt;nowiki&amp;gt;|&amp;lt;/nowiki&amp;gt;x:rot,x:grün,50:blau,gelb] ||  bei rot und grün alle Punkte, bei blau 50 Prozent der Punkt, bei gelb 0 Punkte&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;Sonderzeichen&#039;&#039;&#039; innerhalb einer Lücke &lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;margin-left:50px&amp;quot;&lt;br /&gt;
| Bezeichnung || Zeichen || Ersatzzeichen &lt;br /&gt;
|-&lt;br /&gt;
| Komma(Beistrich) || ,  || ,, &lt;br /&gt;
|-&lt;br /&gt;
| Komma(Beistrich) || ,  || \, &lt;br /&gt;
|-&lt;br /&gt;
| eckige Klammer auf || [ || \[ &lt;br /&gt;
|-&lt;br /&gt;
| eckige Klammer zu || ] || \]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;Sonderzeichen&#039;&#039;&#039; im Fragetext, welche nicht in einer Lücke sind:&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;margin-left:50px&amp;quot;&lt;br /&gt;
| Bezeichnung || Zeichen || Ersatzzeichen &lt;br /&gt;
|-&lt;br /&gt;
| eckige Klammer auf || [ || \[ &lt;br /&gt;
|-&lt;br /&gt;
| eckige Klammer zu || ] || \]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
====Schülereingabe der Frage:====&lt;br /&gt;
Die oben in der Abbildung definierte Lückentextfrage führt zu der links abgebildeten Aufgabenstellung während eines [[Online-Tests]].&lt;br /&gt;
:[[Datei:ClipCapIt-180901-185126.PNG|350px]]&lt;br /&gt;
&lt;br /&gt;
==Multiple-Choice-Frage==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* Der Schüler kann eine oder mehrere vorgegebene Antworten als richtig ankreuzen.&lt;br /&gt;
* Die Antworten werden bei jedem Schüler in einer anderen Reihenfolge vorgeschlagen.&lt;br /&gt;
* Es gibt zwei mögliche Eingabeansichten&lt;br /&gt;
**        automatische Prozentvergabe: Alle richtigen Antworten bekommen einen Haken. Der Computer teilt dann die Prozentwerte gleichmäßig auf alle richtigen Antworten auf.&lt;br /&gt;
**        explizite Definition der Prozentwerte: Neben jeder Antwort kann ein Prozentwert angegeben werden, welcher zugewiesen wird wenn die Antwort angekreuzt ist. Die Summe der Prozentwerte aller richtigen Antworten muss dabei 100 ergeben!&lt;br /&gt;
&lt;br /&gt;
====Beispiele für eine Multiple-Choice-Frage in unterschiedlichen Ansichten====&lt;br /&gt;
&#039;&#039;&#039;CheckboxFeedback: &#039;&#039;&#039;&lt;br /&gt;
Eingabe der Antworten der Multiple-Choice-Frage durch Checkboxen: Die richtigen Antworten bekommen links davon in der Checkbox ein Häckchen. Neben den Antworten können Sie ein Feedback angeben, warum Antworten falsch oder richtig sind.&lt;br /&gt;
:[[Datei:ClipCapIt-180901-214517.PNG|400px]]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Checkbox: &#039;&#039;&#039;&lt;br /&gt;
Eingabe der Antworten der Multiple-Choice-Frage durch Checkboxen: Die richtigen Antworten bekommen ein Häckchen. Feedback-Eingaben sind nicht möglich.&lt;br /&gt;
:[[Datei:ClipCapIt-180901-214538.PNG|400px]]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;ProzentFeedback: &#039;&#039;&#039;&lt;br /&gt;
Die Antworten werden mit Prozentwerten versehen. Die Summe über alle positiven Prozent-Werte muss genau 100 Prozent ergeben! &lt;br /&gt;
Bei falschen Antworten können Sie Werte von -100 eingeben, dann wird bei einer falschen Antwort die ganze Frage als falsch beurteilt.&lt;br /&gt;
Wird dieser negative Prozentwert geringer als -100 gewählt, dann kann die Frage noch teilweise richtig beurteilt werden.&lt;br /&gt;
Neben den Antworten können Sie ein Feedback angeben, warum Antworten falsch oder richtig sind.&lt;br /&gt;
:[[Datei:ClipCapIt-180901-214557.PNG|400px]]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Prozent: &#039;&#039;&#039;&lt;br /&gt;
Die Antworten werden mit Prozentwerten versehen. Die Summe über alle positiven Prozent-Werte muss genau 100 Prozent ergeben! &lt;br /&gt;
Bei falschen Antworten können Sie Werte von -100 eingeben, dann wird bei einer falschen Antwort die ganze Frage als falsch beurteilt.&lt;br /&gt;
Wird dieser negative Prozentwert geringer als -100 gewählt, dann kann die Frage noch teilweise richtig beurteilt werden.&lt;br /&gt;
:[[Datei:ClipCapIt-180901-214616.PNG|400px]]&lt;br /&gt;
&lt;br /&gt;
Das Maxima-Feld kann auch für Multiple-Choice-Fragen für Berechnungen und für die Definition von Formeln verwendet werden. In den Antworten für die Multiple-Choice-Frage können Sie sich über {= ...} auf die Ergebnisse beziehen.&lt;br /&gt;
:[[Datei:ClipCapIt-180901-215517.PNG|400px]]&lt;br /&gt;
Die obige Frage wurde mit dieser Berechnung durchgeführt.&lt;br /&gt;
&lt;br /&gt;
==Zuordnungsfrage==&lt;br /&gt;
&lt;br /&gt;
Die Antwort auf jede der Unterfragen muss aus einer Liste von Möglichkeiten ausgewählt werden.&lt;br /&gt;
Im Prinzip hat der Schüler 2 Listen mit Antworten und Fragen, die er richtig zuordnen muss.&lt;br /&gt;
&lt;br /&gt;
[[Datei:ClipCapIt-180618-225643.PNG|500px]]&lt;br /&gt;
&lt;br /&gt;
Mit der Auswahlliste für das Anzeigeverhalten kann gesteuert werden, ob und wie die Zuordnungen bei einem Test gemischt werden.&lt;br /&gt;
&#039;&#039;Nur links mischen&#039;&#039; bedeutet, dass die Antwortmöglichkeiten auf der linken Seite der Zuordnungsfrage bei jedem Öffnen der Frage anders dargestellt werden.&lt;br /&gt;
&lt;br /&gt;
Folgende Einstellungen sind möglich:&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|Nicht mischen      ||  Die Reihenfolge wird so, wie sie in der Frage definiert ist, gewählt&lt;br /&gt;
|+&lt;br /&gt;
|Mischen            ||  Auf der linken und auf der rechten Seite werden die Antwortmöglichkeiten zufällig angeordnet&lt;br /&gt;
|+&lt;br /&gt;
|Nur links mischen  ||  Nur auf der linken Seite werden die Antwortmöglichkeiten zufällig angeordnet&lt;br /&gt;
|+&lt;br /&gt;
|Nur rechts mischen  || Nur auf der rechten Seite werden die Antwortmöglichkeiten zufällig angeordnet&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Pro Zeile werden die zusammengehörenden Begriffe in die Tabelle eingetragen.&lt;br /&gt;
Um Zuordnungsfragen zu erschweren, können auf der rechten Seite auch falsche Begrife angeführt werden, die nicht eine Entsprechung auf der linken Seite haben.&lt;br /&gt;
&lt;br /&gt;
Weiters können auf der linken Seite auch mehrere gleichnamige Begriffe verwendet werden, um Zuordnungen zu Themengruppen zu ermöglichen.&lt;br /&gt;
&lt;br /&gt;
==Freitextfrage==&lt;br /&gt;
Der Schüler erhält zur Fragebeantwortung ein Textfeld, in dem die Antwort eingetragen werden kann. Diese Fragen müssen aber manuell korrigiert werden!&lt;br /&gt;
Bei der Frageerstellung kann nur das Feedbackfeld ausgefüllt werden. Dieses kann eine mögliche Lösung der Aufgabenstellung enthalten und wird dem Schüler nach der Testausführung (Test wurde bereits beendet) angezeigt.&lt;br /&gt;
&lt;br /&gt;
* Eine Freitextfrage hat keine automatische Korrekturmöglichkeit!&lt;br /&gt;
* Verwendung für:&lt;br /&gt;
**        Fragen, die online über die Tastatur beantwortet werden und vom Lehrer über den Letto-Server händisch beurteilt werden.&lt;br /&gt;
**        Fragen, die nur als Angabe für Projekte, Laborübungen usw. dienen.&lt;br /&gt;
**        Fragen, die auf Papier beantwortet werden.&lt;br /&gt;
* Das Ergebnis kann im Feedback-Feld angegeben werden&lt;br /&gt;
**        und beim Online-Test dem Schüler als Feedback nach dem Test bekanntgegeben werden.&lt;br /&gt;
**        Bei Beispielsammlungen kann der Schüler das Feedbackfeld nie einsehen!&lt;br /&gt;
**        Bei Hausübungen kann der Schüler das Feedbackfeld erst nach Ablauf der Abgabefrist einsehen!&lt;br /&gt;
* Sowohl Feedbackfeld als auch das Fragefeld kann Bilder, Tabellen, externe Dateien und Sourcode-Listings enthalten.&lt;/div&gt;</summary>
		<author><name>Ckral</name></author>
	</entry>
	<entry>
		<id>https://wiki.letto.at/wiki/index.php?title=Beispielsammlung_Editieren&amp;diff=2346</id>
		<title>Beispielsammlung Editieren</title>
		<link rel="alternate" type="text/html" href="https://wiki.letto.at/wiki/index.php?title=Beispielsammlung_Editieren&amp;diff=2346"/>
		<updated>2020-05-16T09:49:55Z</updated>

		<summary type="html">&lt;p&gt;Ckral: Doppelpunkt (:) aus Überschrift entfernt&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;In der Edit-Ansicht können Beispiele verändert, geprüft und neu erstellt werden. &lt;br /&gt;
&lt;br /&gt;
Zurück zu [[Letto-Hauptansicht|LeTTo]], [[Beispielsammlung]]&lt;br /&gt;
[[Datei:FrageEditor.jpg|thumb|700px|Ansicht von &#039;Beispielsammlung Editieren&#039;]]&lt;br /&gt;
&lt;br /&gt;
=Übersicht=&lt;br /&gt;
Im Modus &#039;&#039;&#039;Beispielsammlung editieren&#039;&#039;&#039; ist oben eine [[Toolbar|Symbolleiste]] zur Steuerung der Anwendung angeordnet. Nähere Beschreibung der jeweiligen Buttons finden Sie unter [[Toolbar]].&lt;br /&gt;
&lt;br /&gt;
Im Bereich der Themen (siehe obige Abbildung) finden Sie eine [[Ordnerverwaltung|Ordnerstruktur]] ähnlich einem Dateimanager zur Sortierung und Speicherung der Fragen. Weiters finden Sie in diesem Bereich unten die Definition von [[Online-Tests]]. &lt;br /&gt;
&lt;br /&gt;
Die [[Fragenliste]] enthält alle Fragen eines Ordners sowie Möglichkeiten zum Hinzufügen, Ändern und Klonen ... von Fragen. &lt;br /&gt;
&lt;br /&gt;
Darunter finden sie die [[Bildvorschau]], die immer das zuletzt im [[Editor für den Angabetext|Editor]] angewählte Bild (Image, IMG) anzeigt.&lt;br /&gt;
&lt;br /&gt;
Der rechte Bereich des Editiermodus enthält alle Infos zur aktuell ausgewählten und gerade bearbeiteten Frage. Der obere Teil der Eingabemaske für Fragen ist für alle [[Fragetypen]] gleich.&lt;br /&gt;
&lt;br /&gt;
=Name der Frage=&lt;br /&gt;
:[[Datei:ClipCapIt-180618-180519.PNG|400px|thumb|Eingabefeld für den Fragenamen]]&lt;br /&gt;
Der Fragename bezeichnet die Frage und sollte Information über den Frageninhalt bringen. Alle Fragen einer [[Ordnerverwaltung|Kategorie oder Ordners]] werden mit ihrem Fragennamen in der [[Fragenliste]] angezeigt. Der Name sollte sprechend aber nicht zu lange sein, damit die Übersicht in der Fragenliste erhalten bleibt.&lt;br /&gt;
&lt;br /&gt;
Oberhalb des Fragennamens finden Sie noch den Fragetyp, den diese Frage hat.&lt;br /&gt;
&lt;br /&gt;
=Dokumente zu dieser Frage hochladen=&lt;br /&gt;
:[[Datei:ClipCapIt-181021-141443.PNG|500px]]&lt;br /&gt;
Ist die Checkbox &#039;&#039;&#039;Doks:&#039;&#039;&#039; ausgewählt, dann kann der Schüler bei der Beantwortung der Fragen auch Dokumente zur Testfrage auf den Server hochladen. &lt;br /&gt;
&lt;br /&gt;
Die folgende Abbildung zeigt die Buttons zum Testen der Lösung und den zusätzlichen Button &#039;&#039;&#039;Datei zur Frage hochladen&#039;&#039;&#039;, der dann eingeblendet wird, wenn bei der Fragedefinition die Option &#039;&#039;&#039;Doks:&#039;&#039;&#039; ausgewählt wurde.&lt;br /&gt;
:[[Datei:ClipCapIt-181021-142155.PNG|350px]]&lt;br /&gt;
Solange der Testversuch aktiv ist, können die Dokumnete vom Schüler wieder über den &#039;&#039;&#039;X&#039;&#039;&#039;-Button gelöscht werden oder weitere Dokumnete zu dieser Testfrage hochgeladen werden.&lt;br /&gt;
&lt;br /&gt;
Nach Beendigung des Testversuchs können die Dokumente nicht mehr geändert, sondern nur mehr heruntergeladen und angesehen werden.&lt;br /&gt;
&lt;br /&gt;
=Gefundene Werte=&lt;br /&gt;
Hier sind alle Konstante, die im Angabetext gefunden wurden, aufgelistet. Dieses Feld wird nach dem Verlassen des Editors für den Angabetext automatisch aktualisiert: Enthält der Fragetext Konstante in geschwungenen Klammern, die keine Datensätze sind, so werden diese Variablen automatisch aus dem Text extrahiert und angezeigt. Diese Werte können dann für die Berechnung der Lösung herangezogen werden.&lt;br /&gt;
&lt;br /&gt;
=Frage-Textfeld=&lt;br /&gt;
Siehe [[Editor für den Angabetext]].&lt;br /&gt;
&lt;br /&gt;
=Plugin-Info=&lt;br /&gt;
Im Bereich Plugin-Info finden Sie einen Button &#039;&#039;&#039;Plugins&#039;&#039;&#039; zur Definition der Plugins der Frage. Dadurch wird der [[Definition von Plugins|Dialog zur Plugindefinition]] geöffnet.&lt;br /&gt;
&lt;br /&gt;
Die Plugindefinition bildet immer einen Text-String. Dieser wird nach dem Schliessen des Dialogs im nebenstehenden Feld angezeigt und kann theoretisch auch verändert werden. Diese Option sollten aber nur erfahrene Benutzer verwenden, die sich mit der Syntax der Plugin-Definition auskennen.&lt;br /&gt;
&lt;br /&gt;
Der Scroller [[Datei:ClipCapIt-180831-204926.PNG|40px]] neben dem Eingabefeld dient zum Durchlaufen von allen definierten [[Datensätze|Datensätzen]] und zeigt die Änderungen der Grafiken an, wenn der Cursor auf einem [[Editor für den Angabetext#Spezielle TAGs im Fragentext|Plugin-Grafik-Tag]] [PIG...] im [[Editor für den Angabetext]] steht.&lt;br /&gt;
&lt;br /&gt;
=Beurteilungsbereich=&lt;br /&gt;
====&amp;lt;span id=&amp;quot;qPunkte&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;Punkte:====&lt;br /&gt;
Punkte, die bei richtiger Beantwortung der Frage für die gesamte Frage maximal vergeben werden können. Bei Mehrfachberechnungsfragen ist dieses Feld gesperrt und die Punkteanzahl wird automatisch als Gesamtpunktezahl aus allen Teilfragen berechnet.&lt;br /&gt;
&lt;br /&gt;
====&amp;lt;span id=&amp;quot;qPenalty&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;Penalty:====&lt;br /&gt;
Abzug, der bei einer falschen Beantwortung im [[Online-Tests#Testart|Rechenübungs- oder Hausübungmodus]] pro Versuch abgezogen wird.&lt;br /&gt;
&lt;br /&gt;
====&amp;lt;span id=&amp;quot;qEinheitenFehler&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;Einheitenfehler:====&lt;br /&gt;
Im Feld &amp;quot;EH-Fehler&amp;quot; wird ein Faktor angeben, der von den Punkten der richtigen Lösung abgezogen wird, wenn die Einheit falsch angegeben wurde.&lt;br /&gt;
&lt;br /&gt;
Der Wert von EH-Fehler muss zwischen 0 und 1 liegen!&lt;br /&gt;
&lt;br /&gt;
Erreichtepunkte = Maximalpunkte* (1 - EHFehler)&lt;br /&gt;
&lt;br /&gt;
z.B:&lt;br /&gt;
Das Beispiel hat 4 Punkte, der EH-Faktor ist 0.1.&lt;br /&gt;
Gibt nun der Schüler statt 0.2A den Wert 0.2V an, so erhält er 4*(1-0.1) = 3.6 Punkte.&lt;br /&gt;
Gibt der Schüler einen falschen Einheitenvorsatz wie 0.2mA an, so erhält er keine Punkte, da der Wert falsch ist!&lt;br /&gt;
&lt;br /&gt;
Siehe auch [[Einheit|Einheiten]], [[Online-Tests#Einheiteneinstellungen|Einheiteneinstellungen]]!&lt;br /&gt;
&lt;br /&gt;
====&amp;lt;span id=&amp;quot;cbParser&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;Checkbox Parser:====&lt;br /&gt;
Ist diese Checkbox ausgewählt, dann wird beim Berechnen der Symbolischen Lösung für das Ergebnis der Frage ud allen Teilfragen nicht [[Berechnungen#Berechnung mit Maxima|Maxima]], sondern der [[Berechnungen#Berechnung mit dem internen Parser|Interne Parser verwendet]].&lt;br /&gt;
&lt;br /&gt;
Siehe auch [[Berechnungen]]!&lt;br /&gt;
&lt;br /&gt;
====&amp;lt;span id=&amp;quot;cbSymbolisch&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;Checkbox Symbolisch:====&lt;br /&gt;
Ist diese Checkbox ausgewählt, dann werden beim Berechnen der Lösung mathematische Konstanten nur dann eingesetzt, wenn sie mit einer Gleitkommazahl verrechnet werden. Weiters werden Berechnungen mit Ganzzahlen nur dann als Gleitkommazahl ausgerechnet, wenn sie mit einer Gleitkommazahl verrechnet werden.&lt;br /&gt;
&lt;br /&gt;
=Datensätze=&lt;br /&gt;
Siehe [[Datensätze definieren#Erstellung / Änderung über den Datensatz-Bereich|Datensätze definieren]]&lt;br /&gt;
&lt;br /&gt;
=Kompetenzen zuordnen=&lt;br /&gt;
Mit dem Button [[Datei:ClipCapIt-180901-220702.PNG|20px]] aus dem [[Toolbar]] kann man zwischen der Datensatz- und der Kompetenz-Ansicht umschalten.&lt;br /&gt;
&lt;br /&gt;
Siehe auch [[Kompetenzzuordnung]].&lt;br /&gt;
&lt;br /&gt;
=Maxima-Feld=&lt;br /&gt;
&lt;br /&gt;
Das Maximafeld wird für die Berechnung der Ergebnisformel verwendet. Für die Berechnung des Maxima-Feldes wird der Inhalt des Feldes mit einem Präprozessor vorbearbeitet und dann an Maxima gesendet, oder der Inhalt wird direkt mit dem internen Parser von Letto verarbeitet. Da einige Funktionen des internen Parsers von Maxima nicht unterstützt werden und umgekehrt der interne Parser nicht den vollen Funktionsumfang von Maxima unterstützt, ist je nach Aufgabenstellung die eine oder andere Variante zu verwenden.&lt;br /&gt;
&lt;br /&gt;
Siehe auch [[Berechnungen]]!&lt;br /&gt;
&lt;br /&gt;
====Maxima Berechnung:====&lt;br /&gt;
Siehe [[Berechnungen#Berechnung mit Maxima|Maxima-Berechnungen]]&lt;br /&gt;
&lt;br /&gt;
* Zahlenwerte mit Einheiten werden, bevor das Feld an Maxima geschickt wird, durch interne Variablen ersetzt, die bei der Berechnung des Ergebnisses dann wieder mit Einheiten eingesetzt werden. Die Maxima-Berechnung erfolgt dadurch wie in Maxima üblich ohne Einheiten.&lt;br /&gt;
* graphische Elemente von Maxima wie plot etc. können nicht verwendet werden&lt;br /&gt;
* Jeder Durchlauf des Maximafeldes beginnt mit einer neuen leeren Maxima-Umgebung in der die Datei letto.mac geladen wird. Die Datei moodle.mac kann in der globalen Einstellungen des Servers für alle Benutzer gemeinsam vom Administrator konfiguriert werden. Unter anderem wird hier der Operator || definiert, der für die Parallelschaltung von Widerständen und Impedanzen verwendet werden kann.&lt;br /&gt;
* Es können auch alle Funktionen des internen Parsers, die Maxima nicht kennt verwendet werden. Jedoch kann Maxima diese Funktionen weder vereinfachen noch berechnen, dies muss dann Online beim Berechnen des Lösungsfeldes durch Letto direkt erfolgen. Dementsprechend kann auch der Befehl &#039;&#039;&#039;solve&#039;&#039;&#039; von Maxima keine Funktionen auflösen, die nur vom internen Parser untersützt werden.&lt;br /&gt;
&lt;br /&gt;
====Interner Parser von Letto====&lt;br /&gt;
Siehe [[Berechnungen#Berechnung_mit_dem_internen_Parser|Interner Parser]]&lt;br /&gt;
&lt;br /&gt;
* unterstützt Einheiten&lt;br /&gt;
* unterstützt Dualzahlen und Hexadezimalzahlen&lt;br /&gt;
* unterstützt einige Funktionen, die für technische Berechnungen vorteilhaft verwendet werden können. Die Liste der möglichen Funktionen ist in der Hilfe direkt nachzulesen.&lt;br /&gt;
* Der interne Parser von Letto wird immer für die Berechnung des Lösungsfeldes einer Berechnungs- oder Mehrfachberechnungsfrage verwendet.&lt;br /&gt;
&lt;br /&gt;
====Einheiten====&lt;br /&gt;
Zahlenwerte mit Einheit können auf mehrere Arten im Maximafeld verwendet werden:&lt;br /&gt;
* Als Datensatz mit Einheit durch Verwendung des Datensatzbezeichners: Dies ist die einfachste Variante, bei der gleichzeitig auch für jeden Schüler ein anderer Zahlenwert definiert werden kann&lt;br /&gt;
* Als Direkteingabe im Maxima-Feld mit Zahlenwert, gefolgt von der Einheit in einfachen Hochkomma ( x:13&#039;A/m&#039; oder y:x*56&#039;VA-1&#039; )&lt;br /&gt;
* Wenn die Einheit keine Rechenoperatoren enthält kann die Einheit direkt am Zahlenwert angehängt werden: zB.: U:23V oder I:U/2Ohm&lt;br /&gt;
&lt;br /&gt;
Der Präprozessor, der das Maximafeld vor der Berechnung durchläuft hat folgende Aufgaben:&lt;br /&gt;
&lt;br /&gt;
* Bei Maxima-Berechnungsmodi werden alle Zahlenwerte welche eine Einheit haben durch Variable ersetzt welche bei der späteren Berechnung wieder eingesetzt werden können&lt;br /&gt;
* jede Zeile wird automatisch abgeschlossen, man benötigt daher kein ; oder $ am Zeilenende und es sind dadurch keine mehrzeiligen Befehle möglich&lt;br /&gt;
* Bezeichner dürfen nur die Zeichen a-zA-Z0-9 enthalten (zB. der Unterstrich ist verboten)&lt;br /&gt;
* Bemerkungen werden wie in C oder Java übliche am Zeilenanfang mit einem doppelten Schrägstrich eingefügt&lt;br /&gt;
&lt;br /&gt;
====Wichtige Funktionen====&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Funktion !!  Beschreibung 	!! Beispiel 	!! Ergebnis&lt;br /&gt;
|-&lt;br /&gt;
| floor(x) ||  Kommazahl auf die nächste Ganzzahl abrunden 	|| ||&lt;br /&gt;
|-&lt;br /&gt;
| round(x) ||  Kommazahl auf Ganzzahl runden 	|| ||&lt;br /&gt;
|-&lt;br /&gt;
| pi() 	   ||  die Zahl Pi 	|| ||&lt;br /&gt;
|-&lt;br /&gt;
| exp(1)   ||  die eulersche Zahl e || ||&lt;br /&gt;
|-&lt;br /&gt;
| exp(x)   ||  Exponentialfunktion e hoch x 	|| ||&lt;br /&gt;
|-&lt;br /&gt;
| abs(x)   ||  Absolutbetrag  ||  abs(-2) 	||  2&lt;br /&gt;
|-&lt;br /&gt;
| acos(x), acosh(x), asin(x), &lt;br /&gt;
&lt;br /&gt;
asinh(x), atan2(y,x), atan(x), &lt;br /&gt;
&lt;br /&gt;
atanh(x), cos(x), cosh(x), &lt;br /&gt;
&lt;br /&gt;
sin(x), sinh(x), tan(x), tanh(x)  &lt;br /&gt;
||	Winkelfunktionen 	|| ||&lt;br /&gt;
|-&lt;br /&gt;
| deg2rad(x) ||	Grad in Radianten umwandeln 	|| ||&lt;br /&gt;
|-&lt;br /&gt;
| rad2deg(x) ||	Radianten in Grad umwandeln 	|| ||&lt;br /&gt;
|-&lt;br /&gt;
| max(x,y,z) ||	Liefert das Maximum der angegebenen Parameter 	|| max(2,5,3)  ||	5&lt;br /&gt;
|-&lt;br /&gt;
| min(x,y,z) ||	Liefert das Minimum der angegebenen Parameter 	|| min(3,2,6,34) ||	2&lt;br /&gt;
|-&lt;br /&gt;
| log10(x)   ||	10er Logarithmus 	||  log10(100)  || 	2&lt;br /&gt;
|-&lt;br /&gt;
| log(x)     ||	natürlicher Logarithmus 	|| ||&lt;br /&gt;
|-&lt;br /&gt;
| pow(x,y)   ||	berechnet die Potenz x hoch y  ||	pow(2,3) 	|| 8&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
====Tipps für Maxima-Newcomer====&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Befehl 	!!  Beschreibung&lt;br /&gt;
|-&lt;br /&gt;
| a:5  || 	Der Variablen a den Wert5 zuweisen&lt;br /&gt;
|-&lt;br /&gt;
| g1:x+y=5&lt;br /&gt;
&lt;br /&gt;
g2:x-y=3&lt;br /&gt;
&lt;br /&gt;
L:solve([g1,g2],[x,y])&lt;br /&gt;
&lt;br /&gt;
x:ev(x,L)&lt;br /&gt;
&lt;br /&gt;
y:ev(y,L)&lt;br /&gt;
|| 	Gleichungssystem lösen mit den Gleichungen g1 und g2&lt;br /&gt;
&lt;br /&gt;
solve löst das Gleichungssystem und liefert den Ergebnisvektor L&lt;br /&gt;
&lt;br /&gt;
ev berechnet aus dem Lösungsvektor die Variablen&lt;br /&gt;
|-&lt;br /&gt;
| c:4+5*%i   ||	komplexe Zahl&lt;br /&gt;
|-&lt;br /&gt;
| e:ratsimp(c*(2+3*%i)) 	|| komplexes Ergebnis auswerten&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=Eingabemasken für die unterschiedlichen Fragetypen=&lt;br /&gt;
&lt;br /&gt;
==Mehrfachberechnungsfrage==&lt;br /&gt;
&lt;br /&gt;
* Fragen dieses Typs sind sehr flexibel.&lt;br /&gt;
* Die Frage kann mehrere Teilantworten beinhalten. Jede Teilfrage wird im Fragetext durch einen [Qx]-Tag (x..Fragenummer) positioniert. Bei der Schülereingabe wird der Tag durch ein Eingabefeld für die Ergebniseingabe ersetzt.&lt;br /&gt;
* Die Angabewerte sind wie bei Berechnungsfragen mittels [[Datensätze|Datensätzen]] definierbar und variieren von Schüler zu Schüler.&lt;br /&gt;
* Alle verwendeten [[Datensätze|Variablen]] müssen im Angabtext in geschwungene Klammern gesetzt werden. Im [[Berechnungen|Maximafeld]] und im Lösungsfeld ist die Klammer nicht notwendig.&lt;br /&gt;
* Für jede Variable wird ein Dataset mit möglichen Werten angelegt. Diese Datasets können über einen [[Datensätze_definieren#Definition_der_Werte|Formatierungsstring]] definiert werden und danach auch direkt in einer Liste bearbeitet werden.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
:[[Datei:ClipCapIt-180831-220929.PNG|600px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Übersicht über alle Spalten der Detail-Ansicht:&#039;&#039;&#039;&lt;br /&gt;
====Q....====&lt;br /&gt;
Spalte mit der Kurzbezeichnung für die Teilfrage. Unter diesem Namen wird im Editor für die Angabe die Teilfrage mit [Qx] referenziert. An dieser Position steht dann bei der Testausführung das Eingabeelement für diese Teilfrage.&lt;br /&gt;
&lt;br /&gt;
====&amp;lt;span id=&amp;quot;sqProzInput&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;Prozent für die Antwort einer Teilfrage====&lt;br /&gt;
&lt;br /&gt;
Wenn der Schüler die Antwort gibt, die in der Zeile dieser Teilantwort steht, bekommt er den prozentuellen Anteil der Gesamtpunkt der Teilfrage.&lt;br /&gt;
&lt;br /&gt;
Je nach Antwort-Modus muss sichergestellt sein, dass der Schüler durch die richtige Eingabe der Antwort 100 Prozent erreichen kann.&lt;br /&gt;
&lt;br /&gt;
====&amp;lt;span id=&amp;quot;sqGradeInput&amp;quot;&amp;gt;Punkte einer Teilfrage====&lt;br /&gt;
Punkteanzahl für die richtige Beantwortung einer Teilfrage.&lt;br /&gt;
&lt;br /&gt;
Die Gesamtpunktanzahl einer Mehrfachberechnungsfrage ergibt sich immer aus der Summe der Punkte der Teilfragen.&lt;br /&gt;
&lt;br /&gt;
====&amp;lt;span id=&amp;quot;sqMaximaInput&amp;quot;&amp;gt;Maximafeld für die Antwort einer Teilfrage====&lt;br /&gt;
Siehe auch [[Berechnungen]]!&lt;br /&gt;
&lt;br /&gt;
Dieses Feld wird nach dem Durchlaufen des globalen Maxima-Feldes der Frage mit Maxima aufgerufen und liefert als Lösung den Ausdruck, der im Lösungsfeld eingesetzt wird.&lt;br /&gt;
&lt;br /&gt;
Es wird nur im Antwort-MODE &amp;quot;calculated&amp;quot; und &amp;quot;boolsch&amp;quot; berechnet.&lt;br /&gt;
&lt;br /&gt;
====&amp;lt;span id=&amp;quot;sqEinheitInput&amp;quot;&amp;gt;Ziel-Einheit der Antwort einer Teilfrage:====&lt;br /&gt;
Siehe unter [[ZielEinheit]]!&lt;br /&gt;
&lt;br /&gt;
====&amp;lt;span id=&amp;quot;modeSel_focus&amp;quot;&amp;gt;Antwortmode====&lt;br /&gt;
Art der Antwort:&lt;br /&gt;
&lt;br /&gt;
* Single-Choice: Es gibt mehrere Lösungen, die dem Schüler vorgeschlagen werden. Der Schüler muss nun von diesen Lösungen genau eine Auswählen. Die Lösungen stehen als String im Lösungsfeld&lt;br /&gt;
* Text: Die Lösung welche im Lösungsfeld steht ist eine Zeichenkette die vom Schüler genau so eingegeben werden muss&lt;br /&gt;
* Regexp: Im Lösungsfeld wird ein regulärer Ausdruck angeben, mit dem überprüft wird, ob die Antwort des Schülers richtig ist.&lt;br /&gt;
* Multichoice: Es gibt mehrere Lösungen, die dem Schüler vorgeschlagen werden. Der Schüler muss nun von diesen Lösungen eine oder mehrere Auswählen. Die Lösungen stehen als String in Lösungsfeld.&lt;br /&gt;
* Calculated: Im Lösungsfeld steht ein symbolischer Ausdruck, der aus dem Maxima-Feld errechnet wurde. Zur Laufzeit wird daraus mit dem Parser die Lösung berechnet.&lt;br /&gt;
* Boolsch: Dieser Fragemode kann nur sinnvoll bei einer Mehrfachberechnungsfrage verwendet werden. In diesem Modus kann man die Schülereingaben anderer Teilfragen nach Eingabe durch den Parser auswerten lassen und damit Punkte vergeben. Es lassen sich somit Folgefehler von Schülern berücksichtigen und bei der Dimensionierung können Angabe-Bedingungen geprüft werden, die über die Lösung einer Teilfrage nicht eindeutig wären. Der Zugriff auf die Schülereingabe einer anderen Teilfrage erfolgt im Lösungsfeld mit der Variablen Q gefolgt von der Teilfragenummer (zB. Q1 für die Teilfrage 1)&lt;br /&gt;
&lt;br /&gt;
====&amp;lt;span id=&amp;quot;sqToleranceInput&amp;quot;&amp;gt;Toleranz der Antwort einer Teilfrage====&lt;br /&gt;
Die Toleranz, wie genau ein Schüler seine Antwort angeben muss:&lt;br /&gt;
* Die Toleranz ist im Normalfall eine &#039;&#039;&#039;relative Angabe&#039;&#039;&#039; und wird in &#039;&#039;&#039;Prozent&#039;&#039;&#039; angegeben&lt;br /&gt;
* Wird bei der Toleranz kein Prozent angegeben, so muss der Wert zwischen 0 und 1 liegen und entspricht dann dem Prozentwert durch 100&lt;br /&gt;
* Wird bei der Toleranz vor oder nach dem Wert ohne Prozentzeichen ein &#039;&#039;&#039;a&#039;&#039;&#039; angegeben, so wird dieser Wert als &#039;&#039;&#039;absolute Toleranz&#039;&#039;&#039; der Größe in SI-Einheiten interpretiert. ( z.B.: 0.1a bei einem eletrischen Strom in Ampere entspricht einer absoluten Toleranz von 0.1A ) Absolute Toleranzen sind vor allem bei Ergebnissen welche Null sind notwendig, da die Berechnung statt 0 meist eine sehr kleine Zahl berechnet, welche dann mit einer relativen Toleranz auch extrem genau eingegeben werden muss und 0 dadurch nicht im Toleranzbereich liegen kann!&lt;br /&gt;
&lt;br /&gt;
====&amp;lt;span id=&amp;quot;sqLoesungInput&amp;quot;&amp;gt;Lösung der Antwort einer Teilfrage====&lt;br /&gt;
In der Lösungsformel steht die richtige Antwort der Frage, je nach Fragemode hat das Lösungsfeld verschiedene Funktionalität!&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Fragemode 	!! Bedeutung des Lösungsfeldes 	!! Inhalt&lt;br /&gt;
|-&lt;br /&gt;
| Single-Choice || Lösung wie sie am Browser ausgegeben wird 	|| Eingabe&lt;br /&gt;
|-&lt;br /&gt;
| Text 	        || Lösung wie sie der Schüler eingeben sollte 	|| Eingabe&lt;br /&gt;
|-&lt;br /&gt;
| Regexp 	|| Regulärer Ausdruck (in Java Syntax) welcher für die richtige Lösung treffen muss 	|| Eingabe&lt;br /&gt;
|-&lt;br /&gt;
| Multichoice 	|| Lösung wie sie am Browser ausgegeben wird. 	|| Eingabe&lt;br /&gt;
|-&lt;br /&gt;
| Calculated 	|| Berechnungsformel, mit der zur Testzeit die richtige Lösung berechnet wird, die mit der Schülereingaben verglichen wird. 	|| automatische Berechnung aus dem Maximafeld&lt;br /&gt;
|-&lt;br /&gt;
| Boolsch 	|| Berechnungsformel, die nach der Schülereingabe berechnet wird. Das Ergebnis der Formel muss boolsch sein. Wenn das Ergebnis true ist bekommt der Schüler die angegebenen Punkte. 	|| automatische Berechnung aus dem Maximafeld&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
====&amp;lt;span id=&amp;quot;sqErgInfoInput&amp;quot;&amp;gt;Infofeld der Antwort einer Teilfrage====&lt;br /&gt;
* Bei Berechnungsfragen die Antwort des ersten Datensatzes, das Feld ist dann schreibgeschützt&lt;br /&gt;
* Bei Boolschen Fragen kann hier eine Information erfolgen, wie die Frage bewertet wurde.&lt;br /&gt;
&lt;br /&gt;
==Berechnungsfrage==&lt;br /&gt;
:[[Datei:ClipCapIt-180901-122143.PNG|400px]]&lt;br /&gt;
&lt;br /&gt;
Die Berechnungsfrage ist ähnlich aufgebaut wie eine Mehrfachberechnungsfrage mit nur einer Berechnung. Diese Frage kann aber mehrere unterschiedliche Lösungen bereitstellen, um zB. typische Berechnungsfehler mit Punkteabzügen zu beurteilen. Es können also zusätzliche Reiter mit mehreren Antwortmöglichkeiten über das Kontextmenü erzeugt bzw. wieder gelöscht werden.&lt;br /&gt;
&lt;br /&gt;
:[[Datei:ClipCapIt-180901-212431.PNG|thumb|450px|Übersicht Erstellung einer Berechnungsfrage]]&lt;br /&gt;
&lt;br /&gt;
:[[Datei:ClipCapIt-180901-132831.PNG|400px]]&lt;br /&gt;
&lt;br /&gt;
* Berechnende Fragen sind wie Mehrfachberechnungsfragen mit nur einer Teilfrage bei dem das Antwortfeld automatisch erscheint.&lt;br /&gt;
* Jeder Schüler bekommt eine eigene Angabe&lt;br /&gt;
* Für den Druck kann die Frage auch für Projektangaben verwendet werden.&lt;br /&gt;
* Berechnungen erfolgen mit Maxima&lt;br /&gt;
* Alle verwendeten Variablen müssen im Angabtext in geschwungene Klammern gesetzt werden. Im Maximafeld und im Lösungsfeld ist die Klammer nicht notwendig.&lt;br /&gt;
* Für jede Variable wird ein Dataset mit möglichen Werten angelegt. Diese Datasets können über einen Formatierungsstring definiert werden und danach auch direkt in einer Liste bearbeitet werden.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Wenn mehrer Antwortmöglichkeiten definiert wurden, wird links ein zusätzliches Eingabefeld &#039;&#039;&#039;Antwort Maxima:&#039;&#039;&#039; angezeigt. Damit können Sie unterschiedliche Ergebnisse der Maxima-Berechnungen den unterschiedlichen Antworten zuordnen.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Feld !!  Beschreibung&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;Antwort Maxima  ||    [[#Lösung_der_Antwort_einer_Teilfrage|Verhalten wie bei der Mehrfachberechnungsfrage]], siehe [[Berechnungen]] &lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;Einheit:&#039;&#039;&#039;   || [[ZielEinheit|Defiition der Einheit oder sonstiges Frageerhalten]]&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;Prozent:&#039;&#039;&#039;   || [[#Prozent_für_die_Antwort_einer_Teilfrage|Prozentangaben für unterschiedliche Lösungen]]&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;Toleranz:&#039;&#039;&#039;  ||  [[#Toleranz_der_Antwort_einer_Teilfrage|Toleranz für den Ergebniswert wie bei Mehrfachberechnungsfrage]]&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;Mode:&#039;&#039;&#039;      ||  [[#Antwortmode|Berechungs-Modus]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Die Zeile &#039;Lösung für 1. Datenstatz&#039; zeigt das Ergebnis an, wenn der Werte des 1. Datensatzes in die Lösungsformel eingesetzt werden. Diese Zeile dient der Kontrolle, ob die Lösung mit Zahlenwerten auch Sinn macht und ob die Einheiten zusammenpassen.&lt;br /&gt;
&lt;br /&gt;
Das Eingabefeld &#039;&#039;&#039;Lösung&#039;&#039;&#039; ist schreibgeschützt und kann nur durch die [[Berechnungen#Berechnung mit Maxima|Maxima-Berechnung]] oder den [[Berechnungen#Berechnung_mit_dem_internen_Parser|internen Parser]] bestimmt werden.&lt;br /&gt;
&lt;br /&gt;
==Lückentextfrage==&lt;br /&gt;
Ein Lückentext enthält Lücken innerhalb eines Fragetextes, die durch den Schüler mit dem korrekten Inhalt gefüllt werden sollen.&lt;br /&gt;
&lt;br /&gt;
Folgende Modi sind dabei für die Lücken möglich:&lt;br /&gt;
* Texteingabe: Der Schüler muss das fehlende Wort je nach Fragemodus in die Lücke über die Tastatur eingeben oder per Drag&amp;amp;Drop auf die Lücke ziehen&lt;br /&gt;
* Multiple-Choice: Der Schüler kann aus mehreren Antwortmöglichkeiten eine oder mehrere richtige Elemente selektieren&lt;br /&gt;
* Single-Choice: Der Schüler kann mit einem Drop-Down-Auswahlfeld aus mehreren Antwortmöglichkeiten genau ein richtiges Element selektieren&lt;br /&gt;
&lt;br /&gt;
Da es bei Lückentextfragen um Texte geht, gibt es hier keine Datensätze oder Maxima-Berechnungen.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Fragemodus:&#039;&#039;&#039;&lt;br /&gt;
:[[Datei:ClipCapIt-180901-155006.PNG|200px]]&lt;br /&gt;
&lt;br /&gt;
Der Fragemodus gibt an wie Texteingabe-Lücken verarbeitet werden&lt;br /&gt;
&lt;br /&gt;
* Normal: Der Schüler muss den Text über die Tastatur in die Lücke eintragen.&lt;br /&gt;
* Drag-and-Drop: Der Schüler muss aus einer Liste von möglichen Antworten die richtigen Antworten auf die Lücken ziehen.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Funktionstasten:&#039;&#039;&#039;&lt;br /&gt;
F8: aktuelles Wort, bei dem der Cursor steht, als Textlücke definieren (Vorsicht: Wort nicht markieren!), siche auch  [[Editor_für_den_Angabetext#Schnelleingabe_.2F_Tastatur-Shortcuts|alle Funktionstasten]]&lt;br /&gt;
&lt;br /&gt;
====Erstellung der Frage:====&lt;br /&gt;
&lt;br /&gt;
Im [[Editor für den Angabetext|Textbereich des Editors]] werden die Lücken durch Antwortformulierungen in eckigen Klammern realisiert. Mit &#039;&#039;&#039;F8&#039;&#039;&#039; kann das aktuelle Wort, bei dem der Cursor steht, als Textlücke definiert werden.&lt;br /&gt;
&lt;br /&gt;
:[[Datei:ClipCapIt-180901-161337.PNG|thumb|450px|Beispiel einer Eingabe]]&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;Texteingabe:&#039;&#039;&#039;&lt;br /&gt;
** Im Fragemodus &amp;quot;Normal&amp;quot; muss der Schüler den Text in der Lücke eingeben&lt;br /&gt;
** Im Fragemodus &amp;quot;Drag and Drop&amp;quot; muss der Schüler aus einer Liste von Antworttexten den richtigen Text über die Lücke ziehen. Hierbei wird die Liste der Antworttexte aus allen richtigen und falschen Antworten der Texteingabe-Felder zusammengesetzt.&lt;br /&gt;
** Syntax:&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;margin-left:50px&amp;quot;&lt;br /&gt;
| [text]     || 	Das Wort &amp;quot;text&amp;quot; als Lücke mit 1 Punkt für die richtige Antwort&lt;br /&gt;
|-&lt;br /&gt;
| [2&amp;lt;nowiki&amp;gt;|&amp;lt;/nowiki&amp;gt;text]     || 	Das Wort &amp;quot;text&amp;quot; mit 2 Punkten für die richtige Antwort&lt;br /&gt;
|-&lt;br /&gt;
| [1&amp;lt;nowiki&amp;gt;|&amp;lt;/nowiki&amp;gt;text,50:alt,0:nix]   ||	2 Punkte für die richtige Antwort &amp;quot;text&amp;quot;, 50%von zwei Punkten für &amp;quot;alt&amp;quot;, &amp;quot;nix&amp;quot; als falsche Antwort für &amp;quot;Drag and Drop&amp;quot;-Fragen&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;Multiple-Choice:&#039;&#039;&#039;&lt;br /&gt;
**      unabhängig vom Fragemodus&lt;br /&gt;
**      mindestens eine Antwort muss richtig sein&lt;br /&gt;
**      Syntax:&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;margin-left:50px&amp;quot;&lt;br /&gt;
| [M&amp;lt;nowiki&amp;gt;|&amp;lt;/nowiki&amp;gt;x:richtig,falsch1,falsch2]  ||	Die richtigen Antwortfelder sind mit x: markiert&lt;br /&gt;
|-&lt;br /&gt;
| [M&amp;lt;nowiki&amp;gt;|&amp;lt;/nowiki&amp;gt;x:rot,x:grün,blau,gelb] 	 ||     rot und grün sind richtig&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;Single-Choice:&#039;&#039;&#039;&lt;br /&gt;
**      unabhängig vom Fragemodus&lt;br /&gt;
**      der Schüler muss eine Antwort aus mehreren wählen&lt;br /&gt;
**      Syntax:&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;margin-left:50px&amp;quot;&lt;br /&gt;
| [S&amp;lt;nowiki&amp;gt;|&amp;lt;/nowiki&amp;gt;x:richtig,falsch,falsch] 	||  x kennzeichnet eine richtige Antwort&lt;br /&gt;
|-&lt;br /&gt;
| [S&amp;lt;nowiki&amp;gt;|&amp;lt;/nowiki&amp;gt;x:rot,x:grün,50:blau,gelb] ||  bei rot und grün alle Punkte, bei blau 50 Prozent der Punkt, bei gelb 0 Punkte&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;Sonderzeichen&#039;&#039;&#039; innerhalb einer Lücke &lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;margin-left:50px&amp;quot;&lt;br /&gt;
| Bezeichnung || Zeichen || Ersatzzeichen &lt;br /&gt;
|-&lt;br /&gt;
| Komma(Beistrich) || ,  || ,, &lt;br /&gt;
|-&lt;br /&gt;
| Komma(Beistrich) || ,  || \, &lt;br /&gt;
|-&lt;br /&gt;
| eckige Klammer auf || [ || \[ &lt;br /&gt;
|-&lt;br /&gt;
| eckige Klammer zu || ] || \]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;Sonderzeichen&#039;&#039;&#039; im Fragetext, welche nicht in einer Lücke sind:&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;margin-left:50px&amp;quot;&lt;br /&gt;
| Bezeichnung || Zeichen || Ersatzzeichen &lt;br /&gt;
|-&lt;br /&gt;
| eckige Klammer auf || [ || \[ &lt;br /&gt;
|-&lt;br /&gt;
| eckige Klammer zu || ] || \]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
====Schülereingabe der Frage:====&lt;br /&gt;
Die oben in der Abbildung definierte Lückentextfrage führt zu der links abgebildeten Aufgabenstellung während eines [[Online-Tests]].&lt;br /&gt;
:[[Datei:ClipCapIt-180901-185126.PNG|350px]]&lt;br /&gt;
&lt;br /&gt;
==Multiple-Choice-Frage==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* Der Schüler kann eine oder mehrere vorgegebene Antworten als richtig ankreuzen.&lt;br /&gt;
* Die Antworten werden bei jedem Schüler in einer anderen Reihenfolge vorgeschlagen.&lt;br /&gt;
* Es gibt zwei mögliche Eingabeansichten&lt;br /&gt;
**        automatische Prozentvergabe: Alle richtigen Antworten bekommen einen Haken. Der Computer teilt dann die Prozentwerte gleichmäßig auf alle richtigen Antworten auf.&lt;br /&gt;
**        explizite Definition der Prozentwerte: Neben jeder Antwort kann ein Prozentwert angegeben werden, welcher zugewiesen wird wenn die Antwort angekreuzt ist. Die Summe der Prozentwerte aller richtigen Antworten muss dabei 100 ergeben!&lt;br /&gt;
&lt;br /&gt;
====Beispiele für eine Multiple-Choice-Frage in unterschiedlichen Ansichten====&lt;br /&gt;
&#039;&#039;&#039;CheckboxFeedback: &#039;&#039;&#039;&lt;br /&gt;
Eingabe der Antworten der Multiple-Choice-Frage durch Checkboxen: Die richtigen Antworten bekommen links davon in der Checkbox ein Häckchen. Neben den Antworten können Sie ein Feedback angeben, warum Antworten falsch oder richtig sind.&lt;br /&gt;
:[[Datei:ClipCapIt-180901-214517.PNG|400px]]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Checkbox: &#039;&#039;&#039;&lt;br /&gt;
Eingabe der Antworten der Multiple-Choice-Frage durch Checkboxen: Die richtigen Antworten bekommen ein Häckchen. Feedback-Eingaben sind nicht möglich.&lt;br /&gt;
:[[Datei:ClipCapIt-180901-214538.PNG|400px]]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;ProzentFeedback: &#039;&#039;&#039;&lt;br /&gt;
Die Antworten werden mit Prozentwerten versehen. Die Summe über alle positiven Prozent-Werte muss genau 100 Prozent ergeben! &lt;br /&gt;
Bei falschen Antworten können Sie Werte von -100 eingeben, dann wird bei einer falschen Antwort die ganze Frage als falsch beurteilt.&lt;br /&gt;
Wird dieser negative Prozentwert geringer als -100 gewählt, dann kann die Frage noch teilweise richtig beurteilt werden.&lt;br /&gt;
Neben den Antworten können Sie ein Feedback angeben, warum Antworten falsch oder richtig sind.&lt;br /&gt;
:[[Datei:ClipCapIt-180901-214557.PNG|400px]]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Prozent: &#039;&#039;&#039;&lt;br /&gt;
Die Antworten werden mit Prozentwerten versehen. Die Summe über alle positiven Prozent-Werte muss genau 100 Prozent ergeben! &lt;br /&gt;
Bei falschen Antworten können Sie Werte von -100 eingeben, dann wird bei einer falschen Antwort die ganze Frage als falsch beurteilt.&lt;br /&gt;
Wird dieser negative Prozentwert geringer als -100 gewählt, dann kann die Frage noch teilweise richtig beurteilt werden.&lt;br /&gt;
:[[Datei:ClipCapIt-180901-214616.PNG|400px]]&lt;br /&gt;
&lt;br /&gt;
Das Maxima-Feld kann auch für Multiple-Choice-Fragen für Berechnungen und für die Definition von Formeln verwendet werden. In den Antworten für die Multiple-Choice-Frage können Sie sich über {= ...} auf die Ergebnisse beziehen.&lt;br /&gt;
:[[Datei:ClipCapIt-180901-215517.PNG|400px]]&lt;br /&gt;
Die obige Frage wurde mit dieser Berechnung durchgeführt.&lt;br /&gt;
&lt;br /&gt;
==Zuordnungsfrage==&lt;br /&gt;
&lt;br /&gt;
Die Antwort auf jede der Unterfragen muss aus einer Liste von Möglichkeiten ausgewählt werden.&lt;br /&gt;
Im Prinzip hat der Schüler 2 Listen mit Antworten und Fragen, die er richtig zuordnen muss.&lt;br /&gt;
&lt;br /&gt;
[[Datei:ClipCapIt-180618-225643.PNG|500px]]&lt;br /&gt;
&lt;br /&gt;
Mit der Auswahlliste für das Anzeigeverhalten kann gesteuert werden, ob und wie die Zuordnungen bei einem Test gemischt werden.&lt;br /&gt;
&#039;&#039;Nur links mischen&#039;&#039; bedeutet, dass die Antwortmöglichkeiten auf der linken Seite der Zuordnungsfrage bei jedem Öffnen der Frage anders dargestellt werden.&lt;br /&gt;
&lt;br /&gt;
Folgende Einstellungen sind möglich:&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|Nicht mischen      ||  Die Reihenfolge wird so, wie sie in der Frage definiert ist, gewählt&lt;br /&gt;
|+&lt;br /&gt;
|Mischen            ||  Auf der linken und auf der rechten Seite werden die Antwortmöglichkeiten zufällig angeordnet&lt;br /&gt;
|+&lt;br /&gt;
|Nur links mischen  ||  Nur auf der linken Seite werden die Antwortmöglichkeiten zufällig angeordnet&lt;br /&gt;
|+&lt;br /&gt;
|Nur rechts mischen  || Nur auf der rechten Seite werden die Antwortmöglichkeiten zufällig angeordnet&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Pro Zeile werden die zusammengehörenden Begriffe in die Tabelle eingetragen.&lt;br /&gt;
Um Zuordnungsfragen zu erschweren, können auf der rechten Seite auch falsche Begrife angeführt werden, die nicht eine Entsprechung auf der linken Seite haben.&lt;br /&gt;
&lt;br /&gt;
Weiters können auf der linken Seite auch mehrere gleichnamige Begriffe verwendet werden, um Zuordnungen zu Themengruppen zu ermöglichen.&lt;br /&gt;
&lt;br /&gt;
==Freitextfrage==&lt;br /&gt;
Der Schüler erhält zur Fragebeantwortung ein Textfeld, in dem die Antwort eingetragen werden kann. Diese Fragen müssen aber manuell korrigiert werden!&lt;br /&gt;
Bei der Frageerstellung kann nur das Feedbackfeld ausgefüllt werden. Dieses kann eine mögliche Lösung der Aufgabenstellung enthalten und wird dem Schüler nach der Testausführung (Test wurde bereits beendet) angezeigt.&lt;br /&gt;
&lt;br /&gt;
* Eine Freitextfrage hat keine automatische Korrekturmöglichkeit!&lt;br /&gt;
* Verwendung für:&lt;br /&gt;
**        Fragen, die online über die Tastatur beantwortet werden und vom Lehrer über den Letto-Server händisch beurteilt werden.&lt;br /&gt;
**        Fragen, die nur als Angabe für Projekte, Laborübungen usw. dienen.&lt;br /&gt;
**        Fragen, die auf Papier beantwortet werden.&lt;br /&gt;
* Das Ergebnis kann im Feedback-Feld angegeben werden&lt;br /&gt;
**        und beim Online-Test dem Schüler als Feedback nach dem Test bekanntgegeben werden.&lt;br /&gt;
**        Bei Beispielsammlungen kann der Schüler das Feedbackfeld nie einsehen!&lt;br /&gt;
**        Bei Hausübungen kann der Schüler das Feedbackfeld erst nach Ablauf der Abgabefrist einsehen!&lt;br /&gt;
* Sowohl Feedbackfeld als auch das Fragefeld kann Bilder, Tabellen, externe Dateien und Sourcode-Listings enthalten.&lt;/div&gt;</summary>
		<author><name>Ckral</name></author>
	</entry>
	<entry>
		<id>https://wiki.letto.at/wiki/index.php?title=Beispielsammlung_Editieren&amp;diff=2345</id>
		<title>Beispielsammlung Editieren</title>
		<link rel="alternate" type="text/html" href="https://wiki.letto.at/wiki/index.php?title=Beispielsammlung_Editieren&amp;diff=2345"/>
		<updated>2020-05-16T09:49:42Z</updated>

		<summary type="html">&lt;p&gt;Ckral: Doppelpunkt (:) aus Überschrift entfernt&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;In der Edit-Ansicht können Beispiele verändert, geprüft und neu erstellt werden. &lt;br /&gt;
&lt;br /&gt;
Zurück zu [[Letto-Hauptansicht|LeTTo]], [[Beispielsammlung]]&lt;br /&gt;
[[Datei:FrageEditor.jpg|thumb|700px|Ansicht von &#039;Beispielsammlung Editieren&#039;]]&lt;br /&gt;
&lt;br /&gt;
=Übersicht=&lt;br /&gt;
Im Modus &#039;&#039;&#039;Beispielsammlung editieren&#039;&#039;&#039; ist oben eine [[Toolbar|Symbolleiste]] zur Steuerung der Anwendung angeordnet. Nähere Beschreibung der jeweiligen Buttons finden Sie unter [[Toolbar]].&lt;br /&gt;
&lt;br /&gt;
Im Bereich der Themen (siehe obige Abbildung) finden Sie eine [[Ordnerverwaltung|Ordnerstruktur]] ähnlich einem Dateimanager zur Sortierung und Speicherung der Fragen. Weiters finden Sie in diesem Bereich unten die Definition von [[Online-Tests]]. &lt;br /&gt;
&lt;br /&gt;
Die [[Fragenliste]] enthält alle Fragen eines Ordners sowie Möglichkeiten zum Hinzufügen, Ändern und Klonen ... von Fragen. &lt;br /&gt;
&lt;br /&gt;
Darunter finden sie die [[Bildvorschau]], die immer das zuletzt im [[Editor für den Angabetext|Editor]] angewählte Bild (Image, IMG) anzeigt.&lt;br /&gt;
&lt;br /&gt;
Der rechte Bereich des Editiermodus enthält alle Infos zur aktuell ausgewählten und gerade bearbeiteten Frage. Der obere Teil der Eingabemaske für Fragen ist für alle [[Fragetypen]] gleich.&lt;br /&gt;
&lt;br /&gt;
=Name der Frage=&lt;br /&gt;
:[[Datei:ClipCapIt-180618-180519.PNG|400px|thumb|Eingabefeld für den Fragenamen]]&lt;br /&gt;
Der Fragename bezeichnet die Frage und sollte Information über den Frageninhalt bringen. Alle Fragen einer [[Ordnerverwaltung|Kategorie oder Ordners]] werden mit ihrem Fragennamen in der [[Fragenliste]] angezeigt. Der Name sollte sprechend aber nicht zu lange sein, damit die Übersicht in der Fragenliste erhalten bleibt.&lt;br /&gt;
&lt;br /&gt;
Oberhalb des Fragennamens finden Sie noch den Fragetyp, den diese Frage hat.&lt;br /&gt;
&lt;br /&gt;
=Dokumente zu dieser Frage hochladen=&lt;br /&gt;
:[[Datei:ClipCapIt-181021-141443.PNG|500px]]&lt;br /&gt;
Ist die Checkbox &#039;&#039;&#039;Doks:&#039;&#039;&#039; ausgewählt, dann kann der Schüler bei der Beantwortung der Fragen auch Dokumente zur Testfrage auf den Server hochladen. &lt;br /&gt;
&lt;br /&gt;
Die folgende Abbildung zeigt die Buttons zum Testen der Lösung und den zusätzlichen Button &#039;&#039;&#039;Datei zur Frage hochladen&#039;&#039;&#039;, der dann eingeblendet wird, wenn bei der Fragedefinition die Option &#039;&#039;&#039;Doks:&#039;&#039;&#039; ausgewählt wurde.&lt;br /&gt;
:[[Datei:ClipCapIt-181021-142155.PNG|350px]]&lt;br /&gt;
Solange der Testversuch aktiv ist, können die Dokumnete vom Schüler wieder über den &#039;&#039;&#039;X&#039;&#039;&#039;-Button gelöscht werden oder weitere Dokumnete zu dieser Testfrage hochgeladen werden.&lt;br /&gt;
&lt;br /&gt;
Nach Beendigung des Testversuchs können die Dokumente nicht mehr geändert, sondern nur mehr heruntergeladen und angesehen werden.&lt;br /&gt;
&lt;br /&gt;
=Gefundene Werte=&lt;br /&gt;
Hier sind alle Konstante, die im Angabetext gefunden wurden, aufgelistet. Dieses Feld wird nach dem Verlassen des Editors für den Angabetext automatisch aktualisiert: Enthält der Fragetext Konstante in geschwungenen Klammern, die keine Datensätze sind, so werden diese Variablen automatisch aus dem Text extrahiert und angezeigt. Diese Werte können dann für die Berechnung der Lösung herangezogen werden.&lt;br /&gt;
&lt;br /&gt;
=Frage-Textfeld=&lt;br /&gt;
Siehe [[Editor für den Angabetext]].&lt;br /&gt;
&lt;br /&gt;
=Plugin-Info=&lt;br /&gt;
Im Bereich Plugin-Info finden Sie einen Button &#039;&#039;&#039;Plugins&#039;&#039;&#039; zur Definition der Plugins der Frage. Dadurch wird der [[Definition von Plugins|Dialog zur Plugindefinition]] geöffnet.&lt;br /&gt;
&lt;br /&gt;
Die Plugindefinition bildet immer einen Text-String. Dieser wird nach dem Schliessen des Dialogs im nebenstehenden Feld angezeigt und kann theoretisch auch verändert werden. Diese Option sollten aber nur erfahrene Benutzer verwenden, die sich mit der Syntax der Plugin-Definition auskennen.&lt;br /&gt;
&lt;br /&gt;
Der Scroller [[Datei:ClipCapIt-180831-204926.PNG|40px]] neben dem Eingabefeld dient zum Durchlaufen von allen definierten [[Datensätze|Datensätzen]] und zeigt die Änderungen der Grafiken an, wenn der Cursor auf einem [[Editor für den Angabetext#Spezielle TAGs im Fragentext|Plugin-Grafik-Tag]] [PIG...] im [[Editor für den Angabetext]] steht.&lt;br /&gt;
&lt;br /&gt;
=Beurteilungsbereich=&lt;br /&gt;
====&amp;lt;span id=&amp;quot;qPunkte&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;Punkte:====&lt;br /&gt;
Punkte, die bei richtiger Beantwortung der Frage für die gesamte Frage maximal vergeben werden können. Bei Mehrfachberechnungsfragen ist dieses Feld gesperrt und die Punkteanzahl wird automatisch als Gesamtpunktezahl aus allen Teilfragen berechnet.&lt;br /&gt;
&lt;br /&gt;
====&amp;lt;span id=&amp;quot;qPenalty&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;Penalty:====&lt;br /&gt;
Abzug, der bei einer falschen Beantwortung im [[Online-Tests#Testart|Rechenübungs- oder Hausübungmodus]] pro Versuch abgezogen wird.&lt;br /&gt;
&lt;br /&gt;
====&amp;lt;span id=&amp;quot;qEinheitenFehler&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;Einheitenfehler:====&lt;br /&gt;
Im Feld &amp;quot;EH-Fehler&amp;quot; wird ein Faktor angeben, der von den Punkten der richtigen Lösung abgezogen wird, wenn die Einheit falsch angegeben wurde.&lt;br /&gt;
&lt;br /&gt;
Der Wert von EH-Fehler muss zwischen 0 und 1 liegen!&lt;br /&gt;
&lt;br /&gt;
Erreichtepunkte = Maximalpunkte* (1 - EHFehler)&lt;br /&gt;
&lt;br /&gt;
z.B:&lt;br /&gt;
Das Beispiel hat 4 Punkte, der EH-Faktor ist 0.1.&lt;br /&gt;
Gibt nun der Schüler statt 0.2A den Wert 0.2V an, so erhält er 4*(1-0.1) = 3.6 Punkte.&lt;br /&gt;
Gibt der Schüler einen falschen Einheitenvorsatz wie 0.2mA an, so erhält er keine Punkte, da der Wert falsch ist!&lt;br /&gt;
&lt;br /&gt;
Siehe auch [[Einheit|Einheiten]], [[Online-Tests#Einheiteneinstellungen|Einheiteneinstellungen]]!&lt;br /&gt;
&lt;br /&gt;
====&amp;lt;span id=&amp;quot;cbParser&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;Checkbox Parser:====&lt;br /&gt;
Ist diese Checkbox ausgewählt, dann wird beim Berechnen der Symbolischen Lösung für das Ergebnis der Frage ud allen Teilfragen nicht [[Berechnungen#Berechnung mit Maxima|Maxima]], sondern der [[Berechnungen#Berechnung mit dem internen Parser|Interne Parser verwendet]].&lt;br /&gt;
&lt;br /&gt;
Siehe auch [[Berechnungen]]!&lt;br /&gt;
&lt;br /&gt;
====&amp;lt;span id=&amp;quot;cbSymbolisch&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;Checkbox Symbolisch:====&lt;br /&gt;
Ist diese Checkbox ausgewählt, dann werden beim Berechnen der Lösung mathematische Konstanten nur dann eingesetzt, wenn sie mit einer Gleitkommazahl verrechnet werden. Weiters werden Berechnungen mit Ganzzahlen nur dann als Gleitkommazahl ausgerechnet, wenn sie mit einer Gleitkommazahl verrechnet werden.&lt;br /&gt;
&lt;br /&gt;
=Datensätze=&lt;br /&gt;
Siehe [[Datensätze definieren#Erstellung / Änderung über den Datensatz-Bereich|Datensätze definieren]]&lt;br /&gt;
&lt;br /&gt;
=Kompetenzen zuordnen=&lt;br /&gt;
Mit dem Button [[Datei:ClipCapIt-180901-220702.PNG|20px]] aus dem [[Toolbar]] kann man zwischen der Datensatz- und der Kompetenz-Ansicht umschalten.&lt;br /&gt;
&lt;br /&gt;
Siehe auch [[Kompetenzzuordnung]].&lt;br /&gt;
&lt;br /&gt;
=Maxima-Feld=&lt;br /&gt;
&lt;br /&gt;
Das Maximafeld wird für die Berechnung der Ergebnisformel verwendet. Für die Berechnung des Maxima-Feldes wird der Inhalt des Feldes mit einem Präprozessor vorbearbeitet und dann an Maxima gesendet, oder der Inhalt wird direkt mit dem internen Parser von Letto verarbeitet. Da einige Funktionen des internen Parsers von Maxima nicht unterstützt werden und umgekehrt der interne Parser nicht den vollen Funktionsumfang von Maxima unterstützt, ist je nach Aufgabenstellung die eine oder andere Variante zu verwenden.&lt;br /&gt;
&lt;br /&gt;
Siehe auch [[Berechnungen]]!&lt;br /&gt;
&lt;br /&gt;
====Maxima Berechnung:====&lt;br /&gt;
Siehe [[Berechnungen#Berechnung mit Maxima|Maxima-Berechnungen]]&lt;br /&gt;
&lt;br /&gt;
* Zahlenwerte mit Einheiten werden, bevor das Feld an Maxima geschickt wird, durch interne Variablen ersetzt, die bei der Berechnung des Ergebnisses dann wieder mit Einheiten eingesetzt werden. Die Maxima-Berechnung erfolgt dadurch wie in Maxima üblich ohne Einheiten.&lt;br /&gt;
* graphische Elemente von Maxima wie plot etc. können nicht verwendet werden&lt;br /&gt;
* Jeder Durchlauf des Maximafeldes beginnt mit einer neuen leeren Maxima-Umgebung in der die Datei letto.mac geladen wird. Die Datei moodle.mac kann in der globalen Einstellungen des Servers für alle Benutzer gemeinsam vom Administrator konfiguriert werden. Unter anderem wird hier der Operator || definiert, der für die Parallelschaltung von Widerständen und Impedanzen verwendet werden kann.&lt;br /&gt;
* Es können auch alle Funktionen des internen Parsers, die Maxima nicht kennt verwendet werden. Jedoch kann Maxima diese Funktionen weder vereinfachen noch berechnen, dies muss dann Online beim Berechnen des Lösungsfeldes durch Letto direkt erfolgen. Dementsprechend kann auch der Befehl &#039;&#039;&#039;solve&#039;&#039;&#039; von Maxima keine Funktionen auflösen, die nur vom internen Parser untersützt werden.&lt;br /&gt;
&lt;br /&gt;
====Interner Parser von Letto:====&lt;br /&gt;
Siehe [[Berechnungen#Berechnung_mit_dem_internen_Parser|Interner Parser]]&lt;br /&gt;
&lt;br /&gt;
* unterstützt Einheiten&lt;br /&gt;
* unterstützt Dualzahlen und Hexadezimalzahlen&lt;br /&gt;
* unterstützt einige Funktionen, die für technische Berechnungen vorteilhaft verwendet werden können. Die Liste der möglichen Funktionen ist in der Hilfe direkt nachzulesen.&lt;br /&gt;
* Der interne Parser von Letto wird immer für die Berechnung des Lösungsfeldes einer Berechnungs- oder Mehrfachberechnungsfrage verwendet.&lt;br /&gt;
====Einheiten====&lt;br /&gt;
Zahlenwerte mit Einheit können auf mehrere Arten im Maximafeld verwendet werden:&lt;br /&gt;
* Als Datensatz mit Einheit durch Verwendung des Datensatzbezeichners: Dies ist die einfachste Variante, bei der gleichzeitig auch für jeden Schüler ein anderer Zahlenwert definiert werden kann&lt;br /&gt;
* Als Direkteingabe im Maxima-Feld mit Zahlenwert, gefolgt von der Einheit in einfachen Hochkomma ( x:13&#039;A/m&#039; oder y:x*56&#039;VA-1&#039; )&lt;br /&gt;
* Wenn die Einheit keine Rechenoperatoren enthält kann die Einheit direkt am Zahlenwert angehängt werden: zB.: U:23V oder I:U/2Ohm&lt;br /&gt;
&lt;br /&gt;
Der Präprozessor, der das Maximafeld vor der Berechnung durchläuft hat folgende Aufgaben:&lt;br /&gt;
&lt;br /&gt;
* Bei Maxima-Berechnungsmodi werden alle Zahlenwerte welche eine Einheit haben durch Variable ersetzt welche bei der späteren Berechnung wieder eingesetzt werden können&lt;br /&gt;
* jede Zeile wird automatisch abgeschlossen, man benötigt daher kein ; oder $ am Zeilenende und es sind dadurch keine mehrzeiligen Befehle möglich&lt;br /&gt;
* Bezeichner dürfen nur die Zeichen a-zA-Z0-9 enthalten (zB. der Unterstrich ist verboten)&lt;br /&gt;
* Bemerkungen werden wie in C oder Java übliche am Zeilenanfang mit einem doppelten Schrägstrich eingefügt&lt;br /&gt;
&lt;br /&gt;
====Wichtige Funktionen====&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Funktion !!  Beschreibung 	!! Beispiel 	!! Ergebnis&lt;br /&gt;
|-&lt;br /&gt;
| floor(x) ||  Kommazahl auf die nächste Ganzzahl abrunden 	|| ||&lt;br /&gt;
|-&lt;br /&gt;
| round(x) ||  Kommazahl auf Ganzzahl runden 	|| ||&lt;br /&gt;
|-&lt;br /&gt;
| pi() 	   ||  die Zahl Pi 	|| ||&lt;br /&gt;
|-&lt;br /&gt;
| exp(1)   ||  die eulersche Zahl e || ||&lt;br /&gt;
|-&lt;br /&gt;
| exp(x)   ||  Exponentialfunktion e hoch x 	|| ||&lt;br /&gt;
|-&lt;br /&gt;
| abs(x)   ||  Absolutbetrag  ||  abs(-2) 	||  2&lt;br /&gt;
|-&lt;br /&gt;
| acos(x), acosh(x), asin(x), &lt;br /&gt;
&lt;br /&gt;
asinh(x), atan2(y,x), atan(x), &lt;br /&gt;
&lt;br /&gt;
atanh(x), cos(x), cosh(x), &lt;br /&gt;
&lt;br /&gt;
sin(x), sinh(x), tan(x), tanh(x)  &lt;br /&gt;
||	Winkelfunktionen 	|| ||&lt;br /&gt;
|-&lt;br /&gt;
| deg2rad(x) ||	Grad in Radianten umwandeln 	|| ||&lt;br /&gt;
|-&lt;br /&gt;
| rad2deg(x) ||	Radianten in Grad umwandeln 	|| ||&lt;br /&gt;
|-&lt;br /&gt;
| max(x,y,z) ||	Liefert das Maximum der angegebenen Parameter 	|| max(2,5,3)  ||	5&lt;br /&gt;
|-&lt;br /&gt;
| min(x,y,z) ||	Liefert das Minimum der angegebenen Parameter 	|| min(3,2,6,34) ||	2&lt;br /&gt;
|-&lt;br /&gt;
| log10(x)   ||	10er Logarithmus 	||  log10(100)  || 	2&lt;br /&gt;
|-&lt;br /&gt;
| log(x)     ||	natürlicher Logarithmus 	|| ||&lt;br /&gt;
|-&lt;br /&gt;
| pow(x,y)   ||	berechnet die Potenz x hoch y  ||	pow(2,3) 	|| 8&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
====Tipps für Maxima-Newcomer====&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Befehl 	!!  Beschreibung&lt;br /&gt;
|-&lt;br /&gt;
| a:5  || 	Der Variablen a den Wert5 zuweisen&lt;br /&gt;
|-&lt;br /&gt;
| g1:x+y=5&lt;br /&gt;
&lt;br /&gt;
g2:x-y=3&lt;br /&gt;
&lt;br /&gt;
L:solve([g1,g2],[x,y])&lt;br /&gt;
&lt;br /&gt;
x:ev(x,L)&lt;br /&gt;
&lt;br /&gt;
y:ev(y,L)&lt;br /&gt;
|| 	Gleichungssystem lösen mit den Gleichungen g1 und g2&lt;br /&gt;
&lt;br /&gt;
solve löst das Gleichungssystem und liefert den Ergebnisvektor L&lt;br /&gt;
&lt;br /&gt;
ev berechnet aus dem Lösungsvektor die Variablen&lt;br /&gt;
|-&lt;br /&gt;
| c:4+5*%i   ||	komplexe Zahl&lt;br /&gt;
|-&lt;br /&gt;
| e:ratsimp(c*(2+3*%i)) 	|| komplexes Ergebnis auswerten&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=Eingabemasken für die unterschiedlichen Fragetypen=&lt;br /&gt;
&lt;br /&gt;
==Mehrfachberechnungsfrage==&lt;br /&gt;
&lt;br /&gt;
* Fragen dieses Typs sind sehr flexibel.&lt;br /&gt;
* Die Frage kann mehrere Teilantworten beinhalten. Jede Teilfrage wird im Fragetext durch einen [Qx]-Tag (x..Fragenummer) positioniert. Bei der Schülereingabe wird der Tag durch ein Eingabefeld für die Ergebniseingabe ersetzt.&lt;br /&gt;
* Die Angabewerte sind wie bei Berechnungsfragen mittels [[Datensätze|Datensätzen]] definierbar und variieren von Schüler zu Schüler.&lt;br /&gt;
* Alle verwendeten [[Datensätze|Variablen]] müssen im Angabtext in geschwungene Klammern gesetzt werden. Im [[Berechnungen|Maximafeld]] und im Lösungsfeld ist die Klammer nicht notwendig.&lt;br /&gt;
* Für jede Variable wird ein Dataset mit möglichen Werten angelegt. Diese Datasets können über einen [[Datensätze_definieren#Definition_der_Werte|Formatierungsstring]] definiert werden und danach auch direkt in einer Liste bearbeitet werden.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
:[[Datei:ClipCapIt-180831-220929.PNG|600px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Übersicht über alle Spalten der Detail-Ansicht:&#039;&#039;&#039;&lt;br /&gt;
====Q....====&lt;br /&gt;
Spalte mit der Kurzbezeichnung für die Teilfrage. Unter diesem Namen wird im Editor für die Angabe die Teilfrage mit [Qx] referenziert. An dieser Position steht dann bei der Testausführung das Eingabeelement für diese Teilfrage.&lt;br /&gt;
&lt;br /&gt;
====&amp;lt;span id=&amp;quot;sqProzInput&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;Prozent für die Antwort einer Teilfrage====&lt;br /&gt;
&lt;br /&gt;
Wenn der Schüler die Antwort gibt, die in der Zeile dieser Teilantwort steht, bekommt er den prozentuellen Anteil der Gesamtpunkt der Teilfrage.&lt;br /&gt;
&lt;br /&gt;
Je nach Antwort-Modus muss sichergestellt sein, dass der Schüler durch die richtige Eingabe der Antwort 100 Prozent erreichen kann.&lt;br /&gt;
&lt;br /&gt;
====&amp;lt;span id=&amp;quot;sqGradeInput&amp;quot;&amp;gt;Punkte einer Teilfrage====&lt;br /&gt;
Punkteanzahl für die richtige Beantwortung einer Teilfrage.&lt;br /&gt;
&lt;br /&gt;
Die Gesamtpunktanzahl einer Mehrfachberechnungsfrage ergibt sich immer aus der Summe der Punkte der Teilfragen.&lt;br /&gt;
&lt;br /&gt;
====&amp;lt;span id=&amp;quot;sqMaximaInput&amp;quot;&amp;gt;Maximafeld für die Antwort einer Teilfrage====&lt;br /&gt;
Siehe auch [[Berechnungen]]!&lt;br /&gt;
&lt;br /&gt;
Dieses Feld wird nach dem Durchlaufen des globalen Maxima-Feldes der Frage mit Maxima aufgerufen und liefert als Lösung den Ausdruck, der im Lösungsfeld eingesetzt wird.&lt;br /&gt;
&lt;br /&gt;
Es wird nur im Antwort-MODE &amp;quot;calculated&amp;quot; und &amp;quot;boolsch&amp;quot; berechnet.&lt;br /&gt;
&lt;br /&gt;
====&amp;lt;span id=&amp;quot;sqEinheitInput&amp;quot;&amp;gt;Ziel-Einheit der Antwort einer Teilfrage:====&lt;br /&gt;
Siehe unter [[ZielEinheit]]!&lt;br /&gt;
&lt;br /&gt;
====&amp;lt;span id=&amp;quot;modeSel_focus&amp;quot;&amp;gt;Antwortmode====&lt;br /&gt;
Art der Antwort:&lt;br /&gt;
&lt;br /&gt;
* Single-Choice: Es gibt mehrere Lösungen, die dem Schüler vorgeschlagen werden. Der Schüler muss nun von diesen Lösungen genau eine Auswählen. Die Lösungen stehen als String im Lösungsfeld&lt;br /&gt;
* Text: Die Lösung welche im Lösungsfeld steht ist eine Zeichenkette die vom Schüler genau so eingegeben werden muss&lt;br /&gt;
* Regexp: Im Lösungsfeld wird ein regulärer Ausdruck angeben, mit dem überprüft wird, ob die Antwort des Schülers richtig ist.&lt;br /&gt;
* Multichoice: Es gibt mehrere Lösungen, die dem Schüler vorgeschlagen werden. Der Schüler muss nun von diesen Lösungen eine oder mehrere Auswählen. Die Lösungen stehen als String in Lösungsfeld.&lt;br /&gt;
* Calculated: Im Lösungsfeld steht ein symbolischer Ausdruck, der aus dem Maxima-Feld errechnet wurde. Zur Laufzeit wird daraus mit dem Parser die Lösung berechnet.&lt;br /&gt;
* Boolsch: Dieser Fragemode kann nur sinnvoll bei einer Mehrfachberechnungsfrage verwendet werden. In diesem Modus kann man die Schülereingaben anderer Teilfragen nach Eingabe durch den Parser auswerten lassen und damit Punkte vergeben. Es lassen sich somit Folgefehler von Schülern berücksichtigen und bei der Dimensionierung können Angabe-Bedingungen geprüft werden, die über die Lösung einer Teilfrage nicht eindeutig wären. Der Zugriff auf die Schülereingabe einer anderen Teilfrage erfolgt im Lösungsfeld mit der Variablen Q gefolgt von der Teilfragenummer (zB. Q1 für die Teilfrage 1)&lt;br /&gt;
&lt;br /&gt;
====&amp;lt;span id=&amp;quot;sqToleranceInput&amp;quot;&amp;gt;Toleranz der Antwort einer Teilfrage====&lt;br /&gt;
Die Toleranz, wie genau ein Schüler seine Antwort angeben muss:&lt;br /&gt;
* Die Toleranz ist im Normalfall eine &#039;&#039;&#039;relative Angabe&#039;&#039;&#039; und wird in &#039;&#039;&#039;Prozent&#039;&#039;&#039; angegeben&lt;br /&gt;
* Wird bei der Toleranz kein Prozent angegeben, so muss der Wert zwischen 0 und 1 liegen und entspricht dann dem Prozentwert durch 100&lt;br /&gt;
* Wird bei der Toleranz vor oder nach dem Wert ohne Prozentzeichen ein &#039;&#039;&#039;a&#039;&#039;&#039; angegeben, so wird dieser Wert als &#039;&#039;&#039;absolute Toleranz&#039;&#039;&#039; der Größe in SI-Einheiten interpretiert. ( z.B.: 0.1a bei einem eletrischen Strom in Ampere entspricht einer absoluten Toleranz von 0.1A ) Absolute Toleranzen sind vor allem bei Ergebnissen welche Null sind notwendig, da die Berechnung statt 0 meist eine sehr kleine Zahl berechnet, welche dann mit einer relativen Toleranz auch extrem genau eingegeben werden muss und 0 dadurch nicht im Toleranzbereich liegen kann!&lt;br /&gt;
&lt;br /&gt;
====&amp;lt;span id=&amp;quot;sqLoesungInput&amp;quot;&amp;gt;Lösung der Antwort einer Teilfrage====&lt;br /&gt;
In der Lösungsformel steht die richtige Antwort der Frage, je nach Fragemode hat das Lösungsfeld verschiedene Funktionalität!&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Fragemode 	!! Bedeutung des Lösungsfeldes 	!! Inhalt&lt;br /&gt;
|-&lt;br /&gt;
| Single-Choice || Lösung wie sie am Browser ausgegeben wird 	|| Eingabe&lt;br /&gt;
|-&lt;br /&gt;
| Text 	        || Lösung wie sie der Schüler eingeben sollte 	|| Eingabe&lt;br /&gt;
|-&lt;br /&gt;
| Regexp 	|| Regulärer Ausdruck (in Java Syntax) welcher für die richtige Lösung treffen muss 	|| Eingabe&lt;br /&gt;
|-&lt;br /&gt;
| Multichoice 	|| Lösung wie sie am Browser ausgegeben wird. 	|| Eingabe&lt;br /&gt;
|-&lt;br /&gt;
| Calculated 	|| Berechnungsformel, mit der zur Testzeit die richtige Lösung berechnet wird, die mit der Schülereingaben verglichen wird. 	|| automatische Berechnung aus dem Maximafeld&lt;br /&gt;
|-&lt;br /&gt;
| Boolsch 	|| Berechnungsformel, die nach der Schülereingabe berechnet wird. Das Ergebnis der Formel muss boolsch sein. Wenn das Ergebnis true ist bekommt der Schüler die angegebenen Punkte. 	|| automatische Berechnung aus dem Maximafeld&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
====&amp;lt;span id=&amp;quot;sqErgInfoInput&amp;quot;&amp;gt;Infofeld der Antwort einer Teilfrage====&lt;br /&gt;
* Bei Berechnungsfragen die Antwort des ersten Datensatzes, das Feld ist dann schreibgeschützt&lt;br /&gt;
* Bei Boolschen Fragen kann hier eine Information erfolgen, wie die Frage bewertet wurde.&lt;br /&gt;
&lt;br /&gt;
==Berechnungsfrage==&lt;br /&gt;
:[[Datei:ClipCapIt-180901-122143.PNG|400px]]&lt;br /&gt;
&lt;br /&gt;
Die Berechnungsfrage ist ähnlich aufgebaut wie eine Mehrfachberechnungsfrage mit nur einer Berechnung. Diese Frage kann aber mehrere unterschiedliche Lösungen bereitstellen, um zB. typische Berechnungsfehler mit Punkteabzügen zu beurteilen. Es können also zusätzliche Reiter mit mehreren Antwortmöglichkeiten über das Kontextmenü erzeugt bzw. wieder gelöscht werden.&lt;br /&gt;
&lt;br /&gt;
:[[Datei:ClipCapIt-180901-212431.PNG|thumb|450px|Übersicht Erstellung einer Berechnungsfrage]]&lt;br /&gt;
&lt;br /&gt;
:[[Datei:ClipCapIt-180901-132831.PNG|400px]]&lt;br /&gt;
&lt;br /&gt;
* Berechnende Fragen sind wie Mehrfachberechnungsfragen mit nur einer Teilfrage bei dem das Antwortfeld automatisch erscheint.&lt;br /&gt;
* Jeder Schüler bekommt eine eigene Angabe&lt;br /&gt;
* Für den Druck kann die Frage auch für Projektangaben verwendet werden.&lt;br /&gt;
* Berechnungen erfolgen mit Maxima&lt;br /&gt;
* Alle verwendeten Variablen müssen im Angabtext in geschwungene Klammern gesetzt werden. Im Maximafeld und im Lösungsfeld ist die Klammer nicht notwendig.&lt;br /&gt;
* Für jede Variable wird ein Dataset mit möglichen Werten angelegt. Diese Datasets können über einen Formatierungsstring definiert werden und danach auch direkt in einer Liste bearbeitet werden.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Wenn mehrer Antwortmöglichkeiten definiert wurden, wird links ein zusätzliches Eingabefeld &#039;&#039;&#039;Antwort Maxima:&#039;&#039;&#039; angezeigt. Damit können Sie unterschiedliche Ergebnisse der Maxima-Berechnungen den unterschiedlichen Antworten zuordnen.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Feld !!  Beschreibung&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;Antwort Maxima  ||    [[#Lösung_der_Antwort_einer_Teilfrage|Verhalten wie bei der Mehrfachberechnungsfrage]], siehe [[Berechnungen]] &lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;Einheit:&#039;&#039;&#039;   || [[ZielEinheit|Defiition der Einheit oder sonstiges Frageerhalten]]&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;Prozent:&#039;&#039;&#039;   || [[#Prozent_für_die_Antwort_einer_Teilfrage|Prozentangaben für unterschiedliche Lösungen]]&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;Toleranz:&#039;&#039;&#039;  ||  [[#Toleranz_der_Antwort_einer_Teilfrage|Toleranz für den Ergebniswert wie bei Mehrfachberechnungsfrage]]&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;Mode:&#039;&#039;&#039;      ||  [[#Antwortmode|Berechungs-Modus]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Die Zeile &#039;Lösung für 1. Datenstatz&#039; zeigt das Ergebnis an, wenn der Werte des 1. Datensatzes in die Lösungsformel eingesetzt werden. Diese Zeile dient der Kontrolle, ob die Lösung mit Zahlenwerten auch Sinn macht und ob die Einheiten zusammenpassen.&lt;br /&gt;
&lt;br /&gt;
Das Eingabefeld &#039;&#039;&#039;Lösung&#039;&#039;&#039; ist schreibgeschützt und kann nur durch die [[Berechnungen#Berechnung mit Maxima|Maxima-Berechnung]] oder den [[Berechnungen#Berechnung_mit_dem_internen_Parser|internen Parser]] bestimmt werden.&lt;br /&gt;
&lt;br /&gt;
==Lückentextfrage==&lt;br /&gt;
Ein Lückentext enthält Lücken innerhalb eines Fragetextes, die durch den Schüler mit dem korrekten Inhalt gefüllt werden sollen.&lt;br /&gt;
&lt;br /&gt;
Folgende Modi sind dabei für die Lücken möglich:&lt;br /&gt;
* Texteingabe: Der Schüler muss das fehlende Wort je nach Fragemodus in die Lücke über die Tastatur eingeben oder per Drag&amp;amp;Drop auf die Lücke ziehen&lt;br /&gt;
* Multiple-Choice: Der Schüler kann aus mehreren Antwortmöglichkeiten eine oder mehrere richtige Elemente selektieren&lt;br /&gt;
* Single-Choice: Der Schüler kann mit einem Drop-Down-Auswahlfeld aus mehreren Antwortmöglichkeiten genau ein richtiges Element selektieren&lt;br /&gt;
&lt;br /&gt;
Da es bei Lückentextfragen um Texte geht, gibt es hier keine Datensätze oder Maxima-Berechnungen.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Fragemodus:&#039;&#039;&#039;&lt;br /&gt;
:[[Datei:ClipCapIt-180901-155006.PNG|200px]]&lt;br /&gt;
&lt;br /&gt;
Der Fragemodus gibt an wie Texteingabe-Lücken verarbeitet werden&lt;br /&gt;
&lt;br /&gt;
* Normal: Der Schüler muss den Text über die Tastatur in die Lücke eintragen.&lt;br /&gt;
* Drag-and-Drop: Der Schüler muss aus einer Liste von möglichen Antworten die richtigen Antworten auf die Lücken ziehen.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Funktionstasten:&#039;&#039;&#039;&lt;br /&gt;
F8: aktuelles Wort, bei dem der Cursor steht, als Textlücke definieren (Vorsicht: Wort nicht markieren!), siche auch  [[Editor_für_den_Angabetext#Schnelleingabe_.2F_Tastatur-Shortcuts|alle Funktionstasten]]&lt;br /&gt;
&lt;br /&gt;
====Erstellung der Frage:====&lt;br /&gt;
&lt;br /&gt;
Im [[Editor für den Angabetext|Textbereich des Editors]] werden die Lücken durch Antwortformulierungen in eckigen Klammern realisiert. Mit &#039;&#039;&#039;F8&#039;&#039;&#039; kann das aktuelle Wort, bei dem der Cursor steht, als Textlücke definiert werden.&lt;br /&gt;
&lt;br /&gt;
:[[Datei:ClipCapIt-180901-161337.PNG|thumb|450px|Beispiel einer Eingabe]]&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;Texteingabe:&#039;&#039;&#039;&lt;br /&gt;
** Im Fragemodus &amp;quot;Normal&amp;quot; muss der Schüler den Text in der Lücke eingeben&lt;br /&gt;
** Im Fragemodus &amp;quot;Drag and Drop&amp;quot; muss der Schüler aus einer Liste von Antworttexten den richtigen Text über die Lücke ziehen. Hierbei wird die Liste der Antworttexte aus allen richtigen und falschen Antworten der Texteingabe-Felder zusammengesetzt.&lt;br /&gt;
** Syntax:&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;margin-left:50px&amp;quot;&lt;br /&gt;
| [text]     || 	Das Wort &amp;quot;text&amp;quot; als Lücke mit 1 Punkt für die richtige Antwort&lt;br /&gt;
|-&lt;br /&gt;
| [2&amp;lt;nowiki&amp;gt;|&amp;lt;/nowiki&amp;gt;text]     || 	Das Wort &amp;quot;text&amp;quot; mit 2 Punkten für die richtige Antwort&lt;br /&gt;
|-&lt;br /&gt;
| [1&amp;lt;nowiki&amp;gt;|&amp;lt;/nowiki&amp;gt;text,50:alt,0:nix]   ||	2 Punkte für die richtige Antwort &amp;quot;text&amp;quot;, 50%von zwei Punkten für &amp;quot;alt&amp;quot;, &amp;quot;nix&amp;quot; als falsche Antwort für &amp;quot;Drag and Drop&amp;quot;-Fragen&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;Multiple-Choice:&#039;&#039;&#039;&lt;br /&gt;
**      unabhängig vom Fragemodus&lt;br /&gt;
**      mindestens eine Antwort muss richtig sein&lt;br /&gt;
**      Syntax:&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;margin-left:50px&amp;quot;&lt;br /&gt;
| [M&amp;lt;nowiki&amp;gt;|&amp;lt;/nowiki&amp;gt;x:richtig,falsch1,falsch2]  ||	Die richtigen Antwortfelder sind mit x: markiert&lt;br /&gt;
|-&lt;br /&gt;
| [M&amp;lt;nowiki&amp;gt;|&amp;lt;/nowiki&amp;gt;x:rot,x:grün,blau,gelb] 	 ||     rot und grün sind richtig&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;Single-Choice:&#039;&#039;&#039;&lt;br /&gt;
**      unabhängig vom Fragemodus&lt;br /&gt;
**      der Schüler muss eine Antwort aus mehreren wählen&lt;br /&gt;
**      Syntax:&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;margin-left:50px&amp;quot;&lt;br /&gt;
| [S&amp;lt;nowiki&amp;gt;|&amp;lt;/nowiki&amp;gt;x:richtig,falsch,falsch] 	||  x kennzeichnet eine richtige Antwort&lt;br /&gt;
|-&lt;br /&gt;
| [S&amp;lt;nowiki&amp;gt;|&amp;lt;/nowiki&amp;gt;x:rot,x:grün,50:blau,gelb] ||  bei rot und grün alle Punkte, bei blau 50 Prozent der Punkt, bei gelb 0 Punkte&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;Sonderzeichen&#039;&#039;&#039; innerhalb einer Lücke &lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;margin-left:50px&amp;quot;&lt;br /&gt;
| Bezeichnung || Zeichen || Ersatzzeichen &lt;br /&gt;
|-&lt;br /&gt;
| Komma(Beistrich) || ,  || ,, &lt;br /&gt;
|-&lt;br /&gt;
| Komma(Beistrich) || ,  || \, &lt;br /&gt;
|-&lt;br /&gt;
| eckige Klammer auf || [ || \[ &lt;br /&gt;
|-&lt;br /&gt;
| eckige Klammer zu || ] || \]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;Sonderzeichen&#039;&#039;&#039; im Fragetext, welche nicht in einer Lücke sind:&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;margin-left:50px&amp;quot;&lt;br /&gt;
| Bezeichnung || Zeichen || Ersatzzeichen &lt;br /&gt;
|-&lt;br /&gt;
| eckige Klammer auf || [ || \[ &lt;br /&gt;
|-&lt;br /&gt;
| eckige Klammer zu || ] || \]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
====Schülereingabe der Frage:====&lt;br /&gt;
Die oben in der Abbildung definierte Lückentextfrage führt zu der links abgebildeten Aufgabenstellung während eines [[Online-Tests]].&lt;br /&gt;
:[[Datei:ClipCapIt-180901-185126.PNG|350px]]&lt;br /&gt;
&lt;br /&gt;
==Multiple-Choice-Frage==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* Der Schüler kann eine oder mehrere vorgegebene Antworten als richtig ankreuzen.&lt;br /&gt;
* Die Antworten werden bei jedem Schüler in einer anderen Reihenfolge vorgeschlagen.&lt;br /&gt;
* Es gibt zwei mögliche Eingabeansichten&lt;br /&gt;
**        automatische Prozentvergabe: Alle richtigen Antworten bekommen einen Haken. Der Computer teilt dann die Prozentwerte gleichmäßig auf alle richtigen Antworten auf.&lt;br /&gt;
**        explizite Definition der Prozentwerte: Neben jeder Antwort kann ein Prozentwert angegeben werden, welcher zugewiesen wird wenn die Antwort angekreuzt ist. Die Summe der Prozentwerte aller richtigen Antworten muss dabei 100 ergeben!&lt;br /&gt;
&lt;br /&gt;
====Beispiele für eine Multiple-Choice-Frage in unterschiedlichen Ansichten====&lt;br /&gt;
&#039;&#039;&#039;CheckboxFeedback: &#039;&#039;&#039;&lt;br /&gt;
Eingabe der Antworten der Multiple-Choice-Frage durch Checkboxen: Die richtigen Antworten bekommen links davon in der Checkbox ein Häckchen. Neben den Antworten können Sie ein Feedback angeben, warum Antworten falsch oder richtig sind.&lt;br /&gt;
:[[Datei:ClipCapIt-180901-214517.PNG|400px]]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Checkbox: &#039;&#039;&#039;&lt;br /&gt;
Eingabe der Antworten der Multiple-Choice-Frage durch Checkboxen: Die richtigen Antworten bekommen ein Häckchen. Feedback-Eingaben sind nicht möglich.&lt;br /&gt;
:[[Datei:ClipCapIt-180901-214538.PNG|400px]]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;ProzentFeedback: &#039;&#039;&#039;&lt;br /&gt;
Die Antworten werden mit Prozentwerten versehen. Die Summe über alle positiven Prozent-Werte muss genau 100 Prozent ergeben! &lt;br /&gt;
Bei falschen Antworten können Sie Werte von -100 eingeben, dann wird bei einer falschen Antwort die ganze Frage als falsch beurteilt.&lt;br /&gt;
Wird dieser negative Prozentwert geringer als -100 gewählt, dann kann die Frage noch teilweise richtig beurteilt werden.&lt;br /&gt;
Neben den Antworten können Sie ein Feedback angeben, warum Antworten falsch oder richtig sind.&lt;br /&gt;
:[[Datei:ClipCapIt-180901-214557.PNG|400px]]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Prozent: &#039;&#039;&#039;&lt;br /&gt;
Die Antworten werden mit Prozentwerten versehen. Die Summe über alle positiven Prozent-Werte muss genau 100 Prozent ergeben! &lt;br /&gt;
Bei falschen Antworten können Sie Werte von -100 eingeben, dann wird bei einer falschen Antwort die ganze Frage als falsch beurteilt.&lt;br /&gt;
Wird dieser negative Prozentwert geringer als -100 gewählt, dann kann die Frage noch teilweise richtig beurteilt werden.&lt;br /&gt;
:[[Datei:ClipCapIt-180901-214616.PNG|400px]]&lt;br /&gt;
&lt;br /&gt;
Das Maxima-Feld kann auch für Multiple-Choice-Fragen für Berechnungen und für die Definition von Formeln verwendet werden. In den Antworten für die Multiple-Choice-Frage können Sie sich über {= ...} auf die Ergebnisse beziehen.&lt;br /&gt;
:[[Datei:ClipCapIt-180901-215517.PNG|400px]]&lt;br /&gt;
Die obige Frage wurde mit dieser Berechnung durchgeführt.&lt;br /&gt;
&lt;br /&gt;
==Zuordnungsfrage==&lt;br /&gt;
&lt;br /&gt;
Die Antwort auf jede der Unterfragen muss aus einer Liste von Möglichkeiten ausgewählt werden.&lt;br /&gt;
Im Prinzip hat der Schüler 2 Listen mit Antworten und Fragen, die er richtig zuordnen muss.&lt;br /&gt;
&lt;br /&gt;
[[Datei:ClipCapIt-180618-225643.PNG|500px]]&lt;br /&gt;
&lt;br /&gt;
Mit der Auswahlliste für das Anzeigeverhalten kann gesteuert werden, ob und wie die Zuordnungen bei einem Test gemischt werden.&lt;br /&gt;
&#039;&#039;Nur links mischen&#039;&#039; bedeutet, dass die Antwortmöglichkeiten auf der linken Seite der Zuordnungsfrage bei jedem Öffnen der Frage anders dargestellt werden.&lt;br /&gt;
&lt;br /&gt;
Folgende Einstellungen sind möglich:&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|Nicht mischen      ||  Die Reihenfolge wird so, wie sie in der Frage definiert ist, gewählt&lt;br /&gt;
|+&lt;br /&gt;
|Mischen            ||  Auf der linken und auf der rechten Seite werden die Antwortmöglichkeiten zufällig angeordnet&lt;br /&gt;
|+&lt;br /&gt;
|Nur links mischen  ||  Nur auf der linken Seite werden die Antwortmöglichkeiten zufällig angeordnet&lt;br /&gt;
|+&lt;br /&gt;
|Nur rechts mischen  || Nur auf der rechten Seite werden die Antwortmöglichkeiten zufällig angeordnet&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Pro Zeile werden die zusammengehörenden Begriffe in die Tabelle eingetragen.&lt;br /&gt;
Um Zuordnungsfragen zu erschweren, können auf der rechten Seite auch falsche Begrife angeführt werden, die nicht eine Entsprechung auf der linken Seite haben.&lt;br /&gt;
&lt;br /&gt;
Weiters können auf der linken Seite auch mehrere gleichnamige Begriffe verwendet werden, um Zuordnungen zu Themengruppen zu ermöglichen.&lt;br /&gt;
&lt;br /&gt;
==Freitextfrage==&lt;br /&gt;
Der Schüler erhält zur Fragebeantwortung ein Textfeld, in dem die Antwort eingetragen werden kann. Diese Fragen müssen aber manuell korrigiert werden!&lt;br /&gt;
Bei der Frageerstellung kann nur das Feedbackfeld ausgefüllt werden. Dieses kann eine mögliche Lösung der Aufgabenstellung enthalten und wird dem Schüler nach der Testausführung (Test wurde bereits beendet) angezeigt.&lt;br /&gt;
&lt;br /&gt;
* Eine Freitextfrage hat keine automatische Korrekturmöglichkeit!&lt;br /&gt;
* Verwendung für:&lt;br /&gt;
**        Fragen, die online über die Tastatur beantwortet werden und vom Lehrer über den Letto-Server händisch beurteilt werden.&lt;br /&gt;
**        Fragen, die nur als Angabe für Projekte, Laborübungen usw. dienen.&lt;br /&gt;
**        Fragen, die auf Papier beantwortet werden.&lt;br /&gt;
* Das Ergebnis kann im Feedback-Feld angegeben werden&lt;br /&gt;
**        und beim Online-Test dem Schüler als Feedback nach dem Test bekanntgegeben werden.&lt;br /&gt;
**        Bei Beispielsammlungen kann der Schüler das Feedbackfeld nie einsehen!&lt;br /&gt;
**        Bei Hausübungen kann der Schüler das Feedbackfeld erst nach Ablauf der Abgabefrist einsehen!&lt;br /&gt;
* Sowohl Feedbackfeld als auch das Fragefeld kann Bilder, Tabellen, externe Dateien und Sourcode-Listings enthalten.&lt;/div&gt;</summary>
		<author><name>Ckral</name></author>
	</entry>
	<entry>
		<id>https://wiki.letto.at/wiki/index.php?title=Beispielsammlung_Editieren&amp;diff=2344</id>
		<title>Beispielsammlung Editieren</title>
		<link rel="alternate" type="text/html" href="https://wiki.letto.at/wiki/index.php?title=Beispielsammlung_Editieren&amp;diff=2344"/>
		<updated>2020-05-16T09:49:28Z</updated>

		<summary type="html">&lt;p&gt;Ckral: Doppelpunkt (:) aus Überschrift entfernt&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;In der Edit-Ansicht können Beispiele verändert, geprüft und neu erstellt werden. &lt;br /&gt;
&lt;br /&gt;
Zurück zu [[Letto-Hauptansicht|LeTTo]], [[Beispielsammlung]]&lt;br /&gt;
[[Datei:FrageEditor.jpg|thumb|700px|Ansicht von &#039;Beispielsammlung Editieren&#039;]]&lt;br /&gt;
&lt;br /&gt;
=Übersicht=&lt;br /&gt;
Im Modus &#039;&#039;&#039;Beispielsammlung editieren&#039;&#039;&#039; ist oben eine [[Toolbar|Symbolleiste]] zur Steuerung der Anwendung angeordnet. Nähere Beschreibung der jeweiligen Buttons finden Sie unter [[Toolbar]].&lt;br /&gt;
&lt;br /&gt;
Im Bereich der Themen (siehe obige Abbildung) finden Sie eine [[Ordnerverwaltung|Ordnerstruktur]] ähnlich einem Dateimanager zur Sortierung und Speicherung der Fragen. Weiters finden Sie in diesem Bereich unten die Definition von [[Online-Tests]]. &lt;br /&gt;
&lt;br /&gt;
Die [[Fragenliste]] enthält alle Fragen eines Ordners sowie Möglichkeiten zum Hinzufügen, Ändern und Klonen ... von Fragen. &lt;br /&gt;
&lt;br /&gt;
Darunter finden sie die [[Bildvorschau]], die immer das zuletzt im [[Editor für den Angabetext|Editor]] angewählte Bild (Image, IMG) anzeigt.&lt;br /&gt;
&lt;br /&gt;
Der rechte Bereich des Editiermodus enthält alle Infos zur aktuell ausgewählten und gerade bearbeiteten Frage. Der obere Teil der Eingabemaske für Fragen ist für alle [[Fragetypen]] gleich.&lt;br /&gt;
&lt;br /&gt;
=Name der Frage=&lt;br /&gt;
:[[Datei:ClipCapIt-180618-180519.PNG|400px|thumb|Eingabefeld für den Fragenamen]]&lt;br /&gt;
Der Fragename bezeichnet die Frage und sollte Information über den Frageninhalt bringen. Alle Fragen einer [[Ordnerverwaltung|Kategorie oder Ordners]] werden mit ihrem Fragennamen in der [[Fragenliste]] angezeigt. Der Name sollte sprechend aber nicht zu lange sein, damit die Übersicht in der Fragenliste erhalten bleibt.&lt;br /&gt;
&lt;br /&gt;
Oberhalb des Fragennamens finden Sie noch den Fragetyp, den diese Frage hat.&lt;br /&gt;
&lt;br /&gt;
=Dokumente zu dieser Frage hochladen=&lt;br /&gt;
:[[Datei:ClipCapIt-181021-141443.PNG|500px]]&lt;br /&gt;
Ist die Checkbox &#039;&#039;&#039;Doks:&#039;&#039;&#039; ausgewählt, dann kann der Schüler bei der Beantwortung der Fragen auch Dokumente zur Testfrage auf den Server hochladen. &lt;br /&gt;
&lt;br /&gt;
Die folgende Abbildung zeigt die Buttons zum Testen der Lösung und den zusätzlichen Button &#039;&#039;&#039;Datei zur Frage hochladen&#039;&#039;&#039;, der dann eingeblendet wird, wenn bei der Fragedefinition die Option &#039;&#039;&#039;Doks:&#039;&#039;&#039; ausgewählt wurde.&lt;br /&gt;
:[[Datei:ClipCapIt-181021-142155.PNG|350px]]&lt;br /&gt;
Solange der Testversuch aktiv ist, können die Dokumnete vom Schüler wieder über den &#039;&#039;&#039;X&#039;&#039;&#039;-Button gelöscht werden oder weitere Dokumnete zu dieser Testfrage hochgeladen werden.&lt;br /&gt;
&lt;br /&gt;
Nach Beendigung des Testversuchs können die Dokumente nicht mehr geändert, sondern nur mehr heruntergeladen und angesehen werden.&lt;br /&gt;
&lt;br /&gt;
=Gefundene Werte=&lt;br /&gt;
Hier sind alle Konstante, die im Angabetext gefunden wurden, aufgelistet. Dieses Feld wird nach dem Verlassen des Editors für den Angabetext automatisch aktualisiert: Enthält der Fragetext Konstante in geschwungenen Klammern, die keine Datensätze sind, so werden diese Variablen automatisch aus dem Text extrahiert und angezeigt. Diese Werte können dann für die Berechnung der Lösung herangezogen werden.&lt;br /&gt;
&lt;br /&gt;
=Frage-Textfeld=&lt;br /&gt;
Siehe [[Editor für den Angabetext]].&lt;br /&gt;
&lt;br /&gt;
=Plugin-Info=&lt;br /&gt;
Im Bereich Plugin-Info finden Sie einen Button &#039;&#039;&#039;Plugins&#039;&#039;&#039; zur Definition der Plugins der Frage. Dadurch wird der [[Definition von Plugins|Dialog zur Plugindefinition]] geöffnet.&lt;br /&gt;
&lt;br /&gt;
Die Plugindefinition bildet immer einen Text-String. Dieser wird nach dem Schliessen des Dialogs im nebenstehenden Feld angezeigt und kann theoretisch auch verändert werden. Diese Option sollten aber nur erfahrene Benutzer verwenden, die sich mit der Syntax der Plugin-Definition auskennen.&lt;br /&gt;
&lt;br /&gt;
Der Scroller [[Datei:ClipCapIt-180831-204926.PNG|40px]] neben dem Eingabefeld dient zum Durchlaufen von allen definierten [[Datensätze|Datensätzen]] und zeigt die Änderungen der Grafiken an, wenn der Cursor auf einem [[Editor für den Angabetext#Spezielle TAGs im Fragentext|Plugin-Grafik-Tag]] [PIG...] im [[Editor für den Angabetext]] steht.&lt;br /&gt;
&lt;br /&gt;
=Beurteilungsbereich=&lt;br /&gt;
====&amp;lt;span id=&amp;quot;qPunkte&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;Punkte:====&lt;br /&gt;
Punkte, die bei richtiger Beantwortung der Frage für die gesamte Frage maximal vergeben werden können. Bei Mehrfachberechnungsfragen ist dieses Feld gesperrt und die Punkteanzahl wird automatisch als Gesamtpunktezahl aus allen Teilfragen berechnet.&lt;br /&gt;
&lt;br /&gt;
====&amp;lt;span id=&amp;quot;qPenalty&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;Penalty:====&lt;br /&gt;
Abzug, der bei einer falschen Beantwortung im [[Online-Tests#Testart|Rechenübungs- oder Hausübungmodus]] pro Versuch abgezogen wird.&lt;br /&gt;
&lt;br /&gt;
====&amp;lt;span id=&amp;quot;qEinheitenFehler&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;Einheitenfehler:====&lt;br /&gt;
Im Feld &amp;quot;EH-Fehler&amp;quot; wird ein Faktor angeben, der von den Punkten der richtigen Lösung abgezogen wird, wenn die Einheit falsch angegeben wurde.&lt;br /&gt;
&lt;br /&gt;
Der Wert von EH-Fehler muss zwischen 0 und 1 liegen!&lt;br /&gt;
&lt;br /&gt;
Erreichtepunkte = Maximalpunkte* (1 - EHFehler)&lt;br /&gt;
&lt;br /&gt;
z.B:&lt;br /&gt;
Das Beispiel hat 4 Punkte, der EH-Faktor ist 0.1.&lt;br /&gt;
Gibt nun der Schüler statt 0.2A den Wert 0.2V an, so erhält er 4*(1-0.1) = 3.6 Punkte.&lt;br /&gt;
Gibt der Schüler einen falschen Einheitenvorsatz wie 0.2mA an, so erhält er keine Punkte, da der Wert falsch ist!&lt;br /&gt;
&lt;br /&gt;
Siehe auch [[Einheit|Einheiten]], [[Online-Tests#Einheiteneinstellungen|Einheiteneinstellungen]]!&lt;br /&gt;
&lt;br /&gt;
====&amp;lt;span id=&amp;quot;cbParser&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;Checkbox Parser:====&lt;br /&gt;
Ist diese Checkbox ausgewählt, dann wird beim Berechnen der Symbolischen Lösung für das Ergebnis der Frage ud allen Teilfragen nicht [[Berechnungen#Berechnung mit Maxima|Maxima]], sondern der [[Berechnungen#Berechnung mit dem internen Parser|Interne Parser verwendet]].&lt;br /&gt;
&lt;br /&gt;
Siehe auch [[Berechnungen]]!&lt;br /&gt;
&lt;br /&gt;
====&amp;lt;span id=&amp;quot;cbSymbolisch&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;Checkbox Symbolisch:====&lt;br /&gt;
Ist diese Checkbox ausgewählt, dann werden beim Berechnen der Lösung mathematische Konstanten nur dann eingesetzt, wenn sie mit einer Gleitkommazahl verrechnet werden. Weiters werden Berechnungen mit Ganzzahlen nur dann als Gleitkommazahl ausgerechnet, wenn sie mit einer Gleitkommazahl verrechnet werden.&lt;br /&gt;
&lt;br /&gt;
=Datensätze=&lt;br /&gt;
Siehe [[Datensätze definieren#Erstellung / Änderung über den Datensatz-Bereich|Datensätze definieren]]&lt;br /&gt;
&lt;br /&gt;
=Kompetenzen zuordnen=&lt;br /&gt;
Mit dem Button [[Datei:ClipCapIt-180901-220702.PNG|20px]] aus dem [[Toolbar]] kann man zwischen der Datensatz- und der Kompetenz-Ansicht umschalten.&lt;br /&gt;
&lt;br /&gt;
Siehe auch [[Kompetenzzuordnung]].&lt;br /&gt;
&lt;br /&gt;
=Maxima-Feld=&lt;br /&gt;
&lt;br /&gt;
Das Maximafeld wird für die Berechnung der Ergebnisformel verwendet. Für die Berechnung des Maxima-Feldes wird der Inhalt des Feldes mit einem Präprozessor vorbearbeitet und dann an Maxima gesendet, oder der Inhalt wird direkt mit dem internen Parser von Letto verarbeitet. Da einige Funktionen des internen Parsers von Maxima nicht unterstützt werden und umgekehrt der interne Parser nicht den vollen Funktionsumfang von Maxima unterstützt, ist je nach Aufgabenstellung die eine oder andere Variante zu verwenden.&lt;br /&gt;
&lt;br /&gt;
Siehe auch [[Berechnungen]]!&lt;br /&gt;
&lt;br /&gt;
====Maxima Berechnung:====&lt;br /&gt;
Siehe [[Berechnungen#Berechnung mit Maxima|Maxima-Berechnungen]]&lt;br /&gt;
&lt;br /&gt;
* Zahlenwerte mit Einheiten werden, bevor das Feld an Maxima geschickt wird, durch interne Variablen ersetzt, die bei der Berechnung des Ergebnisses dann wieder mit Einheiten eingesetzt werden. Die Maxima-Berechnung erfolgt dadurch wie in Maxima üblich ohne Einheiten.&lt;br /&gt;
* graphische Elemente von Maxima wie plot etc. können nicht verwendet werden&lt;br /&gt;
* Jeder Durchlauf des Maximafeldes beginnt mit einer neuen leeren Maxima-Umgebung in der die Datei letto.mac geladen wird. Die Datei moodle.mac kann in der globalen Einstellungen des Servers für alle Benutzer gemeinsam vom Administrator konfiguriert werden. Unter anderem wird hier der Operator || definiert, der für die Parallelschaltung von Widerständen und Impedanzen verwendet werden kann.&lt;br /&gt;
* Es können auch alle Funktionen des internen Parsers, die Maxima nicht kennt verwendet werden. Jedoch kann Maxima diese Funktionen weder vereinfachen noch berechnen, dies muss dann Online beim Berechnen des Lösungsfeldes durch Letto direkt erfolgen. Dementsprechend kann auch der Befehl &#039;&#039;&#039;solve&#039;&#039;&#039; von Maxima keine Funktionen auflösen, die nur vom internen Parser untersützt werden.&lt;br /&gt;
&lt;br /&gt;
====Interner Parser von Letto:====&lt;br /&gt;
Siehe [[Berechnungen#Berechnung_mit_dem_internen_Parser|Interner Parser]]&lt;br /&gt;
&lt;br /&gt;
* unterstützt Einheiten&lt;br /&gt;
* unterstützt Dualzahlen und Hexadezimalzahlen&lt;br /&gt;
* unterstützt einige Funktionen, die für technische Berechnungen vorteilhaft verwendet werden können. Die Liste der möglichen Funktionen ist in der Hilfe direkt nachzulesen.&lt;br /&gt;
* Der interne Parser von Letto wird immer für die Berechnung des Lösungsfeldes einer Berechnungs- oder Mehrfachberechnungsfrage verwendet.&lt;br /&gt;
====Einheiten:====&lt;br /&gt;
Zahlenwerte mit Einheit können auf mehrere Arten im Maximafeld verwendet werden:&lt;br /&gt;
* Als Datensatz mit Einheit durch Verwendung des Datensatzbezeichners: Dies ist die einfachste Variante, bei der gleichzeitig auch für jeden Schüler ein anderer Zahlenwert definiert werden kann&lt;br /&gt;
* Als Direkteingabe im Maxima-Feld mit Zahlenwert, gefolgt von der Einheit in einfachen Hochkomma ( x:13&#039;A/m&#039; oder y:x*56&#039;VA-1&#039; )&lt;br /&gt;
* Wenn die Einheit keine Rechenoperatoren enthält kann die Einheit direkt am Zahlenwert angehängt werden: zB.: U:23V oder I:U/2Ohm&lt;br /&gt;
&lt;br /&gt;
Der Präprozessor, der das Maximafeld vor der Berechnung durchläuft hat folgende Aufgaben:&lt;br /&gt;
&lt;br /&gt;
* Bei Maxima-Berechnungsmodi werden alle Zahlenwerte welche eine Einheit haben durch Variable ersetzt welche bei der späteren Berechnung wieder eingesetzt werden können&lt;br /&gt;
* jede Zeile wird automatisch abgeschlossen, man benötigt daher kein ; oder $ am Zeilenende und es sind dadurch keine mehrzeiligen Befehle möglich&lt;br /&gt;
* Bezeichner dürfen nur die Zeichen a-zA-Z0-9 enthalten (zB. der Unterstrich ist verboten)&lt;br /&gt;
* Bemerkungen werden wie in C oder Java übliche am Zeilenanfang mit einem doppelten Schrägstrich eingefügt&lt;br /&gt;
&lt;br /&gt;
====Wichtige Funktionen====&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Funktion !!  Beschreibung 	!! Beispiel 	!! Ergebnis&lt;br /&gt;
|-&lt;br /&gt;
| floor(x) ||  Kommazahl auf die nächste Ganzzahl abrunden 	|| ||&lt;br /&gt;
|-&lt;br /&gt;
| round(x) ||  Kommazahl auf Ganzzahl runden 	|| ||&lt;br /&gt;
|-&lt;br /&gt;
| pi() 	   ||  die Zahl Pi 	|| ||&lt;br /&gt;
|-&lt;br /&gt;
| exp(1)   ||  die eulersche Zahl e || ||&lt;br /&gt;
|-&lt;br /&gt;
| exp(x)   ||  Exponentialfunktion e hoch x 	|| ||&lt;br /&gt;
|-&lt;br /&gt;
| abs(x)   ||  Absolutbetrag  ||  abs(-2) 	||  2&lt;br /&gt;
|-&lt;br /&gt;
| acos(x), acosh(x), asin(x), &lt;br /&gt;
&lt;br /&gt;
asinh(x), atan2(y,x), atan(x), &lt;br /&gt;
&lt;br /&gt;
atanh(x), cos(x), cosh(x), &lt;br /&gt;
&lt;br /&gt;
sin(x), sinh(x), tan(x), tanh(x)  &lt;br /&gt;
||	Winkelfunktionen 	|| ||&lt;br /&gt;
|-&lt;br /&gt;
| deg2rad(x) ||	Grad in Radianten umwandeln 	|| ||&lt;br /&gt;
|-&lt;br /&gt;
| rad2deg(x) ||	Radianten in Grad umwandeln 	|| ||&lt;br /&gt;
|-&lt;br /&gt;
| max(x,y,z) ||	Liefert das Maximum der angegebenen Parameter 	|| max(2,5,3)  ||	5&lt;br /&gt;
|-&lt;br /&gt;
| min(x,y,z) ||	Liefert das Minimum der angegebenen Parameter 	|| min(3,2,6,34) ||	2&lt;br /&gt;
|-&lt;br /&gt;
| log10(x)   ||	10er Logarithmus 	||  log10(100)  || 	2&lt;br /&gt;
|-&lt;br /&gt;
| log(x)     ||	natürlicher Logarithmus 	|| ||&lt;br /&gt;
|-&lt;br /&gt;
| pow(x,y)   ||	berechnet die Potenz x hoch y  ||	pow(2,3) 	|| 8&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
====Tipps für Maxima-Newcomer====&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Befehl 	!!  Beschreibung&lt;br /&gt;
|-&lt;br /&gt;
| a:5  || 	Der Variablen a den Wert5 zuweisen&lt;br /&gt;
|-&lt;br /&gt;
| g1:x+y=5&lt;br /&gt;
&lt;br /&gt;
g2:x-y=3&lt;br /&gt;
&lt;br /&gt;
L:solve([g1,g2],[x,y])&lt;br /&gt;
&lt;br /&gt;
x:ev(x,L)&lt;br /&gt;
&lt;br /&gt;
y:ev(y,L)&lt;br /&gt;
|| 	Gleichungssystem lösen mit den Gleichungen g1 und g2&lt;br /&gt;
&lt;br /&gt;
solve löst das Gleichungssystem und liefert den Ergebnisvektor L&lt;br /&gt;
&lt;br /&gt;
ev berechnet aus dem Lösungsvektor die Variablen&lt;br /&gt;
|-&lt;br /&gt;
| c:4+5*%i   ||	komplexe Zahl&lt;br /&gt;
|-&lt;br /&gt;
| e:ratsimp(c*(2+3*%i)) 	|| komplexes Ergebnis auswerten&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=Eingabemasken für die unterschiedlichen Fragetypen=&lt;br /&gt;
&lt;br /&gt;
==Mehrfachberechnungsfrage==&lt;br /&gt;
&lt;br /&gt;
* Fragen dieses Typs sind sehr flexibel.&lt;br /&gt;
* Die Frage kann mehrere Teilantworten beinhalten. Jede Teilfrage wird im Fragetext durch einen [Qx]-Tag (x..Fragenummer) positioniert. Bei der Schülereingabe wird der Tag durch ein Eingabefeld für die Ergebniseingabe ersetzt.&lt;br /&gt;
* Die Angabewerte sind wie bei Berechnungsfragen mittels [[Datensätze|Datensätzen]] definierbar und variieren von Schüler zu Schüler.&lt;br /&gt;
* Alle verwendeten [[Datensätze|Variablen]] müssen im Angabtext in geschwungene Klammern gesetzt werden. Im [[Berechnungen|Maximafeld]] und im Lösungsfeld ist die Klammer nicht notwendig.&lt;br /&gt;
* Für jede Variable wird ein Dataset mit möglichen Werten angelegt. Diese Datasets können über einen [[Datensätze_definieren#Definition_der_Werte|Formatierungsstring]] definiert werden und danach auch direkt in einer Liste bearbeitet werden.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
:[[Datei:ClipCapIt-180831-220929.PNG|600px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Übersicht über alle Spalten der Detail-Ansicht:&#039;&#039;&#039;&lt;br /&gt;
====Q....====&lt;br /&gt;
Spalte mit der Kurzbezeichnung für die Teilfrage. Unter diesem Namen wird im Editor für die Angabe die Teilfrage mit [Qx] referenziert. An dieser Position steht dann bei der Testausführung das Eingabeelement für diese Teilfrage.&lt;br /&gt;
&lt;br /&gt;
====&amp;lt;span id=&amp;quot;sqProzInput&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;Prozent für die Antwort einer Teilfrage====&lt;br /&gt;
&lt;br /&gt;
Wenn der Schüler die Antwort gibt, die in der Zeile dieser Teilantwort steht, bekommt er den prozentuellen Anteil der Gesamtpunkt der Teilfrage.&lt;br /&gt;
&lt;br /&gt;
Je nach Antwort-Modus muss sichergestellt sein, dass der Schüler durch die richtige Eingabe der Antwort 100 Prozent erreichen kann.&lt;br /&gt;
&lt;br /&gt;
====&amp;lt;span id=&amp;quot;sqGradeInput&amp;quot;&amp;gt;Punkte einer Teilfrage====&lt;br /&gt;
Punkteanzahl für die richtige Beantwortung einer Teilfrage.&lt;br /&gt;
&lt;br /&gt;
Die Gesamtpunktanzahl einer Mehrfachberechnungsfrage ergibt sich immer aus der Summe der Punkte der Teilfragen.&lt;br /&gt;
&lt;br /&gt;
====&amp;lt;span id=&amp;quot;sqMaximaInput&amp;quot;&amp;gt;Maximafeld für die Antwort einer Teilfrage====&lt;br /&gt;
Siehe auch [[Berechnungen]]!&lt;br /&gt;
&lt;br /&gt;
Dieses Feld wird nach dem Durchlaufen des globalen Maxima-Feldes der Frage mit Maxima aufgerufen und liefert als Lösung den Ausdruck, der im Lösungsfeld eingesetzt wird.&lt;br /&gt;
&lt;br /&gt;
Es wird nur im Antwort-MODE &amp;quot;calculated&amp;quot; und &amp;quot;boolsch&amp;quot; berechnet.&lt;br /&gt;
&lt;br /&gt;
====&amp;lt;span id=&amp;quot;sqEinheitInput&amp;quot;&amp;gt;Ziel-Einheit der Antwort einer Teilfrage:====&lt;br /&gt;
Siehe unter [[ZielEinheit]]!&lt;br /&gt;
&lt;br /&gt;
====&amp;lt;span id=&amp;quot;modeSel_focus&amp;quot;&amp;gt;Antwortmode====&lt;br /&gt;
Art der Antwort:&lt;br /&gt;
&lt;br /&gt;
* Single-Choice: Es gibt mehrere Lösungen, die dem Schüler vorgeschlagen werden. Der Schüler muss nun von diesen Lösungen genau eine Auswählen. Die Lösungen stehen als String im Lösungsfeld&lt;br /&gt;
* Text: Die Lösung welche im Lösungsfeld steht ist eine Zeichenkette die vom Schüler genau so eingegeben werden muss&lt;br /&gt;
* Regexp: Im Lösungsfeld wird ein regulärer Ausdruck angeben, mit dem überprüft wird, ob die Antwort des Schülers richtig ist.&lt;br /&gt;
* Multichoice: Es gibt mehrere Lösungen, die dem Schüler vorgeschlagen werden. Der Schüler muss nun von diesen Lösungen eine oder mehrere Auswählen. Die Lösungen stehen als String in Lösungsfeld.&lt;br /&gt;
* Calculated: Im Lösungsfeld steht ein symbolischer Ausdruck, der aus dem Maxima-Feld errechnet wurde. Zur Laufzeit wird daraus mit dem Parser die Lösung berechnet.&lt;br /&gt;
* Boolsch: Dieser Fragemode kann nur sinnvoll bei einer Mehrfachberechnungsfrage verwendet werden. In diesem Modus kann man die Schülereingaben anderer Teilfragen nach Eingabe durch den Parser auswerten lassen und damit Punkte vergeben. Es lassen sich somit Folgefehler von Schülern berücksichtigen und bei der Dimensionierung können Angabe-Bedingungen geprüft werden, die über die Lösung einer Teilfrage nicht eindeutig wären. Der Zugriff auf die Schülereingabe einer anderen Teilfrage erfolgt im Lösungsfeld mit der Variablen Q gefolgt von der Teilfragenummer (zB. Q1 für die Teilfrage 1)&lt;br /&gt;
&lt;br /&gt;
====&amp;lt;span id=&amp;quot;sqToleranceInput&amp;quot;&amp;gt;Toleranz der Antwort einer Teilfrage====&lt;br /&gt;
Die Toleranz, wie genau ein Schüler seine Antwort angeben muss:&lt;br /&gt;
* Die Toleranz ist im Normalfall eine &#039;&#039;&#039;relative Angabe&#039;&#039;&#039; und wird in &#039;&#039;&#039;Prozent&#039;&#039;&#039; angegeben&lt;br /&gt;
* Wird bei der Toleranz kein Prozent angegeben, so muss der Wert zwischen 0 und 1 liegen und entspricht dann dem Prozentwert durch 100&lt;br /&gt;
* Wird bei der Toleranz vor oder nach dem Wert ohne Prozentzeichen ein &#039;&#039;&#039;a&#039;&#039;&#039; angegeben, so wird dieser Wert als &#039;&#039;&#039;absolute Toleranz&#039;&#039;&#039; der Größe in SI-Einheiten interpretiert. ( z.B.: 0.1a bei einem eletrischen Strom in Ampere entspricht einer absoluten Toleranz von 0.1A ) Absolute Toleranzen sind vor allem bei Ergebnissen welche Null sind notwendig, da die Berechnung statt 0 meist eine sehr kleine Zahl berechnet, welche dann mit einer relativen Toleranz auch extrem genau eingegeben werden muss und 0 dadurch nicht im Toleranzbereich liegen kann!&lt;br /&gt;
&lt;br /&gt;
====&amp;lt;span id=&amp;quot;sqLoesungInput&amp;quot;&amp;gt;Lösung der Antwort einer Teilfrage====&lt;br /&gt;
In der Lösungsformel steht die richtige Antwort der Frage, je nach Fragemode hat das Lösungsfeld verschiedene Funktionalität!&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Fragemode 	!! Bedeutung des Lösungsfeldes 	!! Inhalt&lt;br /&gt;
|-&lt;br /&gt;
| Single-Choice || Lösung wie sie am Browser ausgegeben wird 	|| Eingabe&lt;br /&gt;
|-&lt;br /&gt;
| Text 	        || Lösung wie sie der Schüler eingeben sollte 	|| Eingabe&lt;br /&gt;
|-&lt;br /&gt;
| Regexp 	|| Regulärer Ausdruck (in Java Syntax) welcher für die richtige Lösung treffen muss 	|| Eingabe&lt;br /&gt;
|-&lt;br /&gt;
| Multichoice 	|| Lösung wie sie am Browser ausgegeben wird. 	|| Eingabe&lt;br /&gt;
|-&lt;br /&gt;
| Calculated 	|| Berechnungsformel, mit der zur Testzeit die richtige Lösung berechnet wird, die mit der Schülereingaben verglichen wird. 	|| automatische Berechnung aus dem Maximafeld&lt;br /&gt;
|-&lt;br /&gt;
| Boolsch 	|| Berechnungsformel, die nach der Schülereingabe berechnet wird. Das Ergebnis der Formel muss boolsch sein. Wenn das Ergebnis true ist bekommt der Schüler die angegebenen Punkte. 	|| automatische Berechnung aus dem Maximafeld&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
====&amp;lt;span id=&amp;quot;sqErgInfoInput&amp;quot;&amp;gt;Infofeld der Antwort einer Teilfrage====&lt;br /&gt;
* Bei Berechnungsfragen die Antwort des ersten Datensatzes, das Feld ist dann schreibgeschützt&lt;br /&gt;
* Bei Boolschen Fragen kann hier eine Information erfolgen, wie die Frage bewertet wurde.&lt;br /&gt;
&lt;br /&gt;
==Berechnungsfrage==&lt;br /&gt;
:[[Datei:ClipCapIt-180901-122143.PNG|400px]]&lt;br /&gt;
&lt;br /&gt;
Die Berechnungsfrage ist ähnlich aufgebaut wie eine Mehrfachberechnungsfrage mit nur einer Berechnung. Diese Frage kann aber mehrere unterschiedliche Lösungen bereitstellen, um zB. typische Berechnungsfehler mit Punkteabzügen zu beurteilen. Es können also zusätzliche Reiter mit mehreren Antwortmöglichkeiten über das Kontextmenü erzeugt bzw. wieder gelöscht werden.&lt;br /&gt;
&lt;br /&gt;
:[[Datei:ClipCapIt-180901-212431.PNG|thumb|450px|Übersicht Erstellung einer Berechnungsfrage]]&lt;br /&gt;
&lt;br /&gt;
:[[Datei:ClipCapIt-180901-132831.PNG|400px]]&lt;br /&gt;
&lt;br /&gt;
* Berechnende Fragen sind wie Mehrfachberechnungsfragen mit nur einer Teilfrage bei dem das Antwortfeld automatisch erscheint.&lt;br /&gt;
* Jeder Schüler bekommt eine eigene Angabe&lt;br /&gt;
* Für den Druck kann die Frage auch für Projektangaben verwendet werden.&lt;br /&gt;
* Berechnungen erfolgen mit Maxima&lt;br /&gt;
* Alle verwendeten Variablen müssen im Angabtext in geschwungene Klammern gesetzt werden. Im Maximafeld und im Lösungsfeld ist die Klammer nicht notwendig.&lt;br /&gt;
* Für jede Variable wird ein Dataset mit möglichen Werten angelegt. Diese Datasets können über einen Formatierungsstring definiert werden und danach auch direkt in einer Liste bearbeitet werden.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Wenn mehrer Antwortmöglichkeiten definiert wurden, wird links ein zusätzliches Eingabefeld &#039;&#039;&#039;Antwort Maxima:&#039;&#039;&#039; angezeigt. Damit können Sie unterschiedliche Ergebnisse der Maxima-Berechnungen den unterschiedlichen Antworten zuordnen.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Feld !!  Beschreibung&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;Antwort Maxima  ||    [[#Lösung_der_Antwort_einer_Teilfrage|Verhalten wie bei der Mehrfachberechnungsfrage]], siehe [[Berechnungen]] &lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;Einheit:&#039;&#039;&#039;   || [[ZielEinheit|Defiition der Einheit oder sonstiges Frageerhalten]]&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;Prozent:&#039;&#039;&#039;   || [[#Prozent_für_die_Antwort_einer_Teilfrage|Prozentangaben für unterschiedliche Lösungen]]&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;Toleranz:&#039;&#039;&#039;  ||  [[#Toleranz_der_Antwort_einer_Teilfrage|Toleranz für den Ergebniswert wie bei Mehrfachberechnungsfrage]]&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;Mode:&#039;&#039;&#039;      ||  [[#Antwortmode|Berechungs-Modus]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Die Zeile &#039;Lösung für 1. Datenstatz&#039; zeigt das Ergebnis an, wenn der Werte des 1. Datensatzes in die Lösungsformel eingesetzt werden. Diese Zeile dient der Kontrolle, ob die Lösung mit Zahlenwerten auch Sinn macht und ob die Einheiten zusammenpassen.&lt;br /&gt;
&lt;br /&gt;
Das Eingabefeld &#039;&#039;&#039;Lösung&#039;&#039;&#039; ist schreibgeschützt und kann nur durch die [[Berechnungen#Berechnung mit Maxima|Maxima-Berechnung]] oder den [[Berechnungen#Berechnung_mit_dem_internen_Parser|internen Parser]] bestimmt werden.&lt;br /&gt;
&lt;br /&gt;
==Lückentextfrage==&lt;br /&gt;
Ein Lückentext enthält Lücken innerhalb eines Fragetextes, die durch den Schüler mit dem korrekten Inhalt gefüllt werden sollen.&lt;br /&gt;
&lt;br /&gt;
Folgende Modi sind dabei für die Lücken möglich:&lt;br /&gt;
* Texteingabe: Der Schüler muss das fehlende Wort je nach Fragemodus in die Lücke über die Tastatur eingeben oder per Drag&amp;amp;Drop auf die Lücke ziehen&lt;br /&gt;
* Multiple-Choice: Der Schüler kann aus mehreren Antwortmöglichkeiten eine oder mehrere richtige Elemente selektieren&lt;br /&gt;
* Single-Choice: Der Schüler kann mit einem Drop-Down-Auswahlfeld aus mehreren Antwortmöglichkeiten genau ein richtiges Element selektieren&lt;br /&gt;
&lt;br /&gt;
Da es bei Lückentextfragen um Texte geht, gibt es hier keine Datensätze oder Maxima-Berechnungen.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Fragemodus:&#039;&#039;&#039;&lt;br /&gt;
:[[Datei:ClipCapIt-180901-155006.PNG|200px]]&lt;br /&gt;
&lt;br /&gt;
Der Fragemodus gibt an wie Texteingabe-Lücken verarbeitet werden&lt;br /&gt;
&lt;br /&gt;
* Normal: Der Schüler muss den Text über die Tastatur in die Lücke eintragen.&lt;br /&gt;
* Drag-and-Drop: Der Schüler muss aus einer Liste von möglichen Antworten die richtigen Antworten auf die Lücken ziehen.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Funktionstasten:&#039;&#039;&#039;&lt;br /&gt;
F8: aktuelles Wort, bei dem der Cursor steht, als Textlücke definieren (Vorsicht: Wort nicht markieren!), siche auch  [[Editor_für_den_Angabetext#Schnelleingabe_.2F_Tastatur-Shortcuts|alle Funktionstasten]]&lt;br /&gt;
&lt;br /&gt;
====Erstellung der Frage:====&lt;br /&gt;
&lt;br /&gt;
Im [[Editor für den Angabetext|Textbereich des Editors]] werden die Lücken durch Antwortformulierungen in eckigen Klammern realisiert. Mit &#039;&#039;&#039;F8&#039;&#039;&#039; kann das aktuelle Wort, bei dem der Cursor steht, als Textlücke definiert werden.&lt;br /&gt;
&lt;br /&gt;
:[[Datei:ClipCapIt-180901-161337.PNG|thumb|450px|Beispiel einer Eingabe]]&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;Texteingabe:&#039;&#039;&#039;&lt;br /&gt;
** Im Fragemodus &amp;quot;Normal&amp;quot; muss der Schüler den Text in der Lücke eingeben&lt;br /&gt;
** Im Fragemodus &amp;quot;Drag and Drop&amp;quot; muss der Schüler aus einer Liste von Antworttexten den richtigen Text über die Lücke ziehen. Hierbei wird die Liste der Antworttexte aus allen richtigen und falschen Antworten der Texteingabe-Felder zusammengesetzt.&lt;br /&gt;
** Syntax:&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;margin-left:50px&amp;quot;&lt;br /&gt;
| [text]     || 	Das Wort &amp;quot;text&amp;quot; als Lücke mit 1 Punkt für die richtige Antwort&lt;br /&gt;
|-&lt;br /&gt;
| [2&amp;lt;nowiki&amp;gt;|&amp;lt;/nowiki&amp;gt;text]     || 	Das Wort &amp;quot;text&amp;quot; mit 2 Punkten für die richtige Antwort&lt;br /&gt;
|-&lt;br /&gt;
| [1&amp;lt;nowiki&amp;gt;|&amp;lt;/nowiki&amp;gt;text,50:alt,0:nix]   ||	2 Punkte für die richtige Antwort &amp;quot;text&amp;quot;, 50%von zwei Punkten für &amp;quot;alt&amp;quot;, &amp;quot;nix&amp;quot; als falsche Antwort für &amp;quot;Drag and Drop&amp;quot;-Fragen&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;Multiple-Choice:&#039;&#039;&#039;&lt;br /&gt;
**      unabhängig vom Fragemodus&lt;br /&gt;
**      mindestens eine Antwort muss richtig sein&lt;br /&gt;
**      Syntax:&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;margin-left:50px&amp;quot;&lt;br /&gt;
| [M&amp;lt;nowiki&amp;gt;|&amp;lt;/nowiki&amp;gt;x:richtig,falsch1,falsch2]  ||	Die richtigen Antwortfelder sind mit x: markiert&lt;br /&gt;
|-&lt;br /&gt;
| [M&amp;lt;nowiki&amp;gt;|&amp;lt;/nowiki&amp;gt;x:rot,x:grün,blau,gelb] 	 ||     rot und grün sind richtig&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;Single-Choice:&#039;&#039;&#039;&lt;br /&gt;
**      unabhängig vom Fragemodus&lt;br /&gt;
**      der Schüler muss eine Antwort aus mehreren wählen&lt;br /&gt;
**      Syntax:&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;margin-left:50px&amp;quot;&lt;br /&gt;
| [S&amp;lt;nowiki&amp;gt;|&amp;lt;/nowiki&amp;gt;x:richtig,falsch,falsch] 	||  x kennzeichnet eine richtige Antwort&lt;br /&gt;
|-&lt;br /&gt;
| [S&amp;lt;nowiki&amp;gt;|&amp;lt;/nowiki&amp;gt;x:rot,x:grün,50:blau,gelb] ||  bei rot und grün alle Punkte, bei blau 50 Prozent der Punkt, bei gelb 0 Punkte&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;Sonderzeichen&#039;&#039;&#039; innerhalb einer Lücke &lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;margin-left:50px&amp;quot;&lt;br /&gt;
| Bezeichnung || Zeichen || Ersatzzeichen &lt;br /&gt;
|-&lt;br /&gt;
| Komma(Beistrich) || ,  || ,, &lt;br /&gt;
|-&lt;br /&gt;
| Komma(Beistrich) || ,  || \, &lt;br /&gt;
|-&lt;br /&gt;
| eckige Klammer auf || [ || \[ &lt;br /&gt;
|-&lt;br /&gt;
| eckige Klammer zu || ] || \]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;Sonderzeichen&#039;&#039;&#039; im Fragetext, welche nicht in einer Lücke sind:&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;margin-left:50px&amp;quot;&lt;br /&gt;
| Bezeichnung || Zeichen || Ersatzzeichen &lt;br /&gt;
|-&lt;br /&gt;
| eckige Klammer auf || [ || \[ &lt;br /&gt;
|-&lt;br /&gt;
| eckige Klammer zu || ] || \]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
====Schülereingabe der Frage:====&lt;br /&gt;
Die oben in der Abbildung definierte Lückentextfrage führt zu der links abgebildeten Aufgabenstellung während eines [[Online-Tests]].&lt;br /&gt;
:[[Datei:ClipCapIt-180901-185126.PNG|350px]]&lt;br /&gt;
&lt;br /&gt;
==Multiple-Choice-Frage==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* Der Schüler kann eine oder mehrere vorgegebene Antworten als richtig ankreuzen.&lt;br /&gt;
* Die Antworten werden bei jedem Schüler in einer anderen Reihenfolge vorgeschlagen.&lt;br /&gt;
* Es gibt zwei mögliche Eingabeansichten&lt;br /&gt;
**        automatische Prozentvergabe: Alle richtigen Antworten bekommen einen Haken. Der Computer teilt dann die Prozentwerte gleichmäßig auf alle richtigen Antworten auf.&lt;br /&gt;
**        explizite Definition der Prozentwerte: Neben jeder Antwort kann ein Prozentwert angegeben werden, welcher zugewiesen wird wenn die Antwort angekreuzt ist. Die Summe der Prozentwerte aller richtigen Antworten muss dabei 100 ergeben!&lt;br /&gt;
&lt;br /&gt;
====Beispiele für eine Multiple-Choice-Frage in unterschiedlichen Ansichten====&lt;br /&gt;
&#039;&#039;&#039;CheckboxFeedback: &#039;&#039;&#039;&lt;br /&gt;
Eingabe der Antworten der Multiple-Choice-Frage durch Checkboxen: Die richtigen Antworten bekommen links davon in der Checkbox ein Häckchen. Neben den Antworten können Sie ein Feedback angeben, warum Antworten falsch oder richtig sind.&lt;br /&gt;
:[[Datei:ClipCapIt-180901-214517.PNG|400px]]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Checkbox: &#039;&#039;&#039;&lt;br /&gt;
Eingabe der Antworten der Multiple-Choice-Frage durch Checkboxen: Die richtigen Antworten bekommen ein Häckchen. Feedback-Eingaben sind nicht möglich.&lt;br /&gt;
:[[Datei:ClipCapIt-180901-214538.PNG|400px]]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;ProzentFeedback: &#039;&#039;&#039;&lt;br /&gt;
Die Antworten werden mit Prozentwerten versehen. Die Summe über alle positiven Prozent-Werte muss genau 100 Prozent ergeben! &lt;br /&gt;
Bei falschen Antworten können Sie Werte von -100 eingeben, dann wird bei einer falschen Antwort die ganze Frage als falsch beurteilt.&lt;br /&gt;
Wird dieser negative Prozentwert geringer als -100 gewählt, dann kann die Frage noch teilweise richtig beurteilt werden.&lt;br /&gt;
Neben den Antworten können Sie ein Feedback angeben, warum Antworten falsch oder richtig sind.&lt;br /&gt;
:[[Datei:ClipCapIt-180901-214557.PNG|400px]]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Prozent: &#039;&#039;&#039;&lt;br /&gt;
Die Antworten werden mit Prozentwerten versehen. Die Summe über alle positiven Prozent-Werte muss genau 100 Prozent ergeben! &lt;br /&gt;
Bei falschen Antworten können Sie Werte von -100 eingeben, dann wird bei einer falschen Antwort die ganze Frage als falsch beurteilt.&lt;br /&gt;
Wird dieser negative Prozentwert geringer als -100 gewählt, dann kann die Frage noch teilweise richtig beurteilt werden.&lt;br /&gt;
:[[Datei:ClipCapIt-180901-214616.PNG|400px]]&lt;br /&gt;
&lt;br /&gt;
Das Maxima-Feld kann auch für Multiple-Choice-Fragen für Berechnungen und für die Definition von Formeln verwendet werden. In den Antworten für die Multiple-Choice-Frage können Sie sich über {= ...} auf die Ergebnisse beziehen.&lt;br /&gt;
:[[Datei:ClipCapIt-180901-215517.PNG|400px]]&lt;br /&gt;
Die obige Frage wurde mit dieser Berechnung durchgeführt.&lt;br /&gt;
&lt;br /&gt;
==Zuordnungsfrage==&lt;br /&gt;
&lt;br /&gt;
Die Antwort auf jede der Unterfragen muss aus einer Liste von Möglichkeiten ausgewählt werden.&lt;br /&gt;
Im Prinzip hat der Schüler 2 Listen mit Antworten und Fragen, die er richtig zuordnen muss.&lt;br /&gt;
&lt;br /&gt;
[[Datei:ClipCapIt-180618-225643.PNG|500px]]&lt;br /&gt;
&lt;br /&gt;
Mit der Auswahlliste für das Anzeigeverhalten kann gesteuert werden, ob und wie die Zuordnungen bei einem Test gemischt werden.&lt;br /&gt;
&#039;&#039;Nur links mischen&#039;&#039; bedeutet, dass die Antwortmöglichkeiten auf der linken Seite der Zuordnungsfrage bei jedem Öffnen der Frage anders dargestellt werden.&lt;br /&gt;
&lt;br /&gt;
Folgende Einstellungen sind möglich:&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|Nicht mischen      ||  Die Reihenfolge wird so, wie sie in der Frage definiert ist, gewählt&lt;br /&gt;
|+&lt;br /&gt;
|Mischen            ||  Auf der linken und auf der rechten Seite werden die Antwortmöglichkeiten zufällig angeordnet&lt;br /&gt;
|+&lt;br /&gt;
|Nur links mischen  ||  Nur auf der linken Seite werden die Antwortmöglichkeiten zufällig angeordnet&lt;br /&gt;
|+&lt;br /&gt;
|Nur rechts mischen  || Nur auf der rechten Seite werden die Antwortmöglichkeiten zufällig angeordnet&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Pro Zeile werden die zusammengehörenden Begriffe in die Tabelle eingetragen.&lt;br /&gt;
Um Zuordnungsfragen zu erschweren, können auf der rechten Seite auch falsche Begrife angeführt werden, die nicht eine Entsprechung auf der linken Seite haben.&lt;br /&gt;
&lt;br /&gt;
Weiters können auf der linken Seite auch mehrere gleichnamige Begriffe verwendet werden, um Zuordnungen zu Themengruppen zu ermöglichen.&lt;br /&gt;
&lt;br /&gt;
==Freitextfrage==&lt;br /&gt;
Der Schüler erhält zur Fragebeantwortung ein Textfeld, in dem die Antwort eingetragen werden kann. Diese Fragen müssen aber manuell korrigiert werden!&lt;br /&gt;
Bei der Frageerstellung kann nur das Feedbackfeld ausgefüllt werden. Dieses kann eine mögliche Lösung der Aufgabenstellung enthalten und wird dem Schüler nach der Testausführung (Test wurde bereits beendet) angezeigt.&lt;br /&gt;
&lt;br /&gt;
* Eine Freitextfrage hat keine automatische Korrekturmöglichkeit!&lt;br /&gt;
* Verwendung für:&lt;br /&gt;
**        Fragen, die online über die Tastatur beantwortet werden und vom Lehrer über den Letto-Server händisch beurteilt werden.&lt;br /&gt;
**        Fragen, die nur als Angabe für Projekte, Laborübungen usw. dienen.&lt;br /&gt;
**        Fragen, die auf Papier beantwortet werden.&lt;br /&gt;
* Das Ergebnis kann im Feedback-Feld angegeben werden&lt;br /&gt;
**        und beim Online-Test dem Schüler als Feedback nach dem Test bekanntgegeben werden.&lt;br /&gt;
**        Bei Beispielsammlungen kann der Schüler das Feedbackfeld nie einsehen!&lt;br /&gt;
**        Bei Hausübungen kann der Schüler das Feedbackfeld erst nach Ablauf der Abgabefrist einsehen!&lt;br /&gt;
* Sowohl Feedbackfeld als auch das Fragefeld kann Bilder, Tabellen, externe Dateien und Sourcode-Listings enthalten.&lt;/div&gt;</summary>
		<author><name>Ckral</name></author>
	</entry>
	<entry>
		<id>https://wiki.letto.at/wiki/index.php?title=Beispielsammlung_Editieren&amp;diff=2343</id>
		<title>Beispielsammlung Editieren</title>
		<link rel="alternate" type="text/html" href="https://wiki.letto.at/wiki/index.php?title=Beispielsammlung_Editieren&amp;diff=2343"/>
		<updated>2020-05-16T09:49:04Z</updated>

		<summary type="html">&lt;p&gt;Ckral: Doppelpunkt (:) aus Überschrift entfernt&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;In der Edit-Ansicht können Beispiele verändert, geprüft und neu erstellt werden. &lt;br /&gt;
&lt;br /&gt;
Zurück zu [[Letto-Hauptansicht|LeTTo]], [[Beispielsammlung]]&lt;br /&gt;
[[Datei:FrageEditor.jpg|thumb|700px|Ansicht von &#039;Beispielsammlung Editieren&#039;]]&lt;br /&gt;
&lt;br /&gt;
=Übersicht=&lt;br /&gt;
Im Modus &#039;&#039;&#039;Beispielsammlung editieren&#039;&#039;&#039; ist oben eine [[Toolbar|Symbolleiste]] zur Steuerung der Anwendung angeordnet. Nähere Beschreibung der jeweiligen Buttons finden Sie unter [[Toolbar]].&lt;br /&gt;
&lt;br /&gt;
Im Bereich der Themen (siehe obige Abbildung) finden Sie eine [[Ordnerverwaltung|Ordnerstruktur]] ähnlich einem Dateimanager zur Sortierung und Speicherung der Fragen. Weiters finden Sie in diesem Bereich unten die Definition von [[Online-Tests]]. &lt;br /&gt;
&lt;br /&gt;
Die [[Fragenliste]] enthält alle Fragen eines Ordners sowie Möglichkeiten zum Hinzufügen, Ändern und Klonen ... von Fragen. &lt;br /&gt;
&lt;br /&gt;
Darunter finden sie die [[Bildvorschau]], die immer das zuletzt im [[Editor für den Angabetext|Editor]] angewählte Bild (Image, IMG) anzeigt.&lt;br /&gt;
&lt;br /&gt;
Der rechte Bereich des Editiermodus enthält alle Infos zur aktuell ausgewählten und gerade bearbeiteten Frage. Der obere Teil der Eingabemaske für Fragen ist für alle [[Fragetypen]] gleich.&lt;br /&gt;
&lt;br /&gt;
=Name der Frage=&lt;br /&gt;
:[[Datei:ClipCapIt-180618-180519.PNG|400px|thumb|Eingabefeld für den Fragenamen]]&lt;br /&gt;
Der Fragename bezeichnet die Frage und sollte Information über den Frageninhalt bringen. Alle Fragen einer [[Ordnerverwaltung|Kategorie oder Ordners]] werden mit ihrem Fragennamen in der [[Fragenliste]] angezeigt. Der Name sollte sprechend aber nicht zu lange sein, damit die Übersicht in der Fragenliste erhalten bleibt.&lt;br /&gt;
&lt;br /&gt;
Oberhalb des Fragennamens finden Sie noch den Fragetyp, den diese Frage hat.&lt;br /&gt;
&lt;br /&gt;
=Dokumente zu dieser Frage hochladen=&lt;br /&gt;
:[[Datei:ClipCapIt-181021-141443.PNG|500px]]&lt;br /&gt;
Ist die Checkbox &#039;&#039;&#039;Doks:&#039;&#039;&#039; ausgewählt, dann kann der Schüler bei der Beantwortung der Fragen auch Dokumente zur Testfrage auf den Server hochladen. &lt;br /&gt;
&lt;br /&gt;
Die folgende Abbildung zeigt die Buttons zum Testen der Lösung und den zusätzlichen Button &#039;&#039;&#039;Datei zur Frage hochladen&#039;&#039;&#039;, der dann eingeblendet wird, wenn bei der Fragedefinition die Option &#039;&#039;&#039;Doks:&#039;&#039;&#039; ausgewählt wurde.&lt;br /&gt;
:[[Datei:ClipCapIt-181021-142155.PNG|350px]]&lt;br /&gt;
Solange der Testversuch aktiv ist, können die Dokumnete vom Schüler wieder über den &#039;&#039;&#039;X&#039;&#039;&#039;-Button gelöscht werden oder weitere Dokumnete zu dieser Testfrage hochgeladen werden.&lt;br /&gt;
&lt;br /&gt;
Nach Beendigung des Testversuchs können die Dokumente nicht mehr geändert, sondern nur mehr heruntergeladen und angesehen werden.&lt;br /&gt;
&lt;br /&gt;
=Gefundene Werte=&lt;br /&gt;
Hier sind alle Konstante, die im Angabetext gefunden wurden, aufgelistet. Dieses Feld wird nach dem Verlassen des Editors für den Angabetext automatisch aktualisiert: Enthält der Fragetext Konstante in geschwungenen Klammern, die keine Datensätze sind, so werden diese Variablen automatisch aus dem Text extrahiert und angezeigt. Diese Werte können dann für die Berechnung der Lösung herangezogen werden.&lt;br /&gt;
&lt;br /&gt;
=Frage-Textfeld=&lt;br /&gt;
Siehe [[Editor für den Angabetext]].&lt;br /&gt;
&lt;br /&gt;
=Plugin-Info=&lt;br /&gt;
Im Bereich Plugin-Info finden Sie einen Button &#039;&#039;&#039;Plugins&#039;&#039;&#039; zur Definition der Plugins der Frage. Dadurch wird der [[Definition von Plugins|Dialog zur Plugindefinition]] geöffnet.&lt;br /&gt;
&lt;br /&gt;
Die Plugindefinition bildet immer einen Text-String. Dieser wird nach dem Schliessen des Dialogs im nebenstehenden Feld angezeigt und kann theoretisch auch verändert werden. Diese Option sollten aber nur erfahrene Benutzer verwenden, die sich mit der Syntax der Plugin-Definition auskennen.&lt;br /&gt;
&lt;br /&gt;
Der Scroller [[Datei:ClipCapIt-180831-204926.PNG|40px]] neben dem Eingabefeld dient zum Durchlaufen von allen definierten [[Datensätze|Datensätzen]] und zeigt die Änderungen der Grafiken an, wenn der Cursor auf einem [[Editor für den Angabetext#Spezielle TAGs im Fragentext|Plugin-Grafik-Tag]] [PIG...] im [[Editor für den Angabetext]] steht.&lt;br /&gt;
&lt;br /&gt;
=Beurteilungsbereich=&lt;br /&gt;
====&amp;lt;span id=&amp;quot;qPunkte&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;Punkte:====&lt;br /&gt;
Punkte, die bei richtiger Beantwortung der Frage für die gesamte Frage maximal vergeben werden können. Bei Mehrfachberechnungsfragen ist dieses Feld gesperrt und die Punkteanzahl wird automatisch als Gesamtpunktezahl aus allen Teilfragen berechnet.&lt;br /&gt;
&lt;br /&gt;
====&amp;lt;span id=&amp;quot;qPenalty&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;Penalty:====&lt;br /&gt;
Abzug, der bei einer falschen Beantwortung im [[Online-Tests#Testart|Rechenübungs- oder Hausübungmodus]] pro Versuch abgezogen wird.&lt;br /&gt;
&lt;br /&gt;
====&amp;lt;span id=&amp;quot;qEinheitenFehler&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;Einheitenfehler:====&lt;br /&gt;
Im Feld &amp;quot;EH-Fehler&amp;quot; wird ein Faktor angeben, der von den Punkten der richtigen Lösung abgezogen wird, wenn die Einheit falsch angegeben wurde.&lt;br /&gt;
&lt;br /&gt;
Der Wert von EH-Fehler muss zwischen 0 und 1 liegen!&lt;br /&gt;
&lt;br /&gt;
Erreichtepunkte = Maximalpunkte* (1 - EHFehler)&lt;br /&gt;
&lt;br /&gt;
z.B:&lt;br /&gt;
Das Beispiel hat 4 Punkte, der EH-Faktor ist 0.1.&lt;br /&gt;
Gibt nun der Schüler statt 0.2A den Wert 0.2V an, so erhält er 4*(1-0.1) = 3.6 Punkte.&lt;br /&gt;
Gibt der Schüler einen falschen Einheitenvorsatz wie 0.2mA an, so erhält er keine Punkte, da der Wert falsch ist!&lt;br /&gt;
&lt;br /&gt;
Siehe auch [[Einheit|Einheiten]], [[Online-Tests#Einheiteneinstellungen|Einheiteneinstellungen]]!&lt;br /&gt;
&lt;br /&gt;
====&amp;lt;span id=&amp;quot;cbParser&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;Checkbox Parser:====&lt;br /&gt;
Ist diese Checkbox ausgewählt, dann wird beim Berechnen der Symbolischen Lösung für das Ergebnis der Frage ud allen Teilfragen nicht [[Berechnungen#Berechnung mit Maxima|Maxima]], sondern der [[Berechnungen#Berechnung mit dem internen Parser|Interne Parser verwendet]].&lt;br /&gt;
&lt;br /&gt;
Siehe auch [[Berechnungen]]!&lt;br /&gt;
&lt;br /&gt;
====&amp;lt;span id=&amp;quot;cbSymbolisch&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;Checkbox Symbolisch:====&lt;br /&gt;
Ist diese Checkbox ausgewählt, dann werden beim Berechnen der Lösung mathematische Konstanten nur dann eingesetzt, wenn sie mit einer Gleitkommazahl verrechnet werden. Weiters werden Berechnungen mit Ganzzahlen nur dann als Gleitkommazahl ausgerechnet, wenn sie mit einer Gleitkommazahl verrechnet werden.&lt;br /&gt;
&lt;br /&gt;
=Datensätze=&lt;br /&gt;
Siehe [[Datensätze definieren#Erstellung / Änderung über den Datensatz-Bereich|Datensätze definieren]]&lt;br /&gt;
&lt;br /&gt;
=Kompetenzen zuordnen=&lt;br /&gt;
Mit dem Button [[Datei:ClipCapIt-180901-220702.PNG|20px]] aus dem [[Toolbar]] kann man zwischen der Datensatz- und der Kompetenz-Ansicht umschalten.&lt;br /&gt;
&lt;br /&gt;
Siehe auch [[Kompetenzzuordnung]].&lt;br /&gt;
&lt;br /&gt;
=Maxima-Feld=&lt;br /&gt;
&lt;br /&gt;
Das Maximafeld wird für die Berechnung der Ergebnisformel verwendet. Für die Berechnung des Maxima-Feldes wird der Inhalt des Feldes mit einem Präprozessor vorbearbeitet und dann an Maxima gesendet, oder der Inhalt wird direkt mit dem internen Parser von Letto verarbeitet. Da einige Funktionen des internen Parsers von Maxima nicht unterstützt werden und umgekehrt der interne Parser nicht den vollen Funktionsumfang von Maxima unterstützt, ist je nach Aufgabenstellung die eine oder andere Variante zu verwenden.&lt;br /&gt;
&lt;br /&gt;
Siehe auch [[Berechnungen]]!&lt;br /&gt;
&lt;br /&gt;
====Maxima Berechnung:====&lt;br /&gt;
Siehe [[Berechnungen#Berechnung mit Maxima|Maxima-Berechnungen]]&lt;br /&gt;
&lt;br /&gt;
* Zahlenwerte mit Einheiten werden, bevor das Feld an Maxima geschickt wird, durch interne Variablen ersetzt, die bei der Berechnung des Ergebnisses dann wieder mit Einheiten eingesetzt werden. Die Maxima-Berechnung erfolgt dadurch wie in Maxima üblich ohne Einheiten.&lt;br /&gt;
* graphische Elemente von Maxima wie plot etc. können nicht verwendet werden&lt;br /&gt;
* Jeder Durchlauf des Maximafeldes beginnt mit einer neuen leeren Maxima-Umgebung in der die Datei letto.mac geladen wird. Die Datei moodle.mac kann in der globalen Einstellungen des Servers für alle Benutzer gemeinsam vom Administrator konfiguriert werden. Unter anderem wird hier der Operator || definiert, der für die Parallelschaltung von Widerständen und Impedanzen verwendet werden kann.&lt;br /&gt;
* Es können auch alle Funktionen des internen Parsers, die Maxima nicht kennt verwendet werden. Jedoch kann Maxima diese Funktionen weder vereinfachen noch berechnen, dies muss dann Online beim Berechnen des Lösungsfeldes durch Letto direkt erfolgen. Dementsprechend kann auch der Befehl &#039;&#039;&#039;solve&#039;&#039;&#039; von Maxima keine Funktionen auflösen, die nur vom internen Parser untersützt werden.&lt;br /&gt;
&lt;br /&gt;
====Interner Parser von Letto:====&lt;br /&gt;
Siehe [[Berechnungen#Berechnung_mit_dem_internen_Parser|Interner Parser]]&lt;br /&gt;
&lt;br /&gt;
* unterstützt Einheiten&lt;br /&gt;
* unterstützt Dualzahlen und Hexadezimalzahlen&lt;br /&gt;
* unterstützt einige Funktionen, die für technische Berechnungen vorteilhaft verwendet werden können. Die Liste der möglichen Funktionen ist in der Hilfe direkt nachzulesen.&lt;br /&gt;
* Der interne Parser von Letto wird immer für die Berechnung des Lösungsfeldes einer Berechnungs- oder Mehrfachberechnungsfrage verwendet.&lt;br /&gt;
====Einheiten:====&lt;br /&gt;
Zahlenwerte mit Einheit können auf mehrere Arten im Maximafeld verwendet werden:&lt;br /&gt;
* Als Datensatz mit Einheit durch Verwendung des Datensatzbezeichners: Dies ist die einfachste Variante, bei der gleichzeitig auch für jeden Schüler ein anderer Zahlenwert definiert werden kann&lt;br /&gt;
* Als Direkteingabe im Maxima-Feld mit Zahlenwert, gefolgt von der Einheit in einfachen Hochkomma ( x:13&#039;A/m&#039; oder y:x*56&#039;VA-1&#039; )&lt;br /&gt;
* Wenn die Einheit keine Rechenoperatoren enthält kann die Einheit direkt am Zahlenwert angehängt werden: zB.: U:23V oder I:U/2Ohm&lt;br /&gt;
&lt;br /&gt;
Der Präprozessor, der das Maximafeld vor der Berechnung durchläuft hat folgende Aufgaben:&lt;br /&gt;
&lt;br /&gt;
* Bei Maxima-Berechnungsmodi werden alle Zahlenwerte welche eine Einheit haben durch Variable ersetzt welche bei der späteren Berechnung wieder eingesetzt werden können&lt;br /&gt;
* jede Zeile wird automatisch abgeschlossen, man benötigt daher kein ; oder $ am Zeilenende und es sind dadurch keine mehrzeiligen Befehle möglich&lt;br /&gt;
* Bezeichner dürfen nur die Zeichen a-zA-Z0-9 enthalten (zB. der Unterstrich ist verboten)&lt;br /&gt;
* Bemerkungen werden wie in C oder Java übliche am Zeilenanfang mit einem doppelten Schrägstrich eingefügt&lt;br /&gt;
&lt;br /&gt;
====wichtige Funktionen:====&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Funktion !!  Beschreibung 	!! Beispiel 	!! Ergebnis&lt;br /&gt;
|-&lt;br /&gt;
| floor(x) ||  Kommazahl auf die nächste Ganzzahl abrunden 	|| ||&lt;br /&gt;
|-&lt;br /&gt;
| round(x) ||  Kommazahl auf Ganzzahl runden 	|| ||&lt;br /&gt;
|-&lt;br /&gt;
| pi() 	   ||  die Zahl Pi 	|| ||&lt;br /&gt;
|-&lt;br /&gt;
| exp(1)   ||  die eulersche Zahl e || ||&lt;br /&gt;
|-&lt;br /&gt;
| exp(x)   ||  Exponentialfunktion e hoch x 	|| ||&lt;br /&gt;
|-&lt;br /&gt;
| abs(x)   ||  Absolutbetrag  ||  abs(-2) 	||  2&lt;br /&gt;
|-&lt;br /&gt;
| acos(x), acosh(x), asin(x), &lt;br /&gt;
&lt;br /&gt;
asinh(x), atan2(y,x), atan(x), &lt;br /&gt;
&lt;br /&gt;
atanh(x), cos(x), cosh(x), &lt;br /&gt;
&lt;br /&gt;
sin(x), sinh(x), tan(x), tanh(x)  &lt;br /&gt;
||	Winkelfunktionen 	|| ||&lt;br /&gt;
|-&lt;br /&gt;
| deg2rad(x) ||	Grad in Radianten umwandeln 	|| ||&lt;br /&gt;
|-&lt;br /&gt;
| rad2deg(x) ||	Radianten in Grad umwandeln 	|| ||&lt;br /&gt;
|-&lt;br /&gt;
| max(x,y,z) ||	Liefert das Maximum der angegebenen Parameter 	|| max(2,5,3)  ||	5&lt;br /&gt;
|-&lt;br /&gt;
| min(x,y,z) ||	Liefert das Minimum der angegebenen Parameter 	|| min(3,2,6,34) ||	2&lt;br /&gt;
|-&lt;br /&gt;
| log10(x)   ||	10er Logarithmus 	||  log10(100)  || 	2&lt;br /&gt;
|-&lt;br /&gt;
| log(x)     ||	natürlicher Logarithmus 	|| ||&lt;br /&gt;
|-&lt;br /&gt;
| pow(x,y)   ||	berechnet die Potenz x hoch y  ||	pow(2,3) 	|| 8&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
====Tipps für Maxima-Newcomer====&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Befehl 	!!  Beschreibung&lt;br /&gt;
|-&lt;br /&gt;
| a:5  || 	Der Variablen a den Wert5 zuweisen&lt;br /&gt;
|-&lt;br /&gt;
| g1:x+y=5&lt;br /&gt;
&lt;br /&gt;
g2:x-y=3&lt;br /&gt;
&lt;br /&gt;
L:solve([g1,g2],[x,y])&lt;br /&gt;
&lt;br /&gt;
x:ev(x,L)&lt;br /&gt;
&lt;br /&gt;
y:ev(y,L)&lt;br /&gt;
|| 	Gleichungssystem lösen mit den Gleichungen g1 und g2&lt;br /&gt;
&lt;br /&gt;
solve löst das Gleichungssystem und liefert den Ergebnisvektor L&lt;br /&gt;
&lt;br /&gt;
ev berechnet aus dem Lösungsvektor die Variablen&lt;br /&gt;
|-&lt;br /&gt;
| c:4+5*%i   ||	komplexe Zahl&lt;br /&gt;
|-&lt;br /&gt;
| e:ratsimp(c*(2+3*%i)) 	|| komplexes Ergebnis auswerten&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=Eingabemasken für die unterschiedlichen Fragetypen=&lt;br /&gt;
&lt;br /&gt;
==Mehrfachberechnungsfrage==&lt;br /&gt;
&lt;br /&gt;
* Fragen dieses Typs sind sehr flexibel.&lt;br /&gt;
* Die Frage kann mehrere Teilantworten beinhalten. Jede Teilfrage wird im Fragetext durch einen [Qx]-Tag (x..Fragenummer) positioniert. Bei der Schülereingabe wird der Tag durch ein Eingabefeld für die Ergebniseingabe ersetzt.&lt;br /&gt;
* Die Angabewerte sind wie bei Berechnungsfragen mittels [[Datensätze|Datensätzen]] definierbar und variieren von Schüler zu Schüler.&lt;br /&gt;
* Alle verwendeten [[Datensätze|Variablen]] müssen im Angabtext in geschwungene Klammern gesetzt werden. Im [[Berechnungen|Maximafeld]] und im Lösungsfeld ist die Klammer nicht notwendig.&lt;br /&gt;
* Für jede Variable wird ein Dataset mit möglichen Werten angelegt. Diese Datasets können über einen [[Datensätze_definieren#Definition_der_Werte|Formatierungsstring]] definiert werden und danach auch direkt in einer Liste bearbeitet werden.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
:[[Datei:ClipCapIt-180831-220929.PNG|600px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Übersicht über alle Spalten der Detail-Ansicht:&#039;&#039;&#039;&lt;br /&gt;
====Q....====&lt;br /&gt;
Spalte mit der Kurzbezeichnung für die Teilfrage. Unter diesem Namen wird im Editor für die Angabe die Teilfrage mit [Qx] referenziert. An dieser Position steht dann bei der Testausführung das Eingabeelement für diese Teilfrage.&lt;br /&gt;
&lt;br /&gt;
====&amp;lt;span id=&amp;quot;sqProzInput&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;Prozent für die Antwort einer Teilfrage====&lt;br /&gt;
&lt;br /&gt;
Wenn der Schüler die Antwort gibt, die in der Zeile dieser Teilantwort steht, bekommt er den prozentuellen Anteil der Gesamtpunkt der Teilfrage.&lt;br /&gt;
&lt;br /&gt;
Je nach Antwort-Modus muss sichergestellt sein, dass der Schüler durch die richtige Eingabe der Antwort 100 Prozent erreichen kann.&lt;br /&gt;
&lt;br /&gt;
====&amp;lt;span id=&amp;quot;sqGradeInput&amp;quot;&amp;gt;Punkte einer Teilfrage====&lt;br /&gt;
Punkteanzahl für die richtige Beantwortung einer Teilfrage.&lt;br /&gt;
&lt;br /&gt;
Die Gesamtpunktanzahl einer Mehrfachberechnungsfrage ergibt sich immer aus der Summe der Punkte der Teilfragen.&lt;br /&gt;
&lt;br /&gt;
====&amp;lt;span id=&amp;quot;sqMaximaInput&amp;quot;&amp;gt;Maximafeld für die Antwort einer Teilfrage====&lt;br /&gt;
Siehe auch [[Berechnungen]]!&lt;br /&gt;
&lt;br /&gt;
Dieses Feld wird nach dem Durchlaufen des globalen Maxima-Feldes der Frage mit Maxima aufgerufen und liefert als Lösung den Ausdruck, der im Lösungsfeld eingesetzt wird.&lt;br /&gt;
&lt;br /&gt;
Es wird nur im Antwort-MODE &amp;quot;calculated&amp;quot; und &amp;quot;boolsch&amp;quot; berechnet.&lt;br /&gt;
&lt;br /&gt;
====&amp;lt;span id=&amp;quot;sqEinheitInput&amp;quot;&amp;gt;Ziel-Einheit der Antwort einer Teilfrage:====&lt;br /&gt;
Siehe unter [[ZielEinheit]]!&lt;br /&gt;
&lt;br /&gt;
====&amp;lt;span id=&amp;quot;modeSel_focus&amp;quot;&amp;gt;Antwortmode====&lt;br /&gt;
Art der Antwort:&lt;br /&gt;
&lt;br /&gt;
* Single-Choice: Es gibt mehrere Lösungen, die dem Schüler vorgeschlagen werden. Der Schüler muss nun von diesen Lösungen genau eine Auswählen. Die Lösungen stehen als String im Lösungsfeld&lt;br /&gt;
* Text: Die Lösung welche im Lösungsfeld steht ist eine Zeichenkette die vom Schüler genau so eingegeben werden muss&lt;br /&gt;
* Regexp: Im Lösungsfeld wird ein regulärer Ausdruck angeben, mit dem überprüft wird, ob die Antwort des Schülers richtig ist.&lt;br /&gt;
* Multichoice: Es gibt mehrere Lösungen, die dem Schüler vorgeschlagen werden. Der Schüler muss nun von diesen Lösungen eine oder mehrere Auswählen. Die Lösungen stehen als String in Lösungsfeld.&lt;br /&gt;
* Calculated: Im Lösungsfeld steht ein symbolischer Ausdruck, der aus dem Maxima-Feld errechnet wurde. Zur Laufzeit wird daraus mit dem Parser die Lösung berechnet.&lt;br /&gt;
* Boolsch: Dieser Fragemode kann nur sinnvoll bei einer Mehrfachberechnungsfrage verwendet werden. In diesem Modus kann man die Schülereingaben anderer Teilfragen nach Eingabe durch den Parser auswerten lassen und damit Punkte vergeben. Es lassen sich somit Folgefehler von Schülern berücksichtigen und bei der Dimensionierung können Angabe-Bedingungen geprüft werden, die über die Lösung einer Teilfrage nicht eindeutig wären. Der Zugriff auf die Schülereingabe einer anderen Teilfrage erfolgt im Lösungsfeld mit der Variablen Q gefolgt von der Teilfragenummer (zB. Q1 für die Teilfrage 1)&lt;br /&gt;
&lt;br /&gt;
====&amp;lt;span id=&amp;quot;sqToleranceInput&amp;quot;&amp;gt;Toleranz der Antwort einer Teilfrage====&lt;br /&gt;
Die Toleranz, wie genau ein Schüler seine Antwort angeben muss:&lt;br /&gt;
* Die Toleranz ist im Normalfall eine &#039;&#039;&#039;relative Angabe&#039;&#039;&#039; und wird in &#039;&#039;&#039;Prozent&#039;&#039;&#039; angegeben&lt;br /&gt;
* Wird bei der Toleranz kein Prozent angegeben, so muss der Wert zwischen 0 und 1 liegen und entspricht dann dem Prozentwert durch 100&lt;br /&gt;
* Wird bei der Toleranz vor oder nach dem Wert ohne Prozentzeichen ein &#039;&#039;&#039;a&#039;&#039;&#039; angegeben, so wird dieser Wert als &#039;&#039;&#039;absolute Toleranz&#039;&#039;&#039; der Größe in SI-Einheiten interpretiert. ( z.B.: 0.1a bei einem eletrischen Strom in Ampere entspricht einer absoluten Toleranz von 0.1A ) Absolute Toleranzen sind vor allem bei Ergebnissen welche Null sind notwendig, da die Berechnung statt 0 meist eine sehr kleine Zahl berechnet, welche dann mit einer relativen Toleranz auch extrem genau eingegeben werden muss und 0 dadurch nicht im Toleranzbereich liegen kann!&lt;br /&gt;
&lt;br /&gt;
====&amp;lt;span id=&amp;quot;sqLoesungInput&amp;quot;&amp;gt;Lösung der Antwort einer Teilfrage====&lt;br /&gt;
In der Lösungsformel steht die richtige Antwort der Frage, je nach Fragemode hat das Lösungsfeld verschiedene Funktionalität!&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Fragemode 	!! Bedeutung des Lösungsfeldes 	!! Inhalt&lt;br /&gt;
|-&lt;br /&gt;
| Single-Choice || Lösung wie sie am Browser ausgegeben wird 	|| Eingabe&lt;br /&gt;
|-&lt;br /&gt;
| Text 	        || Lösung wie sie der Schüler eingeben sollte 	|| Eingabe&lt;br /&gt;
|-&lt;br /&gt;
| Regexp 	|| Regulärer Ausdruck (in Java Syntax) welcher für die richtige Lösung treffen muss 	|| Eingabe&lt;br /&gt;
|-&lt;br /&gt;
| Multichoice 	|| Lösung wie sie am Browser ausgegeben wird. 	|| Eingabe&lt;br /&gt;
|-&lt;br /&gt;
| Calculated 	|| Berechnungsformel, mit der zur Testzeit die richtige Lösung berechnet wird, die mit der Schülereingaben verglichen wird. 	|| automatische Berechnung aus dem Maximafeld&lt;br /&gt;
|-&lt;br /&gt;
| Boolsch 	|| Berechnungsformel, die nach der Schülereingabe berechnet wird. Das Ergebnis der Formel muss boolsch sein. Wenn das Ergebnis true ist bekommt der Schüler die angegebenen Punkte. 	|| automatische Berechnung aus dem Maximafeld&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
====&amp;lt;span id=&amp;quot;sqErgInfoInput&amp;quot;&amp;gt;Infofeld der Antwort einer Teilfrage====&lt;br /&gt;
* Bei Berechnungsfragen die Antwort des ersten Datensatzes, das Feld ist dann schreibgeschützt&lt;br /&gt;
* Bei Boolschen Fragen kann hier eine Information erfolgen, wie die Frage bewertet wurde.&lt;br /&gt;
&lt;br /&gt;
==Berechnungsfrage==&lt;br /&gt;
:[[Datei:ClipCapIt-180901-122143.PNG|400px]]&lt;br /&gt;
&lt;br /&gt;
Die Berechnungsfrage ist ähnlich aufgebaut wie eine Mehrfachberechnungsfrage mit nur einer Berechnung. Diese Frage kann aber mehrere unterschiedliche Lösungen bereitstellen, um zB. typische Berechnungsfehler mit Punkteabzügen zu beurteilen. Es können also zusätzliche Reiter mit mehreren Antwortmöglichkeiten über das Kontextmenü erzeugt bzw. wieder gelöscht werden.&lt;br /&gt;
&lt;br /&gt;
:[[Datei:ClipCapIt-180901-212431.PNG|thumb|450px|Übersicht Erstellung einer Berechnungsfrage]]&lt;br /&gt;
&lt;br /&gt;
:[[Datei:ClipCapIt-180901-132831.PNG|400px]]&lt;br /&gt;
&lt;br /&gt;
* Berechnende Fragen sind wie Mehrfachberechnungsfragen mit nur einer Teilfrage bei dem das Antwortfeld automatisch erscheint.&lt;br /&gt;
* Jeder Schüler bekommt eine eigene Angabe&lt;br /&gt;
* Für den Druck kann die Frage auch für Projektangaben verwendet werden.&lt;br /&gt;
* Berechnungen erfolgen mit Maxima&lt;br /&gt;
* Alle verwendeten Variablen müssen im Angabtext in geschwungene Klammern gesetzt werden. Im Maximafeld und im Lösungsfeld ist die Klammer nicht notwendig.&lt;br /&gt;
* Für jede Variable wird ein Dataset mit möglichen Werten angelegt. Diese Datasets können über einen Formatierungsstring definiert werden und danach auch direkt in einer Liste bearbeitet werden.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Wenn mehrer Antwortmöglichkeiten definiert wurden, wird links ein zusätzliches Eingabefeld &#039;&#039;&#039;Antwort Maxima:&#039;&#039;&#039; angezeigt. Damit können Sie unterschiedliche Ergebnisse der Maxima-Berechnungen den unterschiedlichen Antworten zuordnen.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Feld !!  Beschreibung&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;Antwort Maxima  ||    [[#Lösung_der_Antwort_einer_Teilfrage|Verhalten wie bei der Mehrfachberechnungsfrage]], siehe [[Berechnungen]] &lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;Einheit:&#039;&#039;&#039;   || [[ZielEinheit|Defiition der Einheit oder sonstiges Frageerhalten]]&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;Prozent:&#039;&#039;&#039;   || [[#Prozent_für_die_Antwort_einer_Teilfrage|Prozentangaben für unterschiedliche Lösungen]]&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;Toleranz:&#039;&#039;&#039;  ||  [[#Toleranz_der_Antwort_einer_Teilfrage|Toleranz für den Ergebniswert wie bei Mehrfachberechnungsfrage]]&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;Mode:&#039;&#039;&#039;      ||  [[#Antwortmode|Berechungs-Modus]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Die Zeile &#039;Lösung für 1. Datenstatz&#039; zeigt das Ergebnis an, wenn der Werte des 1. Datensatzes in die Lösungsformel eingesetzt werden. Diese Zeile dient der Kontrolle, ob die Lösung mit Zahlenwerten auch Sinn macht und ob die Einheiten zusammenpassen.&lt;br /&gt;
&lt;br /&gt;
Das Eingabefeld &#039;&#039;&#039;Lösung&#039;&#039;&#039; ist schreibgeschützt und kann nur durch die [[Berechnungen#Berechnung mit Maxima|Maxima-Berechnung]] oder den [[Berechnungen#Berechnung_mit_dem_internen_Parser|internen Parser]] bestimmt werden.&lt;br /&gt;
&lt;br /&gt;
==Lückentextfrage==&lt;br /&gt;
Ein Lückentext enthält Lücken innerhalb eines Fragetextes, die durch den Schüler mit dem korrekten Inhalt gefüllt werden sollen.&lt;br /&gt;
&lt;br /&gt;
Folgende Modi sind dabei für die Lücken möglich:&lt;br /&gt;
* Texteingabe: Der Schüler muss das fehlende Wort je nach Fragemodus in die Lücke über die Tastatur eingeben oder per Drag&amp;amp;Drop auf die Lücke ziehen&lt;br /&gt;
* Multiple-Choice: Der Schüler kann aus mehreren Antwortmöglichkeiten eine oder mehrere richtige Elemente selektieren&lt;br /&gt;
* Single-Choice: Der Schüler kann mit einem Drop-Down-Auswahlfeld aus mehreren Antwortmöglichkeiten genau ein richtiges Element selektieren&lt;br /&gt;
&lt;br /&gt;
Da es bei Lückentextfragen um Texte geht, gibt es hier keine Datensätze oder Maxima-Berechnungen.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Fragemodus:&#039;&#039;&#039;&lt;br /&gt;
:[[Datei:ClipCapIt-180901-155006.PNG|200px]]&lt;br /&gt;
&lt;br /&gt;
Der Fragemodus gibt an wie Texteingabe-Lücken verarbeitet werden&lt;br /&gt;
&lt;br /&gt;
* Normal: Der Schüler muss den Text über die Tastatur in die Lücke eintragen.&lt;br /&gt;
* Drag-and-Drop: Der Schüler muss aus einer Liste von möglichen Antworten die richtigen Antworten auf die Lücken ziehen.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Funktionstasten:&#039;&#039;&#039;&lt;br /&gt;
F8: aktuelles Wort, bei dem der Cursor steht, als Textlücke definieren (Vorsicht: Wort nicht markieren!), siche auch  [[Editor_für_den_Angabetext#Schnelleingabe_.2F_Tastatur-Shortcuts|alle Funktionstasten]]&lt;br /&gt;
&lt;br /&gt;
====Erstellung der Frage:====&lt;br /&gt;
&lt;br /&gt;
Im [[Editor für den Angabetext|Textbereich des Editors]] werden die Lücken durch Antwortformulierungen in eckigen Klammern realisiert. Mit &#039;&#039;&#039;F8&#039;&#039;&#039; kann das aktuelle Wort, bei dem der Cursor steht, als Textlücke definiert werden.&lt;br /&gt;
&lt;br /&gt;
:[[Datei:ClipCapIt-180901-161337.PNG|thumb|450px|Beispiel einer Eingabe]]&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;Texteingabe:&#039;&#039;&#039;&lt;br /&gt;
** Im Fragemodus &amp;quot;Normal&amp;quot; muss der Schüler den Text in der Lücke eingeben&lt;br /&gt;
** Im Fragemodus &amp;quot;Drag and Drop&amp;quot; muss der Schüler aus einer Liste von Antworttexten den richtigen Text über die Lücke ziehen. Hierbei wird die Liste der Antworttexte aus allen richtigen und falschen Antworten der Texteingabe-Felder zusammengesetzt.&lt;br /&gt;
** Syntax:&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;margin-left:50px&amp;quot;&lt;br /&gt;
| [text]     || 	Das Wort &amp;quot;text&amp;quot; als Lücke mit 1 Punkt für die richtige Antwort&lt;br /&gt;
|-&lt;br /&gt;
| [2&amp;lt;nowiki&amp;gt;|&amp;lt;/nowiki&amp;gt;text]     || 	Das Wort &amp;quot;text&amp;quot; mit 2 Punkten für die richtige Antwort&lt;br /&gt;
|-&lt;br /&gt;
| [1&amp;lt;nowiki&amp;gt;|&amp;lt;/nowiki&amp;gt;text,50:alt,0:nix]   ||	2 Punkte für die richtige Antwort &amp;quot;text&amp;quot;, 50%von zwei Punkten für &amp;quot;alt&amp;quot;, &amp;quot;nix&amp;quot; als falsche Antwort für &amp;quot;Drag and Drop&amp;quot;-Fragen&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;Multiple-Choice:&#039;&#039;&#039;&lt;br /&gt;
**      unabhängig vom Fragemodus&lt;br /&gt;
**      mindestens eine Antwort muss richtig sein&lt;br /&gt;
**      Syntax:&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;margin-left:50px&amp;quot;&lt;br /&gt;
| [M&amp;lt;nowiki&amp;gt;|&amp;lt;/nowiki&amp;gt;x:richtig,falsch1,falsch2]  ||	Die richtigen Antwortfelder sind mit x: markiert&lt;br /&gt;
|-&lt;br /&gt;
| [M&amp;lt;nowiki&amp;gt;|&amp;lt;/nowiki&amp;gt;x:rot,x:grün,blau,gelb] 	 ||     rot und grün sind richtig&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;Single-Choice:&#039;&#039;&#039;&lt;br /&gt;
**      unabhängig vom Fragemodus&lt;br /&gt;
**      der Schüler muss eine Antwort aus mehreren wählen&lt;br /&gt;
**      Syntax:&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;margin-left:50px&amp;quot;&lt;br /&gt;
| [S&amp;lt;nowiki&amp;gt;|&amp;lt;/nowiki&amp;gt;x:richtig,falsch,falsch] 	||  x kennzeichnet eine richtige Antwort&lt;br /&gt;
|-&lt;br /&gt;
| [S&amp;lt;nowiki&amp;gt;|&amp;lt;/nowiki&amp;gt;x:rot,x:grün,50:blau,gelb] ||  bei rot und grün alle Punkte, bei blau 50 Prozent der Punkt, bei gelb 0 Punkte&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;Sonderzeichen&#039;&#039;&#039; innerhalb einer Lücke &lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;margin-left:50px&amp;quot;&lt;br /&gt;
| Bezeichnung || Zeichen || Ersatzzeichen &lt;br /&gt;
|-&lt;br /&gt;
| Komma(Beistrich) || ,  || ,, &lt;br /&gt;
|-&lt;br /&gt;
| Komma(Beistrich) || ,  || \, &lt;br /&gt;
|-&lt;br /&gt;
| eckige Klammer auf || [ || \[ &lt;br /&gt;
|-&lt;br /&gt;
| eckige Klammer zu || ] || \]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;Sonderzeichen&#039;&#039;&#039; im Fragetext, welche nicht in einer Lücke sind:&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;margin-left:50px&amp;quot;&lt;br /&gt;
| Bezeichnung || Zeichen || Ersatzzeichen &lt;br /&gt;
|-&lt;br /&gt;
| eckige Klammer auf || [ || \[ &lt;br /&gt;
|-&lt;br /&gt;
| eckige Klammer zu || ] || \]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
====Schülereingabe der Frage:====&lt;br /&gt;
Die oben in der Abbildung definierte Lückentextfrage führt zu der links abgebildeten Aufgabenstellung während eines [[Online-Tests]].&lt;br /&gt;
:[[Datei:ClipCapIt-180901-185126.PNG|350px]]&lt;br /&gt;
&lt;br /&gt;
==Multiple-Choice-Frage==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* Der Schüler kann eine oder mehrere vorgegebene Antworten als richtig ankreuzen.&lt;br /&gt;
* Die Antworten werden bei jedem Schüler in einer anderen Reihenfolge vorgeschlagen.&lt;br /&gt;
* Es gibt zwei mögliche Eingabeansichten&lt;br /&gt;
**        automatische Prozentvergabe: Alle richtigen Antworten bekommen einen Haken. Der Computer teilt dann die Prozentwerte gleichmäßig auf alle richtigen Antworten auf.&lt;br /&gt;
**        explizite Definition der Prozentwerte: Neben jeder Antwort kann ein Prozentwert angegeben werden, welcher zugewiesen wird wenn die Antwort angekreuzt ist. Die Summe der Prozentwerte aller richtigen Antworten muss dabei 100 ergeben!&lt;br /&gt;
&lt;br /&gt;
====Beispiele für eine Multiple-Choice-Frage in unterschiedlichen Ansichten====&lt;br /&gt;
&#039;&#039;&#039;CheckboxFeedback: &#039;&#039;&#039;&lt;br /&gt;
Eingabe der Antworten der Multiple-Choice-Frage durch Checkboxen: Die richtigen Antworten bekommen links davon in der Checkbox ein Häckchen. Neben den Antworten können Sie ein Feedback angeben, warum Antworten falsch oder richtig sind.&lt;br /&gt;
:[[Datei:ClipCapIt-180901-214517.PNG|400px]]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Checkbox: &#039;&#039;&#039;&lt;br /&gt;
Eingabe der Antworten der Multiple-Choice-Frage durch Checkboxen: Die richtigen Antworten bekommen ein Häckchen. Feedback-Eingaben sind nicht möglich.&lt;br /&gt;
:[[Datei:ClipCapIt-180901-214538.PNG|400px]]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;ProzentFeedback: &#039;&#039;&#039;&lt;br /&gt;
Die Antworten werden mit Prozentwerten versehen. Die Summe über alle positiven Prozent-Werte muss genau 100 Prozent ergeben! &lt;br /&gt;
Bei falschen Antworten können Sie Werte von -100 eingeben, dann wird bei einer falschen Antwort die ganze Frage als falsch beurteilt.&lt;br /&gt;
Wird dieser negative Prozentwert geringer als -100 gewählt, dann kann die Frage noch teilweise richtig beurteilt werden.&lt;br /&gt;
Neben den Antworten können Sie ein Feedback angeben, warum Antworten falsch oder richtig sind.&lt;br /&gt;
:[[Datei:ClipCapIt-180901-214557.PNG|400px]]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Prozent: &#039;&#039;&#039;&lt;br /&gt;
Die Antworten werden mit Prozentwerten versehen. Die Summe über alle positiven Prozent-Werte muss genau 100 Prozent ergeben! &lt;br /&gt;
Bei falschen Antworten können Sie Werte von -100 eingeben, dann wird bei einer falschen Antwort die ganze Frage als falsch beurteilt.&lt;br /&gt;
Wird dieser negative Prozentwert geringer als -100 gewählt, dann kann die Frage noch teilweise richtig beurteilt werden.&lt;br /&gt;
:[[Datei:ClipCapIt-180901-214616.PNG|400px]]&lt;br /&gt;
&lt;br /&gt;
Das Maxima-Feld kann auch für Multiple-Choice-Fragen für Berechnungen und für die Definition von Formeln verwendet werden. In den Antworten für die Multiple-Choice-Frage können Sie sich über {= ...} auf die Ergebnisse beziehen.&lt;br /&gt;
:[[Datei:ClipCapIt-180901-215517.PNG|400px]]&lt;br /&gt;
Die obige Frage wurde mit dieser Berechnung durchgeführt.&lt;br /&gt;
&lt;br /&gt;
==Zuordnungsfrage==&lt;br /&gt;
&lt;br /&gt;
Die Antwort auf jede der Unterfragen muss aus einer Liste von Möglichkeiten ausgewählt werden.&lt;br /&gt;
Im Prinzip hat der Schüler 2 Listen mit Antworten und Fragen, die er richtig zuordnen muss.&lt;br /&gt;
&lt;br /&gt;
[[Datei:ClipCapIt-180618-225643.PNG|500px]]&lt;br /&gt;
&lt;br /&gt;
Mit der Auswahlliste für das Anzeigeverhalten kann gesteuert werden, ob und wie die Zuordnungen bei einem Test gemischt werden.&lt;br /&gt;
&#039;&#039;Nur links mischen&#039;&#039; bedeutet, dass die Antwortmöglichkeiten auf der linken Seite der Zuordnungsfrage bei jedem Öffnen der Frage anders dargestellt werden.&lt;br /&gt;
&lt;br /&gt;
Folgende Einstellungen sind möglich:&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|Nicht mischen      ||  Die Reihenfolge wird so, wie sie in der Frage definiert ist, gewählt&lt;br /&gt;
|+&lt;br /&gt;
|Mischen            ||  Auf der linken und auf der rechten Seite werden die Antwortmöglichkeiten zufällig angeordnet&lt;br /&gt;
|+&lt;br /&gt;
|Nur links mischen  ||  Nur auf der linken Seite werden die Antwortmöglichkeiten zufällig angeordnet&lt;br /&gt;
|+&lt;br /&gt;
|Nur rechts mischen  || Nur auf der rechten Seite werden die Antwortmöglichkeiten zufällig angeordnet&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Pro Zeile werden die zusammengehörenden Begriffe in die Tabelle eingetragen.&lt;br /&gt;
Um Zuordnungsfragen zu erschweren, können auf der rechten Seite auch falsche Begrife angeführt werden, die nicht eine Entsprechung auf der linken Seite haben.&lt;br /&gt;
&lt;br /&gt;
Weiters können auf der linken Seite auch mehrere gleichnamige Begriffe verwendet werden, um Zuordnungen zu Themengruppen zu ermöglichen.&lt;br /&gt;
&lt;br /&gt;
==Freitextfrage==&lt;br /&gt;
Der Schüler erhält zur Fragebeantwortung ein Textfeld, in dem die Antwort eingetragen werden kann. Diese Fragen müssen aber manuell korrigiert werden!&lt;br /&gt;
Bei der Frageerstellung kann nur das Feedbackfeld ausgefüllt werden. Dieses kann eine mögliche Lösung der Aufgabenstellung enthalten und wird dem Schüler nach der Testausführung (Test wurde bereits beendet) angezeigt.&lt;br /&gt;
&lt;br /&gt;
* Eine Freitextfrage hat keine automatische Korrekturmöglichkeit!&lt;br /&gt;
* Verwendung für:&lt;br /&gt;
**        Fragen, die online über die Tastatur beantwortet werden und vom Lehrer über den Letto-Server händisch beurteilt werden.&lt;br /&gt;
**        Fragen, die nur als Angabe für Projekte, Laborübungen usw. dienen.&lt;br /&gt;
**        Fragen, die auf Papier beantwortet werden.&lt;br /&gt;
* Das Ergebnis kann im Feedback-Feld angegeben werden&lt;br /&gt;
**        und beim Online-Test dem Schüler als Feedback nach dem Test bekanntgegeben werden.&lt;br /&gt;
**        Bei Beispielsammlungen kann der Schüler das Feedbackfeld nie einsehen!&lt;br /&gt;
**        Bei Hausübungen kann der Schüler das Feedbackfeld erst nach Ablauf der Abgabefrist einsehen!&lt;br /&gt;
* Sowohl Feedbackfeld als auch das Fragefeld kann Bilder, Tabellen, externe Dateien und Sourcode-Listings enthalten.&lt;/div&gt;</summary>
		<author><name>Ckral</name></author>
	</entry>
	<entry>
		<id>https://wiki.letto.at/wiki/index.php?title=Berechnungen&amp;diff=2166</id>
		<title>Berechnungen</title>
		<link rel="alternate" type="text/html" href="https://wiki.letto.at/wiki/index.php?title=Berechnungen&amp;diff=2166"/>
		<updated>2020-03-23T18:51:32Z</updated>

		<summary type="html">&lt;p&gt;Ckral: Ersetze nv und ev in Beispiel, siehe https://project.letto.at/projects/letto/work_packages/467&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Allgemeines =&lt;br /&gt;
Berechnungen werden in mehreren Bereichen der Frageerstellung verwendet und bilden die Basis für [[Fragetypen#Berechnungsfrage|Berechnungsfrage]] und [[Fragetypen#Mehrfachberechnungsfrage|Mehrfachberechnungsfrage]].&lt;br /&gt;
&lt;br /&gt;
Alle Berechnungen unterstützen [[Einheit|Einheiten]] und symbolische Auswertung.&lt;br /&gt;
&lt;br /&gt;
=Grundsätzlicher Aufbau der Ergebnis-Berechnung bei Fragen mit Berechnungen=&lt;br /&gt;
[[Datei:BerechnungSchema.png|mini|hochkant=2.0|Schema der Berechnung]]&lt;br /&gt;
Die Berechnung und die Beurteilung einer Frage teilt sich in 3 grundsätzliche Schritte:&lt;br /&gt;
* Berechnnug der geschlossenen Lösung (Formel) aus den Maxima-Feldern &lt;br /&gt;
* Berechnung des Ergebnisses einer Frage durch Einsetzen der Zahlenwerte aus den Datensätzen in die geschlossene Lösung&lt;br /&gt;
* Beurteilung der Schülereingabe durch Vergleich mit dem Ergebnis&lt;br /&gt;
&lt;br /&gt;
=Konstante=&lt;br /&gt;
Alle Konstante welche in Letto definiert sind beginnen mit einem Prozentzeichen. Verwendet man den Variablennamen ohne Prozenzzeichen, so wird die Konstante wie eine Variable mit dem Wert der Konstanten verwendet.&lt;br /&gt;
&lt;br /&gt;
Liste der definierten Konstanten:&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%&amp;quot; &lt;br /&gt;
| Name || Wert || Beschreibung&lt;br /&gt;
|-&lt;br /&gt;
| %i || i || komplexer Parameter als Lösung der Gleichung x^2=-1&lt;br /&gt;
|-&lt;br /&gt;
| %j || i || komplexer Parameter als Lösung der Gleichung x^2=-1&lt;br /&gt;
|-&lt;br /&gt;
| %e || 2.718281828459045 || Eulersche Zahl &lt;br /&gt;
|-&lt;br /&gt;
| %pi || 3.141592653589793 || Kreiszahl&lt;br /&gt;
|-&lt;br /&gt;
| %mu0 || magnetische Feldkonstante || 4*%pi*1E-7&#039;Vs/Am&#039;&lt;br /&gt;
|-&lt;br /&gt;
| %m0 || magnetische Feldkonstante (alt, wird bald entfernt werden) || 4*%pi*1E-7&#039;Vs/Am&#039;&lt;br /&gt;
|-&lt;br /&gt;
| %epsilon0 || elektrische Feldkonstante || 8.85418781762039E-12&#039;As/Vm&#039;&lt;br /&gt;
|-&lt;br /&gt;
| %e0 || elektrische Feldkonstante (alt, wird bald entfernt werden) || 8.85418781762039E-12&#039;As/Vm&#039;&lt;br /&gt;
|-&lt;br /&gt;
| %c0 || Lichtgeschwindigkeit || 299792458&#039;m/s&#039;&lt;br /&gt;
|-&lt;br /&gt;
| %Qe || Elementarladung || 1.602176620898E-19As&lt;br /&gt;
|-&lt;br /&gt;
| %g  || Erdbeschleunigung || 9.81&#039;m/s^2&#039;&lt;br /&gt;
|-&lt;br /&gt;
| %NA || Avogadro Konstante || 6.02214085774E23/mol&lt;br /&gt;
|-&lt;br /&gt;
| %k  || Stefan Bolzman Konstante || 1.3806485279E-23&#039;J/K&#039;&lt;br /&gt;
|-&lt;br /&gt;
| %R0 || Universelle Gaskonstante || 8.314459848&#039;J/Kmol&#039;&lt;br /&gt;
|-&lt;br /&gt;
| %h || planksches Wirkungsquantum || 6.6260704081E-34Js&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=Berechnung mit Maxima=&lt;br /&gt;
* Maxima wird &#039;&#039;&#039;nur für symbolische Berechnungen&#039;&#039;&#039; bei der Erstellung von Beispielen verwendet. Hierbei wird, wie schon oberhalb im Schema angegeben, zuerst die Moodle.mac geladen, dann das [[Beispielsammlung Editieren#Maxima-Feld|Maxima-Feld]] berechnet und anschließend die Maxima-Felder aller Teilfragen. Das Ergebnis der Berechnung wird dann als symbolischer Ausdruck im Lösungfeld eingetragen.&lt;br /&gt;
* Da zum Zeitpunkt der &#039;&#039;&#039;Maxima-Berechnung keine Datensätze&#039;&#039;&#039; vorhanden sind, kann keine numerische Berechnung in Maxima durchgeführt werden, welche die [[Datensätze]] benötigt. Dies muss der interne Parser zum Zeitpunkt des Online-Test-Laufes erledigen. Numerische Berechnungen, welche der interne Parser nicht kann können deshalb auch nicht mit Maxima berechnet werden.&lt;br /&gt;
* Da das Lösungsfeld, welches mit Maxima berechnet wird symbolisch ausgewertet wird, können in Maxima sämtliche symbolischen Berechnungsverfahren angewendet werden, welche ein symbolisches Ergebnis liefern und keine numerischen Werte der Datensätze benötigen.&lt;br /&gt;
* &#039;&#039;&#039;Funktionsdeklarationen&#039;&#039;&#039; wie &#039;&#039;&#039;f(x):=&#039;&#039;&#039;x^2 mit Doppelpunkt-Ist-Gleich sind im Maxima-Feld nur eingeschränkt bis gar &#039;&#039;&#039;nicht verwendbar&#039;&#039;&#039;, da sie vom Parser nicht unterstützt werden.&lt;br /&gt;
* &#039;&#039;&#039;Mengen von Maxima&#039;&#039;&#039; sind in Letto n&#039;&#039;&#039;icht verwendbar&#039;&#039;&#039;. Letto verwender hierzu eigene Funktionen des Parsers welche mit &amp;quot;set&amp;quot; beginnen und auf Vektoren basieren.&lt;br /&gt;
&lt;br /&gt;
=Berechnung mit dem internen Parser=&lt;br /&gt;
* Der interne Parser kann durch Wahl der Checkbox &amp;quot;Parser&amp;quot; anstatt von Maxima für die Berechnung des Maxima-Feldes verwendet werden. &lt;br /&gt;
* Jedenfalls wird der Parser zur Test-Laufzeit für die Berechnung des Ergebnisses einer Frage aus Lösung und Datensätzen und zum Berechnen der Schülereingabe verwendet.&lt;br /&gt;
&lt;br /&gt;
==Operatoren==&lt;br /&gt;
=== VORSICHT mit MAXIMA ===&lt;br /&gt;
* Einige Operatoren sind in &#039;&#039;&#039;Maxima anders&#039;&#039;&#039;, oder &#039;&#039;&#039;nicht definiert&#039;&#039;&#039;. Möchte man im Maximafeld die Operatoren des Parsers-verwenden, so muss das gesamte Maxima-Feld &#039;&#039;&#039;mit dem Parser gerechnet&#039;&#039;&#039; werden. Man verliert dadurch jedoch die Vorteile der Maxima-Berechnung.&lt;br /&gt;
* Alternativ kann man statt der Operatoren auch &#039;&#039;&#039;Funktionen verwenden&#039;&#039;&#039; (zB: ne() statt != ). Diese werden dann von Maxima zwar nicht ausgewertet, die Berechnung bleibt aber trotzdem korrekt und kann mit Maxima durchgeführt werden.&lt;br /&gt;
* Es gibt einige Funktionen welche in &#039;&#039;&#039;Maxima existieren&#039;&#039;&#039; aber im &#039;&#039;&#039;Parser nicht, oder mit anderem Syntax&#039;&#039;&#039;.&lt;br /&gt;
** Wenn diese von Maxima nicht ausgewertet werden können, da sie &#039;&#039;&#039;Datensätze&#039;&#039;&#039; enthalten welche zu Auswertezeitpunkt von Maxima noch &#039;&#039;&#039;nicht mit Werten belegt&#039;&#039;&#039; sind, &#039;&#039;&#039;dürfen sie in der Berechnung nicht verwendet werden&#039;&#039;&#039;, da der Parser dann damit nichts anfangen kann.&lt;br /&gt;
** Solche Funktionen haben entweder im Parser eine alternative Schreibweise welche auch mit Maxima verwendet werden kann (z.B.: wenn), oder sie können prinzipell nicht verwendet werden. (Für wichtige Funktionsweisen könnte man in zukünftigen Versionen neue Funktionalitäten in den Parser einbauen, die die gewünschte Funktion erfüllen)&lt;br /&gt;
** Ein weiter Möglichkeit für die Verwendung solcher Funktionen ist der Verzicht auf Datensätze in diesen Funktionen, damit diese Funktion beim Auswerten des Maxima-Feldes bereits ausgewertet werden kann und somit der Parser davon nichts mehr sieht.&lt;br /&gt;
** zB:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
if then&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Infix Operatoren===&lt;br /&gt;
====arithmetische Operatoren====&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Operator || Priorität || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| + || 40 || Addition || 4+5 || 9 &lt;br /&gt;
|-&lt;br /&gt;
| - || 40 || Subtraktion || 6-2 || 4&lt;br /&gt;
|-&lt;br /&gt;
| * || 50 || Multiplikation || 4*5 || 20&lt;br /&gt;
|-&lt;br /&gt;
| / || 51 || Division || 20/4 || 5&lt;br /&gt;
|-&lt;br /&gt;
| % || 51 || Divisionsrest || 104%20 || 4&lt;br /&gt;
|-&lt;br /&gt;
| / / || 60 || Parallelschaltung || x / / y || x*y/(x+y)&lt;br /&gt;
|-&lt;br /&gt;
| ^ || 90 || Potenz || 2^3 || 8&lt;br /&gt;
|-&lt;br /&gt;
| .*. || 200 || Operator der intern für eine fehlende bindende Multiplikation verwendet wird || 4x || 4*x&lt;br /&gt;
|-&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
====Bitoperatoren====&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Operator || Priorität || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
||  |  || 20 || Bitweise oder logisches ODER ||| 9|5 &amp;lt;br&amp;gt; true|false || 13 &amp;lt;br&amp;gt;true&lt;br /&gt;
|-&lt;br /&gt;
| or || 20 || Bitweise oder logisches ODER || 9 or 5 || 13&lt;br /&gt;
|-&lt;br /&gt;
| &amp;amp;  || 21 || Bitweise oder logisches UND  || 13&amp;amp;10 || 8&lt;br /&gt;
|-&lt;br /&gt;
| and || 21 || Bitweise oder logisches UND  || 13 and 10 || 8&lt;br /&gt;
|-&lt;br /&gt;
| xor || 22 || Bitweise oder logisches exklusiv oder XOR  || 13 xor 10 || 7&lt;br /&gt;
|-&lt;br /&gt;
| imp || 23 || Bitweise oder logisches impliziert IMP || 13 imp 10 || 8&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;&amp;lt;  || 35 || Bitweise links schieben  || 5&amp;lt;&amp;lt;2 || 20&lt;br /&gt;
|-&lt;br /&gt;
| &amp;gt;&amp;gt;  || 35 || Bitweise rechts schieben || 8&amp;gt;&amp;gt;2 || 2&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
====Vergleichsoperatoren====&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Operator || Priorität || Beschreibung || Beispiel&lt;br /&gt;
|-&lt;br /&gt;
| =  || 3 || Gleichungsoperator || x=y&lt;br /&gt;
|-&lt;br /&gt;
| == || 30 || Gleichungsoperator || x==y&lt;br /&gt;
|-&lt;br /&gt;
| != || 30 || Ungleichungsoperator || x!=y&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt; || 32 || Kleiner || x&amp;lt;y&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;= || 32 || Kleiner gleich || x&amp;lt;=y&lt;br /&gt;
|-&lt;br /&gt;
| &amp;gt; || 32 || größer || x&amp;gt;y&lt;br /&gt;
|-&lt;br /&gt;
| &amp;gt;= || 32 || größer gleich || x&amp;gt;=y&lt;br /&gt;
|}&lt;br /&gt;
====Organisative Operatoren====&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Operator || Priorität || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| , || 0 || Listen-Trennzeichen || x,y ||&lt;br /&gt;
|-&lt;br /&gt;
| $ || 1 || Trennzeichen zwischen mehreren Berechnungen || ||&lt;br /&gt;
|-&lt;br /&gt;
| ; || 1 || Trennzeichen zwischen mehreren Berechnungen || ||&lt;br /&gt;
|-&lt;br /&gt;
| : || 2 || Zuweisung an eine Variablen auf der linken Seite || x:5 || &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Prefix Operatoren===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Operator || Priorität || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| + || 45 || positives Vorzeichen || +5 || 5&lt;br /&gt;
|-&lt;br /&gt;
| - || 45 || negatives Vorzeichen || -(-5) || 5&lt;br /&gt;
|-&lt;br /&gt;
| ~ || 95  || bitweise Inversion einer 64bit-Ganzzahl || ~0x0F0F || 0xFFFFFFFFFFFFF0F0&lt;br /&gt;
|-&lt;br /&gt;
| ! || 120 || logisches NOT || !(3&amp;lt;4) || false&lt;br /&gt;
|-&lt;br /&gt;
| ++ || 130 || Inkrement von Ganzzahlen || ++x || erhöht x um eins und gibt das Ergebnis nach der Erhöhung zurück&lt;br /&gt;
|-&lt;br /&gt;
| -- || 130 || Dekrement von Ganzzahlen || --x || vermindert x um eins und gibt das Ergebnis nach der Verminderung zurück&lt;br /&gt;
|-&lt;br /&gt;
| % || 200 || Prefix für Namen, welche als Konstante definiert sind || %pi || 3.141592653589793&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Suffix Operatoren===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Operator || Priorität || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| ++ || 135 || Inkrement von Ganzzahlen || x++ || erhöht x um eins und gibt den Variablenwert vor der Erhöhung zurück&lt;br /&gt;
|-&lt;br /&gt;
| -- || 135 || Dekrement von Ganzzahlen || x-- || vermindert x um eins und gibt den Variablenwert vor der Verminderung zurück&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==Klammern==&lt;br /&gt;
* () runde Klammern werden für mathematische Ausdrücke zur Klammerung verwendet&lt;br /&gt;
* {} geschwungene Klammer werden im Angabetext für die Namen der Datensätze verwendet&lt;br /&gt;
* [] eckige Klammern werden für Vektoren und Matrizen verwendet&lt;br /&gt;
&lt;br /&gt;
==Funktionen==&lt;br /&gt;
===Funktionen für Ganzzahlen===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| band || bitweises UND || band(4,12) || 4&lt;br /&gt;
|-&lt;br /&gt;
| bor  || bitweises ODER || bor(4,1) || 5&lt;br /&gt;
|-&lt;br /&gt;
| bxor || bitweises EXKLUSIV ODER || band(4,5) || 1&lt;br /&gt;
|-&lt;br /&gt;
| bimp || bitweises Parameter1 impliziert Parameter2 || bimp(13,10) || 8&lt;br /&gt;
|-&lt;br /&gt;
| binv || bitweises NICHT mit 8 bit || binv(0x0F) || 0xF0&lt;br /&gt;
|-&lt;br /&gt;
| shl || Schiebe Ganzzahl bitweise nach links || shl(8,2) || 32&lt;br /&gt;
|-&lt;br /&gt;
| shr || Schiebe Ganzzahl bitweise nach rechts || shr(8,2) || 2&lt;br /&gt;
|-&lt;br /&gt;
| div || Ganzzahldivision, Ergebnis wird abgeschnitten || div(5,2) || 2&lt;br /&gt;
|-&lt;br /&gt;
| mod || Modulo: Divisionsrest einer Ganzzahldivision || mod(5,2) || 1&lt;br /&gt;
|-&lt;br /&gt;
| inv8  || bitweise Invertieren und die letzten 8 Bit bestimmen  || inv8(0b1001) || 0b11110110&lt;br /&gt;
|-&lt;br /&gt;
| inv16 || bitweise Invertieren und die letzten 16 Bit bestimmen || inv16(0xF0)  || 0xFF0F&lt;br /&gt;
|-&lt;br /&gt;
| inv32 || bitweise Invertieren und die letzten 32 Bit bestimmen || inv32(0xF0)  || 0bFFFFFF0F&lt;br /&gt;
|-&lt;br /&gt;
| inv64 || bitweise Invertieren und die letzten 64 Bit bestimmen || inv64(0xF0)  || 0bFFFFFFFFFFFFFF0F&lt;br /&gt;
|-&lt;br /&gt;
| byte  || Zahl in eine Ganzzahl wandeln und die letzten 8bit der Zahl Abschneiden, Einheit geht verloren  || byte(34.2) || 34&lt;br /&gt;
|-&lt;br /&gt;
| word  || Zahl in eine Ganzzahl wandeln und die letzten 16bit der Zahl Abschneiden, Einheit geht verloren || word(34.2) || 34&lt;br /&gt;
|-&lt;br /&gt;
| int   || Zahl in eine Ganzzahl wandeln und die letzten 32bit der Zahl Abschneiden, Einheit geht verloren || int(34.2) || 34&lt;br /&gt;
|-&lt;br /&gt;
| long  || Zahl in eine Ganzzahl wandeln , Einheit geht verloren || long(34.2) || 34&lt;br /&gt;
|-&lt;br /&gt;
| [[parity]]  || Paritätsberechnung : parity(Parität,Codewortlänge,Datenwort[,Datenwort,....]) || parity(even,7,&amp;quot;xy&amp;quot;) || &lt;br /&gt;
|-&lt;br /&gt;
| [[blockparity]]  || Kreuz oder Blockparität : blockparity(Parität,Codewortlänge,Codewortanzahl,Datenwort[,Datenwort,....]) || blockparity(even,7,3,&amp;quot;abc&amp;quot;) || &lt;br /&gt;
|-&lt;br /&gt;
| [[bcd]]  || Wandelt in eine Long-Zahl in ein Feld aus BCD-kodierten Zahlen um || bcd(124) || [1,2,4]&lt;br /&gt;
|-&lt;br /&gt;
| [[code]] || Code aus mehreren Codeworten zusammensetzen : code(Codewortlänge,Datenwort[,Datenwort,....]) || code(5,4,3,5) || 0b1000001100101&lt;br /&gt;
|-&lt;br /&gt;
| [[hamming]] || Bestimmt den Hamming-Abstand von mehreren Codeworten || hamming(1,2,4,8,16) || 2&lt;br /&gt;
|-&lt;br /&gt;
| [[komplement]] ||  Bildet das Zweierkomplement mit einer negativen Zahl mit einer bestimmten Bitanzahl, fehlt die Bitanzahl, so wird ein 32Bit-2er-komplement gebildet || komplement(-5,8) || 0b11111011&lt;br /&gt;
|-&lt;br /&gt;
| [[bitstream]] || Erzeugt aus einer Ganzzahl einen Bitstrom als String mit einer definierten Anzahl von Bit (MSB werden nötigenfalls mit 0 gefüllt) : bitstream(Daten,Bitanzahl) || bitstream(0x184,12) || &amp;quot;000110000100&amp;quot;&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Funktionen für rationale und Ganzzahlen===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| kgV || berechnet das kleinste gemeinsame Vielfache von mehreren Zahlen || kgV(3,10) || 30&lt;br /&gt;
|-&lt;br /&gt;
| ggT || berechnet den größten gemeinsamen Teiler von mehreren Zahlen || ggT(12,10) || 2&lt;br /&gt;
|- &lt;br /&gt;
| isprim || prüft ob die angegebene Zahl eine Primzahl ist || isprim(13) || true&lt;br /&gt;
|-&lt;br /&gt;
| prims || zerlegt eine Ganzzahl in ihre Primfaktoren || prims(12) || [2,2,3]&lt;br /&gt;
|-&lt;br /&gt;
| defracmix || zerlegt eine rationale Zahl in einen gemischten Bruch aus ganzzahligem Summanden, Zähler und Nenner als Menge&amp;lt;br&amp;gt;Die erhaltene Menge kann mit dem Format-Modfier &#039;&#039;&#039;frac&#039;&#039;&#039; als gemischter Bruch dargestellt werden (siehe [[Zahlendarstellung]]) || defracmix(14/12)&amp;lt;br&amp;gt;defracmix(-15/12)&amp;lt;br&amp;gt;defracmix(3/12) || [1,2/12]&amp;lt;br&amp;gt;[-1,3,12]&amp;lt;br&amp;gt;[0,3,12] &lt;br /&gt;
|-&lt;br /&gt;
| defrac || zerlegt eine rationale Zahl in Zähler und Nenner als Menge &amp;lt;br&amp;gt;Die erhaltene Menge kann mit dem Format-Modfier &#039;&#039;&#039;frac&#039;&#039;&#039; als gemischter Bruch dargestellt werden || defrac(14/12) || [13,12]&lt;br /&gt;
|-&lt;br /&gt;
| frac || erzeugt aus einer Menge aus 2 oder 3 Elementen (von defrac) eine rationale Zahl || frac([3,7])&amp;lt;br&amp;gt;frac([1,2,3]) || 3/7 &amp;lt;br&amp;gt; 5/3&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===boolsche Funktionen===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| eq || gleich || eq(4,4) || true&lt;br /&gt;
|-&lt;br /&gt;
| eqruntime || symbolischer Vergleich, welcher &#039;&#039;&#039;symbolisch erst bei der Ergebnisberechnung&#039;&#039;&#039; ausgeführt wird. Muss verwendet werden, wenn bei Vergleichen symbolische Antworten von Schülern (Q0,Q1,...) verwendet werden.  || eqruntime(x+3*y,3*y+x) || true&lt;br /&gt;
|-&lt;br /&gt;
| ne || ungleich || ne(6,4) || true&lt;br /&gt;
|-&lt;br /&gt;
| ge || größer gleich || ge(6,4) || true&lt;br /&gt;
|-&lt;br /&gt;
| le || kleiner gleich || le(6,4) || false&lt;br /&gt;
|-&lt;br /&gt;
| gt || größer || gt(6,4) || true&lt;br /&gt;
|-&lt;br /&gt;
| lt || kleiner || lt(6,4) || false&lt;br /&gt;
|-&lt;br /&gt;
| between || prüft ob Parameter1 kleiner als Parameter2 und Parameter2 kleiner als Parameter 3 || between(3,4,5) || true&lt;br /&gt;
|-&lt;br /&gt;
| land || logisches UND || land(a&amp;lt;b,b&amp;lt;c) || &lt;br /&gt;
|-&lt;br /&gt;
| lor  || logisches ODER || lor(a&amp;lt;b,b&amp;lt;c) || &lt;br /&gt;
|-&lt;br /&gt;
| not  || logisches NICHT. Vorsicht ein symbolisches Ergebnis von Maxima liefert not als Prefix-Operator, welcher vom Parser nicht unterstützt wird ( Verwende statt dessen &#039;&#039;&#039;lnot&#039;&#039;&#039; ) || not(a&amp;lt;b) || &lt;br /&gt;
|-&lt;br /&gt;
| lnot  || logisches NICHT, wie not jedoch wird es von Maxima nicht ausgewertet || lnot(a&amp;lt;b) || &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===arithmetische Funktionen===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| double || Zahl ein eine Gleitkommazahl umwandeln, die Einheit geht dabei verloren || double(3.4V) || 3.4&lt;br /&gt;
|-&lt;br /&gt;
| numeric || verwirft die Einheit, wenn eine vorhanden ist und liefert nur den Zahlenwert || numeric(2.3mA) &amp;lt;br&amp;gt; numeric(5%)|| 0.0023 &amp;lt;br&amp;gt; 5&lt;br /&gt;
|-&lt;br /&gt;
| unit || gibt die SI-Einheit mit dem Zahlenwert 1 zurück || unit(3.1kA) &amp;lt;br&amp;gt; unit(5%) || 1A &amp;lt;br&amp;gt; 1%&lt;br /&gt;
|-&lt;br /&gt;
| cround  || Rundet die Zahl kaufmännisch, der zweite Parameter gibt die Anzahl der Kommastellen an, ohne 2.Parameter wird auf Ganzzahlen gerundet, bei komplexen Zahlen wird Betrag und Winkel in Grad gerundet. || cround(23.535,2)&amp;lt;br&amp;gt;cround(2.435arg34.5364°,1) || 23.54&amp;lt;br&amp;gt;2.4arg34.5°&lt;br /&gt;
|-&lt;br /&gt;
| ccround  || Rundet die Zahl kaufmännisch, der zweite Parameter gibt die Anzahl der Kommastellen an, bei komplexe Zahlen wird Real und Imaginärteil gerundet. || ccround(2.4534+5.645*%i,2) || 2.45+5.65i&lt;br /&gt;
|-&lt;br /&gt;
| round  || Rundet die Zahl kaufmännisch, aus Kompatibilitätsgründen zu Maxima hat round nur einen Parameter || round(23.535) || 24&lt;br /&gt;
|-&lt;br /&gt;
| ground || Rundet die Zahl auf die im zweiten Parameter angegebenen gültigen Ziffern || ground(2453.43,2) || 2500&lt;br /&gt;
|-&lt;br /&gt;
| floor  || Rundet auf die größte ganze Zahl, welche kleiner oder gleich x ist || floor(24.5) || 24&lt;br /&gt;
|-&lt;br /&gt;
| trunc  || Schneidet die Zahl nach dem Komma ab || trunc(24.5) || 24&lt;br /&gt;
|-&lt;br /&gt;
| ceiling || ceiling(x) Rundet auf die kleinste ganze Zahl, welche größer oder gleich x ist || ceiling(13.2) || 14&lt;br /&gt;
|-&lt;br /&gt;
| pow || Potenzfunktion || pow(2,3) || 8&lt;br /&gt;
|-&lt;br /&gt;
| par || Parallelschaltung von Widerständen || par(x,y) || x*y/(x+y)&lt;br /&gt;
|-&lt;br /&gt;
| min  || Minimum von mehrere Werten suchen || min(3,5,1) || 1&lt;br /&gt;
|-&lt;br /&gt;
| max  || Maximum von mehreren Werten suchen || max(3,5,1) ||  5&lt;br /&gt;
|-&lt;br /&gt;
| random  || Zufallszahl aus einem definierten Zahlenbereich random(minimal,maximal)&amp;lt;br&amp;gt;VORSICHT! Die Zufallszahl wird bei jedem Aufruf neu berechnet, weshalb sich der Wert bei jedem Anzeigevorgang einer Frage ändert. Sollte sich der berechnete Wert für eine Schülerangabe zwischen Fragestellung und Ergebniskontrolle nicht ändern dürfen (ist der Normalfall) muss man einen &#039;&#039;&#039;Datensatz statt einer Zufallszahl&#039;&#039;&#039; verwenden! &amp;lt;br&amp;gt; Zufallszahlen haben in der Ergebnisberechnung keinen Sinn, und sollten maximal für angezeigte zufällige Werte verwendet werden! || random(2,8) ||  3.4532&lt;br /&gt;
|-&lt;br /&gt;
| randomC  || komplexe Zufallszahl aus einem definierten Zahlenbereich für den Betrag&amp;lt;br&amp;gt;VORSICHT! Die Zufallszahl wird bei jedem Aufruf neu berechnet!  || randomC(2,8) ||  3.4532arg40.3°&lt;br /&gt;
|-&lt;br /&gt;
| signum  || Liefert das Vorzeichen einer Zahl (-1,0,1). Bei einer komplexen Zahl das Vorzeichen des Realteils. || signum(-4) || -1&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===erweiterte arithmetische Funktionen===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| sigma || Sprungfunktion: sigma(x) liefert 0 für x&amp;lt;0 und 1 für x&amp;gt;=0 || sigma(243.3) || 1&lt;br /&gt;
|-&lt;br /&gt;
| interpol || Interpolationsfunktion zwischen mehreren Stützpunkten in einem Koordinatensystem. &amp;lt;br&amp;gt; interpol(WerteX,WerteY,x) || interpol([0,1,2],[0,3,3],1.5) || 3&lt;br /&gt;
|-&lt;br /&gt;
| periodic || Erzeugt aus einer beliebigen Funktion zwischen 0 und Periodendauer eine periodische Funktion &amp;lt;br&amp;gt; periodic(Variable,Periodendauer,Funktion)&amp;lt;br&amp;gt; periodic(Variable,Periodendauer,Funktionsperiodendauer,Funktion) || ch1(t):periodic(t,5ms,2&#039;Vms-2&#039;*t^2) &amp;lt;br&amp;gt; ch1(t):periodic(t,5ms,1,2V*t^2) || :[[Datei:ClipCapIt-190318-113524.PNG|100px]] &amp;lt;br&amp;gt; :[[Datei:ClipCapIt-190318-113644.PNG|100px]]&lt;br /&gt;
|-&lt;br /&gt;
| numint || numerische Integration &amp;lt;br&amp;gt; numint(untereGrenze,obereGrenze,funktion,Variable)&amp;lt;br&amp;gt; numint(untereGrenze,obereGrenze,funktion,Variable,punkteAnzahl) || numint(0,2pi,sin(t),t) || 0&lt;br /&gt;
|-&lt;br /&gt;
| numdif || numerisches Differenzieren einer Funktion &amp;quot;funktion&amp;quot; nach einer Variablen &amp;quot;Variable&amp;quot; an der Stelle &amp;quot;position&amp;quot; mit einer Differenz der Variablen von &amp;quot;differenz&amp;quot; &amp;lt;br&amp;gt; numdif(position,funktion,Variable,differenz) || numdif(0,sin(t),t,0.01) || 1&lt;br /&gt;
|-&lt;br /&gt;
| solve || löst eine Gleichung oder ein Gleichungssystem nach einer oder mehrerer Variablen || solve([2*x+y=3,x-y=0],[x,y]) || [ [ x=1,y=1 ] ]&lt;br /&gt;
|-&lt;br /&gt;
| solvevalue || löst eine Gleichung oder ein Gleichungssystem nach einer Variablen und liefert genau die erste Lösung wenn sie numerisch berechenbar ist || solvevalue([ 2*x+y=3,x-y=0 ],[ x,y ],x)  || 1&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Stringfunktionen===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| dechex || Zahl in eine Ganzzahl wandeln und als Hexadezimal-String ausgeben || dexhex(12) || &amp;quot;0xC&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| chr || Bestimmt die Zeichen mit dem ASC-II-Code der Long-Parameter und setzt daraus einen String zusammen. || chr(0x65,105) || &amp;quot;ei&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| val || Bestimmt den ASC-II-Code des ersten Zeichens welches als String-Parameter übergeben wurde.|| val(&amp;quot;a&amp;quot;) || 97&lt;br /&gt;
|-&lt;br /&gt;
| strcat || Fügt mehrere Strings zusammen.|| strcat(&amp;quot;a&amp;quot;,&amp;quot;b&amp;quot;) || &amp;quot;ab&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===trigonometrische Funktionen===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| sin || Sinus || sin(%pi/2) || 1&lt;br /&gt;
|-&lt;br /&gt;
| cos || Cosinus || cos(%pi/2) || 0&lt;br /&gt;
|-&lt;br /&gt;
| tan || Tangens || tan(%pi/4) || 1&lt;br /&gt;
|-&lt;br /&gt;
| asin || Arcus-Sinus || asin(1) || %pi/2&lt;br /&gt;
|-&lt;br /&gt;
| arcsin || Arcus-Sinus || asin(1) || %pi/2&lt;br /&gt;
|-&lt;br /&gt;
| acos || Arcus-Cosinus || acos(1) || 0&lt;br /&gt;
|-&lt;br /&gt;
| arccos || Arcus-Cosinus || acos(1) || 0&lt;br /&gt;
|-&lt;br /&gt;
| atan || Arcus-Tangens || atan(1) || %pi/4&lt;br /&gt;
|-&lt;br /&gt;
| arctan || Arcus-Tangens || arctan(1) || %pi/4&lt;br /&gt;
|-&lt;br /&gt;
| atan2 || Arcus-Tangens atan2(x,y)=arctan(y/x) || atan2(-2,-2) || -%pi*3/4&lt;br /&gt;
|-&lt;br /&gt;
| arctan2 || Arcus-Tangens arctan2(x,y)=arctan(y/x) || arctan2(-2,-2) || -%pi*3/4&lt;br /&gt;
|-&lt;br /&gt;
| sinh || Sinus-Hyperbolicus || sinh(1) || 1.1752012&lt;br /&gt;
|-&lt;br /&gt;
| cosh || Cosinus-Hyperbolicus || cosh(1) || 1.5430806&lt;br /&gt;
|-&lt;br /&gt;
| tanh || Tangens-Hyperbolicus || tanh(1) || 0.7615941&lt;br /&gt;
|-&lt;br /&gt;
| coth || Cotangens-Hyperbolicus || coth(1) || 1.313035&lt;br /&gt;
|-&lt;br /&gt;
| asinh || Area-Sinus-Hyperbolicus || asinh(1.1752012) || 1&lt;br /&gt;
|-&lt;br /&gt;
| acosh || Area-Cosinus-Hyperbolicus || acosh(1.5430806) || 1&lt;br /&gt;
|-&lt;br /&gt;
| atanh || Area-Tangens-Hyperbolicus || atanh(0.7615941) || 1&lt;br /&gt;
|-&lt;br /&gt;
| acoth || Area-Cotangens-Hyperbolicus || acoth(1.313035) || 1&lt;br /&gt;
|-&lt;br /&gt;
| [[csin]] || Erzeugt aus einer komplexen Zahl (Effektivwert) und einer Frequenz einen Sinusfunktion in der Zeit || csin(U) || sqrt(2)*cabs(U)*sin(2*pi*f*t+carg(U))&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Exponentialfunktionen===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| pow || Potenzfunktion || pow(2,3) || 8&lt;br /&gt;
|-&lt;br /&gt;
| exp|| Exponentialfunktion || exp(1) || %e&lt;br /&gt;
|-&lt;br /&gt;
| log || natürlicher Logarythmus || log(%e) || 1&lt;br /&gt;
|-&lt;br /&gt;
| ln || natürlicher Logarythmus || ln(%e) || 1&lt;br /&gt;
|-&lt;br /&gt;
| log10 || Logarythmus zur Basis 10 || log10(100) || 2&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===komplexe Zahlen===&lt;br /&gt;
Die Funktionen zu komplexen Zahlen werden (anders als in Maxima) nur ausgewertet wenn das Ergebnis numerisch berechenbar ist, ansonsten bleibt die Funktion symbolisch erhalten.&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| abs || Liefert den Absolutbetrag einer komplexen Zahl || abs(3+4*%i) || 5&lt;br /&gt;
|-&lt;br /&gt;
| cabs || Liefert den Absolutbetrag einer komplexen Zahl || cabs(3+4*%i) || 5&lt;br /&gt;
|-&lt;br /&gt;
| carg || Liefert das Argument einer komplexen Zahl || carg(4*%e^(3*%i)) || 3&lt;br /&gt;
|-&lt;br /&gt;
| realpart || Liefert den Realteil einer komplexen Zahl || abs(3+4*%i) || 3&lt;br /&gt;
|-&lt;br /&gt;
| imagpart || Liefert den Imaginärteil einer komplexen Zahl || abs(3+4*%i) || 4&lt;br /&gt;
|-&lt;br /&gt;
| conjugate || Liefert die konjugiert komplexe Zahl einer komplexen Zahl || abs(3+4*%i) || 3-4*%i&lt;br /&gt;
|-&lt;br /&gt;
| rectform || wandelt die komplexe Zahl in eine Ansicht mit Real- und Imaginärteil || 3+4*%i || 3+4*%i&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===statistische Funktionen===&lt;br /&gt;
Die Funktionen funktionieren nur ohne Einheiten.&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| factorial || Liefert die Fakultät einer positiven ganzen Zahl || factorial(5) || 120&lt;br /&gt;
|-&lt;br /&gt;
| binomial || Liefert den Binomialkoeffizienten von zwei positiven ganzen Zahlen || binomial(5,2) || 10&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Mengen-Funktionen===&lt;br /&gt;
Mengen werden intern als Vektoren verarbeitet und sind deshalb auch direkt durch Vektoren ersetzbar. Auch alle Vektor-Funktionen sind somit auch auf Mengen anwendbar und umgekehrt.&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| setget || liefert ein Element einer Menge oder einer Matrix (Menge von Mengen) || setget([12,13,14],1) &amp;lt;br&amp;gt; setget(matrix([9,2],[3,4]),0,1) || 13 &amp;lt;br&amp;gt; 2 &lt;br /&gt;
|-&lt;br /&gt;
| setset || setzt ein Element einer Menge oder einer Matrix (Menge von Mengen) || setset([12,13,14],1,35) &amp;lt;br&amp;gt; setset(matrix([9,2],[3,4]),0,0,-9) || [12,35,14] &amp;lt;br&amp;gt; [[-9,2],[3,4]]&lt;br /&gt;
|-&lt;br /&gt;
| setinsert || fügt ein Element in eine Menge an eine gegebene Stelle ein || setinsert([12,13,14],1,25) || [12,25,13,14]&lt;br /&gt;
|-&lt;br /&gt;
| setremove || löscht ein Element einer Menge || setremove([12,13,14],1) || [12,14]&lt;br /&gt;
|-&lt;br /&gt;
| setmedian || Liefert den Median einer Menge || setmedian(4,3,1,5,6) || 4&lt;br /&gt;
|-&lt;br /&gt;
| setsort || Sortiert die Elemente einer Menge aufsteigend || setsort([3,-3,2,0,5,2]) || [-3,0,2,2,3,5]&lt;br /&gt;
|-&lt;br /&gt;
| setsortnd || Sortiert die Elemente einer Menge aufsteigend und entfernt alle mehrfach vorkommenden Elemente || setsortnd([31,-3,2,31,0,5,2]) || [-3,0,2,5,31]&lt;br /&gt;
|-&lt;br /&gt;
| setcount || Bestimmt die Anzahl wie oft ein Element in einer Menge vorkommt oder die Anzahl der Elemente der Menge || setcount([31,-3,2,31,0,5,2],31) &amp;lt;br&amp;gt; setcount([2,5,3,6]) || 2 &amp;lt;br&amp;gt; 4&lt;br /&gt;
|-&lt;br /&gt;
| setmodus || Liefert das Element einer Menge, welches am öftesten vorkommt oder die Elemente als Menge wenn mehrere Elemente gleich oft vorkommen || setmodus([3,-3,2,0,5,2]) || 2&lt;br /&gt;
|-&lt;br /&gt;
| setreverse || Dreht die Reihenfolge einer Menge um || setreverse([3,-3,2,0,5,2]) || [2,5,0,2,-3,3]&lt;br /&gt;
|-&lt;br /&gt;
| setnd || Löscht alle Duplikate aus der Menge || setnd([3,-3,2,0,5,2]) || [3,-3,2,0,5]&lt;br /&gt;
|-&lt;br /&gt;
| setshuffle || Mischt eine  Menge in eine zufällige Reihenfolge || setshuffle([3,-3,2,0,5,2]) || [2,0,5,-3,2,3]&lt;br /&gt;
|-&lt;br /&gt;
| setmittel || Bestimmt den Mittelwert einer Menge || setmittel([1,3,2,4]) || 2.5&lt;br /&gt;
|-&lt;br /&gt;
| setgeomittel || Bestimmt das geometrische Mittelwert einer Menge aus positiven reellen Zahlen || setgeomittel([10,20,30]) || 18.171206&lt;br /&gt;
|-&lt;br /&gt;
| setvarianz || Bestimmt die empirische Varianz einer Menge || setvarianz([3,1,2,5,4]) || ((3-3)^2+(1-3)^2+(2-3)^2+(5-3)^2+(4-3)^2)/5=2&lt;br /&gt;
|-&lt;br /&gt;
| setquadratmittel || Bestimmt den quadratischen Mittelwert einer Menge || setquadratmittel([10,20,30]) || 21.6025&lt;br /&gt;
|-&lt;br /&gt;
| setsum || Bestimmt die Summe aller Werte einer Menge || setsum([1,3,2,4]) || 10&lt;br /&gt;
|-&lt;br /&gt;
| setprod || Bestimmt das Produkt aller Werte einer Menge || setprod([1,3,2,4]) || 24&lt;br /&gt;
|-&lt;br /&gt;
| setunion || Fügt mehrere Mengen zu einer neuen Menge zusammen || setunion([1,3,2,4],[3,7]) || {1,3,2,4,3,7}&lt;br /&gt;
|-&lt;br /&gt;
| setunionnd || Fügt mehrere Mengen zu einer neuen Menge zusammen, sortiert diese und entfernt alle mehrfachen Elemente || setunionnd([1,3,2,4],[3,7]) || {1,2,3,4,7}&lt;br /&gt;
|-&lt;br /&gt;
| setcut || Bildet die Schnittmenge aus mehreren Mengen || setcut([1,3,2,4],[3,7]) || {3}&lt;br /&gt;
|-&lt;br /&gt;
| setcompare || vergleicht zwei Mengen miteinander, wobei die Reihenfolge egal ist  || setcompare([1,3,2,4],[3,7]) &amp;lt;br&amp;gt; setcompare([1,3,2],[1,2,3]) &amp;lt;br&amp;gt; setcompare([1,3,2],[1,3,2,3]) &amp;lt;br&amp;gt; setcompare([1,2,3],[1,2,3])  || false &amp;lt;br&amp;gt; true &amp;lt;br&amp;gt; false &amp;lt;br&amp;gt; true&lt;br /&gt;
|-&lt;br /&gt;
| setcomparend || vergleicht zwei Mengen miteinander, wobei die Reihenfolge egal ist und doppelte Werte als einfach behandelt werden. || setcomparend([1,3,2,4],[3,7]) &amp;lt;br&amp;gt; setcomparend([1,3,2],[1,2,3]) &amp;lt;br&amp;gt; setcomparend([1,3,2],[1,3,2,3]) &amp;lt;br&amp;gt; setcomparend([1,2,3],[1,2,3])  || false &amp;lt;br&amp;gt; true &amp;lt;br&amp;gt; true &amp;lt;br&amp;gt; true&lt;br /&gt;
|-&lt;br /&gt;
| setpartof || prüft ob die erste Menge eine Teilmenge der zweite Menge ist wobei die Reihenfolge egal ist aber mehrfache Werte berücksichtigt werden  || setpartof([1,4],[1,3,7]) &amp;lt;br&amp;gt; setpartof([1,3],[1,2,3]) &amp;lt;br&amp;gt; setpartof([1,3,3],[1,3,5,7]) &amp;lt;br&amp;gt; setpartof([1,4,4],[1,2,3,4])  || false &amp;lt;br&amp;gt; true &amp;lt;br&amp;gt; false &amp;lt;br&amp;gt; false&lt;br /&gt;
|-&lt;br /&gt;
| setpartofnd || prüft ob die erste Menge eine Teilmenge der zweite Menge ist wobei die Reihenfolge und mehrfache Werte egal sind  || setpartofnd([1,4],[1,3,7]) &amp;lt;br&amp;gt; setpartofnd([1,3],[1,2,3]) &amp;lt;br&amp;gt; setpartofnd([1,3,3],[1,3,5,7]) &amp;lt;br&amp;gt; setpartofnd([1,4,4],[1,2,3,4])  || false &amp;lt;br&amp;gt; true &amp;lt;br&amp;gt; true &amp;lt;br&amp;gt; true&lt;br /&gt;
|-&lt;br /&gt;
| setgetmin || Liefert den kleinsten Wert einer Menge || setgetmin([1,3,-2,4]) || -2&lt;br /&gt;
|-&lt;br /&gt;
| setgetmax || Liefert den größten Wert einer Menge || setgetmax([1,3,-2,4]) || 4&lt;br /&gt;
|-&lt;br /&gt;
| setremovefirst || Entfernt den ersten Wert einer Menge || setremovefirst([1,3,-2,4]) || {3,-2,4}&lt;br /&gt;
|-&lt;br /&gt;
| setremovelast || Entfernt den letzten Wert einer Menge || setremovelast([1,3,-2,4]) || {1,3,-2}&lt;br /&gt;
|-&lt;br /&gt;
| setgetfirst || Liefert den ersten Wert einer Menge || setgetfirst([1,3,-2,4]) || 1&lt;br /&gt;
|-&lt;br /&gt;
| setgetlast || Liefert den letzten Wert einer Menge || setgetlast([1,3,-2,4]) || 4&lt;br /&gt;
|-&lt;br /&gt;
| setsub || setsub(M,x,y) Liefert eine Teilmenge von M der Elemente vom index x bis zum Index y || setsub([1,3,-2,4],1,2) || {3,-2}&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Typ-Funktionen===&lt;br /&gt;
Werden nur dann ausgewertet wenn der Parameter ein numerischer Wert oder eine Menge ist.&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| isset || Prüft ob es sich um eine Menge handelt. || isset([12,13,14]) || true &lt;br /&gt;
|-&lt;br /&gt;
| issetnumeric || Prüft ob es sich um eine Menge aus reellen Zahlen handelt. || issetnumeric([12,13.4,14]) || true &lt;br /&gt;
|-&lt;br /&gt;
| issetlong || Prüft ob es sich um eine Menge aus ganzen Zahlen handelt. || issetlong([12,13,14]) || true &lt;br /&gt;
|-&lt;br /&gt;
| islong || Prüft ob es sich um eine ganze Zahl handelt. || islong(12) || true &lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Algebra===&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;Hinweis:&#039;&#039; Die Indizes eines Vektors oder einer Matrix werden in Letto ausgehend von 0 weg gezählt.  &lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| matrix || erzeugt aus mehreren gleich langen Vektoren eine Matrix || matrix([1,2],[3,4]) || [[1,2],[3,4]]&lt;br /&gt;
|-&lt;br /&gt;
| inv || invertiert eine quadratische Matrix oder bildet 1/x || inv(matrix([1,2],[3,4])) || [[-2,1],[3/2,-1/2]]&lt;br /&gt;
|-&lt;br /&gt;
| vget || liefert ein Element eines Vektors oder einer Matrix || vget([12,13,14],1) &amp;lt;br&amp;gt; vget(matrix([9,2],[3,4]),0,1) || 13 &amp;lt;br&amp;gt; 2 &lt;br /&gt;
|-&lt;br /&gt;
| vset || setzt ein Element eines Vektors oder einer Matrix || vset([12,13,14],1,35) &amp;lt;br&amp;gt; vset(matrix([9,2],[3,4]),0,0,-9) || [12,35,14] &amp;lt;br&amp;gt; [[-9,2],[3,4]]&lt;br /&gt;
|-&lt;br /&gt;
| vinsert || fügt ein Element in einen Vektor an eine gegebene Stelle ein || vinsert([12,13,14],1,25) || [12,25,13,14]&lt;br /&gt;
|-&lt;br /&gt;
| vremove || löscht ein Element eines Vektors || vremove([12,13,14],1) || [12,14]&lt;br /&gt;
|-&lt;br /&gt;
| vabs || Berechnet den Betrag eines Vektors || vabs([3,4]) || 5&lt;br /&gt;
|-&lt;br /&gt;
| vin || Berechnet das innere Produkt von 2 Vektoren || vin([1,2,3],[4,5,6]) || 32&lt;br /&gt;
|-&lt;br /&gt;
| vex || Berechnet das ex-Produkt von 2 Vektoren im 3-dimensionalen Raum || vex([1,2,3],[4,5,6]) || [-3,6,-3]&lt;br /&gt;
|-&lt;br /&gt;
| mprod || Bildet das Matrixprodukt aus zwei Matrizen || mprod([[1,2],[3,4]],[[5,6],[7,8]]) || [[19,22],[43,50]]&lt;br /&gt;
|-&lt;br /&gt;
| mtrans || Bildet die transponierte Matrix || mtrans([[1,2],[3,4]]) || [[1,3],[2,4]]&lt;br /&gt;
|-&lt;br /&gt;
| minv || Bildet die inverse Matrix || minv([[1,2],[3,4]]) || [[-2,1],[3/2,-1/2]]&lt;br /&gt;
|-&lt;br /&gt;
| mdet || Bildet die Determinante einer quadratischen Matrix || mdet([[1,2],[3,4]]) || -2&lt;br /&gt;
|-&lt;br /&gt;
| vindex || vindex(v,x) liefert den Index des Elementes eines Vektors, welcher am nächsten bei x liegt || vindex([10,30,70],40) || 1 &lt;br /&gt;
|-&lt;br /&gt;
| vindexup || vindexup(v,x) liefert den Index des Elementes eines Vektors, welcher größer oder gleich x ist || vindexup([10,30,70],40) || 2 &lt;br /&gt;
|-&lt;br /&gt;
| vindexdown || vindexdown(v,x) liefert den Index des Elementes eines Vektors, welcher kleiner oder gleich x ist || vindexdown([10,30,70],60) || 1&lt;br /&gt;
|-&lt;br /&gt;
| verweis || verweis(M,x,n) liefert den Wert der n-ten Spalte (ohne Angabe von n die 2.Spalte) einer Matrix M wo x dem Wert in der ersten Spalte am nächsten liegt || verweis([[10,33],[20,77],[30,99]],21) || 77&lt;br /&gt;
|-&lt;br /&gt;
| verweisup || verweisup(M,x,n) liefert den Wert der n-ten Spalte (ohne Angabe von n die 2.Spalte) einer Matrix M wo x dem Wert in der ersten Spalte am nächsten liegt || verweisup([[10,33],[20,77],[30,99]],21) || 99&lt;br /&gt;
|-&lt;br /&gt;
| verweisdown || verweisdown(M,x,n) liefert den Wert der n-ten Spalte (ohne Angabe von n die 2.Spalte) einer Matrix M wo x dem Wert in der ersten Spalte am nächsten liegt || verweisdown([[10,33],[20,77],[30,99]],27,1) || 77&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Variable===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| kill || löscht Variable aus dem Variablenspeicher || kill(x,y) &amp;lt;br&amp;gt; kill(allbut(y)) &amp;lt;br&amp;gt; kill(all) || löscht die Variablen x und y &amp;lt;br&amp;gt; löscht alle Variablen mit Ausnahme von y &amp;lt;br&amp;gt; löscht alle Variable&lt;br /&gt;
|-&lt;br /&gt;
| allbut || Liefert eine Liste aller Variablen des Parsers als Menge(Vektor) mit Ausnahme der als Parameter angegebenen Variablen || allbut(x,y) || [a,b,c]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Auswertung und Programmierung===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| ev || Auswertung eines Ausdruckes, als Parameter können Gleichungen angegeben werden, welche dann in den Ausdruck eingesetzt werden || ev(x*y,y=4) || x*4&lt;br /&gt;
|-&lt;br /&gt;
| evruntime || Auswertung eines Ausdruckes, als Parameter können Gleichungen angegeben werden, welche dann in den Ausdruck eingesetzt werden. Das &#039;&#039;&#039;Einsetzen erfolgt erst bei der Ergebnisberechnung&#039;&#039;&#039;! || evruntime(x*y,y=4) || x*4&lt;br /&gt;
|-&lt;br /&gt;
| nv || Auswertung eines Ausdruckes, als Parameter können Gleichungen angegeben werden, welche dann in den Ausdruck eingesetzt werden. Im Gegensatz zu ev werden bestehende Variable nur in den Gleichungen, aber nicht im Ausdruck selbst eingesetzt! || nv(x*y,y=4) || x*4&lt;br /&gt;
|-&lt;br /&gt;
| [[if]] || Bedingungsfunktion if(bedingung,wahrwert,falschwert) || if(4&amp;lt;6,10,12) || 10&lt;br /&gt;
|-&lt;br /&gt;
| [[if|wenn]] || Bedingungsfunktion wenn(bedingung,wahrwert,falschwert). Im Prinzip identisch wie if, jedoch kann if mit Maxima nicht verwendet werden. || wenn(4&amp;lt;6,10,12) || 10&lt;br /&gt;
|-&lt;br /&gt;
| plugin || Ruft die Berechnungsmethode des Plugins, welches als erster Stringparameter angegeben werden muss auf und übergibt die weiteren Parameter an die Berechnungsmethode des Plugins.  || plugin(&amp;quot;plugin1&amp;quot;,3) || führt die Berechnung des Plugins mit dem Namen &amp;quot;plugin1&amp;quot; mit dem Parameter 3 aus. &lt;br /&gt;
|-&lt;br /&gt;
| symbolic || Bei allen Variablen innerhalb von symbolic werden nur nicht-numerische Werte eingesetzt! Wird vor allem im Angabtext bei {= } verwendet || symbolic(x^2+2) || x^2+2&lt;br /&gt;
|-&lt;br /&gt;
| runtime || Bei dieser Funktion wird &#039;&#039;&#039;erst bei der Berechnung der Frageantwort, nach dem Einsetzen der Datensätze&#039;&#039;&#039; das &#039;&#039;&#039;komplette Maxima-Feld&#039;&#039;&#039; mit dem internen &#039;&#039;&#039;Parser&#039;&#039;&#039; durchgerechnet und danach der Parameter-Ausdruck berechnet. Dadurch kann man bei komplizierten Berechnungen eine sehr aufwendige symbolische Berechnung verhindern! || runtime(U) || &lt;br /&gt;
|-&lt;br /&gt;
| dataset || liefert alle Datensätze einer Datensatz-Definition in einem Vektor || dataset(x) || &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Optimierung der Ausdrücke===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| opt   || Ausdruck wird vollständig optimiert, die Funktion wird ausgewertet und ist danach nicht mehr vorhanden || opt(x+x) || 2*x&lt;br /&gt;
|-&lt;br /&gt;
| ratsimp || Ausdruck wird vollständig optimiert, die Funktion wird ausgewertet und ist danach nicht mehr vorhanden (wie opt) || ratsimp(x+x) || 2*x&lt;br /&gt;
|-&lt;br /&gt;
| noopt || Ausdruck wird nicht optimiert, bleibt also so erhalten wie angegeben. Die Funktion an sich geht aber verloren. || noopt(2+3) || 2+3&lt;br /&gt;
|-&lt;br /&gt;
| lopt || Im Maximafeld bleibt die Funktion ohne Funktion erhalten, im Ergebnis {=  wird die Funktion entfernt und in der Lösung wird nach dem Einsetzen der Werte der Ausdruck vollständig optimiert. || lopt(x+3)  || lopt(x+3)  &lt;br /&gt;
|-&lt;br /&gt;
| lnoopt || Im Maximafeld bleibt die Funktion ohne Funktion erhalten, im Ergebnis {=  wird die Funktion entfernt und in der Lösung wird nach dem Einsetzen der Werte der Ausdruck nicht mehr optimiert. || lnoopt(x+3+2)  || lnoopt(x+5) &lt;br /&gt;
|-&lt;br /&gt;
| loptnumeric || Im Maximafeld bleibt die Funktion ohne Funktion erhalten, im Ergebnis {=  wird die Funktion entfernt und in der Lösung wird nach dem Einsetzen der Werte der Ausdruck nur numerisch optimiert. || loptnumeric(x+y)  || loptnumeric(x+y)&lt;br /&gt;
|-&lt;br /&gt;
| aopt || Bei Maxima und Lösung geht die Funktion verloren, nur innerhalb von noopt bleibt sie erhalten. Bei der Anzeige führt sie zur Optimierung das Ausdruckes nach Einsetzen der Datensätze. || aopt(x)  || x&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Anzeige und Lösungsberechnung===&lt;br /&gt;
Diese Funktionen haben entweder einen oder zwei Parameter. Der erste Parameter stellt die darzustellende Funktion dar, der zweite Parameter, welcher eine Ganzzahl sein muss, gibt an, wie die Darstellung erfolgen soll. Wird der 2.Parameter weggelassen, so wird er als 0 interpretiert.&lt;br /&gt;
* 0 Bei Berechnungen hat die Funktion keine Wirkung, bleibt aber als Funktion erhalten. Bei Lösung und Anzeige wird die Funktion ausgewertet&lt;br /&gt;
* 1 Wirkt nur bei Lösung, bei Berechnungen bleibt die Funktion erhalten&lt;br /&gt;
* 2 Wirkt nur bei Anzeige, bei Berechnungen bleibt die Funktion erhalten&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| viewpow || Gibt alle Wurzeln als Potenzen aus, und stellt alle Potenzen im Nenner als negativen Exponenten im Zähler dar || viewpow(sqrt(x)) || x^(1/2)&lt;br /&gt;
|-&lt;br /&gt;
| viewsqrt || Gibt Potenzen welche als Wurzel darstellbar sind auch als als Wurzeln mit der Funktion sqrt oder root aus || viewsqrt(x^(1/2)) || sqrt(x)&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Spezialfunktionen Technik===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| color || Widerstandsfarbcode berechnen.&amp;lt;br&amp;gt;1. Parameter muss ein Double sein&amp;lt;br&amp;gt; 2.Parameter sind die Anzahl der Farbringe&amp;lt;br&amp;gt; 3.Parameter ist der Modus (0..2-St,1..3St,2..Deutsch,3..2StEng,4..3StEng,5..Englisch || color(120,3,2) || braun,rot,braun&lt;br /&gt;
|-&lt;br /&gt;
| parsecolor || Wandelt einen String mit einem Widerstandsfarbcode in einen Double-Wert || parsecolor(&amp;quot;br-rt-br&amp;quot;) || 120&lt;br /&gt;
|-&lt;br /&gt;
| ip || Wandelt eine Long-Zahl in einen String als IP-Adresse um, oder 4 Byte-Zahlen in eine Long Zahl als IP-32-bit-Adresse || ip(1534536453)&amp;lt;br&amp;gt;ip(10,20,30,40) || &amp;quot;91.119.43.5&amp;quot;&amp;lt;br&amp;gt;169090600&lt;br /&gt;
|-&lt;br /&gt;
| parseip || Wandelt einen String mit einer IP-Adresse in einen Long-Wert || parseip(&amp;quot;91.119.43.5&amp;quot;) || 1534536453&lt;br /&gt;
|-&lt;br /&gt;
| e12 || rundet einen Zahlenwert auf den nächstliegenden Wert der [[Normreihe]] E12.&amp;lt;br&amp;gt;Die Rundung erfolgt geometrisch d.h. der Quotient zwischen Normwert und zu rundendem Wert wird minimiert. || e12(700Ohm) || 680Ohm&lt;br /&gt;
|-&lt;br /&gt;
| e12up || rundet einen Zahlenwert auf den nächstgrößerern Wert der [[Normreihe]] E12 || e12(670Ohm) || 680Ohm&lt;br /&gt;
|-&lt;br /&gt;
| e12down || rundet einen Zahlenwert auf den nächstkleineren Wert der [[Normreihe]] E12 || e12(700Ohm) || 680Ohm&lt;br /&gt;
|-&lt;br /&gt;
| ise12 || prüft ob der als Parameter übergebenen Wert ein Wert der [[Normreihe]] E12 ist.|| ise12(680Ohm) || true&lt;br /&gt;
|-&lt;br /&gt;
| norm || rundet einen Zahlenwert auf den nächstliegenden Wert einer gegebenen Wertereihe oder [[Normreihe]].&amp;lt;br&amp;gt;Die Rundung erfolgt geometrisch wenn es sich um eine logarithmisch aufgeteilte Normreihe handelt, oder sonst linear. || norm(700Ohm,E12) || 680Ohm&lt;br /&gt;
|-&lt;br /&gt;
| normup || rundet einen Zahlenwert auf den nächstgrößerern Wert einer gegebenen Wertereihe oder [[Normreihe]]. || normup(730Ohm,[1,3,5,8]) || 800Ohm&lt;br /&gt;
|-&lt;br /&gt;
| normdown || rundet einen Zahlenwert auf den nächstkleineren Wert einer gegebenen Wertereihe oder [[Normreihe]]. || normdown(700Ohm,E12) || 680Ohm&lt;br /&gt;
|-&lt;br /&gt;
| isnorm || prüft ob der als Parameter übergebenen Wert ein Wert einer gegebenen Wertereihe oder [[Normreihe]] ist. || isnorm(680Ohm,E12) || true&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=Ergebnisvorschau=&lt;br /&gt;
Aufruf dieses Dialoges über den [[Datei:ClipCapIt-180904-181443.PNG|25px]]-Button aus dem [[Toolbar]].&lt;br /&gt;
&lt;br /&gt;
Die Berechnungen aus dem Maxima-Feld bei der [[Beispiele Bearbeiten|Fragendefinition]] können auch über den [[Datei:ClipCapIt-180904-182120.PNG|25px]]-Button durchgeführt werden. Hier wird die Berechnung durchgeführt und das Lösungsfeld ausgefüllt, aber der Rechengang wird nicht angezeigt. &lt;br /&gt;
:[[Datei:ClipCapIt-180904-181415.PNG|400px]]&lt;br /&gt;
&lt;br /&gt;
Beim Fehlersuchen oder bei komplexen Berechnungen kann es aber hilfreich sein, den ganzen Maxima-Lösungsweg zu sehen, dies ist über den [[Datei:ClipCapIt-180904-181443.PNG|25px]]-Button möchlich.&lt;br /&gt;
&lt;br /&gt;
[[Kategorie:Berechnung]]&lt;/div&gt;</summary>
		<author><name>Ckral</name></author>
	</entry>
	<entry>
		<id>https://wiki.letto.at/wiki/index.php?title=Berechnungen&amp;diff=2165</id>
		<title>Berechnungen</title>
		<link rel="alternate" type="text/html" href="https://wiki.letto.at/wiki/index.php?title=Berechnungen&amp;diff=2165"/>
		<updated>2020-03-23T18:50:14Z</updated>

		<summary type="html">&lt;p&gt;Ckral: Rechtschreibfehler korrigiert&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Allgemeines =&lt;br /&gt;
Berechnungen werden in mehreren Bereichen der Frageerstellung verwendet und bilden die Basis für [[Fragetypen#Berechnungsfrage|Berechnungsfrage]] und [[Fragetypen#Mehrfachberechnungsfrage|Mehrfachberechnungsfrage]].&lt;br /&gt;
&lt;br /&gt;
Alle Berechnungen unterstützen [[Einheit|Einheiten]] und symbolische Auswertung.&lt;br /&gt;
&lt;br /&gt;
=Grundsätzlicher Aufbau der Ergebnis-Berechnung bei Fragen mit Berechnungen=&lt;br /&gt;
[[Datei:BerechnungSchema.png|mini|hochkant=2.0|Schema der Berechnung]]&lt;br /&gt;
Die Berechnung und die Beurteilung einer Frage teilt sich in 3 grundsätzliche Schritte:&lt;br /&gt;
* Berechnnug der geschlossenen Lösung (Formel) aus den Maxima-Feldern &lt;br /&gt;
* Berechnung des Ergebnisses einer Frage durch Einsetzen der Zahlenwerte aus den Datensätzen in die geschlossene Lösung&lt;br /&gt;
* Beurteilung der Schülereingabe durch Vergleich mit dem Ergebnis&lt;br /&gt;
&lt;br /&gt;
=Konstante=&lt;br /&gt;
Alle Konstante welche in Letto definiert sind beginnen mit einem Prozentzeichen. Verwendet man den Variablennamen ohne Prozenzzeichen, so wird die Konstante wie eine Variable mit dem Wert der Konstanten verwendet.&lt;br /&gt;
&lt;br /&gt;
Liste der definierten Konstanten:&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%&amp;quot; &lt;br /&gt;
| Name || Wert || Beschreibung&lt;br /&gt;
|-&lt;br /&gt;
| %i || i || komplexer Parameter als Lösung der Gleichung x^2=-1&lt;br /&gt;
|-&lt;br /&gt;
| %j || i || komplexer Parameter als Lösung der Gleichung x^2=-1&lt;br /&gt;
|-&lt;br /&gt;
| %e || 2.718281828459045 || Eulersche Zahl &lt;br /&gt;
|-&lt;br /&gt;
| %pi || 3.141592653589793 || Kreiszahl&lt;br /&gt;
|-&lt;br /&gt;
| %mu0 || magnetische Feldkonstante || 4*%pi*1E-7&#039;Vs/Am&#039;&lt;br /&gt;
|-&lt;br /&gt;
| %m0 || magnetische Feldkonstante (alt, wird bald entfernt werden) || 4*%pi*1E-7&#039;Vs/Am&#039;&lt;br /&gt;
|-&lt;br /&gt;
| %epsilon0 || elektrische Feldkonstante || 8.85418781762039E-12&#039;As/Vm&#039;&lt;br /&gt;
|-&lt;br /&gt;
| %e0 || elektrische Feldkonstante (alt, wird bald entfernt werden) || 8.85418781762039E-12&#039;As/Vm&#039;&lt;br /&gt;
|-&lt;br /&gt;
| %c0 || Lichtgeschwindigkeit || 299792458&#039;m/s&#039;&lt;br /&gt;
|-&lt;br /&gt;
| %Qe || Elementarladung || 1.602176620898E-19As&lt;br /&gt;
|-&lt;br /&gt;
| %g  || Erdbeschleunigung || 9.81&#039;m/s^2&#039;&lt;br /&gt;
|-&lt;br /&gt;
| %NA || Avogadro Konstante || 6.02214085774E23/mol&lt;br /&gt;
|-&lt;br /&gt;
| %k  || Stefan Bolzman Konstante || 1.3806485279E-23&#039;J/K&#039;&lt;br /&gt;
|-&lt;br /&gt;
| %R0 || Universelle Gaskonstante || 8.314459848&#039;J/Kmol&#039;&lt;br /&gt;
|-&lt;br /&gt;
| %h || planksches Wirkungsquantum || 6.6260704081E-34Js&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=Berechnung mit Maxima=&lt;br /&gt;
* Maxima wird &#039;&#039;&#039;nur für symbolische Berechnungen&#039;&#039;&#039; bei der Erstellung von Beispielen verwendet. Hierbei wird, wie schon oberhalb im Schema angegeben, zuerst die Moodle.mac geladen, dann das [[Beispielsammlung Editieren#Maxima-Feld|Maxima-Feld]] berechnet und anschließend die Maxima-Felder aller Teilfragen. Das Ergebnis der Berechnung wird dann als symbolischer Ausdruck im Lösungfeld eingetragen.&lt;br /&gt;
* Da zum Zeitpunkt der &#039;&#039;&#039;Maxima-Berechnung keine Datensätze&#039;&#039;&#039; vorhanden sind, kann keine numerische Berechnung in Maxima durchgeführt werden, welche die [[Datensätze]] benötigt. Dies muss der interne Parser zum Zeitpunkt des Online-Test-Laufes erledigen. Numerische Berechnungen, welche der interne Parser nicht kann können deshalb auch nicht mit Maxima berechnet werden.&lt;br /&gt;
* Da das Lösungsfeld, welches mit Maxima berechnet wird symbolisch ausgewertet wird, können in Maxima sämtliche symbolischen Berechnungsverfahren angewendet werden, welche ein symbolisches Ergebnis liefern und keine numerischen Werte der Datensätze benötigen.&lt;br /&gt;
* &#039;&#039;&#039;Funktionsdeklarationen&#039;&#039;&#039; wie &#039;&#039;&#039;f(x):=&#039;&#039;&#039;x^2 mit Doppelpunkt-Ist-Gleich sind im Maxima-Feld nur eingeschränkt bis gar &#039;&#039;&#039;nicht verwendbar&#039;&#039;&#039;, da sie vom Parser nicht unterstützt werden.&lt;br /&gt;
* &#039;&#039;&#039;Mengen von Maxima&#039;&#039;&#039; sind in Letto n&#039;&#039;&#039;icht verwendbar&#039;&#039;&#039;. Letto verwender hierzu eigene Funktionen des Parsers welche mit &amp;quot;set&amp;quot; beginnen und auf Vektoren basieren.&lt;br /&gt;
&lt;br /&gt;
=Berechnung mit dem internen Parser=&lt;br /&gt;
* Der interne Parser kann durch Wahl der Checkbox &amp;quot;Parser&amp;quot; anstatt von Maxima für die Berechnung des Maxima-Feldes verwendet werden. &lt;br /&gt;
* Jedenfalls wird der Parser zur Test-Laufzeit für die Berechnung des Ergebnisses einer Frage aus Lösung und Datensätzen und zum Berechnen der Schülereingabe verwendet.&lt;br /&gt;
&lt;br /&gt;
==Operatoren==&lt;br /&gt;
=== VORSICHT mit MAXIMA ===&lt;br /&gt;
* Einige Operatoren sind in &#039;&#039;&#039;Maxima anders&#039;&#039;&#039;, oder &#039;&#039;&#039;nicht definiert&#039;&#039;&#039;. Möchte man im Maximafeld die Operatoren des Parsers-verwenden, so muss das gesamte Maxima-Feld &#039;&#039;&#039;mit dem Parser gerechnet&#039;&#039;&#039; werden. Man verliert dadurch jedoch die Vorteile der Maxima-Berechnung.&lt;br /&gt;
* Alternativ kann man statt der Operatoren auch &#039;&#039;&#039;Funktionen verwenden&#039;&#039;&#039; (zB: ne() statt != ). Diese werden dann von Maxima zwar nicht ausgewertet, die Berechnung bleibt aber trotzdem korrekt und kann mit Maxima durchgeführt werden.&lt;br /&gt;
* Es gibt einige Funktionen welche in &#039;&#039;&#039;Maxima existieren&#039;&#039;&#039; aber im &#039;&#039;&#039;Parser nicht, oder mit anderem Syntax&#039;&#039;&#039;.&lt;br /&gt;
** Wenn diese von Maxima nicht ausgewertet werden können, da sie &#039;&#039;&#039;Datensätze&#039;&#039;&#039; enthalten welche zu Auswertezeitpunkt von Maxima noch &#039;&#039;&#039;nicht mit Werten belegt&#039;&#039;&#039; sind, &#039;&#039;&#039;dürfen sie in der Berechnung nicht verwendet werden&#039;&#039;&#039;, da der Parser dann damit nichts anfangen kann.&lt;br /&gt;
** Solche Funktionen haben entweder im Parser eine alternative Schreibweise welche auch mit Maxima verwendet werden kann (z.B.: wenn), oder sie können prinzipell nicht verwendet werden. (Für wichtige Funktionsweisen könnte man in zukünftigen Versionen neue Funktionalitäten in den Parser einbauen, die die gewünschte Funktion erfüllen)&lt;br /&gt;
** Ein weiter Möglichkeit für die Verwendung solcher Funktionen ist der Verzicht auf Datensätze in diesen Funktionen, damit diese Funktion beim Auswerten des Maxima-Feldes bereits ausgewertet werden kann und somit der Parser davon nichts mehr sieht.&lt;br /&gt;
** zB:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
if then&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Infix Operatoren===&lt;br /&gt;
====arithmetische Operatoren====&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Operator || Priorität || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| + || 40 || Addition || 4+5 || 9 &lt;br /&gt;
|-&lt;br /&gt;
| - || 40 || Subtraktion || 6-2 || 4&lt;br /&gt;
|-&lt;br /&gt;
| * || 50 || Multiplikation || 4*5 || 20&lt;br /&gt;
|-&lt;br /&gt;
| / || 51 || Division || 20/4 || 5&lt;br /&gt;
|-&lt;br /&gt;
| % || 51 || Divisionsrest || 104%20 || 4&lt;br /&gt;
|-&lt;br /&gt;
| / / || 60 || Parallelschaltung || x / / y || x*y/(x+y)&lt;br /&gt;
|-&lt;br /&gt;
| ^ || 90 || Potenz || 2^3 || 8&lt;br /&gt;
|-&lt;br /&gt;
| .*. || 200 || Operator der intern für eine fehlende bindende Multiplikation verwendet wird || 4x || 4*x&lt;br /&gt;
|-&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
====Bitoperatoren====&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Operator || Priorität || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
||  |  || 20 || Bitweise oder logisches ODER ||| 9|5 &amp;lt;br&amp;gt; true|false || 13 &amp;lt;br&amp;gt;true&lt;br /&gt;
|-&lt;br /&gt;
| or || 20 || Bitweise oder logisches ODER || 9 or 5 || 13&lt;br /&gt;
|-&lt;br /&gt;
| &amp;amp;  || 21 || Bitweise oder logisches UND  || 13&amp;amp;10 || 8&lt;br /&gt;
|-&lt;br /&gt;
| and || 21 || Bitweise oder logisches UND  || 13 and 10 || 8&lt;br /&gt;
|-&lt;br /&gt;
| xor || 22 || Bitweise oder logisches exklusiv oder XOR  || 13 xor 10 || 7&lt;br /&gt;
|-&lt;br /&gt;
| imp || 23 || Bitweise oder logisches impliziert IMP || 13 imp 10 || 8&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;&amp;lt;  || 35 || Bitweise links schieben  || 5&amp;lt;&amp;lt;2 || 20&lt;br /&gt;
|-&lt;br /&gt;
| &amp;gt;&amp;gt;  || 35 || Bitweise rechts schieben || 8&amp;gt;&amp;gt;2 || 2&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
====Vergleichsoperatoren====&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Operator || Priorität || Beschreibung || Beispiel&lt;br /&gt;
|-&lt;br /&gt;
| =  || 3 || Gleichungsoperator || x=y&lt;br /&gt;
|-&lt;br /&gt;
| == || 30 || Gleichungsoperator || x==y&lt;br /&gt;
|-&lt;br /&gt;
| != || 30 || Ungleichungsoperator || x!=y&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt; || 32 || Kleiner || x&amp;lt;y&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;= || 32 || Kleiner gleich || x&amp;lt;=y&lt;br /&gt;
|-&lt;br /&gt;
| &amp;gt; || 32 || größer || x&amp;gt;y&lt;br /&gt;
|-&lt;br /&gt;
| &amp;gt;= || 32 || größer gleich || x&amp;gt;=y&lt;br /&gt;
|}&lt;br /&gt;
====Organisative Operatoren====&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Operator || Priorität || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| , || 0 || Listen-Trennzeichen || x,y ||&lt;br /&gt;
|-&lt;br /&gt;
| $ || 1 || Trennzeichen zwischen mehreren Berechnungen || ||&lt;br /&gt;
|-&lt;br /&gt;
| ; || 1 || Trennzeichen zwischen mehreren Berechnungen || ||&lt;br /&gt;
|-&lt;br /&gt;
| : || 2 || Zuweisung an eine Variablen auf der linken Seite || x:5 || &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Prefix Operatoren===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Operator || Priorität || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| + || 45 || positives Vorzeichen || +5 || 5&lt;br /&gt;
|-&lt;br /&gt;
| - || 45 || negatives Vorzeichen || -(-5) || 5&lt;br /&gt;
|-&lt;br /&gt;
| ~ || 95  || bitweise Inversion einer 64bit-Ganzzahl || ~0x0F0F || 0xFFFFFFFFFFFFF0F0&lt;br /&gt;
|-&lt;br /&gt;
| ! || 120 || logisches NOT || !(3&amp;lt;4) || false&lt;br /&gt;
|-&lt;br /&gt;
| ++ || 130 || Inkrement von Ganzzahlen || ++x || erhöht x um eins und gibt das Ergebnis nach der Erhöhung zurück&lt;br /&gt;
|-&lt;br /&gt;
| -- || 130 || Dekrement von Ganzzahlen || --x || vermindert x um eins und gibt das Ergebnis nach der Verminderung zurück&lt;br /&gt;
|-&lt;br /&gt;
| % || 200 || Prefix für Namen, welche als Konstante definiert sind || %pi || 3.141592653589793&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Suffix Operatoren===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Operator || Priorität || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| ++ || 135 || Inkrement von Ganzzahlen || x++ || erhöht x um eins und gibt den Variablenwert vor der Erhöhung zurück&lt;br /&gt;
|-&lt;br /&gt;
| -- || 135 || Dekrement von Ganzzahlen || x-- || vermindert x um eins und gibt den Variablenwert vor der Verminderung zurück&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==Klammern==&lt;br /&gt;
* () runde Klammern werden für mathematische Ausdrücke zur Klammerung verwendet&lt;br /&gt;
* {} geschwungene Klammer werden im Angabetext für die Namen der Datensätze verwendet&lt;br /&gt;
* [] eckige Klammern werden für Vektoren und Matrizen verwendet&lt;br /&gt;
&lt;br /&gt;
==Funktionen==&lt;br /&gt;
===Funktionen für Ganzzahlen===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| band || bitweises UND || band(4,12) || 4&lt;br /&gt;
|-&lt;br /&gt;
| bor  || bitweises ODER || bor(4,1) || 5&lt;br /&gt;
|-&lt;br /&gt;
| bxor || bitweises EXKLUSIV ODER || band(4,5) || 1&lt;br /&gt;
|-&lt;br /&gt;
| bimp || bitweises Parameter1 impliziert Parameter2 || bimp(13,10) || 8&lt;br /&gt;
|-&lt;br /&gt;
| binv || bitweises NICHT mit 8 bit || binv(0x0F) || 0xF0&lt;br /&gt;
|-&lt;br /&gt;
| shl || Schiebe Ganzzahl bitweise nach links || shl(8,2) || 32&lt;br /&gt;
|-&lt;br /&gt;
| shr || Schiebe Ganzzahl bitweise nach rechts || shr(8,2) || 2&lt;br /&gt;
|-&lt;br /&gt;
| div || Ganzzahldivision, Ergebnis wird abgeschnitten || div(5,2) || 2&lt;br /&gt;
|-&lt;br /&gt;
| mod || Modulo: Divisionsrest einer Ganzzahldivision || mod(5,2) || 1&lt;br /&gt;
|-&lt;br /&gt;
| inv8  || bitweise Invertieren und die letzten 8 Bit bestimmen  || inv8(0b1001) || 0b11110110&lt;br /&gt;
|-&lt;br /&gt;
| inv16 || bitweise Invertieren und die letzten 16 Bit bestimmen || inv16(0xF0)  || 0xFF0F&lt;br /&gt;
|-&lt;br /&gt;
| inv32 || bitweise Invertieren und die letzten 32 Bit bestimmen || inv32(0xF0)  || 0bFFFFFF0F&lt;br /&gt;
|-&lt;br /&gt;
| inv64 || bitweise Invertieren und die letzten 64 Bit bestimmen || inv64(0xF0)  || 0bFFFFFFFFFFFFFF0F&lt;br /&gt;
|-&lt;br /&gt;
| byte  || Zahl in eine Ganzzahl wandeln und die letzten 8bit der Zahl Abschneiden, Einheit geht verloren  || byte(34.2) || 34&lt;br /&gt;
|-&lt;br /&gt;
| word  || Zahl in eine Ganzzahl wandeln und die letzten 16bit der Zahl Abschneiden, Einheit geht verloren || word(34.2) || 34&lt;br /&gt;
|-&lt;br /&gt;
| int   || Zahl in eine Ganzzahl wandeln und die letzten 32bit der Zahl Abschneiden, Einheit geht verloren || int(34.2) || 34&lt;br /&gt;
|-&lt;br /&gt;
| long  || Zahl in eine Ganzzahl wandeln , Einheit geht verloren || long(34.2) || 34&lt;br /&gt;
|-&lt;br /&gt;
| [[parity]]  || Paritätsberechnung : parity(Parität,Codewortlänge,Datenwort[,Datenwort,....]) || parity(even,7,&amp;quot;xy&amp;quot;) || &lt;br /&gt;
|-&lt;br /&gt;
| [[blockparity]]  || Kreuz oder Blockparität : blockparity(Parität,Codewortlänge,Codewortanzahl,Datenwort[,Datenwort,....]) || blockparity(even,7,3,&amp;quot;abc&amp;quot;) || &lt;br /&gt;
|-&lt;br /&gt;
| [[bcd]]  || Wandelt in eine Long-Zahl in ein Feld aus BCD-kodierten Zahlen um || bcd(124) || [1,2,4]&lt;br /&gt;
|-&lt;br /&gt;
| [[code]] || Code aus mehreren Codeworten zusammensetzen : code(Codewortlänge,Datenwort[,Datenwort,....]) || code(5,4,3,5) || 0b1000001100101&lt;br /&gt;
|-&lt;br /&gt;
| [[hamming]] || Bestimmt den Hamming-Abstand von mehreren Codeworten || hamming(1,2,4,8,16) || 2&lt;br /&gt;
|-&lt;br /&gt;
| [[komplement]] ||  Bildet das Zweierkomplement mit einer negativen Zahl mit einer bestimmten Bitanzahl, fehlt die Bitanzahl, so wird ein 32Bit-2er-komplement gebildet || komplement(-5,8) || 0b11111011&lt;br /&gt;
|-&lt;br /&gt;
| [[bitstream]] || Erzeugt aus einer Ganzzahl einen Bitstrom als String mit einer definierten Anzahl von Bit (MSB werden nötigenfalls mit 0 gefüllt) : bitstream(Daten,Bitanzahl) || bitstream(0x184,12) || &amp;quot;000110000100&amp;quot;&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Funktionen für rationale und Ganzzahlen===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| kgV || berechnet das kleinste gemeinsame Vielfache von mehreren Zahlen || kgV(3,10) || 30&lt;br /&gt;
|-&lt;br /&gt;
| ggT || berechnet den größten gemeinsamen Teiler von mehreren Zahlen || ggT(12,10) || 2&lt;br /&gt;
|- &lt;br /&gt;
| isprim || prüft ob die angegebene Zahl eine Primzahl ist || isprim(13) || true&lt;br /&gt;
|-&lt;br /&gt;
| prims || zerlegt eine Ganzzahl in ihre Primfaktoren || prims(12) || [2,2,3]&lt;br /&gt;
|-&lt;br /&gt;
| defracmix || zerlegt eine rationale Zahl in einen gemischten Bruch aus ganzzahligem Summanden, Zähler und Nenner als Menge&amp;lt;br&amp;gt;Die erhaltene Menge kann mit dem Format-Modfier &#039;&#039;&#039;frac&#039;&#039;&#039; als gemischter Bruch dargestellt werden (siehe [[Zahlendarstellung]]) || defracmix(14/12)&amp;lt;br&amp;gt;defracmix(-15/12)&amp;lt;br&amp;gt;defracmix(3/12) || [1,2/12]&amp;lt;br&amp;gt;[-1,3,12]&amp;lt;br&amp;gt;[0,3,12] &lt;br /&gt;
|-&lt;br /&gt;
| defrac || zerlegt eine rationale Zahl in Zähler und Nenner als Menge &amp;lt;br&amp;gt;Die erhaltene Menge kann mit dem Format-Modfier &#039;&#039;&#039;frac&#039;&#039;&#039; als gemischter Bruch dargestellt werden || defrac(14/12) || [13,12]&lt;br /&gt;
|-&lt;br /&gt;
| frac || erzeugt aus einer Menge aus 2 oder 3 Elementen (von defrac) eine rationale Zahl || frac([3,7])&amp;lt;br&amp;gt;frac([1,2,3]) || 3/7 &amp;lt;br&amp;gt; 5/3&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===boolsche Funktionen===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| eq || gleich || eq(4,4) || true&lt;br /&gt;
|-&lt;br /&gt;
| eqruntime || symbolischer Vergleich, welcher &#039;&#039;&#039;symbolisch erst bei der Ergebnisberechnung&#039;&#039;&#039; ausgeführt wird. Muss verwendet werden, wenn bei Vergleichen symbolische Antworten von Schülern (Q0,Q1,...) verwendet werden.  || eqruntime(x+3*y,3*y+x) || true&lt;br /&gt;
|-&lt;br /&gt;
| ne || ungleich || ne(6,4) || true&lt;br /&gt;
|-&lt;br /&gt;
| ge || größer gleich || ge(6,4) || true&lt;br /&gt;
|-&lt;br /&gt;
| le || kleiner gleich || le(6,4) || false&lt;br /&gt;
|-&lt;br /&gt;
| gt || größer || gt(6,4) || true&lt;br /&gt;
|-&lt;br /&gt;
| lt || kleiner || lt(6,4) || false&lt;br /&gt;
|-&lt;br /&gt;
| between || prüft ob Parameter1 kleiner als Parameter2 und Parameter2 kleiner als Parameter 3 || between(3,4,5) || true&lt;br /&gt;
|-&lt;br /&gt;
| land || logisches UND || land(a&amp;lt;b,b&amp;lt;c) || &lt;br /&gt;
|-&lt;br /&gt;
| lor  || logisches ODER || lor(a&amp;lt;b,b&amp;lt;c) || &lt;br /&gt;
|-&lt;br /&gt;
| not  || logisches NICHT. Vorsicht ein symbolisches Ergebnis von Maxima liefert not als Prefix-Operator, welcher vom Parser nicht unterstützt wird ( Verwende statt dessen &#039;&#039;&#039;lnot&#039;&#039;&#039; ) || not(a&amp;lt;b) || &lt;br /&gt;
|-&lt;br /&gt;
| lnot  || logisches NICHT, wie not jedoch wird es von Maxima nicht ausgewertet || lnot(a&amp;lt;b) || &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===arithmetische Funktionen===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| double || Zahl ein eine Gleitkommazahl umwandeln, die Einheit geht dabei verloren || double(3.4V) || 3.4&lt;br /&gt;
|-&lt;br /&gt;
| numeric || verwirft die Einheit, wenn eine vorhanden ist und liefert nur den Zahlenwert || numeric(2.3mA) &amp;lt;br&amp;gt; numeric(5%)|| 0.0023 &amp;lt;br&amp;gt; 5&lt;br /&gt;
|-&lt;br /&gt;
| unit || gibt die SI-Einheit mit dem Zahlenwert 1 zurück || unit(3.1kA) &amp;lt;br&amp;gt; unit(5%) || 1A &amp;lt;br&amp;gt; 1%&lt;br /&gt;
|-&lt;br /&gt;
| cround  || Rundet die Zahl kaufmännisch, der zweite Parameter gibt die Anzahl der Kommastellen an, ohne 2.Parameter wird auf Ganzzahlen gerundet, bei komplexen Zahlen wird Betrag und Winkel in Grad gerundet. || cround(23.535,2)&amp;lt;br&amp;gt;cround(2.435arg34.5364°,1) || 23.54&amp;lt;br&amp;gt;2.4arg34.5°&lt;br /&gt;
|-&lt;br /&gt;
| ccround  || Rundet die Zahl kaufmännisch, der zweite Parameter gibt die Anzahl der Kommastellen an, bei komplexe Zahlen wird Real und Imaginärteil gerundet. || ccround(2.4534+5.645*%i,2) || 2.45+5.65i&lt;br /&gt;
|-&lt;br /&gt;
| round  || Rundet die Zahl kaufmännisch, aus Kompatibilitätsgründen zu Maxima hat round nur einen Parameter || round(23.535) || 24&lt;br /&gt;
|-&lt;br /&gt;
| ground || Rundet die Zahl auf die im zweiten Parameter angegebenen gültigen Ziffern || ground(2453.43,2) || 2500&lt;br /&gt;
|-&lt;br /&gt;
| floor  || Rundet auf die größte ganze Zahl, welche kleiner oder gleich x ist || floor(24.5) || 24&lt;br /&gt;
|-&lt;br /&gt;
| trunc  || Schneidet die Zahl nach dem Komma ab || trunc(24.5) || 24&lt;br /&gt;
|-&lt;br /&gt;
| ceiling || ceiling(x) Rundet auf die kleinste ganze Zahl, welche größer oder gleich x ist || ceiling(13.2) || 14&lt;br /&gt;
|-&lt;br /&gt;
| pow || Potenzfunktion || pow(2,3) || 8&lt;br /&gt;
|-&lt;br /&gt;
| par || Parallelschaltung von Widerständen || par(x,y) || x*y/(x+y)&lt;br /&gt;
|-&lt;br /&gt;
| min  || Minimum von mehrere Werten suchen || min(3,5,1) || 1&lt;br /&gt;
|-&lt;br /&gt;
| max  || Maximum von mehreren Werten suchen || max(3,5,1) ||  5&lt;br /&gt;
|-&lt;br /&gt;
| random  || Zufallszahl aus einem definierten Zahlenbereich random(minimal,maximal)&amp;lt;br&amp;gt;VORSICHT! Die Zufallszahl wird bei jedem Aufruf neu berechnet, weshalb sich der Wert bei jedem Anzeigevorgang einer Frage ändert. Sollte sich der berechnete Wert für eine Schülerangabe zwischen Fragestellung und Ergebniskontrolle nicht ändern dürfen (ist der Normalfall) muss man einen &#039;&#039;&#039;Datensatz statt einer Zufallszahl&#039;&#039;&#039; verwenden! &amp;lt;br&amp;gt; Zufallszahlen haben in der Ergebnisberechnung keinen Sinn, und sollten maximal für angezeigte zufällige Werte verwendet werden! || random(2,8) ||  3.4532&lt;br /&gt;
|-&lt;br /&gt;
| randomC  || komplexe Zufallszahl aus einem definierten Zahlenbereich für den Betrag&amp;lt;br&amp;gt;VORSICHT! Die Zufallszahl wird bei jedem Aufruf neu berechnet!  || randomC(2,8) ||  3.4532arg40.3°&lt;br /&gt;
|-&lt;br /&gt;
| signum  || Liefert das Vorzeichen einer Zahl (-1,0,1). Bei einer komplexen Zahl das Vorzeichen des Realteils. || signum(-4) || -1&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===erweiterte arithmetische Funktionen===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| sigma || Sprungfunktion: sigma(x) liefert 0 für x&amp;lt;0 und 1 für x&amp;gt;=0 || sigma(243.3) || 1&lt;br /&gt;
|-&lt;br /&gt;
| interpol || Interpolationsfunktion zwischen mehreren Stützpunkten in einem Koordinatensystem. &amp;lt;br&amp;gt; interpol(WerteX,WerteY,x) || interpol([0,1,2],[0,3,3],1.5) || 3&lt;br /&gt;
|-&lt;br /&gt;
| periodic || Erzeugt aus einer beliebigen Funktion zwischen 0 und Periodendauer eine periodische Funktion &amp;lt;br&amp;gt; periodic(Variable,Periodendauer,Funktion)&amp;lt;br&amp;gt; periodic(Variable,Periodendauer,Funktionsperiodendauer,Funktion) || ch1(t):periodic(t,5ms,2&#039;Vms-2&#039;*t^2) &amp;lt;br&amp;gt; ch1(t):periodic(t,5ms,1,2V*t^2) || :[[Datei:ClipCapIt-190318-113524.PNG|100px]] &amp;lt;br&amp;gt; :[[Datei:ClipCapIt-190318-113644.PNG|100px]]&lt;br /&gt;
|-&lt;br /&gt;
| numint || numerische Integration &amp;lt;br&amp;gt; numint(untereGrenze,obereGrenze,funktion,Variable)&amp;lt;br&amp;gt; numint(untereGrenze,obereGrenze,funktion,Variable,punkteAnzahl) || numint(0,2pi,sin(t),t) || 0&lt;br /&gt;
|-&lt;br /&gt;
| numdif || numerisches Differenzieren einer Funktion &amp;quot;funktion&amp;quot; nach einer Variablen &amp;quot;Variable&amp;quot; an der Stelle &amp;quot;position&amp;quot; mit einer Differenz der Variablen von &amp;quot;differenz&amp;quot; &amp;lt;br&amp;gt; numdif(position,funktion,Variable,differenz) || numdif(0,sin(t),t,0.01) || 1&lt;br /&gt;
|-&lt;br /&gt;
| solve || löst eine Gleichung oder ein Gleichungssystem nach einer oder mehrerer Variablen || solve([2*x+y=3,x-y=0],[x,y]) || [ [ x=1,y=1 ] ]&lt;br /&gt;
|-&lt;br /&gt;
| solvevalue || löst eine Gleichung oder ein Gleichungssystem nach einer Variablen und liefert genau die erste Lösung wenn sie numerisch berechenbar ist || solvevalue([ 2*x+y=3,x-y=0 ],[ x,y ],x)  || 1&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Stringfunktionen===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| dechex || Zahl in eine Ganzzahl wandeln und als Hexadezimal-String ausgeben || dexhex(12) || &amp;quot;0xC&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| chr || Bestimmt die Zeichen mit dem ASC-II-Code der Long-Parameter und setzt daraus einen String zusammen. || chr(0x65,105) || &amp;quot;ei&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| val || Bestimmt den ASC-II-Code des ersten Zeichens welches als String-Parameter übergeben wurde.|| val(&amp;quot;a&amp;quot;) || 97&lt;br /&gt;
|-&lt;br /&gt;
| strcat || Fügt mehrere Strings zusammen.|| strcat(&amp;quot;a&amp;quot;,&amp;quot;b&amp;quot;) || &amp;quot;ab&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===trigonometrische Funktionen===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| sin || Sinus || sin(%pi/2) || 1&lt;br /&gt;
|-&lt;br /&gt;
| cos || Cosinus || cos(%pi/2) || 0&lt;br /&gt;
|-&lt;br /&gt;
| tan || Tangens || tan(%pi/4) || 1&lt;br /&gt;
|-&lt;br /&gt;
| asin || Arcus-Sinus || asin(1) || %pi/2&lt;br /&gt;
|-&lt;br /&gt;
| arcsin || Arcus-Sinus || asin(1) || %pi/2&lt;br /&gt;
|-&lt;br /&gt;
| acos || Arcus-Cosinus || acos(1) || 0&lt;br /&gt;
|-&lt;br /&gt;
| arccos || Arcus-Cosinus || acos(1) || 0&lt;br /&gt;
|-&lt;br /&gt;
| atan || Arcus-Tangens || atan(1) || %pi/4&lt;br /&gt;
|-&lt;br /&gt;
| arctan || Arcus-Tangens || arctan(1) || %pi/4&lt;br /&gt;
|-&lt;br /&gt;
| atan2 || Arcus-Tangens atan2(x,y)=arctan(y/x) || atan2(-2,-2) || -%pi*3/4&lt;br /&gt;
|-&lt;br /&gt;
| arctan2 || Arcus-Tangens arctan2(x,y)=arctan(y/x) || arctan2(-2,-2) || -%pi*3/4&lt;br /&gt;
|-&lt;br /&gt;
| sinh || Sinus-Hyperbolicus || sinh(1) || 1.1752012&lt;br /&gt;
|-&lt;br /&gt;
| cosh || Cosinus-Hyperbolicus || cosh(1) || 1.5430806&lt;br /&gt;
|-&lt;br /&gt;
| tanh || Tangens-Hyperbolicus || tanh(1) || 0.7615941&lt;br /&gt;
|-&lt;br /&gt;
| coth || Cotangens-Hyperbolicus || coth(1) || 1.313035&lt;br /&gt;
|-&lt;br /&gt;
| asinh || Area-Sinus-Hyperbolicus || asinh(1.1752012) || 1&lt;br /&gt;
|-&lt;br /&gt;
| acosh || Area-Cosinus-Hyperbolicus || acosh(1.5430806) || 1&lt;br /&gt;
|-&lt;br /&gt;
| atanh || Area-Tangens-Hyperbolicus || atanh(0.7615941) || 1&lt;br /&gt;
|-&lt;br /&gt;
| acoth || Area-Cotangens-Hyperbolicus || acoth(1.313035) || 1&lt;br /&gt;
|-&lt;br /&gt;
| [[csin]] || Erzeugt aus einer komplexen Zahl (Effektivwert) und einer Frequenz einen Sinusfunktion in der Zeit || csin(U) || sqrt(2)*cabs(U)*sin(2*pi*f*t+carg(U))&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Exponentialfunktionen===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| pow || Potenzfunktion || pow(2,3) || 8&lt;br /&gt;
|-&lt;br /&gt;
| exp|| Exponentialfunktion || exp(1) || %e&lt;br /&gt;
|-&lt;br /&gt;
| log || natürlicher Logarythmus || log(%e) || 1&lt;br /&gt;
|-&lt;br /&gt;
| ln || natürlicher Logarythmus || ln(%e) || 1&lt;br /&gt;
|-&lt;br /&gt;
| log10 || Logarythmus zur Basis 10 || log10(100) || 2&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===komplexe Zahlen===&lt;br /&gt;
Die Funktionen zu komplexen Zahlen werden (anders als in Maxima) nur ausgewertet wenn das Ergebnis numerisch berechenbar ist, ansonsten bleibt die Funktion symbolisch erhalten.&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| abs || Liefert den Absolutbetrag einer komplexen Zahl || abs(3+4*%i) || 5&lt;br /&gt;
|-&lt;br /&gt;
| cabs || Liefert den Absolutbetrag einer komplexen Zahl || cabs(3+4*%i) || 5&lt;br /&gt;
|-&lt;br /&gt;
| carg || Liefert das Argument einer komplexen Zahl || carg(4*%e^(3*%i)) || 3&lt;br /&gt;
|-&lt;br /&gt;
| realpart || Liefert den Realteil einer komplexen Zahl || abs(3+4*%i) || 3&lt;br /&gt;
|-&lt;br /&gt;
| imagpart || Liefert den Imaginärteil einer komplexen Zahl || abs(3+4*%i) || 4&lt;br /&gt;
|-&lt;br /&gt;
| conjugate || Liefert die konjugiert komplexe Zahl einer komplexen Zahl || abs(3+4*%i) || 3-4*%i&lt;br /&gt;
|-&lt;br /&gt;
| rectform || wandelt die komplexe Zahl in eine Ansicht mit Real- und Imaginärteil || 3+4*%i || 3+4*%i&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===statistische Funktionen===&lt;br /&gt;
Die Funktionen funktionieren nur ohne Einheiten.&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| factorial || Liefert die Fakultät einer positiven ganzen Zahl || factorial(5) || 120&lt;br /&gt;
|-&lt;br /&gt;
| binomial || Liefert den Binomialkoeffizienten von zwei positiven ganzen Zahlen || binomial(5,2) || 10&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Mengen-Funktionen===&lt;br /&gt;
Mengen werden intern als Vektoren verarbeitet und sind deshalb auch direkt durch Vektoren ersetzbar. Auch alle Vektor-Funktionen sind somit auch auf Mengen anwendbar und umgekehrt.&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| setget || liefert ein Element einer Menge oder einer Matrix (Menge von Mengen) || setget([12,13,14],1) &amp;lt;br&amp;gt; setget(matrix([9,2],[3,4]),0,1) || 13 &amp;lt;br&amp;gt; 2 &lt;br /&gt;
|-&lt;br /&gt;
| setset || setzt ein Element einer Menge oder einer Matrix (Menge von Mengen) || setset([12,13,14],1,35) &amp;lt;br&amp;gt; setset(matrix([9,2],[3,4]),0,0,-9) || [12,35,14] &amp;lt;br&amp;gt; [[-9,2],[3,4]]&lt;br /&gt;
|-&lt;br /&gt;
| setinsert || fügt ein Element in eine Menge an eine gegebene Stelle ein || setinsert([12,13,14],1,25) || [12,25,13,14]&lt;br /&gt;
|-&lt;br /&gt;
| setremove || löscht ein Element einer Menge || setremove([12,13,14],1) || [12,14]&lt;br /&gt;
|-&lt;br /&gt;
| setmedian || Liefert den Median einer Menge || setmedian(4,3,1,5,6) || 4&lt;br /&gt;
|-&lt;br /&gt;
| setsort || Sortiert die Elemente einer Menge aufsteigend || setsort([3,-3,2,0,5,2]) || [-3,0,2,2,3,5]&lt;br /&gt;
|-&lt;br /&gt;
| setsortnd || Sortiert die Elemente einer Menge aufsteigend und entfernt alle mehrfach vorkommenden Elemente || setsortnd([31,-3,2,31,0,5,2]) || [-3,0,2,5,31]&lt;br /&gt;
|-&lt;br /&gt;
| setcount || Bestimmt die Anzahl wie oft ein Element in einer Menge vorkommt oder die Anzahl der Elemente der Menge || setcount([31,-3,2,31,0,5,2],31) &amp;lt;br&amp;gt; setcount([2,5,3,6]) || 2 &amp;lt;br&amp;gt; 4&lt;br /&gt;
|-&lt;br /&gt;
| setmodus || Liefert das Element einer Menge, welches am öftesten vorkommt oder die Elemente als Menge wenn mehrere Elemente gleich oft vorkommen || setmodus([3,-3,2,0,5,2]) || 2&lt;br /&gt;
|-&lt;br /&gt;
| setreverse || Dreht die Reihenfolge einer Menge um || setreverse([3,-3,2,0,5,2]) || [2,5,0,2,-3,3]&lt;br /&gt;
|-&lt;br /&gt;
| setnd || Löscht alle Duplikate aus der Menge || setnd([3,-3,2,0,5,2]) || [3,-3,2,0,5]&lt;br /&gt;
|-&lt;br /&gt;
| setshuffle || Mischt eine  Menge in eine zufällige Reihenfolge || setshuffle([3,-3,2,0,5,2]) || [2,0,5,-3,2,3]&lt;br /&gt;
|-&lt;br /&gt;
| setmittel || Bestimmt den Mittelwert einer Menge || setmittel([1,3,2,4]) || 2.5&lt;br /&gt;
|-&lt;br /&gt;
| setgeomittel || Bestimmt das geometrische Mittelwert einer Menge aus positiven reellen Zahlen || setgeomittel([10,20,30]) || 18.171206&lt;br /&gt;
|-&lt;br /&gt;
| setvarianz || Bestimmt die empirische Varianz einer Menge || setvarianz([3,1,2,5,4]) || ((3-3)^2+(1-3)^2+(2-3)^2+(5-3)^2+(4-3)^2)/5=2&lt;br /&gt;
|-&lt;br /&gt;
| setquadratmittel || Bestimmt den quadratischen Mittelwert einer Menge || setquadratmittel([10,20,30]) || 21.6025&lt;br /&gt;
|-&lt;br /&gt;
| setsum || Bestimmt die Summe aller Werte einer Menge || setsum([1,3,2,4]) || 10&lt;br /&gt;
|-&lt;br /&gt;
| setprod || Bestimmt das Produkt aller Werte einer Menge || setprod([1,3,2,4]) || 24&lt;br /&gt;
|-&lt;br /&gt;
| setunion || Fügt mehrere Mengen zu einer neuen Menge zusammen || setunion([1,3,2,4],[3,7]) || {1,3,2,4,3,7}&lt;br /&gt;
|-&lt;br /&gt;
| setunionnd || Fügt mehrere Mengen zu einer neuen Menge zusammen, sortiert diese und entfernt alle mehrfachen Elemente || setunionnd([1,3,2,4],[3,7]) || {1,2,3,4,7}&lt;br /&gt;
|-&lt;br /&gt;
| setcut || Bildet die Schnittmenge aus mehreren Mengen || setcut([1,3,2,4],[3,7]) || {3}&lt;br /&gt;
|-&lt;br /&gt;
| setcompare || vergleicht zwei Mengen miteinander, wobei die Reihenfolge egal ist  || setcompare([1,3,2,4],[3,7]) &amp;lt;br&amp;gt; setcompare([1,3,2],[1,2,3]) &amp;lt;br&amp;gt; setcompare([1,3,2],[1,3,2,3]) &amp;lt;br&amp;gt; setcompare([1,2,3],[1,2,3])  || false &amp;lt;br&amp;gt; true &amp;lt;br&amp;gt; false &amp;lt;br&amp;gt; true&lt;br /&gt;
|-&lt;br /&gt;
| setcomparend || vergleicht zwei Mengen miteinander, wobei die Reihenfolge egal ist und doppelte Werte als einfach behandelt werden. || setcomparend([1,3,2,4],[3,7]) &amp;lt;br&amp;gt; setcomparend([1,3,2],[1,2,3]) &amp;lt;br&amp;gt; setcomparend([1,3,2],[1,3,2,3]) &amp;lt;br&amp;gt; setcomparend([1,2,3],[1,2,3])  || false &amp;lt;br&amp;gt; true &amp;lt;br&amp;gt; true &amp;lt;br&amp;gt; true&lt;br /&gt;
|-&lt;br /&gt;
| setpartof || prüft ob die erste Menge eine Teilmenge der zweite Menge ist wobei die Reihenfolge egal ist aber mehrfache Werte berücksichtigt werden  || setpartof([1,4],[1,3,7]) &amp;lt;br&amp;gt; setpartof([1,3],[1,2,3]) &amp;lt;br&amp;gt; setpartof([1,3,3],[1,3,5,7]) &amp;lt;br&amp;gt; setpartof([1,4,4],[1,2,3,4])  || false &amp;lt;br&amp;gt; true &amp;lt;br&amp;gt; false &amp;lt;br&amp;gt; false&lt;br /&gt;
|-&lt;br /&gt;
| setpartofnd || prüft ob die erste Menge eine Teilmenge der zweite Menge ist wobei die Reihenfolge und mehrfache Werte egal sind  || setpartofnd([1,4],[1,3,7]) &amp;lt;br&amp;gt; setpartofnd([1,3],[1,2,3]) &amp;lt;br&amp;gt; setpartofnd([1,3,3],[1,3,5,7]) &amp;lt;br&amp;gt; setpartofnd([1,4,4],[1,2,3,4])  || false &amp;lt;br&amp;gt; true &amp;lt;br&amp;gt; true &amp;lt;br&amp;gt; true&lt;br /&gt;
|-&lt;br /&gt;
| setgetmin || Liefert den kleinsten Wert einer Menge || setgetmin([1,3,-2,4]) || -2&lt;br /&gt;
|-&lt;br /&gt;
| setgetmax || Liefert den größten Wert einer Menge || setgetmax([1,3,-2,4]) || 4&lt;br /&gt;
|-&lt;br /&gt;
| setremovefirst || Entfernt den ersten Wert einer Menge || setremovefirst([1,3,-2,4]) || {3,-2,4}&lt;br /&gt;
|-&lt;br /&gt;
| setremovelast || Entfernt den letzten Wert einer Menge || setremovelast([1,3,-2,4]) || {1,3,-2}&lt;br /&gt;
|-&lt;br /&gt;
| setgetfirst || Liefert den ersten Wert einer Menge || setgetfirst([1,3,-2,4]) || 1&lt;br /&gt;
|-&lt;br /&gt;
| setgetlast || Liefert den letzten Wert einer Menge || setgetlast([1,3,-2,4]) || 4&lt;br /&gt;
|-&lt;br /&gt;
| setsub || setsub(M,x,y) Liefert eine Teilmenge von M der Elemente vom index x bis zum Index y || setsub([1,3,-2,4],1,2) || {3,-2}&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Typ-Funktionen===&lt;br /&gt;
Werden nur dann ausgewertet wenn der Parameter ein numerischer Wert oder eine Menge ist.&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| isset || Prüft ob es sich um eine Menge handelt. || isset([12,13,14]) || true &lt;br /&gt;
|-&lt;br /&gt;
| issetnumeric || Prüft ob es sich um eine Menge aus reellen Zahlen handelt. || issetnumeric([12,13.4,14]) || true &lt;br /&gt;
|-&lt;br /&gt;
| issetlong || Prüft ob es sich um eine Menge aus ganzen Zahlen handelt. || issetlong([12,13,14]) || true &lt;br /&gt;
|-&lt;br /&gt;
| islong || Prüft ob es sich um eine ganze Zahl handelt. || islong(12) || true &lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Algebra===&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;Hinweis:&#039;&#039; Die Indizes eines Vektors oder einer Matrix werden in Letto ausgehend von 0 weg gezählt.  &lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| matrix || erzeugt aus mehreren gleich langen Vektoren eine Matrix || matrix([1,2],[3,4]) || [[1,2],[3,4]]&lt;br /&gt;
|-&lt;br /&gt;
| inv || invertiert eine quadratische Matrix oder bildet 1/x || inv(matrix([1,2],[3,4])) || [[-2,1],[3/2,-1/2]]&lt;br /&gt;
|-&lt;br /&gt;
| vget || liefert ein Element eines Vektors oder einer Matrix || vget([12,13,14],1) &amp;lt;br&amp;gt; vget(matrix([9,2],[3,4]),0,1) || 13 &amp;lt;br&amp;gt; 2 &lt;br /&gt;
|-&lt;br /&gt;
| vset || setzt ein Element eines Vektors oder einer Matrix || vset([12,13,14],1,35) &amp;lt;br&amp;gt; vset(matrix([9,2],[3,4]),0,0,-9) || [12,35,14] &amp;lt;br&amp;gt; [[-9,2],[3,4]]&lt;br /&gt;
|-&lt;br /&gt;
| vinsert || fügt ein Element in einen Vektor an eine gegebene Stelle ein || vinsert([12,13,14],1,25) || [12,25,13,14]&lt;br /&gt;
|-&lt;br /&gt;
| vremove || löscht ein Element eines Vektors || vremove([12,13,14],1) || [12,14]&lt;br /&gt;
|-&lt;br /&gt;
| vabs || Berechnet den Betrag eines Vektors || vabs([3,4]) || 5&lt;br /&gt;
|-&lt;br /&gt;
| vin || Berechnet das innere Produkt von 2 Vektoren || vin([1,2,3],[4,5,6]) || 32&lt;br /&gt;
|-&lt;br /&gt;
| vex || Berechnet das ex-Produkt von 2 Vektoren im 3-dimensionalen Raum || vex([1,2,3],[4,5,6]) || [-3,6,-3]&lt;br /&gt;
|-&lt;br /&gt;
| mprod || Bildet das Matrixprodukt aus zwei Matrizen || mprod([[1,2],[3,4]],[[5,6],[7,8]]) || [[19,22],[43,50]]&lt;br /&gt;
|-&lt;br /&gt;
| mtrans || Bildet die transponierte Matrix || mtrans([[1,2],[3,4]]) || [[1,3],[2,4]]&lt;br /&gt;
|-&lt;br /&gt;
| minv || Bildet die inverse Matrix || minv([[1,2],[3,4]]) || [[-2,1],[3/2,-1/2]]&lt;br /&gt;
|-&lt;br /&gt;
| mdet || Bildet die Determinante einer quadratischen Matrix || mdet([[1,2],[3,4]]) || -2&lt;br /&gt;
|-&lt;br /&gt;
| vindex || vindex(v,x) liefert den Index des Elementes eines Vektors, welcher am nächsten bei x liegt || vindex([10,30,70],40) || 1 &lt;br /&gt;
|-&lt;br /&gt;
| vindexup || vindexup(v,x) liefert den Index des Elementes eines Vektors, welcher größer oder gleich x ist || vindexup([10,30,70],40) || 2 &lt;br /&gt;
|-&lt;br /&gt;
| vindexdown || vindexdown(v,x) liefert den Index des Elementes eines Vektors, welcher kleiner oder gleich x ist || vindexdown([10,30,70],60) || 1&lt;br /&gt;
|-&lt;br /&gt;
| verweis || verweis(M,x,n) liefert den Wert der n-ten Spalte (ohne Angabe von n die 2.Spalte) einer Matrix M wo x dem Wert in der ersten Spalte am nächsten liegt || verweis([[10,33],[20,77],[30,99]],21) || 77&lt;br /&gt;
|-&lt;br /&gt;
| verweisup || verweisup(M,x,n) liefert den Wert der n-ten Spalte (ohne Angabe von n die 2.Spalte) einer Matrix M wo x dem Wert in der ersten Spalte am nächsten liegt || verweisup([[10,33],[20,77],[30,99]],21) || 99&lt;br /&gt;
|-&lt;br /&gt;
| verweisdown || verweisdown(M,x,n) liefert den Wert der n-ten Spalte (ohne Angabe von n die 2.Spalte) einer Matrix M wo x dem Wert in der ersten Spalte am nächsten liegt || verweisdown([[10,33],[20,77],[30,99]],27,1) || 77&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Variable===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| kill || löscht Variable aus dem Variablenspeicher || kill(x,y) &amp;lt;br&amp;gt; kill(allbut(y)) &amp;lt;br&amp;gt; kill(all) || löscht die Variablen x und y &amp;lt;br&amp;gt; löscht alle Variablen mit Ausnahme von y &amp;lt;br&amp;gt; löscht alle Variable&lt;br /&gt;
|-&lt;br /&gt;
| allbut || Liefert eine Liste aller Variablen des Parsers als Menge(Vektor) mit Ausnahme der als Parameter angegebenen Variablen || allbut(x,y) || [a,b,c]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Auswertung und Programmierung===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| ev || Auswertung eines Ausdruckes, als Parameter können Gleichungen angegeben werden, welche dann in den Ausdruck eingesetzt werden || ev(x*y,y=4) || x*4&lt;br /&gt;
|-&lt;br /&gt;
| evruntime || Auswertung eines Ausdruckes, als Parameter können Gleichungen angegeben werden, welche dann in den Ausdruck eingesetzt werden. Das &#039;&#039;&#039;Einsetzen erfolgt erst bei der Ergebnisberechnung&#039;&#039;&#039;! || evruntime(x*y,y=4) || x*4&lt;br /&gt;
|-&lt;br /&gt;
| nv || Auswertung eines Ausdruckes, als Parameter können Gleichungen angegeben werden, welche dann in den Ausdruck eingesetzt werden. Im Gegensatz zu ev werden bestehende Variable nur in den Gleichungen, aber nicht im Ausdruck selbst eingesetzt! || ev(x*y,y=4) || x*4&lt;br /&gt;
|-&lt;br /&gt;
| [[if]] || Bedingungsfunktion if(bedingung,wahrwert,falschwert) || if(4&amp;lt;6,10,12) || 10&lt;br /&gt;
|-&lt;br /&gt;
| [[if|wenn]] || Bedingungsfunktion wenn(bedingung,wahrwert,falschwert). Im Prinzip identisch wie if, jedoch kann if mit Maxima nicht verwendet werden. || wenn(4&amp;lt;6,10,12) || 10&lt;br /&gt;
|-&lt;br /&gt;
| plugin || Ruft die Berechnungsmethode des Plugins, welches als erster Stringparameter angegeben werden muss auf und übergibt die weiteren Parameter an die Berechnungsmethode des Plugins.  || plugin(&amp;quot;plugin1&amp;quot;,3) || führt die Berechnung des Plugins mit dem Namen &amp;quot;plugin1&amp;quot; mit dem Parameter 3 aus. &lt;br /&gt;
|-&lt;br /&gt;
| symbolic || Bei allen Variablen innerhalb von symbolic werden nur nicht-numerische Werte eingesetzt! Wird vor allem im Angabtext bei {= } verwendet || symbolic(x^2+2) || x^2+2&lt;br /&gt;
|-&lt;br /&gt;
| runtime || Bei dieser Funktion wird &#039;&#039;&#039;erst bei der Berechnung der Frageantwort, nach dem Einsetzen der Datensätze&#039;&#039;&#039; das &#039;&#039;&#039;komplette Maxima-Feld&#039;&#039;&#039; mit dem internen &#039;&#039;&#039;Parser&#039;&#039;&#039; durchgerechnet und danach der Parameter-Ausdruck berechnet. Dadurch kann man bei komplizierten Berechnungen eine sehr aufwendige symbolische Berechnung verhindern! || runtime(U) || &lt;br /&gt;
|-&lt;br /&gt;
| dataset || liefert alle Datensätze einer Datensatz-Definition in einem Vektor || dataset(x) || &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Optimierung der Ausdrücke===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| opt   || Ausdruck wird vollständig optimiert, die Funktion wird ausgewertet und ist danach nicht mehr vorhanden || opt(x+x) || 2*x&lt;br /&gt;
|-&lt;br /&gt;
| ratsimp || Ausdruck wird vollständig optimiert, die Funktion wird ausgewertet und ist danach nicht mehr vorhanden (wie opt) || ratsimp(x+x) || 2*x&lt;br /&gt;
|-&lt;br /&gt;
| noopt || Ausdruck wird nicht optimiert, bleibt also so erhalten wie angegeben. Die Funktion an sich geht aber verloren. || noopt(2+3) || 2+3&lt;br /&gt;
|-&lt;br /&gt;
| lopt || Im Maximafeld bleibt die Funktion ohne Funktion erhalten, im Ergebnis {=  wird die Funktion entfernt und in der Lösung wird nach dem Einsetzen der Werte der Ausdruck vollständig optimiert. || lopt(x+3)  || lopt(x+3)  &lt;br /&gt;
|-&lt;br /&gt;
| lnoopt || Im Maximafeld bleibt die Funktion ohne Funktion erhalten, im Ergebnis {=  wird die Funktion entfernt und in der Lösung wird nach dem Einsetzen der Werte der Ausdruck nicht mehr optimiert. || lnoopt(x+3+2)  || lnoopt(x+5) &lt;br /&gt;
|-&lt;br /&gt;
| loptnumeric || Im Maximafeld bleibt die Funktion ohne Funktion erhalten, im Ergebnis {=  wird die Funktion entfernt und in der Lösung wird nach dem Einsetzen der Werte der Ausdruck nur numerisch optimiert. || loptnumeric(x+y)  || loptnumeric(x+y)&lt;br /&gt;
|-&lt;br /&gt;
| aopt || Bei Maxima und Lösung geht die Funktion verloren, nur innerhalb von noopt bleibt sie erhalten. Bei der Anzeige führt sie zur Optimierung das Ausdruckes nach Einsetzen der Datensätze. || aopt(x)  || x&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Anzeige und Lösungsberechnung===&lt;br /&gt;
Diese Funktionen haben entweder einen oder zwei Parameter. Der erste Parameter stellt die darzustellende Funktion dar, der zweite Parameter, welcher eine Ganzzahl sein muss, gibt an, wie die Darstellung erfolgen soll. Wird der 2.Parameter weggelassen, so wird er als 0 interpretiert.&lt;br /&gt;
* 0 Bei Berechnungen hat die Funktion keine Wirkung, bleibt aber als Funktion erhalten. Bei Lösung und Anzeige wird die Funktion ausgewertet&lt;br /&gt;
* 1 Wirkt nur bei Lösung, bei Berechnungen bleibt die Funktion erhalten&lt;br /&gt;
* 2 Wirkt nur bei Anzeige, bei Berechnungen bleibt die Funktion erhalten&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| viewpow || Gibt alle Wurzeln als Potenzen aus, und stellt alle Potenzen im Nenner als negativen Exponenten im Zähler dar || viewpow(sqrt(x)) || x^(1/2)&lt;br /&gt;
|-&lt;br /&gt;
| viewsqrt || Gibt Potenzen welche als Wurzel darstellbar sind auch als als Wurzeln mit der Funktion sqrt oder root aus || viewsqrt(x^(1/2)) || sqrt(x)&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Spezialfunktionen Technik===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| color || Widerstandsfarbcode berechnen.&amp;lt;br&amp;gt;1. Parameter muss ein Double sein&amp;lt;br&amp;gt; 2.Parameter sind die Anzahl der Farbringe&amp;lt;br&amp;gt; 3.Parameter ist der Modus (0..2-St,1..3St,2..Deutsch,3..2StEng,4..3StEng,5..Englisch || color(120,3,2) || braun,rot,braun&lt;br /&gt;
|-&lt;br /&gt;
| parsecolor || Wandelt einen String mit einem Widerstandsfarbcode in einen Double-Wert || parsecolor(&amp;quot;br-rt-br&amp;quot;) || 120&lt;br /&gt;
|-&lt;br /&gt;
| ip || Wandelt eine Long-Zahl in einen String als IP-Adresse um, oder 4 Byte-Zahlen in eine Long Zahl als IP-32-bit-Adresse || ip(1534536453)&amp;lt;br&amp;gt;ip(10,20,30,40) || &amp;quot;91.119.43.5&amp;quot;&amp;lt;br&amp;gt;169090600&lt;br /&gt;
|-&lt;br /&gt;
| parseip || Wandelt einen String mit einer IP-Adresse in einen Long-Wert || parseip(&amp;quot;91.119.43.5&amp;quot;) || 1534536453&lt;br /&gt;
|-&lt;br /&gt;
| e12 || rundet einen Zahlenwert auf den nächstliegenden Wert der [[Normreihe]] E12.&amp;lt;br&amp;gt;Die Rundung erfolgt geometrisch d.h. der Quotient zwischen Normwert und zu rundendem Wert wird minimiert. || e12(700Ohm) || 680Ohm&lt;br /&gt;
|-&lt;br /&gt;
| e12up || rundet einen Zahlenwert auf den nächstgrößerern Wert der [[Normreihe]] E12 || e12(670Ohm) || 680Ohm&lt;br /&gt;
|-&lt;br /&gt;
| e12down || rundet einen Zahlenwert auf den nächstkleineren Wert der [[Normreihe]] E12 || e12(700Ohm) || 680Ohm&lt;br /&gt;
|-&lt;br /&gt;
| ise12 || prüft ob der als Parameter übergebenen Wert ein Wert der [[Normreihe]] E12 ist.|| ise12(680Ohm) || true&lt;br /&gt;
|-&lt;br /&gt;
| norm || rundet einen Zahlenwert auf den nächstliegenden Wert einer gegebenen Wertereihe oder [[Normreihe]].&amp;lt;br&amp;gt;Die Rundung erfolgt geometrisch wenn es sich um eine logarithmisch aufgeteilte Normreihe handelt, oder sonst linear. || norm(700Ohm,E12) || 680Ohm&lt;br /&gt;
|-&lt;br /&gt;
| normup || rundet einen Zahlenwert auf den nächstgrößerern Wert einer gegebenen Wertereihe oder [[Normreihe]]. || normup(730Ohm,[1,3,5,8]) || 800Ohm&lt;br /&gt;
|-&lt;br /&gt;
| normdown || rundet einen Zahlenwert auf den nächstkleineren Wert einer gegebenen Wertereihe oder [[Normreihe]]. || normdown(700Ohm,E12) || 680Ohm&lt;br /&gt;
|-&lt;br /&gt;
| isnorm || prüft ob der als Parameter übergebenen Wert ein Wert einer gegebenen Wertereihe oder [[Normreihe]] ist. || isnorm(680Ohm,E12) || true&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=Ergebnisvorschau=&lt;br /&gt;
Aufruf dieses Dialoges über den [[Datei:ClipCapIt-180904-181443.PNG|25px]]-Button aus dem [[Toolbar]].&lt;br /&gt;
&lt;br /&gt;
Die Berechnungen aus dem Maxima-Feld bei der [[Beispiele Bearbeiten|Fragendefinition]] können auch über den [[Datei:ClipCapIt-180904-182120.PNG|25px]]-Button durchgeführt werden. Hier wird die Berechnung durchgeführt und das Lösungsfeld ausgefüllt, aber der Rechengang wird nicht angezeigt. &lt;br /&gt;
:[[Datei:ClipCapIt-180904-181415.PNG|400px]]&lt;br /&gt;
&lt;br /&gt;
Beim Fehlersuchen oder bei komplexen Berechnungen kann es aber hilfreich sein, den ganzen Maxima-Lösungsweg zu sehen, dies ist über den [[Datei:ClipCapIt-180904-181443.PNG|25px]]-Button möchlich.&lt;br /&gt;
&lt;br /&gt;
[[Kategorie:Berechnung]]&lt;/div&gt;</summary>
		<author><name>Ckral</name></author>
	</entry>
	<entry>
		<id>https://wiki.letto.at/wiki/index.php?title=Berechnungen&amp;diff=2164</id>
		<title>Berechnungen</title>
		<link rel="alternate" type="text/html" href="https://wiki.letto.at/wiki/index.php?title=Berechnungen&amp;diff=2164"/>
		<updated>2020-03-23T18:48:57Z</updated>

		<summary type="html">&lt;p&gt;Ckral: Ersetze kill(allbut(z)) durch kill(allbut(y))&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Allgemeines =&lt;br /&gt;
Berechnungen werden in mehreren Bereichen der Frageerstellung verwendet und bilden die Basis für [[Fragetypen#Berechnungsfrage|Berechnungsfrage]] und [[Fragetypen#Mehrfachberechnungsfrage|Mehrfachberechnungsfrage]].&lt;br /&gt;
&lt;br /&gt;
Alle Berechnungen unterstützen [[Einheit|Einheiten]] und symbolische Auswertung.&lt;br /&gt;
&lt;br /&gt;
=Grundsätzlicher Aufbau der Ergebnis-Berechnung bei Fragen mit Berechnungen=&lt;br /&gt;
[[Datei:BerechnungSchema.png|mini|hochkant=2.0|Schema der Berechnung]]&lt;br /&gt;
Die Berechnung und die Beurteilung einer Frage teilt sich in 3 grundsätzliche Schritte:&lt;br /&gt;
* Berechnnug der geschlossenen Lösung (Formel) aus den Maxima-Feldern &lt;br /&gt;
* Berechnung des Ergebnisses einer Frage durch Einsetzen der Zahlenwerte aus den Datensätzen in die geschlossene Lösung&lt;br /&gt;
* Beurteilung der Schülereingabe durch Vergleich mit dem Ergebnis&lt;br /&gt;
&lt;br /&gt;
=Konstante=&lt;br /&gt;
Alle Konstante welche in Letto definiert sind beginnen mit einem Prozentzeichen. Verwendet man den Variablennamen ohne Prozenzzeichen, so wird die Konstante wie eine Variable mit dem Wert der Konstanten verwendet.&lt;br /&gt;
&lt;br /&gt;
Liste der definierten Konstanten:&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%&amp;quot; &lt;br /&gt;
| Name || Wert || Beschreibung&lt;br /&gt;
|-&lt;br /&gt;
| %i || i || komplexer Parameter als Lösung der Gleichung x^2=-1&lt;br /&gt;
|-&lt;br /&gt;
| %j || i || komplexer Parameter als Lösung der Gleichung x^2=-1&lt;br /&gt;
|-&lt;br /&gt;
| %e || 2.718281828459045 || Eulersche Zahl &lt;br /&gt;
|-&lt;br /&gt;
| %pi || 3.141592653589793 || Kreiszahl&lt;br /&gt;
|-&lt;br /&gt;
| %mu0 || magnetische Feldkonstante || 4*%pi*1E-7&#039;Vs/Am&#039;&lt;br /&gt;
|-&lt;br /&gt;
| %m0 || magnetische Feldkonstante (alt, wird bald entfernt werden) || 4*%pi*1E-7&#039;Vs/Am&#039;&lt;br /&gt;
|-&lt;br /&gt;
| %epsilon0 || elektrische Feldkonstante || 8.85418781762039E-12&#039;As/Vm&#039;&lt;br /&gt;
|-&lt;br /&gt;
| %e0 || elektrische Feldkonstante (alt, wird bald entfernt werden) || 8.85418781762039E-12&#039;As/Vm&#039;&lt;br /&gt;
|-&lt;br /&gt;
| %c0 || Lichtgeschwindigkeit || 299792458&#039;m/s&#039;&lt;br /&gt;
|-&lt;br /&gt;
| %Qe || Elementarladung || 1.602176620898E-19As&lt;br /&gt;
|-&lt;br /&gt;
| %g  || Erdbeschleunigung || 9.81&#039;m/s^2&#039;&lt;br /&gt;
|-&lt;br /&gt;
| %NA || Avogadro Konstante || 6.02214085774E23/mol&lt;br /&gt;
|-&lt;br /&gt;
| %k  || Stefan Bolzman Konstante || 1.3806485279E-23&#039;J/K&#039;&lt;br /&gt;
|-&lt;br /&gt;
| %R0 || Universelle Gaskonstante || 8.314459848&#039;J/Kmol&#039;&lt;br /&gt;
|-&lt;br /&gt;
| %h || planksches Wirkungsquantum || 6.6260704081E-34Js&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=Berechnung mit Maxima=&lt;br /&gt;
* Maxima wird &#039;&#039;&#039;nur für symbolische Berechnungen&#039;&#039;&#039; bei der Erstellung von Beispielen verwendet. Hierbei wird, wie schon oberhalb im Schema angegeben, zuerst die Moodle.mac geladen, dann das [[Beispielsammlung Editieren#Maxima-Feld|Maxima-Feld]] berechnet und anschließend die Maxima-Felder aller Teilfragen. Das Ergebnis der Berechnung wird dann als symbolischer Ausdruck im Lösungfeld eingetragen.&lt;br /&gt;
* Da zum Zeitpunkt der &#039;&#039;&#039;Maxima-Berechnung keine Datensätze&#039;&#039;&#039; vorhanden sind, kann keine numerische Berechnung in Maxima durchgeführt werden, welche die [[Datensätze]] benötigt. Dies muss der interne Parser zum Zeitpunkt des Online-Test-Laufes erledigen. Numerische Berechnungen, welche der interne Parser nicht kann können deshalb auch nicht mit Maxima berechnet werden.&lt;br /&gt;
* Da das Lösungsfeld, welches mit Maxima berechnet wird symbolisch ausgewertet wird, können in Maxima sämtliche symbolischen Berechnungsverfahren angewendet werden, welche ein symbolisches Ergebnis liefern und keine numerischen Werte der Datensätze benötigen.&lt;br /&gt;
* &#039;&#039;&#039;Funktionsdeklarationen&#039;&#039;&#039; wie &#039;&#039;&#039;f(x):=&#039;&#039;&#039;x^2 mit Doppelpunkt-Ist-Gleich sind im Maxima-Feld nur eingeschränkt bis gar &#039;&#039;&#039;nicht verwendbar&#039;&#039;&#039;, da sie vom Parser nicht unterstützt werden.&lt;br /&gt;
* &#039;&#039;&#039;Mengen von Maxima&#039;&#039;&#039; sind in Letto n&#039;&#039;&#039;icht verwendbar&#039;&#039;&#039;. Letto verwender hierzu eigene Funktionen des Parsers welche mit &amp;quot;set&amp;quot; beginnen und auf Vektoren basieren.&lt;br /&gt;
&lt;br /&gt;
=Berechnung mit dem internen Parser=&lt;br /&gt;
* Der interne Parser kann durch Wahl der Checkbox &amp;quot;Parser&amp;quot; anstatt von Maxima für die Berechnung des Maxima-Feldes verwendet werden. &lt;br /&gt;
* Jedenfalls wird der Parser zur Test-Laufzeit für die Berechnung des Ergebnisses einer Frage aus Lösung und Datensätzen und zum Berechnen der Schülereingabe verwendet.&lt;br /&gt;
&lt;br /&gt;
==Operatoren==&lt;br /&gt;
=== VORSICHT mit MAXIMA ===&lt;br /&gt;
* Einige Operatoren sind in &#039;&#039;&#039;Maxima anders&#039;&#039;&#039;, oder &#039;&#039;&#039;nicht definiert&#039;&#039;&#039;. Möchte man im Maximafeld die Operatoren des Parsers-verwenden, so muss das gesamte Maxima-Feld &#039;&#039;&#039;mit dem Parser gerechnet&#039;&#039;&#039; werden. Man verliert dadurch jedoch die Vorteile der Maxima-Berechnung.&lt;br /&gt;
* Alternativ kann man statt der Operatoren auch &#039;&#039;&#039;Funktionen verwenden&#039;&#039;&#039; (zB: ne() statt != ). Diese werden dann von Maxima zwar nicht ausgewertet, die Berechnung bleibt aber trotzdem korrekt und kann mit Maxima durchgeführt werden.&lt;br /&gt;
* Es gibt einige Funktionen welche in &#039;&#039;&#039;Maxima existieren&#039;&#039;&#039; aber im &#039;&#039;&#039;Parser nicht, oder mit anderem Syntax&#039;&#039;&#039;.&lt;br /&gt;
** Wenn diese von Maxima nicht ausgewertet werden können, da sie &#039;&#039;&#039;Datensätze&#039;&#039;&#039; enthalten welche zu Auswertezeitpunkt von Maxima noch &#039;&#039;&#039;nicht mit Werten belegt&#039;&#039;&#039; sind, &#039;&#039;&#039;dürfen sie in der Berechnung nicht verwendet werden&#039;&#039;&#039;, da der Parser dann damit nichts anfangen kann.&lt;br /&gt;
** Solche Funktionen haben entweder im Parser eine alternative Schreibweise welche auch mit Maxima verwendet werden kann (z.B.: wenn), oder sie können prinzipell nicht verwendet werden. (Für wichtige Funktionsweisen könnte man in zukünftigen Versionen neue Funktionalitäten in den Parser einbauen, die die gewünschte Funktion erfüllen)&lt;br /&gt;
** Ein weiter Möglichkeit für die Verwendung solcher Funktionen ist der Verzicht auf Datensätze in diesen Funktionen, damit diese Funktion beim Auswerten des Maxima-Feldes bereits ausgewertet werden kann und somit der Parser davon nichts mehr sieht.&lt;br /&gt;
** zB:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
if then&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Infix Operatoren===&lt;br /&gt;
====arithmetische Operatoren====&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Operator || Priorität || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| + || 40 || Addition || 4+5 || 9 &lt;br /&gt;
|-&lt;br /&gt;
| - || 40 || Subtraktion || 6-2 || 4&lt;br /&gt;
|-&lt;br /&gt;
| * || 50 || Multiplikation || 4*5 || 20&lt;br /&gt;
|-&lt;br /&gt;
| / || 51 || Division || 20/4 || 5&lt;br /&gt;
|-&lt;br /&gt;
| % || 51 || Divisionsrest || 104%20 || 4&lt;br /&gt;
|-&lt;br /&gt;
| / / || 60 || Parallelschaltung || x / / y || x*y/(x+y)&lt;br /&gt;
|-&lt;br /&gt;
| ^ || 90 || Potenz || 2^3 || 8&lt;br /&gt;
|-&lt;br /&gt;
| .*. || 200 || Operator der intern für eine fehlende bindende Multiplikation verwendet wird || 4x || 4*x&lt;br /&gt;
|-&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
====Bitoperatoren====&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Operator || Priorität || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
||  |  || 20 || Bitweise oder logisches ODER ||| 9|5 &amp;lt;br&amp;gt; true|false || 13 &amp;lt;br&amp;gt;true&lt;br /&gt;
|-&lt;br /&gt;
| or || 20 || Bitweise oder logisches ODER || 9 or 5 || 13&lt;br /&gt;
|-&lt;br /&gt;
| &amp;amp;  || 21 || Bitweise oder logisches UND  || 13&amp;amp;10 || 8&lt;br /&gt;
|-&lt;br /&gt;
| and || 21 || Bitweise oder logisches UND  || 13 and 10 || 8&lt;br /&gt;
|-&lt;br /&gt;
| xor || 22 || Bitweise oder logisches exklusiv oder XOR  || 13 xor 10 || 7&lt;br /&gt;
|-&lt;br /&gt;
| imp || 23 || Bitweise oder logisches impliziert IMP || 13 imp 10 || 8&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;&amp;lt;  || 35 || Bitweise links schieben  || 5&amp;lt;&amp;lt;2 || 20&lt;br /&gt;
|-&lt;br /&gt;
| &amp;gt;&amp;gt;  || 35 || Bitweise rechts schieben || 8&amp;gt;&amp;gt;2 || 2&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
====Vergleichsoperatoren====&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Operator || Priorität || Beschreibung || Beispiel&lt;br /&gt;
|-&lt;br /&gt;
| =  || 3 || Gleichungsoperator || x=y&lt;br /&gt;
|-&lt;br /&gt;
| == || 30 || Gleichungsoperator || x==y&lt;br /&gt;
|-&lt;br /&gt;
| != || 30 || Ungleichungsoperator || x!=y&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt; || 32 || Kleiner || x&amp;lt;y&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;= || 32 || Kleiner gleich || x&amp;lt;=y&lt;br /&gt;
|-&lt;br /&gt;
| &amp;gt; || 32 || größer || x&amp;gt;y&lt;br /&gt;
|-&lt;br /&gt;
| &amp;gt;= || 32 || größer gleich || x&amp;gt;=y&lt;br /&gt;
|}&lt;br /&gt;
====Organisative Operatoren====&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Operator || Priorität || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| , || 0 || Listen-Trennzeichen || x,y ||&lt;br /&gt;
|-&lt;br /&gt;
| $ || 1 || Trennzeichen zwischen mehreren Berechnungen || ||&lt;br /&gt;
|-&lt;br /&gt;
| ; || 1 || Trennzeichen zwischen mehreren Berechnungen || ||&lt;br /&gt;
|-&lt;br /&gt;
| : || 2 || Zuweisung an eine Variablen auf der linken Seite || x:5 || &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Prefix Operatoren===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Operator || Priorität || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| + || 45 || positives Vorzeichen || +5 || 5&lt;br /&gt;
|-&lt;br /&gt;
| - || 45 || negatives Vorzeichen || -(-5) || 5&lt;br /&gt;
|-&lt;br /&gt;
| ~ || 95  || bitweise Inversion einer 64bit-Ganzzahl || ~0x0F0F || 0xFFFFFFFFFFFFF0F0&lt;br /&gt;
|-&lt;br /&gt;
| ! || 120 || logisches NOT || !(3&amp;lt;4) || false&lt;br /&gt;
|-&lt;br /&gt;
| ++ || 130 || Inkrement von Ganzzahlen || ++x || erhöht x um eins und gibt das Ergebnis nach der Erhöhung zurück&lt;br /&gt;
|-&lt;br /&gt;
| -- || 130 || Dekrement von Ganzzahlen || --x || vermindert x um eins und gibt das Ergebnis nach der Verminderung zurück&lt;br /&gt;
|-&lt;br /&gt;
| % || 200 || Prefix für Namen, welche als Konstante definiert sind || %pi || 3.141592653589793&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Suffix Operatoren===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Operator || Priorität || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| ++ || 135 || Inkrement von Ganzzahlen || x++ || erhöht x um eins und gibt den Variablenwert vor der Erhöhung zurück&lt;br /&gt;
|-&lt;br /&gt;
| -- || 135 || Dekrement von Ganzzahlen || x-- || vermindert x um eins und gibt den Variablenwert vor der Verminderung zurück&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==Klammern==&lt;br /&gt;
* () runde Klammern werden für mathematische Ausdrücke zur Klammerung verwendet&lt;br /&gt;
* {} geschwungene Klammer werden im Angabetext für die Namen der Datensätze verwendet&lt;br /&gt;
* [] eckige Klammern werden für Vektoren und Matrizen verwendet&lt;br /&gt;
&lt;br /&gt;
==Funktionen==&lt;br /&gt;
===Funktionen für Ganzzahlen===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| band || bitweises UND || band(4,12) || 4&lt;br /&gt;
|-&lt;br /&gt;
| bor  || bitweises ODER || bor(4,1) || 5&lt;br /&gt;
|-&lt;br /&gt;
| bxor || bitweises EXKLUSIV ODER || band(4,5) || 1&lt;br /&gt;
|-&lt;br /&gt;
| bimp || bitweises Parameter1 impliziert Parameter2 || bimp(13,10) || 8&lt;br /&gt;
|-&lt;br /&gt;
| binv || bitweises NICHT mit 8 bit || binv(0x0F) || 0xF0&lt;br /&gt;
|-&lt;br /&gt;
| shl || Schiebe Ganzzahl bitweise nach links || shl(8,2) || 32&lt;br /&gt;
|-&lt;br /&gt;
| shr || Schiebe Ganzzahl bitweise nach rechts || shr(8,2) || 2&lt;br /&gt;
|-&lt;br /&gt;
| div || Ganzzahldivision, Ergebnis wird abgeschnitten || div(5,2) || 2&lt;br /&gt;
|-&lt;br /&gt;
| mod || Modulo: Divisionsrest einer Ganzzahldivision || mod(5,2) || 1&lt;br /&gt;
|-&lt;br /&gt;
| inv8  || bitweise Invertieren und die letzten 8 Bit bestimmen  || inv8(0b1001) || 0b11110110&lt;br /&gt;
|-&lt;br /&gt;
| inv16 || bitweise Invertieren und die letzten 16 Bit bestimmen || inv16(0xF0)  || 0xFF0F&lt;br /&gt;
|-&lt;br /&gt;
| inv32 || bitweise Invertieren und die letzten 32 Bit bestimmen || inv32(0xF0)  || 0bFFFFFF0F&lt;br /&gt;
|-&lt;br /&gt;
| inv64 || bitweise Invertieren und die letzten 64 Bit bestimmen || inv64(0xF0)  || 0bFFFFFFFFFFFFFF0F&lt;br /&gt;
|-&lt;br /&gt;
| byte  || Zahl in eine Ganzzahl wandeln und die letzten 8bit der Zahl Abschneiden, Einheit geht verloren  || byte(34.2) || 34&lt;br /&gt;
|-&lt;br /&gt;
| word  || Zahl in eine Ganzzahl wandeln und die letzten 16bit der Zahl Abschneiden, Einheit geht verloren || word(34.2) || 34&lt;br /&gt;
|-&lt;br /&gt;
| int   || Zahl in eine Ganzzahl wandeln und die letzten 32bit der Zahl Abschneiden, Einheit geht verloren || int(34.2) || 34&lt;br /&gt;
|-&lt;br /&gt;
| long  || Zahl in eine Ganzzahl wandeln , Einheit geht verloren || long(34.2) || 34&lt;br /&gt;
|-&lt;br /&gt;
| [[parity]]  || Paritätsberechnung : parity(Parität,Codewortlänge,Datenwort[,Datenwort,....]) || parity(even,7,&amp;quot;xy&amp;quot;) || &lt;br /&gt;
|-&lt;br /&gt;
| [[blockparity]]  || Kreuz oder Blockparität : blockparity(Parität,Codewortlänge,Codewortanzahl,Datenwort[,Datenwort,....]) || blockparity(even,7,3,&amp;quot;abc&amp;quot;) || &lt;br /&gt;
|-&lt;br /&gt;
| [[bcd]]  || Wandelt in eine Long-Zahl in ein Feld aus BCD-kodierten Zahlen um || bcd(124) || [1,2,4]&lt;br /&gt;
|-&lt;br /&gt;
| [[code]] || Code aus mehreren Codeworten zusammensetzen : code(Codewortlänge,Datenwort[,Datenwort,....]) || code(5,4,3,5) || 0b1000001100101&lt;br /&gt;
|-&lt;br /&gt;
| [[hamming]] || Bestimmt den Hamming-Abstand von mehreren Codeworten || hamming(1,2,4,8,16) || 2&lt;br /&gt;
|-&lt;br /&gt;
| [[komplement]] ||  Bildet das Zweierkomplement mit einer negativen Zahl mit einer bestimmten Bitanzahl, fehlt die Bitanzahl, so wird ein 32Bit-2er-komplement gebildet || komplement(-5,8) || 0b11111011&lt;br /&gt;
|-&lt;br /&gt;
| [[bitstream]] || Erzeugt aus einer Ganzzahl einen Bitstrom als String mit einer definierten Anzahl von Bit (MSB werden nötigenfalls mit 0 gefüllt) : bitstream(Daten,Bitanzahl) || bitstream(0x184,12) || &amp;quot;000110000100&amp;quot;&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Funktionen für rationale und Ganzzahlen===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| kgV || berechnet das kleinste gemeinsame Vielfache von mehreren Zahlen || kgV(3,10) || 30&lt;br /&gt;
|-&lt;br /&gt;
| ggT || berechnet den größten gemeinsamen Teiler von mehreren Zahlen || ggT(12,10) || 2&lt;br /&gt;
|- &lt;br /&gt;
| isprim || prüft ob die angegebene Zahl eine Primzahl ist || isprim(13) || true&lt;br /&gt;
|-&lt;br /&gt;
| prims || zerlegt eine Ganzzahl in ihre Primfaktoren || prims(12) || [2,2,3]&lt;br /&gt;
|-&lt;br /&gt;
| defracmix || zerlegt eine rationale Zahl in einen gemischten Bruch aus ganzzahligem Summanden, Zähler und Nenner als Menge&amp;lt;br&amp;gt;Die erhaltene Menge kann mit dem Format-Modfier &#039;&#039;&#039;frac&#039;&#039;&#039; als gemischter Bruch dargestellt werden (siehe [[Zahlendarstellung]]) || defracmix(14/12)&amp;lt;br&amp;gt;defracmix(-15/12)&amp;lt;br&amp;gt;defracmix(3/12) || [1,2/12]&amp;lt;br&amp;gt;[-1,3,12]&amp;lt;br&amp;gt;[0,3,12] &lt;br /&gt;
|-&lt;br /&gt;
| defrac || zerlegt eine rationale Zahl in Zähler und Nenner als Menge &amp;lt;br&amp;gt;Die erhaltene Menge kann mit dem Format-Modfier &#039;&#039;&#039;frac&#039;&#039;&#039; als gemischter Bruch dargestellt werden || defrac(14/12) || [13,12]&lt;br /&gt;
|-&lt;br /&gt;
| frac || erzeugt aus einer Menge aus 2 oder 3 Elementen (von defrac) eine rationale Zahl || frac([3,7])&amp;lt;br&amp;gt;frac([1,2,3]) || 3/7 &amp;lt;br&amp;gt; 5/3&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===boolsche Funktionen===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| eq || gleich || eq(4,4) || true&lt;br /&gt;
|-&lt;br /&gt;
| eqruntime || symbolischer Vergleich, welcher &#039;&#039;&#039;symbolisch erst bei der Ergebnisberechnung&#039;&#039;&#039; ausgeführt wird. Muss verwendet werden, wenn bei Vergleichen symbolische Antworten von Schülern (Q0,Q1,...) verwendet werden.  || eqruntime(x+3*y,3*y+x) || true&lt;br /&gt;
|-&lt;br /&gt;
| ne || ungleich || ne(6,4) || true&lt;br /&gt;
|-&lt;br /&gt;
| ge || größer gleich || ge(6,4) || true&lt;br /&gt;
|-&lt;br /&gt;
| le || kleiner gleich || le(6,4) || false&lt;br /&gt;
|-&lt;br /&gt;
| gt || größer || gt(6,4) || true&lt;br /&gt;
|-&lt;br /&gt;
| lt || kleiner || lt(6,4) || false&lt;br /&gt;
|-&lt;br /&gt;
| between || prüft ob Parameter1 kleiner als Parameter2 und Parameter2 kleiner als Parameter 3 || between(3,4,5) || true&lt;br /&gt;
|-&lt;br /&gt;
| land || logisches UND || land(a&amp;lt;b,b&amp;lt;c) || &lt;br /&gt;
|-&lt;br /&gt;
| lor  || logisches ODER || lor(a&amp;lt;b,b&amp;lt;c) || &lt;br /&gt;
|-&lt;br /&gt;
| not  || logisches NICHT. Vorsicht ein symbolisches Ergebnis von Maxima liefert not als Prefix-Operator, welcher vom Parser nicht unterstützt wird ( Verwende statt dessen &#039;&#039;&#039;lnot&#039;&#039;&#039; ) || not(a&amp;lt;b) || &lt;br /&gt;
|-&lt;br /&gt;
| lnot  || logisches NICHT, wie not jedoch wird es von Maxima nicht ausgewertet || lnot(a&amp;lt;b) || &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===arithmetische Funktionen===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| double || Zahl ein eine Gleitkommazahl umwandeln, die Einheit geht dabei verloren || double(3.4V) || 3.4&lt;br /&gt;
|-&lt;br /&gt;
| numeric || verwirft die Einheit, wenn eine vorhanden ist und liefert nur den Zahlenwert || numeric(2.3mA) &amp;lt;br&amp;gt; numeric(5%)|| 0.0023 &amp;lt;br&amp;gt; 5&lt;br /&gt;
|-&lt;br /&gt;
| unit || gibt die SI-Einheit mit dem Zahlenwert 1 zurück || unit(3.1kA) &amp;lt;br&amp;gt; unit(5%) || 1A &amp;lt;br&amp;gt; 1%&lt;br /&gt;
|-&lt;br /&gt;
| cround  || Rundet die Zahl kaufmännisch, der zweite Parameter gibt die Anzahl der Kommastellen an, ohne 2.Parameter wird auf Ganzzahlen gerundet, bei komplexen Zahlen wird Betrag und Winkel in Grad gerundet. || cround(23.535,2)&amp;lt;br&amp;gt;cround(2.435arg34.5364°,1) || 23.54&amp;lt;br&amp;gt;2.4arg34.5°&lt;br /&gt;
|-&lt;br /&gt;
| ccround  || Rundet die Zahl kaufmännisch, der zweite Parameter gibt die Anzahl der Kommastellen an, bei komplexe Zahlen wird Real und Imaginärteil gerundet. || ccround(2.4534+5.645*%i,2) || 2.45+5.65i&lt;br /&gt;
|-&lt;br /&gt;
| round  || Rundet die Zahl kaufmännisch, aus Kompatibilitätsgründen zu Maxima hat round nur einen Parameter || round(23.535) || 24&lt;br /&gt;
|-&lt;br /&gt;
| ground || Rundet die Zahl auf die im zweiten Parameter angegebenen gültigen Ziffern || ground(2453.43,2) || 2500&lt;br /&gt;
|-&lt;br /&gt;
| floor  || Rundet auf die größte ganze Zahl, welche kleiner oder gleich x ist || floor(24.5) || 24&lt;br /&gt;
|-&lt;br /&gt;
| trunc  || Schneidet die Zahl nach dem Komma ab || trunc(24.5) || 24&lt;br /&gt;
|-&lt;br /&gt;
| ceiling || ceiling(x) Rundet auf die kleinste ganze Zahl, welche größer oder gleich x ist || ceiling(13.2) || 14&lt;br /&gt;
|-&lt;br /&gt;
| pow || Potenzfunktion || pow(2,3) || 8&lt;br /&gt;
|-&lt;br /&gt;
| par || Parallelschaltung von Widerständen || par(x,y) || x*y/(x+y)&lt;br /&gt;
|-&lt;br /&gt;
| min  || Minimum von mehrere Werten suchen || min(3,5,1) || 1&lt;br /&gt;
|-&lt;br /&gt;
| max  || Maximum von mehreren Werten suchen || max(3,5,1) ||  5&lt;br /&gt;
|-&lt;br /&gt;
| random  || Zufallszahl aus einem definierten Zahlenbereich random(minimal,maximal)&amp;lt;br&amp;gt;VORSICHT! Die Zufallszahl wird bei jedem Aufruf neu berechnet, weshalb sich der Wert bei jedem Anzeigevorgang einer Frage ändert. Sollte sich der berechnete Wert für eine Schülerangabe zwischen Fragestellung und Ergebniskontrolle nicht ändern dürfen (ist der Normalfall) muss man einen &#039;&#039;&#039;Datensatz statt einer Zufallszahl&#039;&#039;&#039; verwenden! &amp;lt;br&amp;gt; Zufallszahlen haben in der Ergebnisberechnung keinen Sinn, und sollten maximal für angezeigte zufällige Werte verwendet werden! || random(2,8) ||  3.4532&lt;br /&gt;
|-&lt;br /&gt;
| randomC  || komplexe Zufallszahl aus einem definierten Zahlenbereich für den Betrag&amp;lt;br&amp;gt;VORSICHT! Die Zufallszahl wird bei jedem Aufruf neu berechnet!  || randomC(2,8) ||  3.4532arg40.3°&lt;br /&gt;
|-&lt;br /&gt;
| signum  || Liefert das Vorzeichen einer Zahl (-1,0,1). Bei einer komplexen Zahl das Vorzeichen des Realteils. || signum(-4) || -1&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===erweiterte arithmetische Funktionen===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| sigma || Sprungfunktion: sigma(x) liefert 0 für x&amp;lt;0 und 1 für x&amp;gt;=0 || sigma(243.3) || 1&lt;br /&gt;
|-&lt;br /&gt;
| interpol || Interpolationsfunktion zwischen mehreren Stützpunkten in einem Koordinatensystem. &amp;lt;br&amp;gt; interpol(WerteX,WerteY,x) || interpol([0,1,2],[0,3,3],1.5) || 3&lt;br /&gt;
|-&lt;br /&gt;
| periodic || Erzeugt aus einer beliebigen Funktion zwischen 0 und Periodendauer eine periodische Funktion &amp;lt;br&amp;gt; periodic(Variable,Periodendauer,Funktion)&amp;lt;br&amp;gt; periodic(Variable,Periodendauer,Funktionsperiodendauer,Funktion) || ch1(t):periodic(t,5ms,2&#039;Vms-2&#039;*t^2) &amp;lt;br&amp;gt; ch1(t):periodic(t,5ms,1,2V*t^2) || :[[Datei:ClipCapIt-190318-113524.PNG|100px]] &amp;lt;br&amp;gt; :[[Datei:ClipCapIt-190318-113644.PNG|100px]]&lt;br /&gt;
|-&lt;br /&gt;
| numint || numerische Integration &amp;lt;br&amp;gt; numint(untereGrenze,obereGrenze,funktion,Variable)&amp;lt;br&amp;gt; numint(untereGrenze,obereGrenze,funktion,Variable,punkteAnzahl) || numint(0,2pi,sin(t),t) || 0&lt;br /&gt;
|-&lt;br /&gt;
| numdif || numerisches Differenzieren einer Funktion &amp;quot;funktion&amp;quot; nach einer Variablen &amp;quot;Variable&amp;quot; an der Stelle &amp;quot;position&amp;quot; mit einer Differenz der Variablen von &amp;quot;differenz&amp;quot; &amp;lt;br&amp;gt; numdif(position,funktion,Variable,differenz) || numdif(0,sin(t),t,0.01) || 1&lt;br /&gt;
|-&lt;br /&gt;
| solve || löst eine Gleichung oder ein Gleichungssystem nach einer oder mehrerer Variablen || solve([2*x+y=3,x-y=0],[x,y]) || [ [ x=1,y=1 ] ]&lt;br /&gt;
|-&lt;br /&gt;
| solvevalue || löst eine Gleichung oder ein Gleichungssystem nach einer Variablen und liefert genau die erste Lösung wenn sie numerisch berechenbar ist || solvevalue([ 2*x+y=3,x-y=0 ],[ x,y ],x)  || 1&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Stringfunktionen===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| dechex || Zahl in eine Ganzzahl wandeln und als Hexadezimal-String ausgeben || dexhex(12) || &amp;quot;0xC&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| chr || Bestimmt die Zeichen mit dem ASC-II-Code der Long-Parameter und setzt daraus einen String zusammen. || chr(0x65,105) || &amp;quot;ei&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| val || Bestimmt den ASC-II-Code des ersten Zeichens welches als String-Parameter übergeben wurde.|| val(&amp;quot;a&amp;quot;) || 97&lt;br /&gt;
|-&lt;br /&gt;
| strcat || Fügt mehrere Strings zusammen.|| strcat(&amp;quot;a&amp;quot;,&amp;quot;b&amp;quot;) || &amp;quot;ab&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===trigonometrische Funktionen===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| sin || Sinus || sin(%pi/2) || 1&lt;br /&gt;
|-&lt;br /&gt;
| cos || Cosinus || cos(%pi/2) || 0&lt;br /&gt;
|-&lt;br /&gt;
| tan || Tangens || tan(%pi/4) || 1&lt;br /&gt;
|-&lt;br /&gt;
| asin || Arcus-Sinus || asin(1) || %pi/2&lt;br /&gt;
|-&lt;br /&gt;
| arcsin || Arcus-Sinus || asin(1) || %pi/2&lt;br /&gt;
|-&lt;br /&gt;
| acos || Arcus-Cosinus || acos(1) || 0&lt;br /&gt;
|-&lt;br /&gt;
| arccos || Arcus-Cosinus || acos(1) || 0&lt;br /&gt;
|-&lt;br /&gt;
| atan || Arcus-Tangens || atan(1) || %pi/4&lt;br /&gt;
|-&lt;br /&gt;
| arctan || Arcus-Tangens || arctan(1) || %pi/4&lt;br /&gt;
|-&lt;br /&gt;
| atan2 || Arcus-Tangens atan2(x,y)=arctan(y/x) || atan2(-2,-2) || -%pi*3/4&lt;br /&gt;
|-&lt;br /&gt;
| arctan2 || Arcus-Tangens arctan2(x,y)=arctan(y/x) || arctan2(-2,-2) || -%pi*3/4&lt;br /&gt;
|-&lt;br /&gt;
| sinh || Sinus-Hyperbolicus || sinh(1) || 1.1752012&lt;br /&gt;
|-&lt;br /&gt;
| cosh || Cosinus-Hyperbolicus || cosh(1) || 1.5430806&lt;br /&gt;
|-&lt;br /&gt;
| tanh || Tangens-Hyperbolicus || tanh(1) || 0.7615941&lt;br /&gt;
|-&lt;br /&gt;
| coth || Cotangens-Hyperbolicus || coth(1) || 1.313035&lt;br /&gt;
|-&lt;br /&gt;
| asinh || Area-Sinus-Hyperbolicus || asinh(1.1752012) || 1&lt;br /&gt;
|-&lt;br /&gt;
| acosh || Area-Cosinus-Hyperbolicus || acosh(1.5430806) || 1&lt;br /&gt;
|-&lt;br /&gt;
| atanh || Area-Tangens-Hyperbolicus || atanh(0.7615941) || 1&lt;br /&gt;
|-&lt;br /&gt;
| acoth || Area-Cotangens-Hyperbolicus || acoth(1.313035) || 1&lt;br /&gt;
|-&lt;br /&gt;
| [[csin]] || Erzeugt aus einer komplexen Zahl (Effektivwert) und einer Frequenz einen Sinusfunktion in der Zeit || csin(U) || sqrt(2)*cabs(U)*sin(2*pi*f*t+carg(U))&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Exponentialfunktionen===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| pow || Potenzfunktion || pow(2,3) || 8&lt;br /&gt;
|-&lt;br /&gt;
| exp|| Exponentialfunktion || exp(1) || %e&lt;br /&gt;
|-&lt;br /&gt;
| log || natürlicher Logarythmus || log(%e) || 1&lt;br /&gt;
|-&lt;br /&gt;
| ln || natürlicher Logarythmus || ln(%e) || 1&lt;br /&gt;
|-&lt;br /&gt;
| log10 || Logarythmus zur Basis 10 || log10(100) || 2&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===komplexe Zahlen===&lt;br /&gt;
Die Funktionen zu komplexen Zahlen werden (anders als in Maxima) nur ausgewertet wenn das Ergebnis numerisch berechenbar ist, ansonsten bleibt die Funktion symbolisch erhalten.&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| abs || Liefert den Absolutbetrag einer komplexen Zahl || abs(3+4*%i) || 5&lt;br /&gt;
|-&lt;br /&gt;
| cabs || Liefert den Absolutbetrag einer komplexen Zahl || cabs(3+4*%i) || 5&lt;br /&gt;
|-&lt;br /&gt;
| carg || Liefert das Argument einer komplexen Zahl || carg(4*%e^(3*%i)) || 3&lt;br /&gt;
|-&lt;br /&gt;
| realpart || Liefert den Realteil einer komplexen Zahl || abs(3+4*%i) || 3&lt;br /&gt;
|-&lt;br /&gt;
| imagpart || Liefert den Imaginärteil einer komplexen Zahl || abs(3+4*%i) || 4&lt;br /&gt;
|-&lt;br /&gt;
| conjugate || Liefert die konjugiert komplexe Zahl einer komplexen Zahl || abs(3+4*%i) || 3-4*%i&lt;br /&gt;
|-&lt;br /&gt;
| rectform || wandelt die komplexe Zahl in eine Ansicht mit Real- und Imaginärteil || 3+4*%i || 3+4*%i&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===statistische Funktionen===&lt;br /&gt;
Die Funktionen funktionieren nur ohne Einheiten.&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| factorial || Liefert die Fakultät einer positiven ganzen Zahl || factorial(5) || 120&lt;br /&gt;
|-&lt;br /&gt;
| binomial || Liefert den Binomialkoeffizienten von zwei positiven ganzen Zahlen || binomial(5,2) || 10&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Mengen-Funktionen===&lt;br /&gt;
Mengen werden intern als Vektoren verarbeitet und sind deshalb auch direkt durch Vektoren ersetzbar. Auch alle Vektor-Funktionen sind somit auch auf Mengen anwendbar und umgekehrt.&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| setget || liefert ein Element einer Menge oder einer Matrix (Menge von Mengen) || setget([12,13,14],1) &amp;lt;br&amp;gt; setget(matrix([9,2],[3,4]),0,1) || 13 &amp;lt;br&amp;gt; 2 &lt;br /&gt;
|-&lt;br /&gt;
| setset || setzt ein Element einer Menge oder einer Matrix (Menge von Mengen) || setset([12,13,14],1,35) &amp;lt;br&amp;gt; setset(matrix([9,2],[3,4]),0,0,-9) || [12,35,14] &amp;lt;br&amp;gt; [[-9,2],[3,4]]&lt;br /&gt;
|-&lt;br /&gt;
| setinsert || fügt ein Element in eine Menge an eine gegebene Stelle ein || setinsert([12,13,14],1,25) || [12,25,13,14]&lt;br /&gt;
|-&lt;br /&gt;
| setremove || löscht ein Element einer Menge || setremove([12,13,14],1) || [12,14]&lt;br /&gt;
|-&lt;br /&gt;
| setmedian || Liefert den Median einer Menge || setmedian(4,3,1,5,6) || 4&lt;br /&gt;
|-&lt;br /&gt;
| setsort || Sortiert die Elemente einer Menge aufsteigend || setsort([3,-3,2,0,5,2]) || [-3,0,2,2,3,5]&lt;br /&gt;
|-&lt;br /&gt;
| setsortnd || Sortiert die Elemente einer Menge aufsteigend und entfernt alle mehrfach vorkommenden Elemente || setsortnd([31,-3,2,31,0,5,2]) || [-3,0,2,5,31]&lt;br /&gt;
|-&lt;br /&gt;
| setcount || Bestimmt die Anzahl wie oft ein Element in einer Menge vorkommt oder die Anzahl der Elemente der Menge || setcount([31,-3,2,31,0,5,2],31) &amp;lt;br&amp;gt; setcount([2,5,3,6]) || 2 &amp;lt;br&amp;gt; 4&lt;br /&gt;
|-&lt;br /&gt;
| setmodus || Liefert das Element einer Menge, welches am öftesten vorkommt oder die Elemente als Menge wenn mehrere Elemente gleich oft vorkommen || setmodus([3,-3,2,0,5,2]) || 2&lt;br /&gt;
|-&lt;br /&gt;
| setreverse || Dreht die Reihenfolge einer Menge um || setreverse([3,-3,2,0,5,2]) || [2,5,0,2,-3,3]&lt;br /&gt;
|-&lt;br /&gt;
| setnd || Löscht alle Duplikate aus der Menge || setnd([3,-3,2,0,5,2]) || [3,-3,2,0,5]&lt;br /&gt;
|-&lt;br /&gt;
| setshuffle || Mischt eine  Menge in eine zufällige Reihenfolge || setshuffle([3,-3,2,0,5,2]) || [2,0,5,-3,2,3]&lt;br /&gt;
|-&lt;br /&gt;
| setmittel || Bestimmt den Mittelwert einer Menge || setmittel([1,3,2,4]) || 2.5&lt;br /&gt;
|-&lt;br /&gt;
| setgeomittel || Bestimmt das geometrische Mittelwert einer Menge aus positiven reellen Zahlen || setgeomittel([10,20,30]) || 18.171206&lt;br /&gt;
|-&lt;br /&gt;
| setvarianz || Bestimmt die empirische Varianz einer Menge || setvarianz([3,1,2,5,4]) || ((3-3)^2+(1-3)^2+(2-3)^2+(5-3)^2+(4-3)^2)/5=2&lt;br /&gt;
|-&lt;br /&gt;
| setquadratmittel || Bestimmt den quadratischen Mittelwert einer Menge || setquadratmittel([10,20,30]) || 21.6025&lt;br /&gt;
|-&lt;br /&gt;
| setsum || Bestimmt die Summe aller Werte einer Menge || setsum([1,3,2,4]) || 10&lt;br /&gt;
|-&lt;br /&gt;
| setprod || Bestimmt das Produkt aller Werte einer Menge || setprod([1,3,2,4]) || 24&lt;br /&gt;
|-&lt;br /&gt;
| setunion || Fügt mehrere Mengen zu einer neuen Menge zusammen || setunion([1,3,2,4],[3,7]) || {1,3,2,4,3,7}&lt;br /&gt;
|-&lt;br /&gt;
| setunionnd || Fügt mehrere Mengen zu einer neuen Menge zusammen, sortiert diese und entfernt alle mehrfachen Elemente || setunionnd([1,3,2,4],[3,7]) || {1,2,3,4,7}&lt;br /&gt;
|-&lt;br /&gt;
| setcut || Bildet die Schnittmenge aus mehreren Mengen || setcut([1,3,2,4],[3,7]) || {3}&lt;br /&gt;
|-&lt;br /&gt;
| setcompare || vergleicht zwei Mengen miteinander, wobei die Reihenfolge egal ist  || setcompare([1,3,2,4],[3,7]) &amp;lt;br&amp;gt; setcompare([1,3,2],[1,2,3]) &amp;lt;br&amp;gt; setcompare([1,3,2],[1,3,2,3]) &amp;lt;br&amp;gt; setcompare([1,2,3],[1,2,3])  || false &amp;lt;br&amp;gt; true &amp;lt;br&amp;gt; false &amp;lt;br&amp;gt; true&lt;br /&gt;
|-&lt;br /&gt;
| setcomparend || vergleicht zwei Mengen miteinander, wobei die Reihenfolge egal ist und doppelte Werte als einfach behandelt werden. || setcomparend([1,3,2,4],[3,7]) &amp;lt;br&amp;gt; setcomparend([1,3,2],[1,2,3]) &amp;lt;br&amp;gt; setcomparend([1,3,2],[1,3,2,3]) &amp;lt;br&amp;gt; setcomparend([1,2,3],[1,2,3])  || false &amp;lt;br&amp;gt; true &amp;lt;br&amp;gt; true &amp;lt;br&amp;gt; true&lt;br /&gt;
|-&lt;br /&gt;
| setpartof || prüft ob die erste Menge eine Teilmenge der zweite Menge ist wobei die Reihenfolge egal ist aber mehrfache Werte berücksichtigt werden  || setpartof([1,4],[1,3,7]) &amp;lt;br&amp;gt; setpartof([1,3],[1,2,3]) &amp;lt;br&amp;gt; setpartof([1,3,3],[1,3,5,7]) &amp;lt;br&amp;gt; setpartof([1,4,4],[1,2,3,4])  || false &amp;lt;br&amp;gt; true &amp;lt;br&amp;gt; false &amp;lt;br&amp;gt; false&lt;br /&gt;
|-&lt;br /&gt;
| setpartofnd || prüft ob die erste Menge eine Teilmenge der zweite Menge ist wobei die Reihenfolge und mehrfache Werte egal sind  || setpartofnd([1,4],[1,3,7]) &amp;lt;br&amp;gt; setpartofnd([1,3],[1,2,3]) &amp;lt;br&amp;gt; setpartofnd([1,3,3],[1,3,5,7]) &amp;lt;br&amp;gt; setpartofnd([1,4,4],[1,2,3,4])  || false &amp;lt;br&amp;gt; true &amp;lt;br&amp;gt; true &amp;lt;br&amp;gt; true&lt;br /&gt;
|-&lt;br /&gt;
| setgetmin || Liefert den kleinsten Wert einer Menge || setgetmin([1,3,-2,4]) || -2&lt;br /&gt;
|-&lt;br /&gt;
| setgetmax || Liefert den größten Wert einer Menge || setgetmax([1,3,-2,4]) || 4&lt;br /&gt;
|-&lt;br /&gt;
| setremovefirst || Entfernt den ersten Wert einer Menge || setremovefirst([1,3,-2,4]) || {3,-2,4}&lt;br /&gt;
|-&lt;br /&gt;
| setremovelast || Entfernt den letzten Wert einer Menge || setremovelast([1,3,-2,4]) || {1,3,-2}&lt;br /&gt;
|-&lt;br /&gt;
| setgetfirst || Liefert den ersten Wert einer Menge || setgetfirst([1,3,-2,4]) || 1&lt;br /&gt;
|-&lt;br /&gt;
| setgetlast || Liefert den letzten Wert einer Menge || setgetlast([1,3,-2,4]) || 4&lt;br /&gt;
|-&lt;br /&gt;
| setsub || setsub(M,x,y) Liefert eine Teilmenge von M der Elemente vom index x bis zum Index y || setsub([1,3,-2,4],1,2) || {3,-2}&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Typ-Funktionen===&lt;br /&gt;
Werden nur dann ausgewertet wenn der Parameter ein numerischer Wert oder eine Menge ist.&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| isset || Prüft ob es sich um eine Menge handelt. || isset([12,13,14]) || true &lt;br /&gt;
|-&lt;br /&gt;
| issetnumeric || Prüft ob es sich um eine Menge aus reellen Zahlen handelt. || issetnumeric([12,13.4,14]) || true &lt;br /&gt;
|-&lt;br /&gt;
| issetlong || Prüft ob es sich um eine Menge aus ganzen Zahlen handelt. || issetlong([12,13,14]) || true &lt;br /&gt;
|-&lt;br /&gt;
| islong || Prüft ob es sich um eine ganze Zahl handelt. || islong(12) || true &lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Algebra===&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;Hinweis:&#039;&#039; Die Indizes eines Vektors oder einer Matrix werden in Letto ausgehend von 0 weg gezählt.  &lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| matrix || erzeugt aus mehreren gleich langen Vektoren eine Matrix || matrix([1,2],[3,4]) || [[1,2],[3,4]]&lt;br /&gt;
|-&lt;br /&gt;
| inv || invertiert eine quadratische Matrix oder bildet 1/x || inv(matrix([1,2],[3,4])) || [[-2,1],[3/2,-1/2]]&lt;br /&gt;
|-&lt;br /&gt;
| vget || liefert ein Element eines Vektors oder einer Matrix || vget([12,13,14],1) &amp;lt;br&amp;gt; vget(matrix([9,2],[3,4]),0,1) || 13 &amp;lt;br&amp;gt; 2 &lt;br /&gt;
|-&lt;br /&gt;
| vset || setzt ein Element eines Vektors oder einer Matrix || vset([12,13,14],1,35) &amp;lt;br&amp;gt; vset(matrix([9,2],[3,4]),0,0,-9) || [12,35,14] &amp;lt;br&amp;gt; [[-9,2],[3,4]]&lt;br /&gt;
|-&lt;br /&gt;
| vinsert || fügt ein Element in einen Vektor an eine gegebene Stelle ein || vinsert([12,13,14],1,25) || [12,25,13,14]&lt;br /&gt;
|-&lt;br /&gt;
| vremove || löscht ein Element eines Vektors || vremove([12,13,14],1) || [12,14]&lt;br /&gt;
|-&lt;br /&gt;
| vabs || Berechnet den Betrag eines Vektors || vabs([3,4]) || 5&lt;br /&gt;
|-&lt;br /&gt;
| vin || Berechnet das innere Produkt von 2 Vektoren || vin([1,2,3],[4,5,6]) || 32&lt;br /&gt;
|-&lt;br /&gt;
| vex || Berechnet das ex-Produkt von 2 Vektoren im 3-dimensionalen Raum || vex([1,2,3],[4,5,6]) || [-3,6,-3]&lt;br /&gt;
|-&lt;br /&gt;
| mprod || Bildet das Matrixprodukt aus zwei Matrizen || mprod([[1,2],[3,4]],[[5,6],[7,8]]) || [[19,22],[43,50]]&lt;br /&gt;
|-&lt;br /&gt;
| mtrans || Bildet die transponierte Matrix || mtrans([[1,2],[3,4]]) || [[1,3],[2,4]]&lt;br /&gt;
|-&lt;br /&gt;
| minv || Bildet die inverse Matrix || minv([[1,2],[3,4]]) || [[-2,1],[3/2,-1/2]]&lt;br /&gt;
|-&lt;br /&gt;
| mdet || Bildet die Determinante einer quadratischen Matrix || mdet([[1,2],[3,4]]) || -2&lt;br /&gt;
|-&lt;br /&gt;
| vindex || vindex(v,x) liefert den Index des Elementes eines Vektors, welcher am nächsten bei x liegt || vindex([10,30,70],40) || 1 &lt;br /&gt;
|-&lt;br /&gt;
| vindexup || vindexup(v,x) liefert den Index des Elementes eines Vektors, welcher größer oder gleich x ist || vindexup([10,30,70],40) || 2 &lt;br /&gt;
|-&lt;br /&gt;
| vindexdown || vindexdown(v,x) liefert den Index des Elementes eines Vektors, welcher kleiner oder gleich x ist || vindexdown([10,30,70],60) || 1&lt;br /&gt;
|-&lt;br /&gt;
| verweis || verweis(M,x,n) liefert den Wert der n-ten Spalte (ohne Angabe von n die 2.Spalte) einer Matrix M wo x dem Wert in der ersten Spalte am nächsten liegt || verweis([[10,33],[20,77],[30,99]],21) || 77&lt;br /&gt;
|-&lt;br /&gt;
| verweisup || verweisup(M,x,n) liefert den Wert der n-ten Spalte (ohne Angabe von n die 2.Spalte) einer Matrix M wo x dem Wert in der ersten Spalte am nächsten liegt || verweisup([[10,33],[20,77],[30,99]],21) || 99&lt;br /&gt;
|-&lt;br /&gt;
| verweisdown || verweisdown(M,x,n) liefert den Wert der n-ten Spalte (ohne Angabe von n die 2.Spalte) einer Matrix M wo x dem Wert in der ersten Spalte am nächsten liegt || verweisdown([[10,33],[20,77],[30,99]],27,1) || 77&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Variable===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| kill || löscht Variable aus dem Variablenspeicher || kill(x,y) &amp;lt;br&amp;gt; kill(allbut(y)) &amp;lt;br&amp;gt; kill(all) || löscht die Variablen x und y &amp;lt;br&amp;gt; löscht alle Variablen mit Ausnahme von y &amp;lt;br&amp;gt; löscht alle Variable&lt;br /&gt;
|-&lt;br /&gt;
| allbut || Liefert eine Liste aller Variablen des Parsers als Menge(Vektor) mit Ausnahme der als Parameter angegebenen Variablen || allbut(x,y) || [a,b,c]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Auswertung und Programmierung===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| ev || Auswertung eines Ausdruckes, als Parameter können Gleichungen angegeben werden, welche dann in den Ausdruck eingesetzt werden || ev(x*y,y=4) || x*4&lt;br /&gt;
|-&lt;br /&gt;
| evruntime || Auswertung eines Ausdruckes, als Parameter können Gleichungen angegeben werden, welche dann in den Ausdruck eingesetzt werden. Das &#039;&#039;&#039;Einsetzen erfolgt erst bei der Ergebnisberechnung&#039;&#039;&#039;! || evruntime(x*y,y=4) || x*4&lt;br /&gt;
|-&lt;br /&gt;
| nv || Auswertung eines Ausdruckes, als Parameter können Gleichungen angegeben werden, welche dann in den Ausdruck eingesetzt werden. Im Gegensatz zu ev werden bestehende Variable nur in den Gleichungen, aber nicht im Ausdruck selbst eingesetzt! || ev(x*y,y=4) || x*4&lt;br /&gt;
|-&lt;br /&gt;
| [[if]] || Bedingungsfunktion if(bedingung,wahrwert,falschwert) || if(4&amp;lt;6,10,12) || 10&lt;br /&gt;
|-&lt;br /&gt;
| [[if|wenn]] || Bedingungsfunktion wenn(bedingung,wahrwert,falschwert). Im Prinzip identisch wie if, jedoch kann if mit Maxima nicht verwendet werden. || wenn(4&amp;lt;6,10,12) || 10&lt;br /&gt;
|-&lt;br /&gt;
| plugin || Ruft die Berechnnugsmethode des Plugins, welches als erster Stringparameter angegeben werden muss auf und übergibt die weiteren Parameter an die Berechnungsmethode des Plugins.  || plugin(&amp;quot;plugin1&amp;quot;,3) || führt die Berechnung des Plugins mit dem Namen &amp;quot;plugin1&amp;quot; mit dem Parameter 3 aus. &lt;br /&gt;
|-&lt;br /&gt;
| symbolic || Bei allen Variablen innerhalb von symbolic werden nur nicht-numerische Werte eingesetzt! Wird vor allem im Angebtext bei {= } verwendet || symbolic(x^2+2) || x^2+2&lt;br /&gt;
|-&lt;br /&gt;
| runtime || Bei dieser Funktion wird &#039;&#039;&#039;erst bei der Berechnung der Frageantwort, nach dem Einsetzen der Datensätze&#039;&#039;&#039; das &#039;&#039;&#039;komplette Maxima-Feld&#039;&#039;&#039; mit dem internen &#039;&#039;&#039;Parser&#039;&#039;&#039; durchgerechnet und danach der Parameter-Ausdruck berechnet. Dadurch kann man bei komplizierten Berechnungen eine sehr aufwendige symbolische Berechnung verhindern! || runtime(U) || &lt;br /&gt;
|-&lt;br /&gt;
| dataset || liefert alle Datensätze einer Datensatz-Definition in einem Vektor || dataset(x) || &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Optimierung der Ausdrücke===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| opt   || Ausdruck wird vollständig optimiert, die Funktion wird ausgewertet und ist danach nicht mehr vorhanden || opt(x+x) || 2*x&lt;br /&gt;
|-&lt;br /&gt;
| ratsimp || Ausdruck wird vollständig optimiert, die Funktion wird ausgewertet und ist danach nicht mehr vorhanden (wie opt) || ratsimp(x+x) || 2*x&lt;br /&gt;
|-&lt;br /&gt;
| noopt || Ausdruck wird nicht optimiert, bleibt also so erhalten wie angegeben. Die Funktion an sich geht aber verloren. || noopt(2+3) || 2+3&lt;br /&gt;
|-&lt;br /&gt;
| lopt || Im Maximafeld bleibt die Funktion ohne Funktion erhalten, im Ergebnis {=  wird die Funktion entfernt und in der Lösung wird nach dem Einsetzen der Werte der Ausdruck vollständig optimiert. || lopt(x+3)  || lopt(x+3)  &lt;br /&gt;
|-&lt;br /&gt;
| lnoopt || Im Maximafeld bleibt die Funktion ohne Funktion erhalten, im Ergebnis {=  wird die Funktion entfernt und in der Lösung wird nach dem Einsetzen der Werte der Ausdruck nicht mehr optimiert. || lnoopt(x+3+2)  || lnoopt(x+5) &lt;br /&gt;
|-&lt;br /&gt;
| loptnumeric || Im Maximafeld bleibt die Funktion ohne Funktion erhalten, im Ergebnis {=  wird die Funktion entfernt und in der Lösung wird nach dem Einsetzen der Werte der Ausdruck nur numerisch optimiert. || loptnumeric(x+y)  || loptnumeric(x+y)&lt;br /&gt;
|-&lt;br /&gt;
| aopt || Bei Maxima und Lösung geht die Funktion verloren, nur innerhalb von noopt bleibt sie erhalten. Bei der Anzeige führt sie zur Optimierung das Ausdruckes nach Einsetzen der Datensätze. || aopt(x)  || x&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Anzeige und Lösungsberechnung===&lt;br /&gt;
Diese Funktionen haben entweder einen oder zwei Parameter. Der erste Parameter stellt die darzustellende Funktion dar, der zweite Parameter, welcher eine Ganzzahl sein muss, gibt an, wie die Darstellung erfolgen soll. Wird der 2.Parameter weggelassen, so wird er als 0 interpretiert.&lt;br /&gt;
* 0 Bei Berechnungen hat die Funktion keine Wirkung, bleibt aber als Funktion erhalten. Bei Lösung und Anzeige wird die Funktion ausgewertet&lt;br /&gt;
* 1 Wirkt nur bei Lösung, bei Berechnungen bleibt die Funktion erhalten&lt;br /&gt;
* 2 Wirkt nur bei Anzeige, bei Berechnungen bleibt die Funktion erhalten&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| viewpow || Gibt alle Wurzeln als Potenzen aus, und stellt alle Potenzen im Nenner als negativen Exponenten im Zähler dar || viewpow(sqrt(x)) || x^(1/2)&lt;br /&gt;
|-&lt;br /&gt;
| viewsqrt || Gibt Potenzen welche als Wurzel darstellbar sind auch als als Wurzeln mit der Funktion sqrt oder root aus || viewsqrt(x^(1/2)) || sqrt(x)&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Spezialfunktionen Technik===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| color || Widerstandsfarbcode berechnen.&amp;lt;br&amp;gt;1. Parameter muss ein Double sein&amp;lt;br&amp;gt; 2.Parameter sind die Anzahl der Farbringe&amp;lt;br&amp;gt; 3.Parameter ist der Modus (0..2-St,1..3St,2..Deutsch,3..2StEng,4..3StEng,5..Englisch || color(120,3,2) || braun,rot,braun&lt;br /&gt;
|-&lt;br /&gt;
| parsecolor || Wandelt einen String mit einem Widerstandsfarbcode in einen Double-Wert || parsecolor(&amp;quot;br-rt-br&amp;quot;) || 120&lt;br /&gt;
|-&lt;br /&gt;
| ip || Wandelt eine Long-Zahl in einen String als IP-Adresse um, oder 4 Byte-Zahlen in eine Long Zahl als IP-32-bit-Adresse || ip(1534536453)&amp;lt;br&amp;gt;ip(10,20,30,40) || &amp;quot;91.119.43.5&amp;quot;&amp;lt;br&amp;gt;169090600&lt;br /&gt;
|-&lt;br /&gt;
| parseip || Wandelt einen String mit einer IP-Adresse in einen Long-Wert || parseip(&amp;quot;91.119.43.5&amp;quot;) || 1534536453&lt;br /&gt;
|-&lt;br /&gt;
| e12 || rundet einen Zahlenwert auf den nächstliegenden Wert der [[Normreihe]] E12.&amp;lt;br&amp;gt;Die Rundung erfolgt geometrisch d.h. der Quotient zwischen Normwert und zu rundendem Wert wird minimiert. || e12(700Ohm) || 680Ohm&lt;br /&gt;
|-&lt;br /&gt;
| e12up || rundet einen Zahlenwert auf den nächstgrößerern Wert der [[Normreihe]] E12 || e12(670Ohm) || 680Ohm&lt;br /&gt;
|-&lt;br /&gt;
| e12down || rundet einen Zahlenwert auf den nächstkleineren Wert der [[Normreihe]] E12 || e12(700Ohm) || 680Ohm&lt;br /&gt;
|-&lt;br /&gt;
| ise12 || prüft ob der als Parameter übergebenen Wert ein Wert der [[Normreihe]] E12 ist.|| ise12(680Ohm) || true&lt;br /&gt;
|-&lt;br /&gt;
| norm || rundet einen Zahlenwert auf den nächstliegenden Wert einer gegebenen Wertereihe oder [[Normreihe]].&amp;lt;br&amp;gt;Die Rundung erfolgt geometrisch wenn es sich um eine logarithmisch aufgeteilte Normreihe handelt, oder sonst linear. || norm(700Ohm,E12) || 680Ohm&lt;br /&gt;
|-&lt;br /&gt;
| normup || rundet einen Zahlenwert auf den nächstgrößerern Wert einer gegebenen Wertereihe oder [[Normreihe]]. || normup(730Ohm,[1,3,5,8]) || 800Ohm&lt;br /&gt;
|-&lt;br /&gt;
| normdown || rundet einen Zahlenwert auf den nächstkleineren Wert einer gegebenen Wertereihe oder [[Normreihe]]. || normdown(700Ohm,E12) || 680Ohm&lt;br /&gt;
|-&lt;br /&gt;
| isnorm || prüft ob der als Parameter übergebenen Wert ein Wert einer gegebenen Wertereihe oder [[Normreihe]] ist. || isnorm(680Ohm,E12) || true&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=Ergebnisvorschau=&lt;br /&gt;
Aufruf dieses Dialoges über den [[Datei:ClipCapIt-180904-181443.PNG|25px]]-Button aus dem [[Toolbar]].&lt;br /&gt;
&lt;br /&gt;
Die Berechnungen aus dem Maxima-Feld bei der [[Beispiele Bearbeiten|Fragendefinition]] können auch über den [[Datei:ClipCapIt-180904-182120.PNG|25px]]-Button durchgeführt werden. Hier wird die Berechnung durchgeführt und das Lösungsfeld ausgefüllt, aber der Rechengang wird nicht angezeigt. &lt;br /&gt;
:[[Datei:ClipCapIt-180904-181415.PNG|400px]]&lt;br /&gt;
&lt;br /&gt;
Beim Fehlersuchen oder bei komplexen Berechnungen kann es aber hilfreich sein, den ganzen Maxima-Lösungsweg zu sehen, dies ist über den [[Datei:ClipCapIt-180904-181443.PNG|25px]]-Button möchlich.&lt;br /&gt;
&lt;br /&gt;
[[Kategorie:Berechnung]]&lt;/div&gt;</summary>
		<author><name>Ckral</name></author>
	</entry>
	<entry>
		<id>https://wiki.letto.at/wiki/index.php?title=Katalog&amp;diff=2078</id>
		<title>Katalog</title>
		<link rel="alternate" type="text/html" href="https://wiki.letto.at/wiki/index.php?title=Katalog&amp;diff=2078"/>
		<updated>2020-01-24T07:40:32Z</updated>

		<summary type="html">&lt;p&gt;Ckral: Korrektur, sturkturierte Darstellung gemäß https://project.letto.at/projects/letto/work_packages/358&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;:[[Datei:ClipCapIt-180826-180658.PNG|thumb|600px|Ansicht eines Katalogs (Schülernamen sind geschwärzt)]]&lt;br /&gt;
Unter Katalog versteht man bei Letto eine Sammlung von allen Leistungen der Schüler eines Gegenstandes in einer Klasse (Namen wurden in nebenstehender Abbildung unkenntlich gemacht).&lt;br /&gt;
&lt;br /&gt;
Wenn Sie zB. in einer Klasse 3 Fächer unterrichten, dann finden sie im [[Klassenzimmer]] drei Kataloge für jeden Gegenstand.&lt;br /&gt;
Je nach Lehrplan und Schultyp (Klassen jahrweise geführt, Klassen semestriert laut NOST, ...) sind die Kataloge über das ganze Schuljahr oder nur über ein Semeseter geführt.&lt;br /&gt;
&lt;br /&gt;
Einstellungen zur Gewichtung der Beurteilungen, zum Freischalten der Eingaben für Schüler und zur Definition der Darstellung finden Sie unter [[Beurteilungskonfiguration]].&lt;br /&gt;
&lt;br /&gt;
==Übersicht==&lt;br /&gt;
In der Titelzeile finden Sie Klasse, Schuljahr und Gegenstandbezeichnung sowie eventuell die Einschränkung auf Sommer- oder Wintersemester. Folgende Icons stehen in der Titelzeile für weitere Aktionen bereit:&lt;br /&gt;
* [[Datei:ClipCapIt-180826-181150.PNG|20px]]: [[Lehrerübergreifender Katalog|Lehrerübergreifende Anzeige von allen Leistungen im ganzen Schuljahr]]&lt;br /&gt;
* [[Datei:ClipCapIt-180826-181229.PNG|20px]]: Anzeige des Wintersemesters&lt;br /&gt;
* [[Datei:ClipCapIt-180826-181438.PNG|20px]]: Anzeige des Sommersemester&lt;br /&gt;
* [[Datei:ClipCapIt-180826-181307.PNG|20px]]: Export des Katalogs als Excel-File&lt;br /&gt;
* [[Datei:ClipCapIt-180826-181352.PNG|20px]]: Druck des Katogs in ein PDF-Dokument&lt;br /&gt;
&lt;br /&gt;
In der zweiten Zeile finden Sie folgenden Buttons:&lt;br /&gt;
* &#039;&#039;&#039;Neue Klassenweise Beurteilung&#039;&#039;&#039;: Fügt eine neue [[#Klassenweise Beurteilungen|Klassenweise Beurteilung]] ein&lt;br /&gt;
* &#039;&#039;&#039;Leistungsübersicht&#039;&#039;&#039;: Anzeige einer Leistungsübersicht für alle Schüler der Klassen inklusive &#039;&#039;&#039;kompetenzorientierter Auswertung&#039;&#039;&#039;.&lt;br /&gt;
* [[Datei:ClipCapIt-180826-181736.PNG|35px]]: Anzeige des angewendeten Beurteilungsschemas und der dort definierten Einstellungen&lt;br /&gt;
* [[Datei:ClipCapIt-180826-181832.PNG|35px]]: Umschalten zwischen der eigenen Ansicht und der Summenansicht über alle Lehrer, die in einer Klasse den selben Gegenstand unterrichten (zB. Labor mit 4 Lehrern in der gleichen Klasse).&lt;br /&gt;
* [[Datei:ClipCapIt-180826-182009.PNG|35px]]: Definition, welche Spalten angezeigt werden sollen und was eingebbar sein soll.&lt;br /&gt;
&lt;br /&gt;
Darunter finden Sie eine Tabelle mit der Dokumentation von Beurteilungen von allen Schülern dieser Klasse.&lt;br /&gt;
:[[Datei:ClipCapIt-180826-182207.PNG|500px]]&lt;br /&gt;
&lt;br /&gt;
Folgende Spalten sind verfügbar:&lt;br /&gt;
* Name: Name des Schülers&lt;br /&gt;
* Beurteilungen: Anzeige von allen [[#Individualbeurteilungen|Individualbeurteilungen]], die in dieser Klasse verwendet wurden. Die Spaltenanzahl verändert sich dynamisch, angepasst an die Anzahl pro Schüler.&lt;br /&gt;
Spalten für alle Arten von [[Online-Tests]] wie Tests, Schularbeiten, Stundenwiederholungen, Rechenübungen oder Hausübungen. Jede Test-Art wird in einer eigenen Bereich angezeigt und kann auch pro Testart über die [[#Konfiguration der Anzeige|Anzeige-Einstellungen]] wieder ausgeblendet werden.&lt;br /&gt;
* Spalten zur Noteneingabe mit einer Teilspalte für Mahnungen und für die vergebene Note im Semester oder Schuljahr. Auch die Notenspalten sind über die [[#Konfiguration der Anzeige|Anzeige-Einstellungen]] einstellbar.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Gewichtung&#039;&#039;&#039;: Alle [[Online-Tests]] und alle [[#Klassenweise Beurteilungen|Klassenweisen Beurteilungen]] haben standardmäßig eine Gewichtung von 1, die jedoch im Bedarfsfall geändert werden kann. Damit können zB. unterschiedlich lange Projektarbeiten angepasst gewichten oder Vorbereitungs-Tests für eine Schularbeit ganz von der Beurteilung ausklammern (Gewichtung = 0).&lt;br /&gt;
&lt;br /&gt;
Die ganze Tabelle ist bei vielen Eingaben auch vertikal verschiebbar (scrollbar)!&lt;br /&gt;
&lt;br /&gt;
==Konfiguration der Anzeige==&lt;br /&gt;
:[[Datei:ClipCapIt-181209-215749.PNG|thumb|600px|Dialog zur Konfiguration der Anzeige]]&lt;br /&gt;
&lt;br /&gt;
Mit dem [[Datei:ClipCapIt-180826-182009.PNG|35px]]-Button öffnen Sie einen Dialog zur Konfiguration der Anzeige. &lt;br /&gt;
In der ersten Zeile sind alle Arten von [[Online-Tests]] angeführt, die ein- oder ausgeblendet werden können.&lt;br /&gt;
Die Checkboxen der zweiten Zeile haben folgende Bedeutung:&lt;br /&gt;
* Mahnungen: Im Katalog wird pro Semester eine Spalte mit Checkboxen für Mahnungen eingeblendet.&lt;br /&gt;
* Noten editierbar: Ist die Checkbox ausgewählt, dann können direkt im Katalog die Noten eingetragen werden. Bei negativen Noten wird automatisch eind Dialog zur Auswahl von negativen Lehrinhalten geöffnet.&lt;br /&gt;
* Fotos: Im Katalog werden die Schülerfotos eingeblendet, wenn die [[Datenimport#Hochladen_von_Schülerfotos|Fotos hochgeladen]] wurden.&lt;br /&gt;
* Prozentanzeige: Im Katalog werden für die meisten Beurteilungen keine Symbole, sondern Prozentwerte angezeigt. Welche Beurteilungsformen davon betroffen sind, wird in der [[Beurteilungskonfiguration]] festgelegt.&lt;br /&gt;
&lt;br /&gt;
Mit dem [[Datei:ClipCapIt-180826-190507.PNG|35px]]-Button werden die Darstellungs-Optionen für all ihre Kataloge gespeichert. Mit der ESC-Taste kann der Dialog auch geschlossen werden.&lt;br /&gt;
&lt;br /&gt;
==Individualbeurteilungen==&lt;br /&gt;
Individualbeurteiungen werden verwendet, wenn nur für einzelne Schüler eine Aufzeichnung geführt werden soll. Beispiele sind einzelne Mitarbeitsaufzeichnungen, Prüfungen etc., die nicht aller Schüler der Klasse betreffen.&lt;br /&gt;
&lt;br /&gt;
===Hinzufügen einer neuen Individualbeurteilung===&lt;br /&gt;
:[[Datei:ClipCapIt-180826-212503.PNG|thumb|600px]]&lt;br /&gt;
Zur Eingabe einer neuen Note für eine Individualbeurteilung klicken Sie bitte auf das [[Datei:ClipCapIt-180830-184236.PNG|20px]]-Symbol links neben dem Schülernamen. Damit öffnet Sie die Eingabemaske für die Beurteilung.&lt;br /&gt;
&lt;br /&gt;
====Noteneingabe====&lt;br /&gt;
Im linken Bereich finden Sie alle Bedienelemente zur Beurteilung einer Schülerleistung:&lt;br /&gt;
&lt;br /&gt;
Die Buttons in der ersten Zeile stellen die möglichen Beurteilungsarten lt. [[Beurteilungskonfiguration]] dar. Wählen Sie davon eine Beurteilungsart aus. Je nach gewählter Beurteilungsart werden die möglichen Symbole für die Beurteilung eingeblendet.&lt;br /&gt;
&lt;br /&gt;
Wählen Sie das gewünschte Beurteilungssymbol aus. Damit wird auch automtisch ein Prozentwert lt. Beurteilungskonfiguration definiert.&lt;br /&gt;
&lt;br /&gt;
Bei dafür vorgesehenen Beurteilungsarten können Sie auch Prozentwerte für die Leistung eingeben.&lt;br /&gt;
&lt;br /&gt;
Im Textfeld Fragetext können Sie auch die Aufgabenstellung dokumentieren.&lt;br /&gt;
&lt;br /&gt;
====Kompetenzen/Deskriptoren====&lt;br /&gt;
Auf der rechten Seite der Eingabe finden Sie die Themen, die im aktuellen Semester/Schuljahr zu unterrichten sind. Details unter [[Kompetenzen]].&lt;br /&gt;
&lt;br /&gt;
Wählen Sie für die Individualbeurteilung ein Thema und die Tiefe (Grundlagen, Erweiterungswissen) der Fragestellung aus.&lt;br /&gt;
&lt;br /&gt;
Mit &#039;&#039;&#039;Speichern&#039;&#039;&#039; wird die Beurteilung abgeschlossen.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Abbrechen&#039;&#039;&#039; bricht die Beurteilung ab und schließt das Eingabeformular.&lt;br /&gt;
&lt;br /&gt;
==Klassenweise Beurteilungen==&lt;br /&gt;
Im Gegensatz zu Individualbeurteilungen ist bei Klassenweisen Beurteilungen die Leistung von allen Schülern der Klasse zu erbringen. Beispiele für Klassenweise Beurteilungen sind Aufzeichnungen über Hausübungen, Tests, Laborübungen, Projektarbeiten etc.&lt;br /&gt;
&lt;br /&gt;
Jede Klassenweise Beurteilung wird im Katalog als eigene Spalte geführt, um die Übersichtlichkeit zu erhöhen. In der [[Beurteilungskonfiguration]] wird festgelegt, wie die Spaltenüberschrift dargestellt wird. Optionen sind ein o-Symbol, die ersten Zeichen des Namens oder die vollständige Bezeichnung. Das Kreis-Symbol wird verwendet, um die Tabelle übersichtlich zu halten. Tooltips, die den Namen der Spalte und die Beurteilungsart anzeigen, unterstützen Sie, beim Noteneintragen die richtigen Spalten zu finden.&lt;br /&gt;
:[[Datei:ClipCapIt-180826-221558.PNG|200px]]&lt;br /&gt;
&lt;br /&gt;
Alle Noten, die zu einer Klassenweisen Beurteilung gehören, haben eine gleiche Bezeichnung, gleiche Aufgabenstellung, gleiche Beurteilungsart und gleiche Kompetenzen zugewiesen.&lt;br /&gt;
&lt;br /&gt;
:[[Datei:ClipCapIt-190211-213733.PNG|thumb|600px|Neue Klassenweise Beurteiung anlegen]]&lt;br /&gt;
===Hinzufügen einer klassenweisen Beurteilung===&lt;br /&gt;
&lt;br /&gt;
Nach dem Drücken des Buttons &#039;&#039;&#039;Neue Klassenweise Beurteilung&#039;&#039;&#039; wird ein Dialog zur Definition einer neuen klassenweisen Beurteilung geöffnet.&lt;br /&gt;
&lt;br /&gt;
Die &#039;&#039;&#039;Bezeichnung&#039;&#039;&#039; legt die Namen der Klassenweisen Beurteilung fest. Dieser Namen wird dann in allen Tooltips bei der Eingabe angezeigt.&lt;br /&gt;
&lt;br /&gt;
Das &#039;&#039;&#039;Datum&#039;&#039;&#039; legt das Startdatum dieser Beurteilung fest. Nach diesem Datum werden im Katalog die Spalten der Klassenweisen Beurteilungen sortiert!&lt;br /&gt;
&lt;br /&gt;
Mit der Checkbox &#039;&#039;&#039;Datum anzeigen&#039;&#039;&#039; wird ausgewählt, ob bei der Beurteilungseingabe zu einer klassenweisen Beurteilung auch das Beurteilungsdatum eingeblendet und damit änderbar ist. Damit kann vor allem eine Beurteilung in ein anderes Semester verschoben werden. Beurteilungen, deren Beurteilungsdatum nicht im aktuellen Semester liegen, werden bei semestrierten Klassen ausgegraut dargestellt und werden nicht für die Prozentberechnung herangezogen.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Noten importieren:&#039;&#039;&#039; ist ein Zusatzfeature, mit dem Noten von externen Quellen (ExcelSheets,...) importiert werden können: Die einzelnen Noten können durch Leerzeichen, Beistrich oder Strichpunkt getrennt sein. Die Noten werden den Schülern in alphabetischer Reihenfolge aufsteigend zugeordnet.&lt;br /&gt;
&lt;br /&gt;
Die &#039;&#039;&#039;Aufgabenstellung&#039;&#039;&#039; kann eine optionale Beschreibung der Aufgabenstellung enthalten.&lt;br /&gt;
&lt;br /&gt;
Die Buttons in der folgenden Zeile stellen die möglichen Beurteilungsarten lt. [[Beurteilungskonfiguration]] dar. Wählen Sie davon eine Beurteilungsart aus. Je nach gewählter Beurteilungsart werden bei der späteren Noteneingabe die möglichen Symbole, Prozenteingaben oder auch Teilnoten festgelegt.&lt;br /&gt;
&lt;br /&gt;
Im Bereich Kompetenzen / Deskriptoren können Sie die entsprechenden Lehrinhalte und das Level der Aufgabenstellung festlegen.&lt;br /&gt;
&lt;br /&gt;
Mit Speichern wird die Definition der Klassenweisen Beurteilung abgeschlossen. Abbruch beendet den Dialog, ohne die Eingaben zu speichern.&lt;br /&gt;
&lt;br /&gt;
===Eingeben von Noten zu einer Klassenweise Beurteilung===&lt;br /&gt;
Navigieren Sie mit der Maus in die entsprechende Zeile und Spalte im Katalog. Tooltips, die den Namen der Spalte und die Beurteilungsart anzeigen, unterstützen Sie, die richtigen Spalten zu finden.&lt;br /&gt;
:[[Datei:ClipCapIt-180826-221558.PNG|200px]]&lt;br /&gt;
An der gewünschte Postition klicken Sie die Stelle an und es wird ein Dialog zur Noteneingabe angezeigt. Dieser Dialog ist abhängig von der definierten Beurteilungsart und kann sehr unterschiedlich wirken.&lt;br /&gt;
&lt;br /&gt;
:[[Datei:ClipCapIt-180826-223739.PNG|200px]] &lt;br /&gt;
Dialog, der bei der Eingabe einer Mitarbeitsnote verwendet wird&lt;br /&gt;
:[[Datei:ClipCapIt-180826-223947.PNG|200px]]&lt;br /&gt;
Noteneingabe, die sich aus mehreren Teilnoten zB. bei einer Laborübung zusammensetzt. Nächer Informationen unter [[Beurteilungskonfiguration]].&lt;br /&gt;
Bei mehreren Teilnoten wird durch die definierte Gewichtung (ist neben der Beichnung der Teilnoten in Klammern gesetzt) automatisch die Gesamtnote berechnet, die jedoch noch durch den Lehrer überschrieben werden kann.&lt;br /&gt;
&lt;br /&gt;
===Zusammengesetzte Beurteilungen===&lt;br /&gt;
Bei Klassenweisen Beurteilungen kann sich eine Note aus mehreren Teilnoten zusammensetzen. Die verwendeten Teilergebnisse und deren Gewichtung wird in der [[Beurteilungskonfiguration#Weitere Beurteilungen|Beurteilungskonfiguration]] definiert.&lt;br /&gt;
&lt;br /&gt;
Beispiele für solche zusammengesetzten Noten sind Laborübungen (Prüfung, Mitarbeit, Protokoll) oder Projekte (Mitarbeit, Dokumentation). Es kann auch festgelegt werden, welche Teile der Note zwingend vorgeschrieben sind, um alle Anforderungen zu erfüllen. Beispiel hierfür ist eine Laborübung, wo ein Laborprotokoll zwingend erforderlich ist. Die Labornote erscheint im Katalog in roter Farbe wenn die Labornote negativ ist und dies ist unter folgenden Umständen der Fall:&lt;br /&gt;
* die Note für das Protokoll ist (noch) nicht eingetragen&lt;br /&gt;
* die Note für das Protokoll ist negativ&lt;br /&gt;
* die Gesamtnote, die aus dem Mittelwert der Teilnoten gebildet wird, ist negativ&lt;br /&gt;
&lt;br /&gt;
Soll ein Schüler von so einer erzwungen Noteneingabe befreit werden, kann als Note ein * eingegeben werden. Dies führt dazu, dass zB. kein Protokoll erstellt werden muss und die Note erscheint im Katalog in blauer Farbe.&lt;br /&gt;
&lt;br /&gt;
==Ergebnisse von [[Online-Tests]]==&lt;br /&gt;
Nach dem Starten des Testversuchs eines Schülers sind die Ergebnisse (Noten) bereits im Katalog sichtbar. Wenn &lt;br /&gt;
&lt;br /&gt;
==Mahnungen und Noteneingabe==&lt;br /&gt;
Wenn bei der [[#Konfiguration der Anzeige|Konfiguration der Anzeige]] die Checkboxen für [[Datei:ClipCapIt-180831-113933.PNG|200px]] gesetzt wurden, dann können Sie Mahnungen für Schüler vermerken oder die Semester- bzw. Jahresnoten eintragen. &lt;br /&gt;
&lt;br /&gt;
:[[Datei:ClipCapIt-180831-114521.PNG|400px]]&lt;br /&gt;
&#039;&#039;&#039;Tipp:&#039;&#039;&#039; Bei der Eingabe von negativen Noten öffnet sich ein Dialog zur Auswahl von Lehrzielen und Lehrinhalten, die nicht positiv beurteilt wurden. Die Lehrinhalte und Lehrziele entsprechen den am Zeugnisbeiblatt abgebildeten negativen Teilen. Sollte eine Klasse &#039;&#039;&#039;kompetenzorientiert&#039;&#039;&#039; geführt werden, dann Setzen Sie bitte hier die entsprechenden Checkboxen bei den negativen Inhalten.&lt;br /&gt;
&lt;br /&gt;
Dieser Dialog ünterstützt Sie bei der Auswahl der neagtiven Lehrinhalte und Deskriptoren: Sie bekommen alle Beurteilungen, die Themen und Lehrinhalten zugeordnet wurden, zusammengefasst angezeigt und können nicht erbrachte Lehrinhalte auswählen. Ist dieser Lehrinhalt genau einem Deskriptor zugeordnet, dann wird dieser automatisch negativ gesetzt. Sind mehrere Deskriptoren für diesen Lehrinhalt möglich, dann werden alle passenden Deskriptoren eingeblendet und Sie müssen die passenden Deskriptoren auswählen.&lt;br /&gt;
&lt;br /&gt;
:[[Datei:ClipCapIt-180831-113320.PNG|thumb|100px]]&lt;br /&gt;
&lt;br /&gt;
==Gruppierung==&lt;br /&gt;
Wenn in der [[Beurteilungskonfiguration#Gruppierung|Beurteilungskonfiguration]] für diesen Katalog die Gruppierung aktiviert wurde, dann ist im linken Bereich eine Spalte mit Gruppe vorhanden. Weiters ist in der obersten Button-Leiste des Katalogs der &lt;br /&gt;
[[Datei:ClipCapIt-180831-113134.PNG|25px]]-Button sichtbar, mit dem die Gruppen-Spalte zum Bearbeiten freigeschaltet werden kann.&lt;br /&gt;
&lt;br /&gt;
Die Schüler können dann Gruppen zugeordnet werden. &lt;br /&gt;
&lt;br /&gt;
Nach dem Eintragen der Gruppenbezeichnungen können die Schüler gruppenweise sortiert werden, indem Sie auf die Spaltenüberschrift &#039;Gruppe&#039; klicken. Die alphabetische Sortierung erreichen Sie über einen Klick auf die Spaltenüberschrift &#039;Name&#039;.&lt;/div&gt;</summary>
		<author><name>Ckral</name></author>
	</entry>
	<entry>
		<id>https://wiki.letto.at/wiki/index.php?title=Katalog&amp;diff=2077</id>
		<title>Katalog</title>
		<link rel="alternate" type="text/html" href="https://wiki.letto.at/wiki/index.php?title=Katalog&amp;diff=2077"/>
		<updated>2020-01-24T07:33:24Z</updated>

		<summary type="html">&lt;p&gt;Ckral: Update nach Diskussion zu https://project.letto.at/projects/letto/work_packages/358&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;:[[Datei:ClipCapIt-180826-180658.PNG|thumb|600px|Ansicht eines Katalogs (Schülernamen sind geschwärzt)]]&lt;br /&gt;
Unter Katalog versteht man bei Letto eine Sammlung von allen Leistungen der Schüler eines Gegenstandes in einer Klasse (Namen wurden in nebenstehender Abbildung unkenntlich gemacht).&lt;br /&gt;
&lt;br /&gt;
Wenn Sie zB. in einer Klasse 3 Fächer unterrichten, dann finden sie im [[Klassenzimmer]] drei Kataloge für jeden Gegenstand.&lt;br /&gt;
Je nach Lehrplan und Schultyp (Klassen jahrweise geführt, Klassen semestriert laut NOST, ...) sind die Kataloge über das ganze Schuljahr oder nur über ein Semeseter geführt.&lt;br /&gt;
&lt;br /&gt;
Einstellungen zur Gewichtung der Beurteilungen, zum Freischalten der Eingaben für Schüler und zur Definition der Darstellung finden Sie unter [[Beurteilungskonfiguration]].&lt;br /&gt;
&lt;br /&gt;
==Übersicht==&lt;br /&gt;
In der Titelzeile finden Sie Klasse, Schuljahr und Gegenstandbezeichnung sowie eventuell die Einschränkung auf Sommer- oder Wintersemester. Folgende Icons stehen in der Titelzeile für weitere Aktionen bereit:&lt;br /&gt;
* [[Datei:ClipCapIt-180826-181150.PNG|20px]]: [[Lehrerübergreifender Katalog|Lehrerübergreifende Anzeige von allen Leistungen im ganzen Schuljahr]]&lt;br /&gt;
* [[Datei:ClipCapIt-180826-181229.PNG|20px]]: Anzeige des Wintersemesters&lt;br /&gt;
* [[Datei:ClipCapIt-180826-181438.PNG|20px]]: Anzeige des Sommersemester&lt;br /&gt;
* [[Datei:ClipCapIt-180826-181307.PNG|20px]]: Export des Katalogs als Excel-File&lt;br /&gt;
* [[Datei:ClipCapIt-180826-181352.PNG|20px]]: Druck des Katogs in ein PDF-Dokument&lt;br /&gt;
&lt;br /&gt;
In der zweiten Zeile finden Sie folgenden Buttons:&lt;br /&gt;
* &#039;&#039;&#039;Neue Klassenweise Beurteilung&#039;&#039;&#039;: Fügt eine neue [[#Klassenweise Beurteilungen|Klassenweise Beurteilung]] ein&lt;br /&gt;
* &#039;&#039;&#039;Leistungsübersicht&#039;&#039;&#039;: Anzeige einer Leistungsübersicht für alle Schüler der Klassen inklusive &#039;&#039;&#039;kompetenzorientierter Auswertung&#039;&#039;&#039;.&lt;br /&gt;
* [[Datei:ClipCapIt-180826-181736.PNG|35px]]: Anzeige des angewendeten Beurteilungsschemas und der dort definierten Einstellungen&lt;br /&gt;
* [[Datei:ClipCapIt-180826-181832.PNG|35px]]: Umschalten zwischen der eigenen Ansicht und der Summenansicht über alle Lehrer, die in einer Klasse den selben Gegenstand unterrichten (zB. Labor mit 4 Lehrern in der gleichen Klasse).&lt;br /&gt;
* [[Datei:ClipCapIt-180826-182009.PNG|35px]]: Definition, welche Spalten angezeigt werden sollen und was eingebbar sein soll.&lt;br /&gt;
&lt;br /&gt;
Darunter finden Sie eine Tabelle mit der Dokumentation von Beurteilungen von allen Schülern dieser Klasse.&lt;br /&gt;
:[[Datei:ClipCapIt-180826-182207.PNG|500px]]&lt;br /&gt;
&lt;br /&gt;
Folgende Spalten sind verfügbar:&lt;br /&gt;
* Name: Name des Schülers&lt;br /&gt;
* Beurteilungen: Anzeige von allen [[#Individualbeurteilungen|Individualbeurteilungen]], die in dieser Klasse verwendet wurden. Die Spaltenanzahl verändert sich dynamisch, angepasst an die Anzahl pro Schüler.&lt;br /&gt;
Spalten für alle Arten von [[Online-Tests]] wie Tests, Schularbeiten, Stundenwiederholungen, Rechenübungen oder Hausübungen. Jede Test-Art wird in einer eigenen Bereich angezeigt und kann auch pro Testart über die [[#Konfiguration der Anzeige|Anzeige-Einstellungen]] wieder ausgeblendet werden.&lt;br /&gt;
* Spalten zur Noteneingabe mit einer Teilspalte für Mahnungen und für die vergebene Note im Semester oder Schuljahr. Auch die Notenspalten sind über die [[#Konfiguration der Anzeige|Anzeige-Einstellungen]] einstellbar.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Gewichtung&#039;&#039;&#039;: Alle [[Online-Tests]] und alle [[#Klassenweise Beurteilungen|Klassenweisen Beurteilungen]] haben standardmäßig eine Gewichtung von 1, die jedoch im Bedarfsfall geändert werden kann. Damit können zB. unterschiedlich lange Projektarbeiten angepasst gewichten oder Vorbereitungs-Tests für eine Schularbeit ganz von der Beurteilung ausklammern (Gewichtung = 0).&lt;br /&gt;
&lt;br /&gt;
Die ganze Tabelle ist bei vielen Eingaben auch vertikal verschiebbar (scrollbar)!&lt;br /&gt;
&lt;br /&gt;
==Konfiguration der Anzeige==&lt;br /&gt;
:[[Datei:ClipCapIt-181209-215749.PNG|thumb|600px|Dialog zur Konfiguration der Anzeige]]&lt;br /&gt;
&lt;br /&gt;
Mit dem [[Datei:ClipCapIt-180826-182009.PNG|35px]]-Button öffnen Sie einen Dialog zur Konfiguration der Anzeige. &lt;br /&gt;
In der ersten Zeile sind alle Arten von [[Online-Tests]] angeführt, die ein- oder ausgeblendet werden können.&lt;br /&gt;
Die Checkboxen der zweiten Zeile haben folgende Bedeutung:&lt;br /&gt;
* Mahnungen: Im Katalog wird pro Semester eine Spalte mit Checkboxen für Mahnungen eingeblendet.&lt;br /&gt;
* Noten editierbar: Ist die Checkbox ausgewählt, dann können direkt im Katalog die Noten eingetragen werden. Bei negativen Noten wird automatisch eind Dialog zur Auswahl von negativen Lehrinhalten geöffnet.&lt;br /&gt;
* Fotos: Im Katalog werden die Schülerfotos eingeblendet, wenn die [[Datenimport#Hochladen_von_Schülerfotos|Fotos hochgeladen]] wurden.&lt;br /&gt;
* Prozentanzeige: Im Katalog werden für die meisten Beurteilungen keine Symbole, sondern Prozentwerte angezeigt. Welche Beurteilungsformen davon betroffen sind, wird in der [[Beurteilungskonfiguration]] festgelegt.&lt;br /&gt;
&lt;br /&gt;
Mit dem [[Datei:ClipCapIt-180826-190507.PNG|35px]]-Button werden die Darstellungs-Optionen für all ihre Kataloge gespeichert. Mit der ESC-Taste kann der Dialog auch geschlossen werden.&lt;br /&gt;
&lt;br /&gt;
==Individualbeurteilungen==&lt;br /&gt;
Individualbeurteiungen werden verwendet, wenn nur für einzelne Schüler eine Aufzeichnung geführt werden soll. Beispiele sind einzelne Mitarbeitsaufzeichnungen, Prüfungen etc., die nicht aller Schüler der Klasse betreffen.&lt;br /&gt;
&lt;br /&gt;
===Hinzufügen einer neuen Individualbeurteilung===&lt;br /&gt;
:[[Datei:ClipCapIt-180826-212503.PNG|thumb|600px]]&lt;br /&gt;
Zur Eingabe einer neuen Note für eine Individualbeurteilung klicken Sie bitte auf das [[Datei:ClipCapIt-180830-184236.PNG|20px]]-Symbol links neben dem Schülernamen. Damit öffnet Sie die Eingabemaske für die Beurteilung.&lt;br /&gt;
&lt;br /&gt;
====Noteneingabe====&lt;br /&gt;
Im linken Bereich finden Sie alle Bedienelemente zur Beurteilung einer Schülerleistung:&lt;br /&gt;
&lt;br /&gt;
Die Buttons in der ersten Zeile stellen die möglichen Beurteilungsarten lt. [[Beurteilungskonfiguration]] dar. Wählen Sie davon eine Beurteilungsart aus. Je nach gewählter Beurteilungsart werden die möglichen Symbole für die Beurteilung eingeblendet.&lt;br /&gt;
&lt;br /&gt;
Wählen Sie das gewünschte Beurteilungssymbol aus. Damit wird auch automtisch ein Prozentwert lt. Beurteilungskonfiguration definiert.&lt;br /&gt;
&lt;br /&gt;
Bei dafür vorgesehenen Beurteilungsarten können Sie auch Prozentwerte für die Leistung eingeben.&lt;br /&gt;
&lt;br /&gt;
Im Textfeld Fragetext können Sie auch die Aufgabenstellung dokumentieren.&lt;br /&gt;
&lt;br /&gt;
====Kompetenzen/Deskriptoren====&lt;br /&gt;
Auf der rechten Seite der Eingabe finden Sie die Themen, die im aktuellen Semester/Schuljahr zu unterrichten sind. Details unter [[Kompetenzen]].&lt;br /&gt;
&lt;br /&gt;
Wählen Sie für die Individualbeurteilung ein Thema und die Tiefe (Grundlagen, Erweiterungswissen) der Fragestellung aus.&lt;br /&gt;
&lt;br /&gt;
Mit &#039;&#039;&#039;Speichern&#039;&#039;&#039; wird die Beurteilung abgeschlossen.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Abbrechen&#039;&#039;&#039; bricht die Beurteilung ab und schließt das Eingabeformular.&lt;br /&gt;
&lt;br /&gt;
==Klassenweise Beurteilungen==&lt;br /&gt;
Im Gegensatz zu Individualbeurteilungen ist bei Klassenweisen Beurteilungen die Leistung von allen Schülern der Klasse zu erbringen. Beispiele für Klassenweise Beurteilungen sind Aufzeichnungen über Hausübungen, Tests, Laborübungen, Projektarbeiten etc.&lt;br /&gt;
&lt;br /&gt;
Jede Klassenweise Beurteilung wird im Katalog als eigene Spalte geführt, um die Übersichtlichkeit zu erhöhen. In der [[Beurteilungskonfiguration]] wird festgelegt, wie die Spaltenüberschrift dargestellt wird. Optionen sind ein o-Symbol, die ersten Zeichen des Namens oder die vollständige Bezeichnung. Das Kreis-Symbol wird verwendet, um die Tabelle übersichtlich zu halten. Tooltips, die den Namen der Spalte und die Beurteilungsart anzeigen, unterstützen Sie, beim Noteneintragen die richtigen Spalten zu finden.&lt;br /&gt;
:[[Datei:ClipCapIt-180826-221558.PNG|200px]]&lt;br /&gt;
&lt;br /&gt;
Alle Noten, die zu einer Klassenweisen Beurteilung gehören, haben eine gleiche Bezeichnung, gleiche Aufgabenstellung, gleiche Beurteilungsart und gleiche Kompetenzen zugewiesen.&lt;br /&gt;
&lt;br /&gt;
:[[Datei:ClipCapIt-190211-213733.PNG|thumb|600px|Neue Klassenweise Beurteiung anlegen]]&lt;br /&gt;
===Hinzufügen einer klassenweisen Beurteilung===&lt;br /&gt;
&lt;br /&gt;
Nach dem Drücken des Buttons &#039;&#039;&#039;Neue Klassenweise Beurteilung&#039;&#039;&#039; wird ein Dialog zur Definition einer neuen klassenweisen Beurteilung geöffnet.&lt;br /&gt;
&lt;br /&gt;
Die &#039;&#039;&#039;Bezeichnung&#039;&#039;&#039; legt die Namen der Klassenweisen Beurteilung fest. Dieser Namen wird dann in allen Tooltips bei der Eingabe angezeigt.&lt;br /&gt;
&lt;br /&gt;
Das &#039;&#039;&#039;Datum&#039;&#039;&#039; legt das Startdatum dieser Beurteilung fest. Nach diesem Datum werden im Katalog die Spalten der Klassenweisen Beurteilungen sortiert!&lt;br /&gt;
&lt;br /&gt;
Mit der Checkbox &#039;&#039;&#039;Datum anzeigen&#039;&#039;&#039; wird ausgewählt, ob bei der Beurteilungseingabe zu einer klassenweisen Beurteilung auch das Beurteilungsdatum eingeblendet und damit änderbar ist. Damit kann vor allem eine Beurteilung in ein anderes Semester verschoben werden. Beurteilungen, deren Beurteilungsdatum nicht im aktuellen Semester liegen, werden bei semestrierten Klassen ausgegraut dargestellt und werden nicht für die Prozentberechnung herangezogen.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Noten importieren:&#039;&#039;&#039; ist ein Zusatzfeature, mit dem Noten von externen Quellen (ExcelSheets,...) importiert werden können: Die einzelnen Noten können durch Leerzeichen, Beistrich oder Strichpunkt getrennt sein. Die Noten werden den Schülern in alphabetischer Reihenfolge aufsteigend zugeordnet.&lt;br /&gt;
&lt;br /&gt;
Die &#039;&#039;&#039;Aufgabenstellung&#039;&#039;&#039; kann eine optionale Beschreibung der Aufgabenstellung enthalten.&lt;br /&gt;
&lt;br /&gt;
Die Buttons in der folgenden Zeile stellen die möglichen Beurteilungsarten lt. [[Beurteilungskonfiguration]] dar. Wählen Sie davon eine Beurteilungsart aus. Je nach gewählter Beurteilungsart werden bei der späteren Noteneingabe die möglichen Symbole, Prozenteingaben oder auch Teilnoten festgelegt.&lt;br /&gt;
&lt;br /&gt;
Im Bereich Kompetenzen / Deskriptoren können Sie die entsprechenden Lehrinhalte und das Level der Aufgabenstellung festlegen.&lt;br /&gt;
&lt;br /&gt;
Mit Speichern wird die Definition der Klassenweisen Beurteilung abgeschlossen. Abbruch beendet den Dialog, ohne die Eingaben zu speichern.&lt;br /&gt;
&lt;br /&gt;
===Eingeben von Noten zu einer Klassenweise Beurteilung===&lt;br /&gt;
Navigieren Sie mit der Maus in die entsprechende Zeile und Spalte im Katalog. Tooltips, die den Namen der Spalte und die Beurteilungsart anzeigen, unterstützen Sie, die richtigen Spalten zu finden.&lt;br /&gt;
:[[Datei:ClipCapIt-180826-221558.PNG|200px]]&lt;br /&gt;
An der gewünschte Postition klicken Sie die Stelle an und es wird ein Dialog zur Noteneingabe angezeigt. Dieser Dialog ist abhängig von der definierten Beurteilungsart und kann sehr unterschiedlich wirken.&lt;br /&gt;
&lt;br /&gt;
:[[Datei:ClipCapIt-180826-223739.PNG|200px]] &lt;br /&gt;
Dialog, der bei der Eingabe einer Mitarbeitsnote verwendet wird&lt;br /&gt;
:[[Datei:ClipCapIt-180826-223947.PNG|200px]]&lt;br /&gt;
Noteneingabe, die sich aus mehreren Teilnoten zB. bei einer Laborübung zusammensetzt. Nächer Informationen unter [[Beurteilungskonfiguration]].&lt;br /&gt;
Bei mehreren Teilnoten wird durch die definierte Gewichtung (ist neben der Beichnung der Teilnoten in Klammern gesetzt) automatisch die Gesamtnote berechnet, die jedoch noch durch den Lehrer überschrieben werden kann.&lt;br /&gt;
&lt;br /&gt;
===Zusammengesetzte Beurteilungen===&lt;br /&gt;
Bei Klassenweisen Beurteilungen kann sich eine Note aus mehreren Teilnoten zusammensetzen. Die verwendeten Teilergebnisse und deren Gewichtung wird in der [[Beurteilungskonfiguration#Weitere Beurteilungen|Beurteilungskonfiguration]] definiert.&lt;br /&gt;
&lt;br /&gt;
Beispiele für solche zusammengesetzten Noten sind Laborübungen (Prüfung, Mitarbeit, Protokoll) oder Projekte (Mitarbeit, Dokumentation). Es kann auch festgelegt werden, welche Teile der Note zwingend vorgeschrieben sind, um alle Anforderungen zu erfüllen. Beispiel hierfür ist eine Laborübung, wo ein Laborprotokoll zwingend erforderlich ist. Die Labornote erscheint dann im Katalog solange mit roter Farbe, solange die Note für das Protokoll noch nicht eingetragen wurde oder negativ ist. Als negativ wird die Note angesehen, wenn entweder der Durchschnitt aller Noten negativ ist, aber auch, wenn nur die Note auf das Protokoll negativ ist.&lt;br /&gt;
&lt;br /&gt;
Soll ein Schüler von so einer erzwungen Noteneingabe befreit werden, kann als Note ein * eingegeben werden. Dies führt dazu, dass zB. kein Protokoll erstellt werden muss und die Note erscheint im Katalog in blauer Farbe.&lt;br /&gt;
&lt;br /&gt;
==Ergebnisse von [[Online-Tests]]==&lt;br /&gt;
Nach dem Starten des Testversuchs eines Schülers sind die Ergebnisse (Noten) bereits im Katalog sichtbar. Wenn &lt;br /&gt;
&lt;br /&gt;
==Mahnungen und Noteneingabe==&lt;br /&gt;
Wenn bei der [[#Konfiguration der Anzeige|Konfiguration der Anzeige]] die Checkboxen für [[Datei:ClipCapIt-180831-113933.PNG|200px]] gesetzt wurden, dann können Sie Mahnungen für Schüler vermerken oder die Semester- bzw. Jahresnoten eintragen. &lt;br /&gt;
&lt;br /&gt;
:[[Datei:ClipCapIt-180831-114521.PNG|400px]]&lt;br /&gt;
&#039;&#039;&#039;Tipp:&#039;&#039;&#039; Bei der Eingabe von negativen Noten öffnet sich ein Dialog zur Auswahl von Lehrzielen und Lehrinhalten, die nicht positiv beurteilt wurden. Die Lehrinhalte und Lehrziele entsprechen den am Zeugnisbeiblatt abgebildeten negativen Teilen. Sollte eine Klasse &#039;&#039;&#039;kompetenzorientiert&#039;&#039;&#039; geführt werden, dann Setzen Sie bitte hier die entsprechenden Checkboxen bei den negativen Inhalten.&lt;br /&gt;
&lt;br /&gt;
Dieser Dialog ünterstützt Sie bei der Auswahl der neagtiven Lehrinhalte und Deskriptoren: Sie bekommen alle Beurteilungen, die Themen und Lehrinhalten zugeordnet wurden, zusammengefasst angezeigt und können nicht erbrachte Lehrinhalte auswählen. Ist dieser Lehrinhalt genau einem Deskriptor zugeordnet, dann wird dieser automatisch negativ gesetzt. Sind mehrere Deskriptoren für diesen Lehrinhalt möglich, dann werden alle passenden Deskriptoren eingeblendet und Sie müssen die passenden Deskriptoren auswählen.&lt;br /&gt;
&lt;br /&gt;
:[[Datei:ClipCapIt-180831-113320.PNG|thumb|100px]]&lt;br /&gt;
&lt;br /&gt;
==Gruppierung==&lt;br /&gt;
Wenn in der [[Beurteilungskonfiguration#Gruppierung|Beurteilungskonfiguration]] für diesen Katalog die Gruppierung aktiviert wurde, dann ist im linken Bereich eine Spalte mit Gruppe vorhanden. Weiters ist in der obersten Button-Leiste des Katalogs der &lt;br /&gt;
[[Datei:ClipCapIt-180831-113134.PNG|25px]]-Button sichtbar, mit dem die Gruppen-Spalte zum Bearbeiten freigeschaltet werden kann.&lt;br /&gt;
&lt;br /&gt;
Die Schüler können dann Gruppen zugeordnet werden. &lt;br /&gt;
&lt;br /&gt;
Nach dem Eintragen der Gruppenbezeichnungen können die Schüler gruppenweise sortiert werden, indem Sie auf die Spaltenüberschrift &#039;Gruppe&#039; klicken. Die alphabetische Sortierung erreichen Sie über einen Klick auf die Spaltenüberschrift &#039;Name&#039;.&lt;/div&gt;</summary>
		<author><name>Ckral</name></author>
	</entry>
	<entry>
		<id>https://wiki.letto.at/wiki/index.php?title=Katalog&amp;diff=2076</id>
		<title>Katalog</title>
		<link rel="alternate" type="text/html" href="https://wiki.letto.at/wiki/index.php?title=Katalog&amp;diff=2076"/>
		<updated>2020-01-18T09:53:55Z</updated>

		<summary type="html">&lt;p&gt;Ckral: Anpassung der zur Farbe Rot der Labornote gemäß https://project.letto.at/projects/letto/work_packages/358/&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;:[[Datei:ClipCapIt-180826-180658.PNG|thumb|600px|Ansicht eines Katalogs (Schülernamen sind geschwärzt)]]&lt;br /&gt;
Unter Katalog versteht man bei Letto eine Sammlung von allen Leistungen der Schüler eines Gegenstandes in einer Klasse (Namen wurden in nebenstehender Abbildung unkenntlich gemacht).&lt;br /&gt;
&lt;br /&gt;
Wenn Sie zB. in einer Klasse 3 Fächer unterrichten, dann finden sie im [[Klassenzimmer]] drei Kataloge für jeden Gegenstand.&lt;br /&gt;
Je nach Lehrplan und Schultyp (Klassen jahrweise geführt, Klassen semestriert laut NOST, ...) sind die Kataloge über das ganze Schuljahr oder nur über ein Semeseter geführt.&lt;br /&gt;
&lt;br /&gt;
Einstellungen zur Gewichtung der Beurteilungen, zum Freischalten der Eingaben für Schüler und zur Definition der Darstellung finden Sie unter [[Beurteilungskonfiguration]].&lt;br /&gt;
&lt;br /&gt;
==Übersicht==&lt;br /&gt;
In der Titelzeile finden Sie Klasse, Schuljahr und Gegenstandbezeichnung sowie eventuell die Einschränkung auf Sommer- oder Wintersemester. Folgende Icons stehen in der Titelzeile für weitere Aktionen bereit:&lt;br /&gt;
* [[Datei:ClipCapIt-180826-181150.PNG|20px]]: [[Lehrerübergreifender Katalog|Lehrerübergreifende Anzeige von allen Leistungen im ganzen Schuljahr]]&lt;br /&gt;
* [[Datei:ClipCapIt-180826-181229.PNG|20px]]: Anzeige des Wintersemesters&lt;br /&gt;
* [[Datei:ClipCapIt-180826-181438.PNG|20px]]: Anzeige des Sommersemester&lt;br /&gt;
* [[Datei:ClipCapIt-180826-181307.PNG|20px]]: Export des Katalogs als Excel-File&lt;br /&gt;
* [[Datei:ClipCapIt-180826-181352.PNG|20px]]: Druck des Katogs in ein PDF-Dokument&lt;br /&gt;
&lt;br /&gt;
In der zweiten Zeile finden Sie folgenden Buttons:&lt;br /&gt;
* &#039;&#039;&#039;Neue Klassenweise Beurteilung&#039;&#039;&#039;: Fügt eine neue [[#Klassenweise Beurteilungen|Klassenweise Beurteilung]] ein&lt;br /&gt;
* &#039;&#039;&#039;Leistungsübersicht&#039;&#039;&#039;: Anzeige einer Leistungsübersicht für alle Schüler der Klassen inklusive &#039;&#039;&#039;kompetenzorientierter Auswertung&#039;&#039;&#039;.&lt;br /&gt;
* [[Datei:ClipCapIt-180826-181736.PNG|35px]]: Anzeige des angewendeten Beurteilungsschemas und der dort definierten Einstellungen&lt;br /&gt;
* [[Datei:ClipCapIt-180826-181832.PNG|35px]]: Umschalten zwischen der eigenen Ansicht und der Summenansicht über alle Lehrer, die in einer Klasse den selben Gegenstand unterrichten (zB. Labor mit 4 Lehrern in der gleichen Klasse).&lt;br /&gt;
* [[Datei:ClipCapIt-180826-182009.PNG|35px]]: Definition, welche Spalten angezeigt werden sollen und was eingebbar sein soll.&lt;br /&gt;
&lt;br /&gt;
Darunter finden Sie eine Tabelle mit der Dokumentation von Beurteilungen von allen Schülern dieser Klasse.&lt;br /&gt;
:[[Datei:ClipCapIt-180826-182207.PNG|500px]]&lt;br /&gt;
&lt;br /&gt;
Folgende Spalten sind verfügbar:&lt;br /&gt;
* Name: Name des Schülers&lt;br /&gt;
* Beurteilungen: Anzeige von allen [[#Individualbeurteilungen|Individualbeurteilungen]], die in dieser Klasse verwendet wurden. Die Spaltenanzahl verändert sich dynamisch, angepasst an die Anzahl pro Schüler.&lt;br /&gt;
Spalten für alle Arten von [[Online-Tests]] wie Tests, Schularbeiten, Stundenwiederholungen, Rechenübungen oder Hausübungen. Jede Test-Art wird in einer eigenen Bereich angezeigt und kann auch pro Testart über die [[#Konfiguration der Anzeige|Anzeige-Einstellungen]] wieder ausgeblendet werden.&lt;br /&gt;
* Spalten zur Noteneingabe mit einer Teilspalte für Mahnungen und für die vergebene Note im Semester oder Schuljahr. Auch die Notenspalten sind über die [[#Konfiguration der Anzeige|Anzeige-Einstellungen]] einstellbar.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Gewichtung&#039;&#039;&#039;: Alle [[Online-Tests]] und alle [[#Klassenweise Beurteilungen|Klassenweisen Beurteilungen]] haben standardmäßig eine Gewichtung von 1, die jedoch im Bedarfsfall geändert werden kann. Damit können zB. unterschiedlich lange Projektarbeiten angepasst gewichten oder Vorbereitungs-Tests für eine Schularbeit ganz von der Beurteilung ausklammern (Gewichtung = 0).&lt;br /&gt;
&lt;br /&gt;
Die ganze Tabelle ist bei vielen Eingaben auch vertikal verschiebbar (scrollbar)!&lt;br /&gt;
&lt;br /&gt;
==Konfiguration der Anzeige==&lt;br /&gt;
:[[Datei:ClipCapIt-181209-215749.PNG|thumb|600px|Dialog zur Konfiguration der Anzeige]]&lt;br /&gt;
&lt;br /&gt;
Mit dem [[Datei:ClipCapIt-180826-182009.PNG|35px]]-Button öffnen Sie einen Dialog zur Konfiguration der Anzeige. &lt;br /&gt;
In der ersten Zeile sind alle Arten von [[Online-Tests]] angeführt, die ein- oder ausgeblendet werden können.&lt;br /&gt;
Die Checkboxen der zweiten Zeile haben folgende Bedeutung:&lt;br /&gt;
* Mahnungen: Im Katalog wird pro Semester eine Spalte mit Checkboxen für Mahnungen eingeblendet.&lt;br /&gt;
* Noten editierbar: Ist die Checkbox ausgewählt, dann können direkt im Katalog die Noten eingetragen werden. Bei negativen Noten wird automatisch eind Dialog zur Auswahl von negativen Lehrinhalten geöffnet.&lt;br /&gt;
* Fotos: Im Katalog werden die Schülerfotos eingeblendet, wenn die [[Datenimport#Hochladen_von_Schülerfotos|Fotos hochgeladen]] wurden.&lt;br /&gt;
* Prozentanzeige: Im Katalog werden für die meisten Beurteilungen keine Symbole, sondern Prozentwerte angezeigt. Welche Beurteilungsformen davon betroffen sind, wird in der [[Beurteilungskonfiguration]] festgelegt.&lt;br /&gt;
&lt;br /&gt;
Mit dem [[Datei:ClipCapIt-180826-190507.PNG|35px]]-Button werden die Darstellungs-Optionen für all ihre Kataloge gespeichert. Mit der ESC-Taste kann der Dialog auch geschlossen werden.&lt;br /&gt;
&lt;br /&gt;
==Individualbeurteilungen==&lt;br /&gt;
Individualbeurteiungen werden verwendet, wenn nur für einzelne Schüler eine Aufzeichnung geführt werden soll. Beispiele sind einzelne Mitarbeitsaufzeichnungen, Prüfungen etc., die nicht aller Schüler der Klasse betreffen.&lt;br /&gt;
&lt;br /&gt;
===Hinzufügen einer neuen Individualbeurteilung===&lt;br /&gt;
:[[Datei:ClipCapIt-180826-212503.PNG|thumb|600px]]&lt;br /&gt;
Zur Eingabe einer neuen Note für eine Individualbeurteilung klicken Sie bitte auf das [[Datei:ClipCapIt-180830-184236.PNG|20px]]-Symbol links neben dem Schülernamen. Damit öffnet Sie die Eingabemaske für die Beurteilung.&lt;br /&gt;
&lt;br /&gt;
====Noteneingabe====&lt;br /&gt;
Im linken Bereich finden Sie alle Bedienelemente zur Beurteilung einer Schülerleistung:&lt;br /&gt;
&lt;br /&gt;
Die Buttons in der ersten Zeile stellen die möglichen Beurteilungsarten lt. [[Beurteilungskonfiguration]] dar. Wählen Sie davon eine Beurteilungsart aus. Je nach gewählter Beurteilungsart werden die möglichen Symbole für die Beurteilung eingeblendet.&lt;br /&gt;
&lt;br /&gt;
Wählen Sie das gewünschte Beurteilungssymbol aus. Damit wird auch automtisch ein Prozentwert lt. Beurteilungskonfiguration definiert.&lt;br /&gt;
&lt;br /&gt;
Bei dafür vorgesehenen Beurteilungsarten können Sie auch Prozentwerte für die Leistung eingeben.&lt;br /&gt;
&lt;br /&gt;
Im Textfeld Fragetext können Sie auch die Aufgabenstellung dokumentieren.&lt;br /&gt;
&lt;br /&gt;
====Kompetenzen/Deskriptoren====&lt;br /&gt;
Auf der rechten Seite der Eingabe finden Sie die Themen, die im aktuellen Semester/Schuljahr zu unterrichten sind. Details unter [[Kompetenzen]].&lt;br /&gt;
&lt;br /&gt;
Wählen Sie für die Individualbeurteilung ein Thema und die Tiefe (Grundlagen, Erweiterungswissen) der Fragestellung aus.&lt;br /&gt;
&lt;br /&gt;
Mit &#039;&#039;&#039;Speichern&#039;&#039;&#039; wird die Beurteilung abgeschlossen.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Abbrechen&#039;&#039;&#039; bricht die Beurteilung ab und schließt das Eingabeformular.&lt;br /&gt;
&lt;br /&gt;
==Klassenweise Beurteilungen==&lt;br /&gt;
Im Gegensatz zu Individualbeurteilungen ist bei Klassenweisen Beurteilungen die Leistung von allen Schülern der Klasse zu erbringen. Beispiele für Klassenweise Beurteilungen sind Aufzeichnungen über Hausübungen, Tests, Laborübungen, Projektarbeiten etc.&lt;br /&gt;
&lt;br /&gt;
Jede Klassenweise Beurteilung wird im Katalog als eigene Spalte geführt, um die Übersichtlichkeit zu erhöhen. In der [[Beurteilungskonfiguration]] wird festgelegt, wie die Spaltenüberschrift dargestellt wird. Optionen sind ein o-Symbol, die ersten Zeichen des Namens oder die vollständige Bezeichnung. Das Kreis-Symbol wird verwendet, um die Tabelle übersichtlich zu halten. Tooltips, die den Namen der Spalte und die Beurteilungsart anzeigen, unterstützen Sie, beim Noteneintragen die richtigen Spalten zu finden.&lt;br /&gt;
:[[Datei:ClipCapIt-180826-221558.PNG|200px]]&lt;br /&gt;
&lt;br /&gt;
Alle Noten, die zu einer Klassenweisen Beurteilung gehören, haben eine gleiche Bezeichnung, gleiche Aufgabenstellung, gleiche Beurteilungsart und gleiche Kompetenzen zugewiesen.&lt;br /&gt;
&lt;br /&gt;
:[[Datei:ClipCapIt-190211-213733.PNG|thumb|600px|Neue Klassenweise Beurteiung anlegen]]&lt;br /&gt;
===Hinzufügen einer klassenweisen Beurteilung===&lt;br /&gt;
&lt;br /&gt;
Nach dem Drücken des Buttons &#039;&#039;&#039;Neue Klassenweise Beurteilung&#039;&#039;&#039; wird ein Dialog zur Definition einer neuen klassenweisen Beurteilung geöffnet.&lt;br /&gt;
&lt;br /&gt;
Die &#039;&#039;&#039;Bezeichnung&#039;&#039;&#039; legt die Namen der Klassenweisen Beurteilung fest. Dieser Namen wird dann in allen Tooltips bei der Eingabe angezeigt.&lt;br /&gt;
&lt;br /&gt;
Das &#039;&#039;&#039;Datum&#039;&#039;&#039; legt das Startdatum dieser Beurteilung fest. Nach diesem Datum werden im Katalog die Spalten der Klassenweisen Beurteilungen sortiert!&lt;br /&gt;
&lt;br /&gt;
Mit der Checkbox &#039;&#039;&#039;Datum anzeigen&#039;&#039;&#039; wird ausgewählt, ob bei der Beurteilungseingabe zu einer klassenweisen Beurteilung auch das Beurteilungsdatum eingeblendet und damit änderbar ist. Damit kann vor allem eine Beurteilung in ein anderes Semester verschoben werden. Beurteilungen, deren Beurteilungsdatum nicht im aktuellen Semester liegen, werden bei semestrierten Klassen ausgegraut dargestellt und werden nicht für die Prozentberechnung herangezogen.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Noten importieren:&#039;&#039;&#039; ist ein Zusatzfeature, mit dem Noten von externen Quellen (ExcelSheets,...) importiert werden können: Die einzelnen Noten können durch Leerzeichen, Beistrich oder Strichpunkt getrennt sein. Die Noten werden den Schülern in alphabetischer Reihenfolge aufsteigend zugeordnet.&lt;br /&gt;
&lt;br /&gt;
Die &#039;&#039;&#039;Aufgabenstellung&#039;&#039;&#039; kann eine optionale Beschreibung der Aufgabenstellung enthalten.&lt;br /&gt;
&lt;br /&gt;
Die Buttons in der folgenden Zeile stellen die möglichen Beurteilungsarten lt. [[Beurteilungskonfiguration]] dar. Wählen Sie davon eine Beurteilungsart aus. Je nach gewählter Beurteilungsart werden bei der späteren Noteneingabe die möglichen Symbole, Prozenteingaben oder auch Teilnoten festgelegt.&lt;br /&gt;
&lt;br /&gt;
Im Bereich Kompetenzen / Deskriptoren können Sie die entsprechenden Lehrinhalte und das Level der Aufgabenstellung festlegen.&lt;br /&gt;
&lt;br /&gt;
Mit Speichern wird die Definition der Klassenweisen Beurteilung abgeschlossen. Abbruch beendet den Dialog, ohne die Eingaben zu speichern.&lt;br /&gt;
&lt;br /&gt;
===Eingeben von Noten zu einer Klassenweise Beurteilung===&lt;br /&gt;
Navigieren Sie mit der Maus in die entsprechende Zeile und Spalte im Katalog. Tooltips, die den Namen der Spalte und die Beurteilungsart anzeigen, unterstützen Sie, die richtigen Spalten zu finden.&lt;br /&gt;
:[[Datei:ClipCapIt-180826-221558.PNG|200px]]&lt;br /&gt;
An der gewünschte Postition klicken Sie die Stelle an und es wird ein Dialog zur Noteneingabe angezeigt. Dieser Dialog ist abhängig von der definierten Beurteilungsart und kann sehr unterschiedlich wirken.&lt;br /&gt;
&lt;br /&gt;
:[[Datei:ClipCapIt-180826-223739.PNG|200px]] &lt;br /&gt;
Dialog, der bei der Eingabe einer Mitarbeitsnote verwendet wird&lt;br /&gt;
:[[Datei:ClipCapIt-180826-223947.PNG|200px]]&lt;br /&gt;
Noteneingabe, die sich aus mehreren Teilnoten zB. bei einer Laborübung zusammensetzt. Nächer Informationen unter [[Beurteilungskonfiguration]].&lt;br /&gt;
Bei mehreren Teilnoten wird durch die definierte Gewichtung (ist neben der Beichnung der Teilnoten in Klammern gesetzt) automatisch die Gesamtnote berechnet, die jedoch noch durch den Lehrer überschrieben werden kann.&lt;br /&gt;
&lt;br /&gt;
===Zusammengesetzte Beurteilungen===&lt;br /&gt;
Bei Klassenweisen Beurteilungen kann sich eine Note aus mehreren Teilnoten zusammensetzen. Die verwendeten Teilergebnisse und deren Gewichtung wird in der [[Beurteilungskonfiguration#Weitere Beurteilungen|Beurteilungskonfiguration]] definiert.&lt;br /&gt;
&lt;br /&gt;
Beispiele für solche zusammengesetzten Noten sind Laborübungen (Prüfung, Mitarbeit, Protokoll) oder Projekte (Mitarbeit, Dokumentation). Es kann auch festgelegt werden, welche Teile der Note zwingend vorgeschrieben sind, um alle Anforderungen zu erfüllen. Beispiel hierfür ist eine Laborübung, wo ein Laborprotokoll zwingend erforderlich ist. Die Labornote erscheint dann im Katalog solange mit roter Farbe, solange die Note für das Protokoll noch nicht eingetragen wurde oder negativ ist. &lt;br /&gt;
&lt;br /&gt;
Soll ein Schüler von so einer erzwungen Noteneingabe befreit werden, kann als Note ein * eingegeben werden. Dies führt dazu, dass zB. kein Protokoll erstellt werden muss und die Note erscheint im Katalog in blauer Farbe.&lt;br /&gt;
&lt;br /&gt;
==Ergebnisse von [[Online-Tests]]==&lt;br /&gt;
Nach dem Starten des Testversuchs eines Schülers sind die Ergebnisse (Noten) bereits im Katalog sichtbar. Wenn &lt;br /&gt;
&lt;br /&gt;
==Mahnungen und Noteneingabe==&lt;br /&gt;
Wenn bei der [[#Konfiguration der Anzeige|Konfiguration der Anzeige]] die Checkboxen für [[Datei:ClipCapIt-180831-113933.PNG|200px]] gesetzt wurden, dann können Sie Mahnungen für Schüler vermerken oder die Semester- bzw. Jahresnoten eintragen. &lt;br /&gt;
&lt;br /&gt;
:[[Datei:ClipCapIt-180831-114521.PNG|400px]]&lt;br /&gt;
&#039;&#039;&#039;Tipp:&#039;&#039;&#039; Bei der Eingabe von negativen Noten öffnet sich ein Dialog zur Auswahl von Lehrzielen und Lehrinhalten, die nicht positiv beurteilt wurden. Die Lehrinhalte und Lehrziele entsprechen den am Zeugnisbeiblatt abgebildeten negativen Teilen. Sollte eine Klasse &#039;&#039;&#039;kompetenzorientiert&#039;&#039;&#039; geführt werden, dann Setzen Sie bitte hier die entsprechenden Checkboxen bei den negativen Inhalten.&lt;br /&gt;
&lt;br /&gt;
Dieser Dialog ünterstützt Sie bei der Auswahl der neagtiven Lehrinhalte und Deskriptoren: Sie bekommen alle Beurteilungen, die Themen und Lehrinhalten zugeordnet wurden, zusammengefasst angezeigt und können nicht erbrachte Lehrinhalte auswählen. Ist dieser Lehrinhalt genau einem Deskriptor zugeordnet, dann wird dieser automatisch negativ gesetzt. Sind mehrere Deskriptoren für diesen Lehrinhalt möglich, dann werden alle passenden Deskriptoren eingeblendet und Sie müssen die passenden Deskriptoren auswählen.&lt;br /&gt;
&lt;br /&gt;
:[[Datei:ClipCapIt-180831-113320.PNG|thumb|100px]]&lt;br /&gt;
&lt;br /&gt;
==Gruppierung==&lt;br /&gt;
Wenn in der [[Beurteilungskonfiguration#Gruppierung|Beurteilungskonfiguration]] für diesen Katalog die Gruppierung aktiviert wurde, dann ist im linken Bereich eine Spalte mit Gruppe vorhanden. Weiters ist in der obersten Button-Leiste des Katalogs der &lt;br /&gt;
[[Datei:ClipCapIt-180831-113134.PNG|25px]]-Button sichtbar, mit dem die Gruppen-Spalte zum Bearbeiten freigeschaltet werden kann.&lt;br /&gt;
&lt;br /&gt;
Die Schüler können dann Gruppen zugeordnet werden. &lt;br /&gt;
&lt;br /&gt;
Nach dem Eintragen der Gruppenbezeichnungen können die Schüler gruppenweise sortiert werden, indem Sie auf die Spaltenüberschrift &#039;Gruppe&#039; klicken. Die alphabetische Sortierung erreichen Sie über einen Klick auf die Spaltenüberschrift &#039;Name&#039;.&lt;/div&gt;</summary>
		<author><name>Ckral</name></author>
	</entry>
	<entry>
		<id>https://wiki.letto.at/wiki/index.php?title=Berechnungen&amp;diff=2054</id>
		<title>Berechnungen</title>
		<link rel="alternate" type="text/html" href="https://wiki.letto.at/wiki/index.php?title=Berechnungen&amp;diff=2054"/>
		<updated>2019-12-30T15:02:31Z</updated>

		<summary type="html">&lt;p&gt;Ckral: Korrektor von arg auf carg in der Spalte Beispiel&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Allgemeines =&lt;br /&gt;
Berechnungen werden in mehreren Bereichen der Frageerstellung verwendet und bilden die Basis für [[Fragetypen#Berechnungsfrage|Berechnungsfrage]] und [[Fragetypen#Mehrfachberechnungsfrage|Mehrfachberechnungsfrage]].&lt;br /&gt;
&lt;br /&gt;
Alle Berechnungen unterstützen [[Einheit|Einheiten]] und symbolische Auswertung.&lt;br /&gt;
&lt;br /&gt;
=Grundsätzlicher Aufbau der Ergebnis-Berechnung bei Fragen mit Berechnungen=&lt;br /&gt;
[[Datei:BerechnungSchema.png|mini|hochkant=2.0|Schema der Berechnung]]&lt;br /&gt;
Die Berechnung und die Beurteilung einer Frage teilt sich in 3 grundsätzliche Schritte:&lt;br /&gt;
* Berechnnug der geschlossenen Lösung (Formel) aus den Maxima-Feldern &lt;br /&gt;
* Berechnung des Ergebnisses einer Frage durch Einsetzen der Zahlenwerte aus den Datensätzen in die geschlossene Lösung&lt;br /&gt;
* Beurteilung der Schülereingabe durch Vergleich mit dem Ergebnis&lt;br /&gt;
&lt;br /&gt;
=Konstante=&lt;br /&gt;
Alle Konstante welche in Letto definiert sind beginnen mit einem Prozentzeichen. Verwendet man den Variablennamen ohne Prozenzzeichen, so wird die Konstante wie eine Variable mit dem Wert der Konstanten verwendet.&lt;br /&gt;
&lt;br /&gt;
Liste der definierten Konstanten:&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%&amp;quot; &lt;br /&gt;
| Name || Wert || Beschreibung&lt;br /&gt;
|-&lt;br /&gt;
| %i || i || komplexer Parameter als Lösung der Gleichung x^2=-1&lt;br /&gt;
|-&lt;br /&gt;
| %j || i || komplexer Parameter als Lösung der Gleichung x^2=-1&lt;br /&gt;
|-&lt;br /&gt;
| %e || 2.718281828459045 || Eulersche Zahl &lt;br /&gt;
|-&lt;br /&gt;
| %pi || 3.141592653589793 || Kreiszahl&lt;br /&gt;
|-&lt;br /&gt;
| %mu0 || magnetische Feldkonstante || 4*%pi*1E-7&#039;Vs/Am&#039;&lt;br /&gt;
|-&lt;br /&gt;
| %m0 || magnetische Feldkonstante (alt, wird bald entfernt werden) || 4*%pi*1E-7&#039;Vs/Am&#039;&lt;br /&gt;
|-&lt;br /&gt;
| %epsilon0 || elektrische Feldkonstante || 8.85418781762039E-12&#039;As/Vm&#039;&lt;br /&gt;
|-&lt;br /&gt;
| %e0 || elektrische Feldkonstante (alt, wird bald entfernt werden) || 8.85418781762039E-12&#039;As/Vm&#039;&lt;br /&gt;
|-&lt;br /&gt;
| %c0 || Lichtgeschwindigkeit || 299792458&#039;m/s&#039;&lt;br /&gt;
|-&lt;br /&gt;
| %Qe || Elementarladung || 1.602176620898E-19As&lt;br /&gt;
|-&lt;br /&gt;
| %g  || Erdbeschleunigung || 9.81&#039;m/s^2&#039;&lt;br /&gt;
|-&lt;br /&gt;
| %NA || Avogadro Konstante || 6.02214085774E23/mol&lt;br /&gt;
|-&lt;br /&gt;
| %k  || Stefan Bolzman Konstante || 1.3806485279E-23&#039;J/K&#039;&lt;br /&gt;
|-&lt;br /&gt;
| %R0 || Universelle Gaskonstante || 8.314459848&#039;J/Kmol&#039;&lt;br /&gt;
|-&lt;br /&gt;
| %h || planksches Wirkungsquantum || 6.6260704081E-34Js&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=Berechnung mit Maxima=&lt;br /&gt;
* Maxima wird &#039;&#039;&#039;nur für symbolische Berechnungen&#039;&#039;&#039; bei der Erstellung von Beispielen verwendet. Hierbei wird, wie schon oberhalb im Schema angegeben, zuerst die Moodle.mac geladen, dann das [[Beispielsammlung Editieren#Maxima-Feld|Maxima-Feld]] berechnet und anschließend die Maxima-Felder aller Teilfragen. Das Ergebnis der Berechnung wird dann als symbolischer Ausdruck im Lösungfeld eingetragen.&lt;br /&gt;
* Da zum Zeitpunkt der &#039;&#039;&#039;Maxima-Berechnung keine Datensätze&#039;&#039;&#039; vorhanden sind, kann keine numerische Berechnung in Maxima durchgeführt werden, welche die [[Datensätze]] benötigt. Dies muss der interne Parser zum Zeitpunkt des Online-Test-Laufes erledigen. Numerische Berechnungen, welche der interne Parser nicht kann können deshalb auch nicht mit Maxima berechnet werden.&lt;br /&gt;
* Da das Lösungsfeld, welches mit Maxima berechnet wird symbolisch ausgewertet wird, können in Maxima sämtliche symbolischen Berechnungsverfahren angewendet werden, welche ein symbolisches Ergebnis liefern und keine numerischen Werte der Datensätze benötigen.&lt;br /&gt;
* &#039;&#039;&#039;Funktionsdeklarationen&#039;&#039;&#039; wie &#039;&#039;&#039;f(x):=&#039;&#039;&#039;x^2 mit Doppelpunkt-Ist-Gleich sind im Maxima-Feld nur eingeschränkt bis gar &#039;&#039;&#039;nicht verwendbar&#039;&#039;&#039;, da sie vom Parser nicht unterstützt werden.&lt;br /&gt;
* &#039;&#039;&#039;Mengen von Maxima&#039;&#039;&#039; sind in Letto n&#039;&#039;&#039;icht verwendbar&#039;&#039;&#039;. Letto verwender hierzu eigene Funktionen des Parsers welche mit &amp;quot;set&amp;quot; beginnen und auf Vektoren basieren.&lt;br /&gt;
&lt;br /&gt;
=Berechnung mit dem internen Parser=&lt;br /&gt;
* Der interne Parser kann durch Wahl der Checkbox &amp;quot;Parser&amp;quot; anstatt von Maxima für die Berechnung des Maxima-Feldes verwendet werden. &lt;br /&gt;
* Jedenfalls wird der Parser zur Test-Laufzeit für die Berechnung des Ergebnisses einer Frage aus Lösung und Datensätzen und zum Berechnen der Schülereingabe verwendet.&lt;br /&gt;
&lt;br /&gt;
==Operatoren==&lt;br /&gt;
=== VORSICHT mit MAXIMA ===&lt;br /&gt;
* Einige Operatoren sind in &#039;&#039;&#039;Maxima anders&#039;&#039;&#039;, oder &#039;&#039;&#039;nicht definiert&#039;&#039;&#039;. Möchte man im Maximafeld die Operatoren des Parsers-verwenden, so muss das gesamte Maxima-Feld &#039;&#039;&#039;mit dem Parser gerechnet&#039;&#039;&#039; werden. Man verliert dadurch jedoch die Vorteile der Maxima-Berechnung.&lt;br /&gt;
* Alternativ kann man statt der Operatoren auch &#039;&#039;&#039;Funktionen verwenden&#039;&#039;&#039; (zB: ne() statt != ). Diese werden dann von Maxima zwar nicht ausgewertet, die Berechnung bleibt aber trotzdem korrekt und kann mit Maxima durchgeführt werden.&lt;br /&gt;
* Es gibt einige Funktionen welche in &#039;&#039;&#039;Maxima existieren&#039;&#039;&#039; aber im &#039;&#039;&#039;Parser nicht, oder mit anderem Syntax&#039;&#039;&#039;.&lt;br /&gt;
** Wenn diese von Maxima nicht ausgewertet werden können, da sie &#039;&#039;&#039;Datensätze&#039;&#039;&#039; enthalten welche zu Auswertezeitpunkt von Maxima noch &#039;&#039;&#039;nicht mit Werten belegt&#039;&#039;&#039; sind, &#039;&#039;&#039;dürfen sie in der Berechnung nicht verwendet werden&#039;&#039;&#039;, da der Parser dann damit nichts anfangen kann.&lt;br /&gt;
** Solche Funktionen haben entweder im Parser eine alternative Schreibweise welche auch mit Maxima verwendet werden kann (z.B.: wenn), oder sie können prinzipell nicht verwendet werden. (Für wichtige Funktionsweisen könnte man in zukünftigen Versionen neue Funktionalitäten in den Parser einbauen, die die gewünschte Funktion erfüllen)&lt;br /&gt;
** Ein weiter Möglichkeit für die Verwendung solcher Funktionen ist der Verzicht auf Datensätze in diesen Funktionen, damit diese Funktion beim Auswerten des Maxima-Feldes bereits ausgewertet werden kann und somit der Parser davon nichts mehr sieht.&lt;br /&gt;
** zB:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
if then&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Infix Operatoren===&lt;br /&gt;
====arithmetische Operatoren====&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Operator || Priorität || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| + || 40 || Addition || 4+5 || 9 &lt;br /&gt;
|-&lt;br /&gt;
| - || 40 || Subtraktion || 6-2 || 4&lt;br /&gt;
|-&lt;br /&gt;
| * || 50 || Multiplikation || 4*5 || 20&lt;br /&gt;
|-&lt;br /&gt;
| / || 51 || Division || 20/4 || 5&lt;br /&gt;
|-&lt;br /&gt;
| % || 51 || Divisionsrest || 104%20 || 4&lt;br /&gt;
|-&lt;br /&gt;
| / / || 60 || Parallelschaltung || x / / y || x*y/(x+y)&lt;br /&gt;
|-&lt;br /&gt;
| ^ || 90 || Potenz || 2^3 || 8&lt;br /&gt;
|-&lt;br /&gt;
| .*. || 200 || Operator der intern für eine fehlende bindende Multiplikation verwendet wird || 4x || 4*x&lt;br /&gt;
|-&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
====Bitoperatoren====&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Operator || Priorität || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
||  |  || 20 || Bitweise oder logisches ODER ||| 9|5 &amp;lt;br&amp;gt; true|false || 13 &amp;lt;br&amp;gt;true&lt;br /&gt;
|-&lt;br /&gt;
| or || 20 || Bitweise oder logisches ODER || 9 or 5 || 13&lt;br /&gt;
|-&lt;br /&gt;
| &amp;amp;  || 21 || Bitweise oder logisches UND  || 13&amp;amp;10 || 8&lt;br /&gt;
|-&lt;br /&gt;
| and || 21 || Bitweise oder logisches UND  || 13 and 10 || 8&lt;br /&gt;
|-&lt;br /&gt;
| xor || 22 || Bitweise oder logisches exklusiv oder XOR  || 13 xor 10 || 7&lt;br /&gt;
|-&lt;br /&gt;
| imp || 23 || Bitweise oder logisches impliziert IMP || 13 imp 10 || 8&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;&amp;lt;  || 35 || Bitweise links schieben  || 5&amp;lt;&amp;lt;2 || 20&lt;br /&gt;
|-&lt;br /&gt;
| &amp;gt;&amp;gt;  || 35 || Bitweise rechts schieben || 8&amp;gt;&amp;gt;2 || 2&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
====Vergleichsoperatoren====&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Operator || Priorität || Beschreibung || Beispiel&lt;br /&gt;
|-&lt;br /&gt;
| =  || 3 || Gleichungsoperator || x=y&lt;br /&gt;
|-&lt;br /&gt;
| == || 30 || Gleichungsoperator || x==y&lt;br /&gt;
|-&lt;br /&gt;
| != || 30 || Ungleichungsoperator || x!=y&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt; || 32 || Kleiner || x&amp;lt;y&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;= || 32 || Kleiner gleich || x&amp;lt;=y&lt;br /&gt;
|-&lt;br /&gt;
| &amp;gt; || 32 || größer || x&amp;gt;y&lt;br /&gt;
|-&lt;br /&gt;
| &amp;gt;= || 32 || größer gleich || x&amp;gt;=y&lt;br /&gt;
|}&lt;br /&gt;
====Organisative Operatoren====&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Operator || Priorität || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| , || 0 || Listen-Trennzeichen || x,y ||&lt;br /&gt;
|-&lt;br /&gt;
| $ || 1 || Trennzeichen zwischen mehreren Berechnungen || ||&lt;br /&gt;
|-&lt;br /&gt;
| ; || 1 || Trennzeichen zwischen mehreren Berechnungen || ||&lt;br /&gt;
|-&lt;br /&gt;
| : || 2 || Zuweisung an eine Variablen auf der linken Seite || x:5 || &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Prefix Operatoren===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Operator || Priorität || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| + || 45 || positives Vorzeichen || +5 || 5&lt;br /&gt;
|-&lt;br /&gt;
| - || 45 || negatives Vorzeichen || -(-5) || 5&lt;br /&gt;
|-&lt;br /&gt;
| ~ || 95  || bitweise Inversion einer 64bit-Ganzzahl || ~0x0F0F || 0xFFFFFFFFFFFFF0F0&lt;br /&gt;
|-&lt;br /&gt;
| ! || 120 || logisches NOT || !(3&amp;lt;4) || false&lt;br /&gt;
|-&lt;br /&gt;
| ++ || 130 || Inkrement von Ganzzahlen || ++x || erhöht x um eins und gibt das Ergebnis nach der Erhöhung zurück&lt;br /&gt;
|-&lt;br /&gt;
| -- || 130 || Dekrement von Ganzzahlen || --x || vermindert x um eins und gibt das Ergebnis nach der Verminderung zurück&lt;br /&gt;
|-&lt;br /&gt;
| % || 200 || Prefix für Namen, welche als Konstante definiert sind || %pi || 3.141592653589793&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Suffix Operatoren===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Operator || Priorität || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| ++ || 135 || Inkrement von Ganzzahlen || x++ || erhöht x um eins und gibt den Variablenwert vor der Erhöhung zurück&lt;br /&gt;
|-&lt;br /&gt;
| -- || 135 || Dekrement von Ganzzahlen || x-- || vermindert x um eins und gibt den Variablenwert vor der Verminderung zurück&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==Klammern==&lt;br /&gt;
* () runde Klammern werden für mathematische Ausdrücke zur Klammerung verwendet&lt;br /&gt;
* {} geschwungene Klammer werden im Angabetext für die Namen der Datensätze verwendet&lt;br /&gt;
* [] eckige Klammern werden für Vektoren und Matrizen verwendet&lt;br /&gt;
&lt;br /&gt;
==Funktionen==&lt;br /&gt;
===Funktionen für Ganzzahlen===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| band || bitweises UND || band(4,12) || 4&lt;br /&gt;
|-&lt;br /&gt;
| bor  || bitweises ODER || bor(4,1) || 5&lt;br /&gt;
|-&lt;br /&gt;
| bxor || bitweises EXKLUSIV ODER || band(4,5) || 1&lt;br /&gt;
|-&lt;br /&gt;
| bimp || bitweises Parameter1 impliziert Parameter2 || bimp(13,10) || 8&lt;br /&gt;
|-&lt;br /&gt;
| binv || bitweises NICHT mit 8 bit || binv(0x0F) || 0xF0&lt;br /&gt;
|-&lt;br /&gt;
| shl || Schiebe Ganzzahl bitweise nach links || shl(8,2) || 32&lt;br /&gt;
|-&lt;br /&gt;
| shr || Schiebe Ganzzahl bitweise nach rechts || shr(8,2) || 2&lt;br /&gt;
|-&lt;br /&gt;
| div || Ganzzahldivision, Ergebnis wird abgeschnitten || div(5,2) || 2&lt;br /&gt;
|-&lt;br /&gt;
| mod || Modulo: Divisionsrest einer Ganzzahldivision || mod(5,2) || 1&lt;br /&gt;
|-&lt;br /&gt;
| inv8  || bitweise Invertieren und die letzten 8 Bit bestimmen  || inv8(0b1001) || 0b11110110&lt;br /&gt;
|-&lt;br /&gt;
| inv16 || bitweise Invertieren und die letzten 16 Bit bestimmen || inv16(0xF0)  || 0xFF0F&lt;br /&gt;
|-&lt;br /&gt;
| inv32 || bitweise Invertieren und die letzten 32 Bit bestimmen || inv32(0xF0)  || 0bFFFFFF0F&lt;br /&gt;
|-&lt;br /&gt;
| inv64 || bitweise Invertieren und die letzten 64 Bit bestimmen || inv64(0xF0)  || 0bFFFFFFFFFFFFFF0F&lt;br /&gt;
|-&lt;br /&gt;
| byte  || Zahl in eine Ganzzahl wandeln und die letzten 8bit der Zahl Abschneiden, Einheit geht verloren  || byte(34.2) || 34&lt;br /&gt;
|-&lt;br /&gt;
| word  || Zahl in eine Ganzzahl wandeln und die letzten 16bit der Zahl Abschneiden, Einheit geht verloren || word(34.2) || 34&lt;br /&gt;
|-&lt;br /&gt;
| int   || Zahl in eine Ganzzahl wandeln und die letzten 32bit der Zahl Abschneiden, Einheit geht verloren || int(34.2) || 34&lt;br /&gt;
|-&lt;br /&gt;
| long  || Zahl in eine Ganzzahl wandeln , Einheit geht verloren || long(34.2) || 34&lt;br /&gt;
|-&lt;br /&gt;
| [[parity]]  || Paritätsberechnung : parity(Parität,Codewortlänge,Datenwort[,Datenwort,....]) || parity(even,7,&amp;quot;xy&amp;quot;) || &lt;br /&gt;
|-&lt;br /&gt;
| [[blockparity]]  || Kreuz oder Blockparität : blockparity(Parität,Codewortlänge,Codewortanzahl,Datenwort[,Datenwort,....]) || blockparity(even,7,3,&amp;quot;abc&amp;quot;) || &lt;br /&gt;
|-&lt;br /&gt;
| [[bcd]]  || Wandelt in eine Long-Zahl in ein Feld aus BCD-kodierten Zahlen um || bcd(124) || [1,2,4]&lt;br /&gt;
|-&lt;br /&gt;
| [[code]] || Code aus mehreren Codeworten zusammensetzen : code(Codewortlänge,Datenwort[,Datenwort,....]) || code(5,4,3,5) || 0b1000001100101&lt;br /&gt;
|-&lt;br /&gt;
| [[hamming]] || Bestimmt den Hamming-Abstand von mehreren Codeworten || hamming(1,2,4,8,16) || 2&lt;br /&gt;
|-&lt;br /&gt;
| [[komplement]] ||  Bildet das Zweierkomplement mit einer negativen Zahl mit einer bestimmten Bitanzahl, fehlt die Bitanzahl, so wird ein 32Bit-2er-komplement gebildet || komplement(-5,8) || 0b11111011&lt;br /&gt;
|-&lt;br /&gt;
| [[bitstream]] || Erzeugt aus einer Ganzzahl einen Bitstrom als String mit einer definierten Anzahl von Bit (MSB werden nötigenfalls mit 0 gefüllt) : bitstream(Daten,Bitanzahl) || bitstream(0x184,12) || &amp;quot;000110000100&amp;quot;&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Funktionen für rationale und Ganzzahlen===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| kgV || berechnet das kleinste gemeinsame Vielfache von mehreren Zahlen || kgV(3,10) || 30&lt;br /&gt;
|-&lt;br /&gt;
| ggT || berechnet den größten gemeinsamen Teiler von mehreren Zahlen || ggT(12,10) || 2&lt;br /&gt;
|- &lt;br /&gt;
| isprim || prüft ob die angegebene Zahl eine Primzahl ist || isprim(13) || true&lt;br /&gt;
|-&lt;br /&gt;
| prims || zerlegt eine Ganzzahl in ihre Primfaktoren || prims(12) || [2,2,3]&lt;br /&gt;
|-&lt;br /&gt;
| defracmix || zerlegt eine rationale Zahl in einen gemischten Bruch aus ganzzahligem Summanden, Zähler und Nenner als Menge&amp;lt;br&amp;gt;Die erhaltene Menge kann mit dem Format-Modfier &#039;&#039;&#039;frac&#039;&#039;&#039; als gemischter Bruch dargestellt werden (siehe [[Zahlendarstellung]]) || defracmix(14/12)&amp;lt;br&amp;gt;defracmix(-15/12)&amp;lt;br&amp;gt;defracmix(3/12) || [1,2/12]&amp;lt;br&amp;gt;[-1,3,12]&amp;lt;br&amp;gt;[0,3,12] &lt;br /&gt;
|-&lt;br /&gt;
| defrac || zerlegt eine rationale Zahl in Zähler und Nenner als Menge &amp;lt;br&amp;gt;Die erhaltene Menge kann mit dem Format-Modfier &#039;&#039;&#039;frac&#039;&#039;&#039; als gemischter Bruch dargestellt werden || defrac(14/12) || [13,12]&lt;br /&gt;
|-&lt;br /&gt;
| frac || erzeugt aus einer Menge aus 2 oder 3 Elementen (von defrac) eine rationale Zahl || frac([3,7])&amp;lt;br&amp;gt;frac([1,2,3]) || 3/7 &amp;lt;br&amp;gt; 5/3&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===boolsche Funktionen===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| eq || gleich || eq(4,4) || true&lt;br /&gt;
|-&lt;br /&gt;
| eqruntime || symbolischer Vergleich, welcher &#039;&#039;&#039;symbolisch erst bei der Ergebnisberechnung&#039;&#039;&#039; ausgeführt wird. Muss verwendet werden, wenn bei Vergleichen symbolische Antworten von Schülern (Q0,Q1,...) verwendet werden.  || eqruntime(x+3*y,3*y+x) || true&lt;br /&gt;
|-&lt;br /&gt;
| ne || ungleich || ne(6,4) || true&lt;br /&gt;
|-&lt;br /&gt;
| ge || größer gleich || ge(6,4) || true&lt;br /&gt;
|-&lt;br /&gt;
| le || kleiner gleich || le(6,4) || false&lt;br /&gt;
|-&lt;br /&gt;
| gt || größer || gt(6,4) || true&lt;br /&gt;
|-&lt;br /&gt;
| lt || kleiner || lt(6,4) || false&lt;br /&gt;
|-&lt;br /&gt;
| between || prüft ob Parameter1 kleiner als Parameter2 und Parameter2 kleiner als Parameter 3 || between(3,4,5) || true&lt;br /&gt;
|-&lt;br /&gt;
| land || logisches UND || land(a&amp;lt;b,b&amp;lt;c) || &lt;br /&gt;
|-&lt;br /&gt;
| lor  || logisches ODER || lor(a&amp;lt;b,b&amp;lt;c) || &lt;br /&gt;
|-&lt;br /&gt;
| not  || logisches NICHT. Vorsicht ein symbolisches Ergebnis von Maxima liefert not als Prefix-Operator, welcher vom Parser nicht unterstützt wird ( Verwende statt dessen &#039;&#039;&#039;lnot&#039;&#039;&#039; ) || not(a&amp;lt;b) || &lt;br /&gt;
|-&lt;br /&gt;
| lnot  || logisches NICHT, wie not jedoch wird es von Maxima nicht ausgewertet || lnot(a&amp;lt;b) || &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===arithmetische Funktionen===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| double || Zahl ein eine Gleitkommazahl umwandeln, die Einheit geht dabei verloren || double(3.4V) || 3.4&lt;br /&gt;
|-&lt;br /&gt;
| numeric || verwirft die Einheit, wenn eine vorhanden ist und liefert nur den Zahlenwert || numeric(2.3mA) &amp;lt;br&amp;gt; numeric(5%)|| 0.0023 &amp;lt;br&amp;gt; 5&lt;br /&gt;
|-&lt;br /&gt;
| unit || gibt die SI-Einheit mit dem Zahlenwert 1 zurück || unit(3.1kA) &amp;lt;br&amp;gt; unit(5%) || 1A &amp;lt;br&amp;gt; 1%&lt;br /&gt;
|-&lt;br /&gt;
| cround  || Rundet die Zahl kaufmännisch, der zweite Parameter gibt die Anzahl der Kommastellen an, ohne 2.Parameter wird auf Ganzzahlen gerundet, bei komplexen Zahlen wird Betrag und Winkel in Grad gerundet. || cround(23.535,2)&amp;lt;br&amp;gt;cround(2.435arg34.5364°,1) || 23.54&amp;lt;br&amp;gt;2.4arg34.5°&lt;br /&gt;
|-&lt;br /&gt;
| ccround  || Rundet die Zahl kaufmännisch, der zweite Parameter gibt die Anzahl der Kommastellen an, bei komplexe Zahlen wird Real und Imaginärteil gerundet. || ccround(2.4534+5.645*%i,2) || 2.45+5.65i&lt;br /&gt;
|-&lt;br /&gt;
| round  || Rundet die Zahl kaufmännisch, aus Kompatibilitätsgründen zu Maxima hat round nur einen Parameter || round(23.535) || 24&lt;br /&gt;
|-&lt;br /&gt;
| ground || Rundet die Zahl auf die im zweiten Parameter angegebenen gültigen Ziffern || ground(2453.43,2) || 2500&lt;br /&gt;
|-&lt;br /&gt;
| floor  || Rundet auf die größte ganze Zahl, welche kleiner oder gleich x ist || floor(24.5) || 24&lt;br /&gt;
|-&lt;br /&gt;
| trunc  || Schneidet die Zahl nach dem Komma ab || trunc(24.5) || 24&lt;br /&gt;
|-&lt;br /&gt;
| ceiling || ceiling(x) Rundet auf die kleinste ganze Zahl, welche größer oder gleich x ist || ceiling(13.2) || 14&lt;br /&gt;
|-&lt;br /&gt;
| pow || Potenzfunktion || pow(2,3) || 8&lt;br /&gt;
|-&lt;br /&gt;
| par || Parallelschaltung von Widerständen || par(x,y) || x*y/(x+y)&lt;br /&gt;
|-&lt;br /&gt;
| min  || Minimum von mehrere Werten suchen || min(3,5,1) || 1&lt;br /&gt;
|-&lt;br /&gt;
| max  || Maximum von mehreren Werten suchen || max(3,5,1) ||  5&lt;br /&gt;
|-&lt;br /&gt;
| random  || Zufallszahl aus einem definierten Zahlenbereich random(minimal,maximal)&amp;lt;br&amp;gt;VORSICHT! Die Zufallszahl wird bei jedem Aufruf neu berechnet, weshalb sich der Wert bei jedem Anzeigevorgang einer Frage ändert. Sollte sich der berechnete Wert für eine Schülerangabe zwischen Fragestellung und Ergebniskontrolle nicht ändern dürfen (ist der Normalfall) muss man einen &#039;&#039;&#039;Datensatz statt einer Zufallszahl&#039;&#039;&#039; verwenden! &amp;lt;br&amp;gt; Zufallszahlen haben in der Ergebnisberechnung keinen Sinn, und sollten maximal für angezeigte zufällige Werte verwendet werden! || random(2,8) ||  3.4532&lt;br /&gt;
|-&lt;br /&gt;
| randomC  || komplexe Zufallszahl aus einem definierten Zahlenbereich für den Betrag&amp;lt;br&amp;gt;VORSICHT! Die Zufallszahl wird bei jedem Aufruf neu berechnet!  || randomC(2,8) ||  3.4532arg40.3°&lt;br /&gt;
|-&lt;br /&gt;
| signum  || Liefert das Vorzeichen einer Zahl (-1,0,1). Bei einer komplexen Zahl das Vorzeichen des Realteils. || signum(-4) || -1&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===erweiterte arithmetische Funktionen===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| sigma || Sprungfunktion: sigma(x) liefert 0 für x&amp;lt;0 und 1 für x&amp;gt;=0 || sigma(243.3) || 1&lt;br /&gt;
|-&lt;br /&gt;
| interpol || Interpolationsfunktion zwischen mehreren Stützpunkten in einem Koordinatensystem. &amp;lt;br&amp;gt; interpol(WerteX,WerteY,x) || interpol([0,1,2],[0,3,3],1.5) || 3&lt;br /&gt;
|-&lt;br /&gt;
| periodic || Erzeugt aus einer beliebigen Funktion zwischen 0 und Periodendauer eine periodische Funktion &amp;lt;br&amp;gt; periodic(Variable,Periodendauer,Funktion)&amp;lt;br&amp;gt; periodic(Variable,Periodendauer,Funktionsperiodendauer,Funktion) || ch1(t):periodic(t,5ms,2&#039;Vms-2&#039;*t^2) &amp;lt;br&amp;gt; ch1(t):periodic(t,5ms,1,2V*t^2) || :[[Datei:ClipCapIt-190318-113524.PNG|100px]] &amp;lt;br&amp;gt; :[[Datei:ClipCapIt-190318-113644.PNG|100px]]&lt;br /&gt;
|-&lt;br /&gt;
| numint || numerische Integration &amp;lt;br&amp;gt; numint(untereGrenze,obereGrenze,funktion,Variable)&amp;lt;br&amp;gt; numint(untereGrenze,obereGrenze,funktion,Variable,punkteAnzahl) || numint(0,2pi,sin(t),t) || 0&lt;br /&gt;
|-&lt;br /&gt;
| numdif || numerisches Differenzieren einer Funktion &amp;quot;funktion&amp;quot; nach einer Variablen &amp;quot;Variable&amp;quot; an der Stelle &amp;quot;position&amp;quot; mit einer Differenz der Variablen von &amp;quot;differenz&amp;quot; &amp;lt;br&amp;gt; numdif(position,funktion,Variable,differenz) || numdif(0,sin(t),t,0.01) || 1&lt;br /&gt;
|-&lt;br /&gt;
| solve || löst eine Gleichung oder ein Gleichungssystem nach einer oder mehrerer Variablen || solve([2*x+y=3,x-y=0],[x,y]) || [ [ x=1,y=1 ] ]&lt;br /&gt;
|-&lt;br /&gt;
| solvevalue || löst eine Gleichung oder ein Gleichungssystem nach einer Variablen und liefert genau die erste Lösung wenn sie numerisch berechenbar ist || solvevalue([ 2*x+y=3,x-y=0 ],[ x,y ],x)  || 1&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Stringfunktionen===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| dechex || Zahl in eine Ganzzahl wandeln und als Hexadezimal-String ausgeben || dexhex(12) || &amp;quot;0xC&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| chr || Bestimmt die Zeichen mit dem ASC-II-Code der Long-Parameter und setzt daraus einen String zusammen. || chr(0x65,105) || &amp;quot;ei&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| val || Bestimmt den ASC-II-Code des ersten Zeichens welches als String-Parameter übergeben wurde.|| val(&amp;quot;a&amp;quot;) || 97&lt;br /&gt;
|-&lt;br /&gt;
| strcat || Fügt mehrere Strings zusammen.|| strcat(&amp;quot;a&amp;quot;,&amp;quot;b&amp;quot;) || &amp;quot;ab&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===trigonometrische Funktionen===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| sin || Sinus || sin(%pi/2) || 1&lt;br /&gt;
|-&lt;br /&gt;
| cos || Cosinus || cos(%pi/2) || 0&lt;br /&gt;
|-&lt;br /&gt;
| tan || Tangens || tan(%pi/4) || 1&lt;br /&gt;
|-&lt;br /&gt;
| asin || Arcus-Sinus || asin(1) || %pi/2&lt;br /&gt;
|-&lt;br /&gt;
| arcsin || Arcus-Sinus || asin(1) || %pi/2&lt;br /&gt;
|-&lt;br /&gt;
| acos || Arcus-Cosinus || acos(1) || 0&lt;br /&gt;
|-&lt;br /&gt;
| arccos || Arcus-Cosinus || acos(1) || 0&lt;br /&gt;
|-&lt;br /&gt;
| atan || Arcus-Tangens || atan(1) || %pi/4&lt;br /&gt;
|-&lt;br /&gt;
| arctan || Arcus-Tangens || arctan(1) || %pi/4&lt;br /&gt;
|-&lt;br /&gt;
| atan2 || Arcus-Tangens atan2(x,y)=arctan(y/x) || atan2(-2,-2) || -%pi*3/4&lt;br /&gt;
|-&lt;br /&gt;
| arctan2 || Arcus-Tangens arctan2(x,y)=arctan(y/x) || arctan2(-2,-2) || -%pi*3/4&lt;br /&gt;
|-&lt;br /&gt;
| sinh || Sinus-Hyperbolicus || sinh(1) || 1.1752012&lt;br /&gt;
|-&lt;br /&gt;
| cosh || Cosinus-Hyperbolicus || cosh(1) || 1.5430806&lt;br /&gt;
|-&lt;br /&gt;
| tanh || Tangens-Hyperbolicus || tanh(1) || 0.7615941&lt;br /&gt;
|-&lt;br /&gt;
| coth || Cotangens-Hyperbolicus || coth(1) || 1.313035&lt;br /&gt;
|-&lt;br /&gt;
| asinh || Area-Sinus-Hyperbolicus || asinh(1.1752012) || 1&lt;br /&gt;
|-&lt;br /&gt;
| acosh || Area-Cosinus-Hyperbolicus || acosh(1.5430806) || 1&lt;br /&gt;
|-&lt;br /&gt;
| atanh || Area-Tangens-Hyperbolicus || atanh(0.7615941) || 1&lt;br /&gt;
|-&lt;br /&gt;
| acoth || Area-Cotangens-Hyperbolicus || acoth(1.313035) || 1&lt;br /&gt;
|-&lt;br /&gt;
| [[csin]] || Erzeugt aus einer komplexen Zahl (Effektivwert) und einer Frequenz einen Sinusfunktion in der Zeit || csin(U) || sqrt(2)*cabs(U)*sin(2*pi*f*t+carg(U))&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Exponentialfunktionen===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| pow || Potenzfunktion || pow(2,3) || 8&lt;br /&gt;
|-&lt;br /&gt;
| exp|| Exponentialfunktion || exp(1) || %e&lt;br /&gt;
|-&lt;br /&gt;
| log || natürlicher Logarythmus || log(%e) || 1&lt;br /&gt;
|-&lt;br /&gt;
| ln || natürlicher Logarythmus || ln(%e) || 1&lt;br /&gt;
|-&lt;br /&gt;
| log10 || Logarythmus zur Basis 10 || log10(100) || 2&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===komplexe Zahlen===&lt;br /&gt;
Die Funktionen zu komplexen Zahlen werden (anders als in Maxima) nur ausgewertet wenn das Ergebnis numerisch berechenbar ist, ansonsten bleibt die Funktion symbolisch erhalten.&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| abs || Liefert den Absolutbetrag einer komplexen Zahl || abs(3+4*%i) || 5&lt;br /&gt;
|-&lt;br /&gt;
| cabs || Liefert den Absolutbetrag einer komplexen Zahl || cabs(3+4*%i) || 5&lt;br /&gt;
|-&lt;br /&gt;
| carg || Liefert das Argument einer komplexen Zahl || carg(4*%e^(3*%i)) || 3&lt;br /&gt;
|-&lt;br /&gt;
| realpart || Liefert den Realteil einer komplexen Zahl || abs(3+4*%i) || 3&lt;br /&gt;
|-&lt;br /&gt;
| imagpart || Liefert den Imaginärteil einer komplexen Zahl || abs(3+4*%i) || 4&lt;br /&gt;
|-&lt;br /&gt;
| conjugate || Liefert die konjugiert komplexe Zahl einer komplexen Zahl || abs(3+4*%i) || 3-4*%i&lt;br /&gt;
|-&lt;br /&gt;
| rectform || wandelt die komplexe Zahl in eine Ansicht mit Real- und Imaginärteil || 3+4*%i || 3+4*%i&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===statistische Funktionen===&lt;br /&gt;
Die Funktionen funktionieren nur ohne Einheiten.&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| factorial || Liefert die Fakultät einer positiven ganzen Zahl || factorial(5) || 120&lt;br /&gt;
|-&lt;br /&gt;
| binomial || Liefert den Binomialkoeffizienten von zwei positiven ganzen Zahlen || binomial(5,2) || 10&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Mengen-Funktionen===&lt;br /&gt;
Mengen werden intern als Vektoren verarbeitet und sind deshalb auch direkt durch Vektoren ersetzbar. Auch alle Vektor-Funktionen sind somit auch auf Mengen anwendbar und umgekehrt.&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| setget || liefert ein Element einer Menge oder einer Matrix (Menge von Mengen) || setget([12,13,14],1) &amp;lt;br&amp;gt; setget(matrix([9,2],[3,4]),0,1) || 13 &amp;lt;br&amp;gt; 2 &lt;br /&gt;
|-&lt;br /&gt;
| setset || setzt ein Element einer Menge oder einer Matrix (Menge von Mengen) || setset([12,13,14],1,35) &amp;lt;br&amp;gt; setset(matrix([9,2],[3,4]),0,0,-9) || [12,35,14] &amp;lt;br&amp;gt; [[-9,2],[3,4]]&lt;br /&gt;
|-&lt;br /&gt;
| setinsert || fügt ein Element in eine Menge an eine gegebene Stelle ein || setinsert([12,13,14],1,25) || [12,25,13,14]&lt;br /&gt;
|-&lt;br /&gt;
| setremove || löscht ein Element einer Menge || setremove([12,13,14],1) || [12,14]&lt;br /&gt;
|-&lt;br /&gt;
| setmedian || Liefert den Median einer Menge || setmedian(4,3,1,5,6) || 4&lt;br /&gt;
|-&lt;br /&gt;
| setsort || Sortiert die Elemente einer Menge aufsteigend || setsort([3,-3,2,0,5,2]) || [-3,0,2,2,3,5]&lt;br /&gt;
|-&lt;br /&gt;
| setsortnd || Sortiert die Elemente einer Menge aufsteigend und entfernt alle mehrfach vorkommenden Elemente || setsortnd([31,-3,2,31,0,5,2]) || [-3,0,2,5,31]&lt;br /&gt;
|-&lt;br /&gt;
| setcount || Bestimmt die Anzahl wie oft ein Element in einer Menge vorkommt oder die Anzahl der Elemente der Menge || setcount([31,-3,2,31,0,5,2],31) &amp;lt;br&amp;gt; setcount([2,5,3,6]) || 2 &amp;lt;br&amp;gt; 4&lt;br /&gt;
|-&lt;br /&gt;
| setmodus || Liefert das Element einer Menge, welches am öftesten vorkommt oder die Elemente als Menge wenn mehrere Elemente gleich oft vorkommen || setmodus([3,-3,2,0,5,2]) || 2&lt;br /&gt;
|-&lt;br /&gt;
| setreverse || Dreht die Reihenfolge einer Menge um || setreverse([3,-3,2,0,5,2]) || [2,5,0,2,-3,3]&lt;br /&gt;
|-&lt;br /&gt;
| setnd || Löscht alle Duplikate aus der Menge || setnd([3,-3,2,0,5,2]) || [3,-3,2,0,5]&lt;br /&gt;
|-&lt;br /&gt;
| setshuffle || Mischt eine  Menge in eine zufällige Reihenfolge || setshuffle([3,-3,2,0,5,2]) || [2,0,5,-3,2,3]&lt;br /&gt;
|-&lt;br /&gt;
| setmittel || Bestimmt den Mittelwert einer Menge || setmittel([1,3,2,4]) || 2.5&lt;br /&gt;
|-&lt;br /&gt;
| setgeomittel || Bestimmt das geometrische Mittelwert einer Menge aus positiven reellen Zahlen || setgeomittel([10,20,30]) || 18.171206&lt;br /&gt;
|-&lt;br /&gt;
| setvarianz || Bestimmt die empirische Varianz einer Menge || setvarianz([3,1,2,5,4]) || ((3-3)^2+(1-3)^2+(2-3)^2+(5-3)^2+(4-3)^2)/5=2&lt;br /&gt;
|-&lt;br /&gt;
| setquadratmittel || Bestimmt den quadratischen Mittelwert einer Menge || setquadratmittel([10,20,30]) || 21.6025&lt;br /&gt;
|-&lt;br /&gt;
| setsum || Bestimmt die Summe aller Werte einer Menge || setsum([1,3,2,4]) || 10&lt;br /&gt;
|-&lt;br /&gt;
| setprod || Bestimmt das Produkt aller Werte einer Menge || setprod([1,3,2,4]) || 24&lt;br /&gt;
|-&lt;br /&gt;
| setunion || Fügt mehrere Mengen zu einer neuen Menge zusammen || setunion([1,3,2,4],[3,7]) || {1,3,2,4,3,7}&lt;br /&gt;
|-&lt;br /&gt;
| setunionnd || Fügt mehrere Mengen zu einer neuen Menge zusammen, sortiert diese und entfernt alle mehrfachen Elemente || setunionnd([1,3,2,4],[3,7]) || {1,2,3,4,7}&lt;br /&gt;
|-&lt;br /&gt;
| setcut || Bildet die Schnittmenge aus mehreren Mengen || setcut([1,3,2,4],[3,7]) || {3}&lt;br /&gt;
|-&lt;br /&gt;
| setcompare || vergleicht zwei Mengen miteinander, wobei die Reihenfolge egal ist  || setcompare([1,3,2,4],[3,7]) &amp;lt;br&amp;gt; setcompare([1,3,2],[1,2,3]) &amp;lt;br&amp;gt; setcompare([1,3,2],[1,3,2,3]) &amp;lt;br&amp;gt; setcompare([1,2,3],[1,2,3])  || false &amp;lt;br&amp;gt; true &amp;lt;br&amp;gt; false &amp;lt;br&amp;gt; true&lt;br /&gt;
|-&lt;br /&gt;
| setcomparend || vergleicht zwei Mengen miteinander, wobei die Reihenfolge egal ist und doppelte Werte als einfach behandelt werden. || setcomparend([1,3,2,4],[3,7]) &amp;lt;br&amp;gt; setcomparend([1,3,2],[1,2,3]) &amp;lt;br&amp;gt; setcomparend([1,3,2],[1,3,2,3]) &amp;lt;br&amp;gt; setcomparend([1,2,3],[1,2,3])  || false &amp;lt;br&amp;gt; true &amp;lt;br&amp;gt; true &amp;lt;br&amp;gt; true&lt;br /&gt;
|-&lt;br /&gt;
| setpartof || prüft ob die erste Menge eine Teilmenge der zweite Menge ist wobei die Reihenfolge egal ist aber mehrfache Werte berücksichtigt werden  || setpartof([1,4],[1,3,7]) &amp;lt;br&amp;gt; setpartof([1,3],[1,2,3]) &amp;lt;br&amp;gt; setpartof([1,3,3],[1,3,5,7]) &amp;lt;br&amp;gt; setpartof([1,4,4],[1,2,3,4])  || false &amp;lt;br&amp;gt; true &amp;lt;br&amp;gt; false &amp;lt;br&amp;gt; false&lt;br /&gt;
|-&lt;br /&gt;
| setpartofnd || prüft ob die erste Menge eine Teilmenge der zweite Menge ist wobei die Reihenfolge und mehrfache Werte egal sind  || setpartofnd([1,4],[1,3,7]) &amp;lt;br&amp;gt; setpartofnd([1,3],[1,2,3]) &amp;lt;br&amp;gt; setpartofnd([1,3,3],[1,3,5,7]) &amp;lt;br&amp;gt; setpartofnd([1,4,4],[1,2,3,4])  || false &amp;lt;br&amp;gt; true &amp;lt;br&amp;gt; true &amp;lt;br&amp;gt; true&lt;br /&gt;
|-&lt;br /&gt;
| setgetmin || Liefert den kleinsten Wert einer Menge || setgetmin([1,3,-2,4]) || -2&lt;br /&gt;
|-&lt;br /&gt;
| setgetmax || Liefert den größten Wert einer Menge || setgetmax([1,3,-2,4]) || 4&lt;br /&gt;
|-&lt;br /&gt;
| setremovefirst || Entfernt den ersten Wert einer Menge || setremovefirst([1,3,-2,4]) || {3,-2,4}&lt;br /&gt;
|-&lt;br /&gt;
| setremovelast || Entfernt den letzten Wert einer Menge || setremovelast([1,3,-2,4]) || {1,3,-2}&lt;br /&gt;
|-&lt;br /&gt;
| setgetfirst || Liefert den ersten Wert einer Menge || setgetfirst([1,3,-2,4]) || 1&lt;br /&gt;
|-&lt;br /&gt;
| setgetlast || Liefert den letzten Wert einer Menge || setgetlast([1,3,-2,4]) || 4&lt;br /&gt;
|-&lt;br /&gt;
| setsub || setsub(M,x,y) Liefert eine Teilmenge von M der Elemente vom index x bis zum Index y || setsub([1,3,-2,4],1,2) || {3,-2}&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Typ-Funktionen===&lt;br /&gt;
Werden nur dann ausgewertet wenn der Parameter ein numerischer Wert oder eine Menge ist.&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| isset || Prüft ob es sich um eine Menge handelt. || isset([12,13,14]) || true &lt;br /&gt;
|-&lt;br /&gt;
| issetnumeric || Prüft ob es sich um eine Menge aus reellen Zahlen handelt. || issetnumeric([12,13.4,14]) || true &lt;br /&gt;
|-&lt;br /&gt;
| issetlong || Prüft ob es sich um eine Menge aus ganzen Zahlen handelt. || issetlong([12,13,14]) || true &lt;br /&gt;
|-&lt;br /&gt;
| islong || Prüft ob es sich um eine ganze Zahl handelt. || islong(12) || true &lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Algebra===&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;Hinweis:&#039;&#039; Die Indizes eines Vektors oder einer Matrix werden in Letto ausgehend von 0 weg gezählt.  &lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| matrix || erzeugt aus mehreren gleich langen Vektoren eine Matrix || matrix([1,2],[3,4]) || [[1,2],[3,4]]&lt;br /&gt;
|-&lt;br /&gt;
| inv || invertiert eine quadratische Matrix oder bildet 1/x || inv(matrix([1,2],[3,4])) || [[-2,1],[3/2,-1/2]]&lt;br /&gt;
|-&lt;br /&gt;
| vget || liefert ein Element eines Vektors oder einer Matrix || vget([12,13,14],1) &amp;lt;br&amp;gt; vget(matrix([9,2],[3,4]),0,1) || 13 &amp;lt;br&amp;gt; 2 &lt;br /&gt;
|-&lt;br /&gt;
| vset || setzt ein Element eines Vektors oder einer Matrix || vset([12,13,14],1,35) &amp;lt;br&amp;gt; vset(matrix([9,2],[3,4]),0,0,-9) || [12,35,14] &amp;lt;br&amp;gt; [[-9,2],[3,4]]&lt;br /&gt;
|-&lt;br /&gt;
| vinsert || fügt ein Element in einen Vektor an eine gegebene Stelle ein || vinsert([12,13,14],1,25) || [12,25,13,14]&lt;br /&gt;
|-&lt;br /&gt;
| vremove || löscht ein Element eines Vektors || vremove([12,13,14],1) || [12,14]&lt;br /&gt;
|-&lt;br /&gt;
| vabs || Berechnet den Betrag eines Vektors || vabs([3,4]) || 5&lt;br /&gt;
|-&lt;br /&gt;
| vin || Berechnet das innere Produkt von 2 Vektoren || vin([1,2,3],[4,5,6]) || 32&lt;br /&gt;
|-&lt;br /&gt;
| vex || Berechnet das ex-Produkt von 2 Vektoren im 3-dimensionalen Raum || vex([1,2,3],[4,5,6]) || [-3,6,-3]&lt;br /&gt;
|-&lt;br /&gt;
| mprod || Bildet das Matrixprodukt aus zwei Matrizen || mprod([[1,2],[3,4]],[[5,6],[7,8]]) || [[19,22],[43,50]]&lt;br /&gt;
|-&lt;br /&gt;
| mtrans || Bildet die transponierte Matrix || mtrans([[1,2],[3,4]]) || [[1,3],[2,4]]&lt;br /&gt;
|-&lt;br /&gt;
| minv || Bildet die inverse Matrix || minv([[1,2],[3,4]]) || [[-2,1],[3/2,-1/2]]&lt;br /&gt;
|-&lt;br /&gt;
| mdet || Bildet die Determinante einer quadratischen Matrix || mdet([[1,2],[3,4]]) || -2&lt;br /&gt;
|-&lt;br /&gt;
| vindex || vindex(v,x) liefert den Index des Elementes eines Vektors, welcher am nächsten bei x liegt || vindex([10,30,70],40) || 1 &lt;br /&gt;
|-&lt;br /&gt;
| vindexup || vindexup(v,x) liefert den Index des Elementes eines Vektors, welcher größer oder gleich x ist || vindexup([10,30,70],40) || 2 &lt;br /&gt;
|-&lt;br /&gt;
| vindexdown || vindexdown(v,x) liefert den Index des Elementes eines Vektors, welcher kleiner oder gleich x ist || vindexdown([10,30,70],60) || 1&lt;br /&gt;
|-&lt;br /&gt;
| verweis || verweis(M,x,n) liefert den Wert der n-ten Spalte (ohne Angabe von n die 2.Spalte) einer Matrix M wo x dem Wert in der ersten Spalte am nächsten liegt || verweis([[10,33],[20,77],[30,99]],21) || 77&lt;br /&gt;
|-&lt;br /&gt;
| verweisup || verweisup(M,x,n) liefert den Wert der n-ten Spalte (ohne Angabe von n die 2.Spalte) einer Matrix M wo x dem Wert in der ersten Spalte am nächsten liegt || verweisup([[10,33],[20,77],[30,99]],21) || 99&lt;br /&gt;
|-&lt;br /&gt;
| verweisdown || verweisdown(M,x,n) liefert den Wert der n-ten Spalte (ohne Angabe von n die 2.Spalte) einer Matrix M wo x dem Wert in der ersten Spalte am nächsten liegt || verweisdown([[10,33],[20,77],[30,99]],27,1) || 77&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Variable===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| kill || löscht Variable aus dem Variablenspeicher || kill(x,y) &amp;lt;br&amp;gt; kill(allbut(z)) &amp;lt;br&amp;gt; kill(all) || löscht die Variablen x und y &amp;lt;br&amp;gt; löscht alle Variablen mit Ausnahme von y &amp;lt;br&amp;gt; löscht alle Variable&lt;br /&gt;
|-&lt;br /&gt;
| allbut || Liefert eine Liste aller Variablen des Parsers als Menge(Vektor) mit Ausnahme der als Parameter angegebenen Variablen || allbut(x,y) || [a,b,c]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Auswertung und Programmierung===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| ev || Auswertung eines Ausdruckes, als Parameter können Gleichungen angegeben werden, welche dann in den Ausdruck eingesetzt werden || ev(x*y,y=4) || x*4&lt;br /&gt;
|-&lt;br /&gt;
| evruntime || Auswertung eines Ausdruckes, als Parameter können Gleichungen angegeben werden, welche dann in den Ausdruck eingesetzt werden. Das &#039;&#039;&#039;Einsetzen erfolgt erst bei der Ergebnisberechnung&#039;&#039;&#039;! || evruntime(x*y,y=4) || x*4&lt;br /&gt;
|-&lt;br /&gt;
| nv || Auswertung eines Ausdruckes, als Parameter können Gleichungen angegeben werden, welche dann in den Ausdruck eingesetzt werden. Im Gegensatz zu ev werden bestehende Variable nur in den Gleichungen, aber nicht im Ausdruck selbst eingesetzt! || ev(x*y,y=4) || x*4&lt;br /&gt;
|-&lt;br /&gt;
| [[if]] || Bedingungsfunktion if(bedingung,wahrwert,falschwert) || if(4&amp;lt;6,10,12) || 10&lt;br /&gt;
|-&lt;br /&gt;
| [[if|wenn]] || Bedingungsfunktion wenn(bedingung,wahrwert,falschwert). Im Prinzip identisch wie if, jedoch kann if mit Maxima nicht verwendet werden. || wenn(4&amp;lt;6,10,12) || 10&lt;br /&gt;
|-&lt;br /&gt;
| plugin || Ruft die Berechnnugsmethode des Plugins, welches als erster Stringparameter angegeben werden muss auf und übergibt die weiteren Parameter an die Berechnungsmethode des Plugins.  || plugin(&amp;quot;plugin1&amp;quot;,3) || führt die Berechnung des Plugins mit dem Namen &amp;quot;plugin1&amp;quot; mit dem Parameter 3 aus. &lt;br /&gt;
|-&lt;br /&gt;
| symbolic || Bei allen Variablen innerhalb von symbolic werden nur nicht-numerische Werte eingesetzt! Wird vor allem im Angebtext bei {= } verwendet || symbolic(x^2+2) || x^2+2&lt;br /&gt;
|-&lt;br /&gt;
| runtime || Bei dieser Funktion wird &#039;&#039;&#039;erst bei der Berechnung der Frageantwort, nach dem Einsetzen der Datensätze&#039;&#039;&#039; das &#039;&#039;&#039;komplette Maxima-Feld&#039;&#039;&#039; mit dem internen &#039;&#039;&#039;Parser&#039;&#039;&#039; durchgerechnet und danach der Parameter-Ausdruck berechnet. Dadurch kann man bei komplizierten Berechnungen eine sehr aufwendige symbolische Berechnung verhindern! || runtime(U) || &lt;br /&gt;
|-&lt;br /&gt;
| dataset || liefert alle Datensätze einer Datensatz-Definition in einem Vektor || dataset(x) || &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Optimierung der Ausdrücke===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| opt   || Ausdruck wird vollständig optimiert, die Funktion wird ausgewertet und ist danach nicht mehr vorhanden || opt(x+x) || 2*x&lt;br /&gt;
|-&lt;br /&gt;
| ratsimp || Ausdruck wird vollständig optimiert, die Funktion wird ausgewertet und ist danach nicht mehr vorhanden (wie opt) || ratsimp(x+x) || 2*x&lt;br /&gt;
|-&lt;br /&gt;
| noopt || Ausdruck wird nicht optimiert, bleibt also so erhalten wie angegeben. Die Funktion an sich geht aber verloren. || noopt(2+3) || 2+3&lt;br /&gt;
|-&lt;br /&gt;
| lopt || Im Maximafeld bleibt die Funktion ohne Funktion erhalten, im Ergebnis {=  wird die Funktion entfernt und in der Lösung wird nach dem Einsetzen der Werte der Ausdruck vollständig optimiert. || lopt(x+3)  || lopt(x+3)  &lt;br /&gt;
|-&lt;br /&gt;
| lnoopt || Im Maximafeld bleibt die Funktion ohne Funktion erhalten, im Ergebnis {=  wird die Funktion entfernt und in der Lösung wird nach dem Einsetzen der Werte der Ausdruck nicht mehr optimiert. || lnoopt(x+3+2)  || lnoopt(x+5) &lt;br /&gt;
|-&lt;br /&gt;
| loptnumeric || Im Maximafeld bleibt die Funktion ohne Funktion erhalten, im Ergebnis {=  wird die Funktion entfernt und in der Lösung wird nach dem Einsetzen der Werte der Ausdruck nur numerisch optimiert. || loptnumeric(x+y)  || loptnumeric(x+y)&lt;br /&gt;
|-&lt;br /&gt;
| aopt || Bei Maxima und Lösung geht die Funktion verloren, nur innerhalb von noopt bleibt sie erhalten. Bei der Anzeige führt sie zur Optimierung das Ausdruckes nach Einsetzen der Datensätze. || aopt(x)  || x&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Anzeige und Lösungsberechnung===&lt;br /&gt;
Diese Funktionen haben entweder einen oder zwei Parameter. Der erste Parameter stellt die darzustellende Funktion dar, der zweite Parameter, welcher eine Ganzzahl sein muss, gibt an, wie die Darstellung erfolgen soll. Wird der 2.Parameter weggelassen, so wird er als 0 interpretiert.&lt;br /&gt;
* 0 Bei Berechnungen hat die Funktion keine Wirkung, bleibt aber als Funktion erhalten. Bei Lösung und Anzeige wird die Funktion ausgewertet&lt;br /&gt;
* 1 Wirkt nur bei Lösung, bei Berechnungen bleibt die Funktion erhalten&lt;br /&gt;
* 2 Wirkt nur bei Anzeige, bei Berechnungen bleibt die Funktion erhalten&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| viewpow || Gibt alle Wurzeln als Potenzen aus, und stellt alle Potenzen im Nenner als negativen Exponenten im Zähler dar || viewpow(sqrt(x)) || x^(1/2)&lt;br /&gt;
|-&lt;br /&gt;
| viewsqrt || Gibt Potenzen welche als Wurzel darstellbar sind auch als als Wurzeln mit der Funktion sqrt oder root aus || viewsqrt(x^(1/2)) || sqrt(x)&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Spezialfunktionen Technik===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| color || Widerstandsfarbcode berechnen.&amp;lt;br&amp;gt;1. Parameter muss ein Double sein&amp;lt;br&amp;gt; 2.Parameter sind die Anzahl der Farbringe&amp;lt;br&amp;gt; 3.Parameter ist der Modus (0..2-St,1..3St,2..Deutsch,3..2StEng,4..3StEng,5..Englisch || color(120,3,2) || braun,rot,braun&lt;br /&gt;
|-&lt;br /&gt;
| parsecolor || Wandelt einen String mit einem Widerstandsfarbcode in einen Double-Wert || parsecolor(&amp;quot;br-rt-br&amp;quot;) || 120&lt;br /&gt;
|-&lt;br /&gt;
| ip || Wandelt eine Long-Zahl in einen String als IP-Adresse um, oder 4 Byte-Zahlen in eine Long Zahl als IP-32-bit-Adresse || ip(1534536453)&amp;lt;br&amp;gt;ip(10,20,30,40) || &amp;quot;91.119.43.5&amp;quot;&amp;lt;br&amp;gt;169090600&lt;br /&gt;
|-&lt;br /&gt;
| parseip || Wandelt einen String mit einer IP-Adresse in einen Long-Wert || parseip(&amp;quot;91.119.43.5&amp;quot;) || 1534536453&lt;br /&gt;
|-&lt;br /&gt;
| e12 || rundet einen Zahlenwert auf den nächstliegenden Wert der [[Normreihe]] E12.&amp;lt;br&amp;gt;Die Rundung erfolgt geometrisch d.h. der Quotient zwischen Normwert und zu rundendem Wert wird minimiert. || e12(700Ohm) || 680Ohm&lt;br /&gt;
|-&lt;br /&gt;
| e12up || rundet einen Zahlenwert auf den nächstgrößerern Wert der [[Normreihe]] E12 || e12(670Ohm) || 680Ohm&lt;br /&gt;
|-&lt;br /&gt;
| e12down || rundet einen Zahlenwert auf den nächstkleineren Wert der [[Normreihe]] E12 || e12(700Ohm) || 680Ohm&lt;br /&gt;
|-&lt;br /&gt;
| ise12 || prüft ob der als Parameter übergebenen Wert ein Wert der [[Normreihe]] E12 ist.|| ise12(680Ohm) || true&lt;br /&gt;
|-&lt;br /&gt;
| norm || rundet einen Zahlenwert auf den nächstliegenden Wert einer gegebenen Wertereihe oder [[Normreihe]].&amp;lt;br&amp;gt;Die Rundung erfolgt geometrisch wenn es sich um eine logarithmisch aufgeteilte Normreihe handelt, oder sonst linear. || norm(700Ohm,E12) || 680Ohm&lt;br /&gt;
|-&lt;br /&gt;
| normup || rundet einen Zahlenwert auf den nächstgrößerern Wert einer gegebenen Wertereihe oder [[Normreihe]]. || normup(730Ohm,[1,3,5,8]) || 800Ohm&lt;br /&gt;
|-&lt;br /&gt;
| normdown || rundet einen Zahlenwert auf den nächstkleineren Wert einer gegebenen Wertereihe oder [[Normreihe]]. || normdown(700Ohm,E12) || 680Ohm&lt;br /&gt;
|-&lt;br /&gt;
| isnorm || prüft ob der als Parameter übergebenen Wert ein Wert einer gegebenen Wertereihe oder [[Normreihe]] ist. || isnorm(680Ohm,E12) || true&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=Ergebnisvorschau=&lt;br /&gt;
Aufruf dieses Dialoges über den [[Datei:ClipCapIt-180904-181443.PNG|25px]]-Button aus dem [[Toolbar]].&lt;br /&gt;
&lt;br /&gt;
Die Berechnungen aus dem Maxima-Feld bei der [[Beispiele Bearbeiten|Fragendefinition]] können auch über den [[Datei:ClipCapIt-180904-182120.PNG|25px]]-Button durchgeführt werden. Hier wird die Berechnung durchgeführt und das Lösungsfeld ausgefüllt, aber der Rechengang wird nicht angezeigt. &lt;br /&gt;
:[[Datei:ClipCapIt-180904-181415.PNG|400px]]&lt;br /&gt;
&lt;br /&gt;
Beim Fehlersuchen oder bei komplexen Berechnungen kann es aber hilfreich sein, den ganzen Maxima-Lösungsweg zu sehen, dies ist über den [[Datei:ClipCapIt-180904-181443.PNG|25px]]-Button möchlich.&lt;br /&gt;
&lt;br /&gt;
[[Kategorie:Berechnung]]&lt;/div&gt;</summary>
		<author><name>Ckral</name></author>
	</entry>
	<entry>
		<id>https://wiki.letto.at/wiki/index.php?title=Berechnungen&amp;diff=1935</id>
		<title>Berechnungen</title>
		<link rel="alternate" type="text/html" href="https://wiki.letto.at/wiki/index.php?title=Berechnungen&amp;diff=1935"/>
		<updated>2019-06-10T20:19:40Z</updated>

		<summary type="html">&lt;p&gt;Ckral: Rechtschreibfehler korrigiert&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Allgemeines =&lt;br /&gt;
Berechnungen werden in mehreren Bereichen der Frageerstellung verwendet und bilden die Basis für [[Fragetypen#Berechnungsfrage|Berechnungsfrage]] und [[Fragetypen#Mehrfachberechnungsfrage|Mehrfachberechnungsfrage]].&lt;br /&gt;
&lt;br /&gt;
Alle Berechnungen unterstützen [[Einheit|Einheiten]] und symbolische Auswertung.&lt;br /&gt;
&lt;br /&gt;
=Grundsätzlicher Aufbau der Ergebnis-Berechnung bei Fragen mit Berechnungen=&lt;br /&gt;
[[Datei:BerechnungSchema.png|mini|hochkant=2.0|Schema der Berechnung]]&lt;br /&gt;
Die Berechnung und die Beurteilung einer Frage teilt sich in 3 grundsätzliche Schritte:&lt;br /&gt;
* Berechnnug der geschlossenen Lösung (Formel) aus den Maxima-Feldern &lt;br /&gt;
* Berechnung des Ergebnisses einer Frage durch Einsetzen der Zahlenwerte aus den Datensätzen in die geschlossene Lösung&lt;br /&gt;
* Beurteilung der Schülereingabe durch Vergleich mit dem Ergebnis&lt;br /&gt;
&lt;br /&gt;
=Konstante=&lt;br /&gt;
Alle Konstante welche in Letto definiert sind beginnen mit einem Prozentzeichen. Verwendet man den Variablennamen ohne Prozenzzeichen, so wird die Konstante wie eine Variable mit dem Wert der Konstanten verwendet.&lt;br /&gt;
&lt;br /&gt;
Liste der definierten Konstanten:&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%&amp;quot; &lt;br /&gt;
| Name || Wert || Beschreibung&lt;br /&gt;
|-&lt;br /&gt;
| %i || i || komplexer Parameter als Lösung der Gleichung x^2=-1&lt;br /&gt;
|-&lt;br /&gt;
| %j || i || komplexer Parameter als Lösung der Gleichung x^2=-1&lt;br /&gt;
|-&lt;br /&gt;
| %e || 2.718281828459045 || Eulersche Zahl &lt;br /&gt;
|-&lt;br /&gt;
| %pi || 3.141592653589793 || Kreiszahl&lt;br /&gt;
|-&lt;br /&gt;
| %mu0 || magnetische Feldkonstante || 4*%pi*1E-7&#039;Vs/Am&#039;&lt;br /&gt;
|-&lt;br /&gt;
| %m0 || magnetische Feldkonstante (alt, wird bald entfernt werden) || 4*%pi*1E-7&#039;Vs/Am&#039;&lt;br /&gt;
|-&lt;br /&gt;
| %epsilon0 || elektrische Feldkonstante || 8.85418781762039E-12&#039;As/Vm&#039;&lt;br /&gt;
|-&lt;br /&gt;
| %e0 || elektrische Feldkonstante (alt, wird bald entfernt werden) || 8.85418781762039E-12&#039;As/Vm&#039;&lt;br /&gt;
|-&lt;br /&gt;
| %c0 || Lichtgeschwindigkeit || 299792458&#039;m/s&#039;&lt;br /&gt;
|-&lt;br /&gt;
| %Qe || Elementarladung || 1.602176620898E-19As&lt;br /&gt;
|-&lt;br /&gt;
| %g  || Erdbeschleunigung || 9.81&#039;m/s^2&#039;&lt;br /&gt;
|-&lt;br /&gt;
| %NA || Avogadro Konstante || 6.02214085774E23/mol&lt;br /&gt;
|-&lt;br /&gt;
| %k  || Stefan Bolzman Konstante || 1.3806485279E-23&#039;J/K&#039;&lt;br /&gt;
|-&lt;br /&gt;
| %R0 || Universelle Gaskonstante || 8.314459848&#039;J/Kmol&#039;&lt;br /&gt;
|-&lt;br /&gt;
| %h || planksches Wirkungsquantum || 6.6260704081E-34Js&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=Berechnung mit Maxima=&lt;br /&gt;
* Maxima wird nur für symbolische Berechnungen bei der Erstellung von Beispielen verwendet. Hierbei wird, wie schon oberhalb im Schema angegeben, zuerst die Moodle.mac geladen, dann das [[Beispielsammlung Editieren#Maxima-Feld|Maxima-Feld]] berechnet und anschließend die Maxima-Felder aller Teilfragen. Das Ergebnis der Berechnung wird dann als symbolischer Ausdruck im Lösungfeld eingetragen.&lt;br /&gt;
* Da zum Zeitpunkt der Maxima-Berechnung keine Datensätze vorhanden sind, kann keine numerische Berechnung in Maxima durchgeführt werden, welche die [[Datensätze]] benötigt. Dies muss der interne Parser zum Zeitpunkt des Online-Test-Laufes erledigen. Numerische Berechnungen, welche der interne Parser nicht kann können deshalb auch nicht mit Maxima berechnet werden.&lt;br /&gt;
* Da das Lösungsfeld, welches mit Maxima berechnet wird symbolisch ausgewertet wird, können in Maxima sämtliche symbolischen Berechnungsverfahren angewendet werden, welche ein symbolisches Ergebnis liefern und keine numerischen Werte der Datensätze benötigen.&lt;br /&gt;
&lt;br /&gt;
=Berechnung mit dem internen Parser=&lt;br /&gt;
* Der interne Parser kann durch Wahl der Checkbox &amp;quot;Parser&amp;quot; anstatt von Maxima für die Berechnung des Maxima-Feldes verwendet werden. &lt;br /&gt;
* Jedenfalls wird der Parser zur Test-Laufzeit für die Berechnung des Ergebnisses einer Frage aus Lösung und Datensätzen und zum Berechnen der Schülereingabe verwendet.&lt;br /&gt;
&lt;br /&gt;
==Operatoren==&lt;br /&gt;
=== VORSICHT mit MAXIMA ===&lt;br /&gt;
* Einige Operatoren sind in &#039;&#039;&#039;Maxima anders&#039;&#039;&#039;, oder &#039;&#039;&#039;nicht definiert&#039;&#039;&#039;. Möchte man im Maximafeld die Operatoren des Parsers-verwenden, so muss das gesamte Maxima-Feld &#039;&#039;&#039;mit dem Parser gerechnet&#039;&#039;&#039; werden. Man verliert dadurch jedoch die Vorteile der Maxima-Berechnung.&lt;br /&gt;
* Alternativ kann man statt der Operatoren auch &#039;&#039;&#039;Funktionen verwenden&#039;&#039;&#039; (zB: ne() statt != ). Diese werden dann von Maxima zwar nicht ausgewertet, die Berechnung bleibt aber trotzdem korrekt und kann mit Maxima durchgeführt werden.&lt;br /&gt;
* Es gibt einige Funktionen welche in &#039;&#039;&#039;Maxima existieren&#039;&#039;&#039; aber im &#039;&#039;&#039;Parser nicht, oder mit anderem Syntax&#039;&#039;&#039;.&lt;br /&gt;
** Wenn diese von Maxima nicht ausgewertet werden können, da sie &#039;&#039;&#039;Datensätze&#039;&#039;&#039; enthalten welche zu Auswertezeitpunkt von Maxima noch &#039;&#039;&#039;nicht mit Werten belegt&#039;&#039;&#039; sind, &#039;&#039;&#039;dürfen sie in der Berechnung nicht verwendet werden&#039;&#039;&#039;, da der Parser dann damit nichts anfangen kann.&lt;br /&gt;
** Solche Funktionen haben entweder im Parser eine alternative Schreibweise welche auch mit Maxima verwendet werden kann (z.B.: wenn), oder sie können prinzipell nicht verwendet werden. (Für wichtige Funktionsweisen könnte man in zukünftigen Versionen neue Funktionalitäten in den Parser einbauen, die die gewünschte Funktion erfüllen)&lt;br /&gt;
** Ein weiter Möglichkeit für die Verwendung solcher Funktionen ist der Verzicht auf Datensätze in diesen Funktionen, damit diese Funktion beim Auswerten des Maxima-Feldes bereits ausgewertet werden kann und somit der Parser davon nichts mehr sieht.&lt;br /&gt;
** zB:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
if then&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Infix Operatoren===&lt;br /&gt;
====arithmetische Operatoren====&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Operator || Priorität || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| + || 40 || Addition || 4+5 || 9 &lt;br /&gt;
|-&lt;br /&gt;
| - || 40 || Subtraktion || 6-2 || 4&lt;br /&gt;
|-&lt;br /&gt;
| * || 50 || Multiplikation || 4*5 || 20&lt;br /&gt;
|-&lt;br /&gt;
| / || 51 || Division || 20/4 || 5&lt;br /&gt;
|-&lt;br /&gt;
| % || 51 || Divisionsrest || 104%20 || 4&lt;br /&gt;
|-&lt;br /&gt;
| / / || 60 || Parallelschaltung || x / / y || x*y/(x+y)&lt;br /&gt;
|-&lt;br /&gt;
| ^ || 90 || Potenz || 2^3 || 8&lt;br /&gt;
|-&lt;br /&gt;
| .*. || 200 || Operator der intern für eine fehlende bindende Multiplikation verwendet wird || 4x || 4*x&lt;br /&gt;
|-&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
====Bitoperatoren====&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Operator || Priorität || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
||  |  || 20 || Bitweise oder logisches ODER ||| 9|5 &amp;lt;br&amp;gt; true|false || 13 &amp;lt;br&amp;gt;true&lt;br /&gt;
|-&lt;br /&gt;
| or || 20 || Bitweise oder logisches ODER || 9 or 5 || 13&lt;br /&gt;
|-&lt;br /&gt;
| &amp;amp;  || 21 || Bitweise oder logisches UND  || 13&amp;amp;10 || 8&lt;br /&gt;
|-&lt;br /&gt;
| and || 21 || Bitweise oder logisches UND  || 13 and 10 || 8&lt;br /&gt;
|-&lt;br /&gt;
| xor || 22 || Bitweise oder logisches exklusiv oder XOR  || 13 xor 10 || 7&lt;br /&gt;
|-&lt;br /&gt;
| imp || 23 || Bitweise oder logisches impliziert IMP || 13 imp 10 || 8&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;&amp;lt;  || 35 || Bitweise links schieben  || 5&amp;lt;&amp;lt;2 || 20&lt;br /&gt;
|-&lt;br /&gt;
| &amp;gt;&amp;gt;  || 35 || Bitweise rechts schieben || 8&amp;gt;&amp;gt;2 || 2&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
====Vergleichsoperatoren====&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Operator || Priorität || Beschreibung || Beispiel&lt;br /&gt;
|-&lt;br /&gt;
| =  || 3 || Gleichungsoperator || x=y&lt;br /&gt;
|-&lt;br /&gt;
| == || 30 || Gleichungsoperator || x==y&lt;br /&gt;
|-&lt;br /&gt;
| != || 30 || Ungleichungsoperator || x!=y&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt; || 32 || Kleiner || x&amp;lt;y&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;= || 32 || Kleiner gleich || x&amp;lt;=y&lt;br /&gt;
|-&lt;br /&gt;
| &amp;gt; || 32 || größer || x&amp;gt;y&lt;br /&gt;
|-&lt;br /&gt;
| &amp;gt;= || 32 || größer gleich || x&amp;gt;=y&lt;br /&gt;
|}&lt;br /&gt;
====Organisative Operatoren====&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Operator || Priorität || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| , || 0 || Listen-Trennzeichen || x,y ||&lt;br /&gt;
|-&lt;br /&gt;
| $ || 1 || Trennzeichen zwischen mehreren Berechnungen || ||&lt;br /&gt;
|-&lt;br /&gt;
| ; || 1 || Trennzeichen zwischen mehreren Berechnungen || ||&lt;br /&gt;
|-&lt;br /&gt;
| : || 2 || Zuweisung an eine Variablen auf der linken Seite || x:5 || &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Prefix Operatoren===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Operator || Priorität || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| + || 45 || positives Vorzeichen || +5 || 5&lt;br /&gt;
|-&lt;br /&gt;
| - || 45 || negatives Vorzeichen || -(-5) || 5&lt;br /&gt;
|-&lt;br /&gt;
| ~ || 95  || bitweise Inversion einer 64bit-Ganzzahl || ~0x0F0F || 0xFFFFFFFFFFFFF0F0&lt;br /&gt;
|-&lt;br /&gt;
| ! || 120 || logisches NOT || !(3&amp;lt;4) || false&lt;br /&gt;
|-&lt;br /&gt;
| ++ || 130 || Inkrement von Ganzzahlen || ++x || erhöht x um eins und gibt das Ergebnis nach der Erhöhung zurück&lt;br /&gt;
|-&lt;br /&gt;
| -- || 130 || Dekrement von Ganzzahlen || --x || vermindert x um eins und gibt das Ergebnis nach der Verminderung zurück&lt;br /&gt;
|-&lt;br /&gt;
| % || 200 || Prefix für Namen, welche als Konstante definiert sind || %pi || 3.141592653589793&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Suffix Operatoren===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Operator || Priorität || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| ++ || 135 || Inkrement von Ganzzahlen || x++ || erhöht x um eins und gibt den Variablenwert vor der Erhöhung zurück&lt;br /&gt;
|-&lt;br /&gt;
| -- || 135 || Dekrement von Ganzzahlen || x-- || vermindert x um eins und gibt den Variablenwert vor der Verminderung zurück&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==Klammern==&lt;br /&gt;
* () runde Klammern werden für mathematische Ausdrücke zur Klammerung verwendet&lt;br /&gt;
* {} geschwungene Klammer werden im Angabetext für die Namen der Datensätze verwendet&lt;br /&gt;
* [] eckige Klammern werden für Vektoren und Matrizen verwendet&lt;br /&gt;
&lt;br /&gt;
==Funktionen==&lt;br /&gt;
===Funktionen für Ganzzahlen===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| band || bitweises UND || band(4,12) || 4&lt;br /&gt;
|-&lt;br /&gt;
| bor  || bitweises ODER || bor(4,1) || 5&lt;br /&gt;
|-&lt;br /&gt;
| bxor || bitweises EXKLUSIV ODER || band(4,5) || 1&lt;br /&gt;
|-&lt;br /&gt;
| bimp || bitweises Parameter1 impliziert Parameter2 || bimp(13,10) || 8&lt;br /&gt;
|-&lt;br /&gt;
| binv || bitweises NICHT mit 8 bit || binv(0x0F) || 0xF0&lt;br /&gt;
|-&lt;br /&gt;
| shl || Schiebe Ganzzahl bitweise nach links || shl(8,2) || 32&lt;br /&gt;
|-&lt;br /&gt;
| shr || Schiebe Ganzzahl bitweise nach rechts || shr(8,2) || 2&lt;br /&gt;
|-&lt;br /&gt;
| div || Ganzzahldivision, Ergebnis wird abgeschnitten || div(5,2) || 2&lt;br /&gt;
|-&lt;br /&gt;
| mod || Modulo: Divisionsrest einer Ganzzahldivision || mod(5,2) || 1&lt;br /&gt;
|-&lt;br /&gt;
| inv8  || bitweise Invertieren und die letzten 8 Bit bestimmen  || inv8(0b1001) || 0b11110110&lt;br /&gt;
|-&lt;br /&gt;
| inv16 || bitweise Invertieren und die letzten 16 Bit bestimmen || inv16(0xF0)  || 0xFF0F&lt;br /&gt;
|-&lt;br /&gt;
| inv32 || bitweise Invertieren und die letzten 32 Bit bestimmen || inv32(0xF0)  || 0bFFFFFF0F&lt;br /&gt;
|-&lt;br /&gt;
| inv64 || bitweise Invertieren und die letzten 64 Bit bestimmen || inv64(0xF0)  || 0bFFFFFFFFFFFFFF0F&lt;br /&gt;
|-&lt;br /&gt;
| byte  || Zahl in eine Ganzzahl wandeln und die letzten 8bit der Zahl Abschneiden, Einheit geht verloren  || byte(34.2) || 34&lt;br /&gt;
|-&lt;br /&gt;
| word  || Zahl in eine Ganzzahl wandeln und die letzten 16bit der Zahl Abschneiden, Einheit geht verloren || word(34.2) || 34&lt;br /&gt;
|-&lt;br /&gt;
| int   || Zahl in eine Ganzzahl wandeln und die letzten 32bit der Zahl Abschneiden, Einheit geht verloren || int(34.2) || 34&lt;br /&gt;
|-&lt;br /&gt;
| long  || Zahl in eine Ganzzahl wandeln , Einheit geht verloren || long(34.2) || 34&lt;br /&gt;
|-&lt;br /&gt;
| [[parity]]  || Paritätsberechnung : parity(Parität,Codewortlänge,Datenwort[,Datenwort,....]) || parity(even,7,&amp;quot;xy&amp;quot;) || &lt;br /&gt;
|-&lt;br /&gt;
| [[blockparity]]  || Kreuz oder Blockparität : blockparity(Parität,Codewortlänge,Codewortanzahl,Datenwort[,Datenwort,....]) || blockparity(even,7,3,&amp;quot;abc&amp;quot;) || &lt;br /&gt;
|-&lt;br /&gt;
| [[bcd]]  || Wandelt in eine Long-Zahl in ein Feld aus BCD-kodierten Zahlen um || bcd(124) || [1,2,4]&lt;br /&gt;
|-&lt;br /&gt;
| [[code]] || Code aus mehreren Codeworten zusammensetzen : code(Codewortlänge,Datenwort[,Datenwort,....]) || code(5,4,3,5) || 0b1000001100101&lt;br /&gt;
|-&lt;br /&gt;
| [[hamming]] || Bestimmt den Hamming-Abstand von mehreren Codeworten || hamming(1,2,4,8,16) || 2&lt;br /&gt;
|-&lt;br /&gt;
| [[komplement]] ||  Bildet das Zweierkomplement mit einer negativen Zahl mit einer bestimmten Bitanzahl, fehlt die Bitanzahl, so wird ein 32Bit-2er-komplement gebildet || komplement(-5,8) || 0b11111011&lt;br /&gt;
|-&lt;br /&gt;
| [[bitstream]] || Erzeugt aus einer Ganzzahl einen Bitstrom als String mit einer definierten Anzahl von Bit (MSB werden nötigenfalls mit 0 gefüllt) : bitstream(Daten,Bitanzahl) || bitstream(0x184,12) || &amp;quot;000110000100&amp;quot;&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===boolsche Funktionen===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| eq || gleich || ge(4,4) || true&lt;br /&gt;
|-&lt;br /&gt;
| ne || ungleich || ne(6,4) || true&lt;br /&gt;
|-&lt;br /&gt;
| ge || größer gleich || ge(6,4) || true&lt;br /&gt;
|-&lt;br /&gt;
| le || kleiner gleich || le(6,4) || false&lt;br /&gt;
|-&lt;br /&gt;
| gt || größer || gt(6,4) || true&lt;br /&gt;
|-&lt;br /&gt;
| lt || kleiner || lt(6,4) || false&lt;br /&gt;
|-&lt;br /&gt;
| between || prüft ob Parameter1 kleiner als Parameter2 und Parameter2 kleiner als Parameter 3 || between(3,4,5) || true&lt;br /&gt;
|-&lt;br /&gt;
| land || logisches UND || land(a&amp;lt;b,b&amp;lt;c) || &lt;br /&gt;
|-&lt;br /&gt;
| lor  || logisches ODER || lor(a&amp;lt;b,b&amp;lt;c) || &lt;br /&gt;
|-&lt;br /&gt;
| not  || logisches NICHT || not(a&amp;lt;b) || &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===arithmetische Funktionen===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| double || Zahl ein eine Gleitkommazahl umwandeln, die Einheit geht dabei verloren || double(3.4V) || 3.4&lt;br /&gt;
|-&lt;br /&gt;
| numeric || verwirft die Einheit, wenn eine vorhanden ist und liefert nur den Zahlenwert || numeric(2.3mA) &amp;lt;br&amp;gt; numeric(5%)|| 0.0023 &amp;lt;br&amp;gt; 5&lt;br /&gt;
|-&lt;br /&gt;
| unit || gibt die SI-Einheit mit dem Zahlenwert 1 zurück || unit(3.1kA) &amp;lt;br&amp;gt; unit(5%) || 1A &amp;lt;br&amp;gt; 1%&lt;br /&gt;
|-&lt;br /&gt;
| cround  || Rundet die Zahl kaufmännisch, der zweite Parameter gibt die Anzahl der Kommastellen an, ohne 2.Parameter wird auf Ganzzahlen gerundet || cround(23.535,2) || 23.54&lt;br /&gt;
|-&lt;br /&gt;
| round  || Rundet die Zahl kaufmännisch, der zweite Parameter gibt die Anzahl der Kommastellen an, ohne 2.Parameter wird auf Ganzzahlen gerundet || round(23.535,2) || 23.54&lt;br /&gt;
|-&lt;br /&gt;
| ground || Rundet die Zahl auf die im zweiten Parameter angegebenen gültigen Ziffern || ground(2453.43,2) || 2500&lt;br /&gt;
|-&lt;br /&gt;
| floor  || Rundet auf die größte ganze Zahl, welche kleiner oder gleich x ist || floor(24.5) || 24&lt;br /&gt;
|-&lt;br /&gt;
| trunc  || Schneidet die Zahl nach dem Komma ab || trunc(24.5) || 24&lt;br /&gt;
|-&lt;br /&gt;
| ceiling || ceiling(x) Rundet auf die kleinste ganze Zahl, welche größer oder gleich x ist || ceiling(13.2) || 14&lt;br /&gt;
|-&lt;br /&gt;
| pow || Potenzfunktion || pow(2,3) || 8&lt;br /&gt;
|-&lt;br /&gt;
| par || Parallelschaltung von Widerständen || par(x,y) || x*y/(x+y)&lt;br /&gt;
|-&lt;br /&gt;
| min  || Minimum von mehrere Werten suchen || min(3,5,1) || 1&lt;br /&gt;
|-&lt;br /&gt;
| max  || Maximum von mehreren Werten suchen || max(3,5,1) ||  5&lt;br /&gt;
|-&lt;br /&gt;
| random  || Zufallszahl aus einem definierten Zahlenbereich random(minimal,maximal)&amp;lt;br&amp;gt;VORSICHT! Die Zufallszahl wird bei jedem Aufruf neu berechnet, weshalb sich der Wert bei jedem Anzeigevorgang einer Frage ändert. Sollte sich der berechnete Wert für eine Schülerangabe zwischen Fragestellung und Ergebniskontrolle nicht ändern dürfen (ist der Normalfall) muss man einen &#039;&#039;&#039;Datensatz statt einer Zufallszahl&#039;&#039;&#039; verwenden! &amp;lt;br&amp;gt; Zufallszahlen haben in der Ergebnisberechnung keinen Sinn, und sollten maximal für angezeigte zufällige Werte verwendet werden! || random(2,8) ||  3.4532&lt;br /&gt;
|-&lt;br /&gt;
| randomC  || komplexe Zufallszahl aus einem definierten Zahlenbereich für den Betrag&amp;lt;br&amp;gt;VORSICHT! Die Zufallszahl wird bei jedem Aufruf neu berechnet!  || randomC(2,8) ||  3.4532arg40.3°&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===erweiterte arithmetische Funktionen===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| sigma || Sprungfunktion: sigma(x) liefert 0 für x&amp;lt;0 und 1 für x&amp;gt;=0 || sigma(243.3) || 1&lt;br /&gt;
|-&lt;br /&gt;
| interpol || Interpolationsfunktion zwischen mehreren Stützpunkten in einem Koordinatensystem. &amp;lt;br&amp;gt; interpol(WerteX,WerteY,x) || interpol([0,1,2],[0,3,3],1.5) || 3&lt;br /&gt;
|-&lt;br /&gt;
| periodic || Erzeugt aus einer beliebigen Funktion zwischen 0 und Periodendauer eine periodische Funktion &amp;lt;br&amp;gt; periodic(Variable,Periodendauer,Funktion)&amp;lt;br&amp;gt; periodic(Variable,Periodendauer,Funktionsperiodendauer,Funktion) || ch1(t):periodic(t,5ms,2&#039;Vms-2&#039;*t^2) &amp;lt;br&amp;gt; ch1(t):periodic(t,5ms,1,2V*t^2) || :[[Datei:ClipCapIt-190318-113524.PNG|100px]] &amp;lt;br&amp;gt; :[[Datei:ClipCapIt-190318-113644.PNG|100px]]&lt;br /&gt;
|-&lt;br /&gt;
| numint || numerische Integration &amp;lt;br&amp;gt; numint(untereGrenze,obereGrenze,funktion,Variable)&amp;lt;br&amp;gt; numint(untereGrenze,obereGrenze,funktion,Variable,punkteAnzahl) || numint(0,2pi,sin(t),t) || 0&lt;br /&gt;
|-&lt;br /&gt;
| numdif || numerisches Differenzieren einer Funktion &amp;quot;funktion&amp;quot; nach einer Variablen &amp;quot;Variable&amp;quot; an der Stelle &amp;quot;position&amp;quot; mit einer Differenz der Variablen von &amp;quot;differenz&amp;quot; &amp;lt;br&amp;gt; numdif(position,funktion,Variable,differenz) || numdif(0,sin(t),t,0.01) || 1&lt;br /&gt;
|-&lt;br /&gt;
| solve || löst eine Gleichung oder ein Gleichungssystem nach einer oder mehrerer Variablen || solve([2*x+y=3,x-y=0],[x,y]) || [ [ x=1,y=1 ] ]&lt;br /&gt;
|-&lt;br /&gt;
| solvevalue || löst eine Gleichung oder ein Gleichungssystem nach einer Variablen und liefert genau die erste Lösung wenn sie numerisch berechenbar ist || solvevalue([ 2*x+y=3,x-y=0 ],[ x,y ],x)  || 1&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Stringfunktionen===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| dechex || Zahl in eine Ganzzahl wandeln und als Hexadezimal-String ausgeben || dexhex(12) || &amp;quot;0xC&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| chr || Bestimmt die Zeichen mit dem ASC-II-Code der Long-Parameter und setzt daraus einen String zusammen. || chr(0x65,105) || &amp;quot;ei&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| val || Bestimmt den ASC-II-Code des ersten Zeichens welches als String-Parameter übergeben wurde.|| val(&amp;quot;a&amp;quot;) || 97&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===trigonometrische Funktionen===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| sin || Sinus || sin(%pi/2) || 1&lt;br /&gt;
|-&lt;br /&gt;
| cos || Cosinus || cos(%pi/2) || 0&lt;br /&gt;
|-&lt;br /&gt;
| tan || Tangens || tan(%pi/4) || 1&lt;br /&gt;
|-&lt;br /&gt;
| asin || Arcus-Sinus || asin(1) || %pi/2&lt;br /&gt;
|-&lt;br /&gt;
| arcsin || Arcus-Sinus || asin(1) || %pi/2&lt;br /&gt;
|-&lt;br /&gt;
| acos || Arcus-Cosinus || acos(1) || 0&lt;br /&gt;
|-&lt;br /&gt;
| arccos || Arcus-Cosinus || acos(1) || 0&lt;br /&gt;
|-&lt;br /&gt;
| atan || Arcus-Tangens || atan(1) || %pi/4&lt;br /&gt;
|-&lt;br /&gt;
| arctan || Arcus-Tangens || arctan(1) || %pi/4&lt;br /&gt;
|-&lt;br /&gt;
| atan2 || Arcus-Tangens atan2(x,y)=arctan(y/x) || atan2(-2,-2) || -%pi*3/4&lt;br /&gt;
|-&lt;br /&gt;
| arctan2 || Arcus-Tangens arctan2(x,y)=arctan(y/x) || arctan2(-2,-2) || -%pi*3/4&lt;br /&gt;
|-&lt;br /&gt;
| sinh || Sinus-Hyperbolicus || sinh(1) || 1.1752012&lt;br /&gt;
|-&lt;br /&gt;
| cosh || Cosinus-Hyperbolicus || cosh(1) || 1.5430806&lt;br /&gt;
|-&lt;br /&gt;
| tanh || Tangens-Hyperbolicus || tanh(1) || 0.7615941&lt;br /&gt;
|-&lt;br /&gt;
| coth || Cotangens-Hyperbolicus || coth(1) || 1.313035&lt;br /&gt;
|-&lt;br /&gt;
| asinh || Area-Sinus-Hyperbolicus || asinh(1.1752012) || 1&lt;br /&gt;
|-&lt;br /&gt;
| acosh || Area-Cosinus-Hyperbolicus || acosh(1.5430806) || 1&lt;br /&gt;
|-&lt;br /&gt;
| atanh || Area-Tangens-Hyperbolicus || atanh(0.7615941) || 1&lt;br /&gt;
|-&lt;br /&gt;
| acoth || Area-Cotangens-Hyperbolicus || acoth(1.313035) || 1&lt;br /&gt;
|-&lt;br /&gt;
| [[csin]] || Erzeugt aus einer komplexen Zahl (Effektivwert) und einer Frequenz einen Sinusfunktion in der Zeit || csin(U) || sqrt(2)*cabs(U)*sin(2*pi*f*t+carg(U))&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Exponentialfunktionen===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| pow || Potenzfunktion || pow(2,3) || 8&lt;br /&gt;
|-&lt;br /&gt;
| exp|| Exponentialfunktion || exp(1) || %e&lt;br /&gt;
|-&lt;br /&gt;
| log || natürlicher Logarythmus || log(%e) || 1&lt;br /&gt;
|-&lt;br /&gt;
| ln || natürlicher Logarythmus || ln(%e) || 1&lt;br /&gt;
|-&lt;br /&gt;
| log10 || Logarythmus zur Basis 10 || log10(100) || 2&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===komplexe Zahlen===&lt;br /&gt;
Die Funktionen zu komplexen Zahlen werden (anders als in Maxima) nur ausgewertet wenn das Ergebnis numerisch berechenbar ist, ansonsten bleibt die Funktion symbolisch erhalten.&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| abs || Liefert den Absolutbetrag einer komplexen Zahl || abs(3+4*%i) || 5&lt;br /&gt;
|-&lt;br /&gt;
| cabs || Liefert den Absolutbetrag einer komplexen Zahl || cabs(3+4*%i) || 5&lt;br /&gt;
|-&lt;br /&gt;
| carg || Liefert das Argument einer komplexen Zahl || arg(4*%e^(3*%i)) || 3&lt;br /&gt;
|-&lt;br /&gt;
| realpart || Liefert den Realteil einer komplexen Zahl || abs(3+4*%i) || 3&lt;br /&gt;
|-&lt;br /&gt;
| imagpart || Liefert den Imaginärteil einer komplexen Zahl || abs(3+4*%i) || 4&lt;br /&gt;
|-&lt;br /&gt;
| conjugate || Liefert die konjugiert komplexe Zahl einer komplexen Zahl || abs(3+4*%i) || 3-4*%i&lt;br /&gt;
|-&lt;br /&gt;
| rectform || wandelt die komplexe Zahl in eine Ansicht mit Real- und Imaginärteil || 3+4*%i || 3+4*%i&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Algebra===&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;Hinweis:&#039;&#039; Die Indizes eines Vektors oder einer Matrix werden in Letto ausgehend von 0 weg gezählt.  &lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| matrix || erzeugt aus mehreren gleich langen Vektoren eine Matrix || matrix([1,2],[3,4]) || [[1,2],[3,4]]&lt;br /&gt;
|-&lt;br /&gt;
| inv || invertiert eine quadratische Matrix oder bildet 1/x || inv(matrix([1,2],[3,4])) || [[-2,1],[3/2,-1/2]]&lt;br /&gt;
|-&lt;br /&gt;
| vget || liefert ein Element eines Vektors oder einer Matrix || vget([12,13,14],1) &amp;lt;br&amp;gt; vget(matrix([9,2],[3,4]),0,1) || 13 &amp;lt;br&amp;gt; 2 &lt;br /&gt;
|-&lt;br /&gt;
| vset || setzt ein Element eines Vektors oder einer Matrix || vset([12,13,14],1,35) &amp;lt;br&amp;gt; vset(matrix([9,2],[3,4]),0,0,-9) || [12,35,14] &amp;lt;br&amp;gt; [[-9,2],[3,4]]&lt;br /&gt;
|-&lt;br /&gt;
| vinsert || fügt ein Element in einen Vektor an eine gegebene Stelle ein || vinsert([12,13,14],1,25) || [12,25,13,14]&lt;br /&gt;
|-&lt;br /&gt;
| vremove || löscht ein Element eines Vektors || vremove([12,13,14],1) || [12,14]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Auswertung und Programmierung===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| ev || Auswertung eines Ausdruckes, als Parameter können Gleichungen angegeben werden, welche dann in den Ausdruck eingesetzt werden || ev(x*y,y=4) || x*4&lt;br /&gt;
|-&lt;br /&gt;
| [[if]] || Bedingungsfunktion if(bedingung,wahrwert,falschwert) || if(4&amp;lt;6,10,12) || 10&lt;br /&gt;
|-&lt;br /&gt;
| [[if|wenn]] || Bedingungsfunktion wenn(bedingung,wahrwert,falschwert). Im Prinzip identisch wie if, jedoch kann if mit Maxima nicht verwendet werden. || wenn(4&amp;lt;6,10,12) || 10&lt;br /&gt;
|-&lt;br /&gt;
| plugin || Ruft die Berechnnugsmethode des Plugins, welches als erster Stringparameter angegeben werden muss auf und übergibt die weiteren Parameter an die Berechnungsmethode des Plugins.  || plugin(&amp;quot;plugin1&amp;quot;,3) || führt die Berechnung des Plugins mit dem Namen &amp;quot;plugin1&amp;quot; mit dem Parameter 3 aus. &lt;br /&gt;
|-&lt;br /&gt;
| symbolic || Bei allen Variablen innerhalb von symbolic werden nur nicht-numerische Werte eingesetzt! Wird vor allem im Angebtext bei {= } verwendet || symbolic(x^2+2) || x^2+2&lt;br /&gt;
|-&lt;br /&gt;
| runtime || Bei dieser Funktion wird &#039;&#039;&#039;erst bei der Berechnung der Frageantwort, nach dem Einsetzen der Datensätze&#039;&#039;&#039; das &#039;&#039;&#039;komplette Maxima-Feld&#039;&#039;&#039; mit dem internen &#039;&#039;&#039;Parser&#039;&#039;&#039; durchgerechnet und danach der Parameter-Ausdruck berechnet. Dadurch kann man bei komplizierten Berechnungen eine sehr aufwendige symbolische Berechnung verhindern! || runtime(U) || &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Optimierung der Ausdrücke===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| opt   || Ausdruck wird vollständig optimiert, die Funktion wird ausgewertet und ist danach nicht mehr vorhanden || opt(x+x) || 2*x&lt;br /&gt;
|-&lt;br /&gt;
| ratsimp || Ausdruck wird vollständig optimiert, die Funktion wird ausgewertet und ist danach nicht mehr vorhanden (wie opt) || ratsimp(x+x) || 2*x&lt;br /&gt;
|-&lt;br /&gt;
| noopt || Ausdruck wird nicht optimiert, bleibt also so erhalten wie angegeben. Die Funktion an sich geht aber verloren. || noopt(2+3) || 2+3&lt;br /&gt;
|-&lt;br /&gt;
| lopt || Im Maximafeld bleibt die Funktion ohne Funktion erhalten, im Ergebnis {=  wird die Funktion entfernt und in der Lösung wird nach dem Einsetzen der Werte der Ausdruck vollständig optimiert. || lopt(x+3)  || lopt(x+3)  &lt;br /&gt;
|-&lt;br /&gt;
| lnoopt || Im Maximafeld bleibt die Funktion ohne Funktion erhalten, im Ergebnis {=  wird die Funktion entfernt und in der Lösung wird nach dem Einsetzen der Werte der Ausdruck nicht mehr optimiert. || lnoopt(x+3+2)  || lnoopt(x+5) &lt;br /&gt;
|-&lt;br /&gt;
| loptnumeric || Im Maximafeld bleibt die Funktion ohne Funktion erhalten, im Ergebnis {=  wird die Funktion entfernt und in der Lösung wird nach dem Einsetzen der Werte der Ausdruck nur numerisch optimiert. || loptnumeric(x+y)  || loptnumeric(x+y)&lt;br /&gt;
|-&lt;br /&gt;
| aopt || Bei Maxima und Lösung geht die Funktion verloren, nur innerhalb von noopt bleibt sie erhalten. Bei der Anzeige führt sie zur Optimierung das Ausdruckes nach Einsetzen der Datensätze. || aopt(x)  || x&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Anzeige und Lösungsberechnung===&lt;br /&gt;
Diese Funktionen haben entweder einen oder zwei Parameter. Der erste Parameter stellt die darzustellende Funktion dar, der zweite Parameter, welcher eine Ganzzahl sein muss, gibt an, wie die Darstellung erfolgen soll. Wird der 2.Parameter weggelassen, so wird er als 0 interpretiert.&lt;br /&gt;
* 0 Bei Berechnungen hat die Funktion keine Wirkung, bleibt aber als Funktion erhalten. Bei Lösung und Anzeige wird die Funktion ausgewertet&lt;br /&gt;
* 1 Wirkt nur bei Lösung, bei Berechnungen bleibt die Funktion erhalten&lt;br /&gt;
* 2 Wirkt nur bei Anzeige, bei Berechnungen bleibt die Funktion erhalten&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| viewpow || Gibt alle Wurzeln als Potenzen aus, und stellt alle Potenzen im Nenner als negativen Exponenten im Zähler dar || viewpow(sqrt(x)) || x^(1/2)&lt;br /&gt;
|-&lt;br /&gt;
| viewsqrt || Gibt Potenzen welche als Wurzel darstellbar sind auch als als Wurzeln mit der Funktion sqrt oder root aus || viewsqrt(x^(1/2)) || sqrt(x)&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Spezialfunktionen Technik===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left; width: 100%;&amp;quot; &lt;br /&gt;
| Funktion || Beschreibung || Beispiel || Ergebnis &lt;br /&gt;
|-&lt;br /&gt;
| color || Widerstandsfarbcode berechnen.&amp;lt;br&amp;gt;1. Parameter muss ein Double sein&amp;lt;br&amp;gt; 2.Parameter sind die Anzahl der Farbringe&amp;lt;br&amp;gt; 3.Parameter ist der Modus (0..2-St,1..3St,2..Deutsch,3..2StEng,4..3StEng,5..Englisch || color(120,3,2) || braun,rot,braun&lt;br /&gt;
|-&lt;br /&gt;
| parsecolor || Wandelt einen String mit einem Widerstandsfarbcode in einen Double-Wert || parsecolor(&amp;quot;br-rt-br&amp;quot;) || 120&lt;br /&gt;
|-&lt;br /&gt;
| ip || Wandelt eine Long-Zahl in einen String als IP-Adresse um, oder 4 Byte-Zahlen in eine Long Zahl als IP-32-bit-Adresse || ip(1534536453)&amp;lt;br&amp;gt;ip(10,20,30,40) || &amp;quot;91.119.43.5&amp;quot;&amp;lt;br&amp;gt;169090600&lt;br /&gt;
|-&lt;br /&gt;
| parseip || Wandelt einen String mit einer IP-Adresse in einen Long-Wert || parseip(&amp;quot;91.119.43.5&amp;quot;) || 1534536453&lt;br /&gt;
|-&lt;br /&gt;
| e12 || rundet einen Zahlenwert auf den nächstliegenden Wert der [[Normreihe]] E12.&amp;lt;br&amp;gt;Die Rundung erfolgt geometrisch d.h. der Quotient zwischen Normwert und zu rundendem Wert wird minimiert. || e12(700Ohm) || 680Ohm&lt;br /&gt;
|-&lt;br /&gt;
| e12up || rundet einen Zahlenwert auf den nächstgrößerern Wert der [[Normreihe]] E12 || e12(670Ohm) || 680Ohm&lt;br /&gt;
|-&lt;br /&gt;
| e12down || rundet einen Zahlenwert auf den nächstkleineren Wert der [[Normreihe]] E12 || e12(700Ohm) || 680Ohm&lt;br /&gt;
|-&lt;br /&gt;
| ise12 || prüft ob der als Parameter übergebenen Wert ein Wert der [[Normreihe]] E12 ist.|| ise12(680Ohm) || true&lt;br /&gt;
|-&lt;br /&gt;
| norm || rundet einen Zahlenwert auf den nächstliegenden Wert einer gegebenen Wertereihe oder [[Normreihe]].&amp;lt;br&amp;gt;Die Rundung erfolgt geometrisch wenn es sich um eine logarithmisch aufgeteilte Normreihe handelt, oder sonst linear. || norm(700Ohm,E12) || 680Ohm&lt;br /&gt;
|-&lt;br /&gt;
| normup || rundet einen Zahlenwert auf den nächstgrößerern Wert einer gegebenen Wertereihe oder [[Normreihe]]. || normup(730Ohm,[1,3,5,8]) || 800Ohm&lt;br /&gt;
|-&lt;br /&gt;
| normdown || rundet einen Zahlenwert auf den nächstkleineren Wert einer gegebenen Wertereihe oder [[Normreihe]]. || normdown(700Ohm,E12) || 680Ohm&lt;br /&gt;
|-&lt;br /&gt;
| isnorm || prüft ob der als Parameter übergebenen Wert ein Wert einer gegebenen Wertereihe oder [[Normreihe]] ist. || isnorm(680Ohm,E12) || true&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=Ergebnisvorschau=&lt;br /&gt;
Aufruf dieses Dialoges über den [[Datei:ClipCapIt-180904-181443.PNG|25px]]-Button aus dem [[Toolbar]].&lt;br /&gt;
&lt;br /&gt;
Die Berechnungen aus dem Maxima-Feld bei der [[Beispiele Bearbeiten|Fragendefinition]] können auch über den [[Datei:ClipCapIt-180904-182120.PNG|25px]]-Button durchgeführt werden. Hier wird die Berechnung durchgeführt und das Lösungsfeld ausgefüllt, aber der Rechengang wird nicht angezeigt. &lt;br /&gt;
:[[Datei:ClipCapIt-180904-181415.PNG|400px]]&lt;br /&gt;
&lt;br /&gt;
Beim Fehlersuchen oder bei komplexen Berechnungen kann es aber hilfreich sein, den ganzen Maxima-Lösungsweg zu sehen, dies ist über den [[Datei:ClipCapIt-180904-181443.PNG|25px]]-Button möchlich.&lt;br /&gt;
&lt;br /&gt;
[[Kategorie:Berechnung]]&lt;/div&gt;</summary>
		<author><name>Ckral</name></author>
	</entry>
</feed>