Berechnungen: Unterschied zwischen den Versionen

Aus Letto-Wiki
Wechseln zu: Navigation, Suche
Zeile 168: Zeile 168:
 
| Funktion || Beschreibung || Beispiel || Ergebnis  
 
| Funktion || Beschreibung || Beispiel || Ergebnis  
 
|+
 
|+
| band || bitweises AND || band(4,12) || 4
+
| band || bitweises UND || band(4,12) || 4
 +
|+
 +
| bor  || bitweises ODER || bor(4,1) || 5
 +
|+
 +
| bxor || bitweises EXKLUSIV ODER || band(4,5) || 1
 +
|+
 +
| bimp || bitweises Parameter1 impliziert Parameter2 || bimp(13,10) || 8
 +
|+
 +
| binv || bitweises NICHT mit 8 bit || binv(0x0F) || 0xF0
 +
|}
 +
 
 +
===boolsche Funktionen===
 +
{| class="wikitable" style="text-align: left; width: 100%;"
 +
| Funktion || Beschreibung || Beispiel || Ergebnis
 +
|+
 +
| ge || größer gleich || ge(6,4) || true
 +
|+
 +
| le || kleiner gleich || le(6,4) || false
 +
|+
 +
| gt || größer || gt(6,4) || true
 +
|+
 +
| lt || kleiner || lt(6,4) || false
 +
|+
 +
| between || prüft ob Parameter1 kleiner als Parameter2 und Parameter2 kleiner als Parameter 3 || between(3,4,5) || true
 +
|+
 +
| land || logisches UND || land(a<b,b<c) ||
 +
|+
 +
| lor  || logisches ODER || lor(a<b,b<c) ||
 +
|+
 +
| not  || logisches NICHT || not(a<b) ||
 
|}
 
|}
  
===Funktionen für Gleitkommazahlen===
+
===arithmetische Funktionen===
 
{| class="wikitable" style="text-align: left; width: 100%;"  
 
{| class="wikitable" style="text-align: left; width: 100%;"  
 
| Funktion || Beschreibung || Beispiel || Ergebnis  
 
| Funktion || Beschreibung || Beispiel || Ergebnis  
 
|+
 
|+
 
| double || Zahl ein eine Gleitkommazahl umwandeln, die Einheit geht dabei verloren || double(3.4V) || 3.4
 
| double || Zahl ein eine Gleitkommazahl umwandeln, die Einheit geht dabei verloren || double(3.4V) || 3.4
 +
|+
 +
| pow || Potenzfunktion || pow(2,3) || 8
 +
|+
 +
| par || Parallelschaltung von Widerständen || par(x,y) || x*y/(x+y)
 +
|+
 +
| min  || Minimum von mehrere Werten suchen || min(3,5,1) || 1
 +
|+
 +
| max  || Maximum von mehreren Werten suchen || max(3,5,1) ||  5
 +
 
|}
 
|}
  
Zeile 196: Zeile 234:
 
| Funktion || Beschreibung || Beispiel || Ergebnis  
 
| Funktion || Beschreibung || Beispiel || Ergebnis  
 
|+
 
|+
| sin || Sinus || sin(%pi/2) || 1
+
| pow || Sinus || sin(%pi/2) || 1
 
|}
 
|}
  

Version vom 25. Juni 2018, 06:54 Uhr

Berechnungen werden in mehreren Bereichen der Frageerstellung verwendet und bilden die Basis für Berechnungsfrage und Mehrfachberechnungsfrage.

Grundsätzlicher Aufbau der Ergebnis-Berechnung einer berechnenden Frage

Schema der Berechnung

Die Berechnung und die Beurteilung einer Frage teilt sich in 3 grundsätzliche Schritte:

  • Berechnnug der Lösung aus den Maxima-Feldern
  • Berechnung des Ergebnisses durch Einsetzen der Datensätze
  • Beurteilung der Schülereingabe durch Vergleich mit dem Ergebnis

Konstante

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.

Liste der definierten Konstanten:

Name Wert Beschreibung
 %i i komplexer Parameter als Lösung der Gleichung x^2=-1
 %j i komplexer Parameter als Lösung der Gleichung x^2=-1
 %e 2.718281828459045 Eulersche Zahl
 %pi 3.141592653589793 Kreiszahl
 %mu0 magnetische Feldkonstante 4*%pi*1E-7'Vs/Am'
 %m0 magnetische Feldkonstante (alt, wird bald entfernt werden) 4*%pi*1E-7'Vs/Am'
 %epsilon0 elektrische Feldkonstante 8.85418781762039E-12'As/Vm'
 %e0 elektrische Feldkonstante (alt, wird bald entfernt werden) 8.85418781762039E-12'As/Vm'
 %c0 Lichtgeschwindigkeit 299792458'm/s'
 %Qe Elementarladung 1.602176620898E-19As
 %g Erdbeschleunigung 9.81'm/s^2'
 %NA Avogadro Konstante 6.02214085774E23/mol
 %k Stefan Bolzman Konstante 1.3806485279E-23'J/K'
 %R0 Universelle Gaskonstante 8.314459848'J/Kmol'
 %h planksches Wirkungsquantum 6.6260704081E-34Js

Berechnung mit Maxima

  • 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 Maximafeld berechnet und anschließend die Maxima-Felder aller Teilfragen. Das Ergebnis der Berechnung wird dann als symbolischer Ausdruck im Lösungfeld eingetragen.
  • 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.
  • 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.

Berechnung mit dem internen Parser

  • Der interne Parser kann durch Wahl der Checkbox "Parser" anstatt von Maxima für die Berechnung des Maxima-Feldes verwendet werden.
  • 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.

Operatoren

Infix Operatoren

arithmetische Operatoren

Operator Priorität Beschreibung Beispiel Ergebnis
+ 40 Addition 4+5 9
- 40 Subtraktion 6-2 4
* 50 Multiplikation 4*5 20
/ 51 Division 20/4 5
 % 51 Divisionsrest 104%20 4
/ / 60 Parallelschaltung x / / y x*y/(x+y)
^ 90 Potenz 2^3 8
.*. 200 Operator der intern für eine fehlende bindende Multiplikation verwendet wird 4x 4*x

Bitoperatoren

Operator Priorität Beschreibung Beispiel Ergebnis
20 Bitweise ODER 5 13
or 20 Bitweise ODER 9 or 5 13
& 21 Bitweise UND 13&10 8
and 21 Bitweise UND 13 and 10 8
xor 22 Bitweise exklusiv oder XOR 13 xor 10 7
imp 23 Bitweise impliziert IMP 13 imp 10 8
<< 35 Bitweise links schieben 5<<2 20
>> 35 Bitweise rechts schieben 8>>2 2

Vergleichsoperatoren

Operator Priorität Beschreibung Beispiel
= 3 Gleichungsoperator x=y
== 30 Gleichungsoperator x==y
 != 30 Ungleichungsoperator x!=y
< 32 Kleiner x<y
<= 32 Kleiner gleich x<=y
> 32 größer x>y
>= 32 größer gleich x>=y

Organisative Operatoren

Operator Priorität Beschreibung Beispiel Ergebnis
, 0 Listen-Trennzeichen x,y
$ 1 Trennzeichen zwischen mehreren Berechnungen
 ; 1 Trennzeichen zwischen mehreren Berechnungen
 : 2 Zuweisung an eine Variablen auf der linken Seite x:5

Prefix Operatoren

Operator Priorität Beschreibung Beispiel Ergebnis
+ 45 positives Vorzeichen +5 5
- 45 negatives Vorzeichen -(-5) 5
~ 95 bitweise Inversion einer 64bit-Ganzzahl ~0x0F0F 0xFFFFFFFFFFFFF0F0
 ! 120 logisches NOT  !(3<4) false
++ 130 Inkrement von Ganzzahlen ++x erhöht x um eins und gibt das Ergebnis nach der Erhöhung zurück
-- 130 Dekrement von Ganzzahlen --x vermindert x um eins und gibt das Ergebnis nach der Verminderung zurück
 % 200 Prefix für Namen, welche als Konstante definiert sind  %pi 3.141592653589793

Suffix Operatoren

Operator Priorität Beschreibung Beispiel Ergebnis
++ 135 Inkrement von Ganzzahlen x++ erhöht x um eins und gibt den Variablenwert vor der Erhöhung zurück
-- 135 Dekrement von Ganzzahlen x-- vermindert x um eins und gibt den Variablenwert vor der Verminderung zurück

Klammern

  • () runde Klammern werden für mathematische Ausdrücke zur Klammerung verwendet
  • {} geschwungene Klammer werden im Angabetext für die Namen der Datensätze verwendet
  • [] eckige Klammern werden für Vektoren und Matrizen verwendet

Funktionen

Funktionen für Ganzzahlen

Funktion Beschreibung Beispiel Ergebnis
band bitweises UND band(4,12) 4
bor bitweises ODER bor(4,1) 5
bxor bitweises EXKLUSIV ODER band(4,5) 1
bimp bitweises Parameter1 impliziert Parameter2 bimp(13,10) 8
binv bitweises NICHT mit 8 bit binv(0x0F) 0xF0

boolsche Funktionen

Funktion Beschreibung Beispiel Ergebnis
ge größer gleich ge(6,4) true
le kleiner gleich le(6,4) false
gt größer gt(6,4) true
lt kleiner lt(6,4) false
between prüft ob Parameter1 kleiner als Parameter2 und Parameter2 kleiner als Parameter 3 between(3,4,5) true
land logisches UND land(a<b,b<c)
lor logisches ODER lor(a<b,b<c)
not logisches NICHT not(a<b)

arithmetische Funktionen

Funktion Beschreibung Beispiel Ergebnis
double Zahl ein eine Gleitkommazahl umwandeln, die Einheit geht dabei verloren double(3.4V) 3.4
pow Potenzfunktion pow(2,3) 8
par Parallelschaltung von Widerständen par(x,y) x*y/(x+y)
min Minimum von mehrere Werten suchen min(3,5,1) 1
max Maximum von mehreren Werten suchen max(3,5,1) 5

Stringfunktionen

Funktion Beschreibung Beispiel Ergebnis
dechex Zahl in eine Ganzzahl wandeln und als Hexadezimal-String ausgeben dexhex(12) "0xC"

trigonometrische Funktionen

Funktion Beschreibung Beispiel Ergebnis
sin Sinus sin(%pi/2) 1

Exponentialfunktionen

Funktion Beschreibung Beispiel Ergebnis
pow Sinus sin(%pi/2) 1

Algebra

Funktion Beschreibung Beispiel Ergebnis
matrix erzeugt aus mehreren gleich langen Vektoren eine Matrix matrix([1,2],[3,4]) [[1,2],[3,4]]

Auswertung

Funktion Beschreibung Beispiel Ergebnis
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

Spezialfunktionen

Funktion Beschreibung Beispiel Ergebnis
e12 rundet einen Zahlenwert in den nächstliegenden Wert der Normreihe E12 e12(700Ohm) 680Ohm