CUBE.CODES: Einfache EVA-Programme: Unterschied zwischen den Versionen

Aus MINT.lentner.net
Zur Navigation springen Zur Suche springen
Zeile 5: Zeile 5:
 
===Programm 3: Berechnung einer ganzzahligen Teilung===
 
===Programm 3: Berechnung einer ganzzahligen Teilung===
 
>>> [https://ide.cube.codes/app/?init=loadFromUrl&url=https://share-repository.cube.codes/v1/appStates/b987894d-d098-4235-83b5-510d1a1b7a94 direkt zu CUBE.CODES]
 
>>> [https://ide.cube.codes/app/?init=loadFromUrl&url=https://share-repository.cube.codes/v1/appStates/b987894d-d098-4235-83b5-510d1a1b7a94 direkt zu CUBE.CODES]
  Zahl=12;
+
  //Rechenprogramm zur ganzzahligen Teilung z.B. 7 durch 2<br>
  Teiler=1;<br>
+
//Eingabe
  while(Teiler<=Zahl) {
+
Dividend=7; Divisor=2;                  //Zuweisung: z.B. Speichere 7 in der Speicherzelle "Dividend" ab<br>
UI.log("Zahl: " + Zahl + ", Teiler: " + Teiler + ", Quotient: " + (Zahl/Teiler));
+
//Berechnung
Teiler=Teiler+1;
+
Quotient=Math.floor(Dividend/Divisor);   //Berechnung: Dividend/Divisor und rundet mittels Math.floor und speichert in "Quotient"<br>
}
+
  Rest=Dividend%Divisor;                   //Berechnung: Den Rest von Dividend/Divisor und speichert und speichert in "Rest"<br>
 +
  //Ausgabe
 +
UI.log(Quotient);                        //Ausgabebefehl: Ausgabe von Speicherinhalt "Quotient" in das USER INTERFACE <br>
 +
UI.log(Rest);                            //Ausgabebefehl: Ausgabe von Speicherinhalt "Rest" in das USER INTERFACE <br>
 +
//Schönere Ausgabe ist ...
 +
UI.log(String(Dividend) + " geteilt durch " + String(Divisor) + " ist " + String(Quotient) + " Rest " + String(Rest));
  
 
In weniger als einer Sekunde erhalten wir das Ergebnis:
 
In weniger als einer Sekunde erhalten wir das Ergebnis:

Version vom 26. April 2021, 12:06 Uhr

Einfache EVA-Programme (Eingabe - Verarbeitung - Ausgabe)

CUBE.CODES - Erste Schritte

Programm 3: Berechnung einer ganzzahligen Teilung

>>> direkt zu CUBE.CODES

//Rechenprogramm zur ganzzahligen Teilung z.B. 7 durch 2
//Eingabe Dividend=7; Divisor=2; //Zuweisung: z.B. Speichere 7 in der Speicherzelle "Dividend" ab
//Berechnung Quotient=Math.floor(Dividend/Divisor); //Berechnung: Dividend/Divisor und rundet mittels Math.floor und speichert in "Quotient"
Rest=Dividend%Divisor; //Berechnung: Den Rest von Dividend/Divisor und speichert und speichert in "Rest"
//Ausgabe UI.log(Quotient); //Ausgabebefehl: Ausgabe von Speicherinhalt "Quotient" in das USER INTERFACE
UI.log(Rest); //Ausgabebefehl: Ausgabe von Speicherinhalt "Rest" in das USER INTERFACE
//Schönere Ausgabe ist ... UI.log(String(Dividend) + " geteilt durch " + String(Divisor) + " ist " + String(Quotient) + " Rest " + String(Rest));

In weniger als einer Sekunde erhalten wir das Ergebnis:

[23:24:04] Program starting ...
[23:24:05] Program running ...
Zahl: 12, Teiler: 1, Quotient: 12
Zahl: 12, Teiler: 2, Quotient: 6
Zahl: 12, Teiler: 3, Quotient: 4
Zahl: 12, Teiler: 4, Quotient: 3
Zahl: 12, Teiler: 5, Quotient: 2.4
Zahl: 12, Teiler: 6, Quotient: 2
Zahl: 12, Teiler: 7, Quotient: 1.7142857142857142
Zahl: 12, Teiler: 8, Quotient: 1.5
Zahl: 12, Teiler: 9, Quotient: 1.3333333333333333
Zahl: 12, Teiler: 10, Quotient: 1.2
Zahl: 12, Teiler: 11, Quotient: 1.0909090909090908
Zahl: 12, Teiler: 12, Quotient: 1
[23:24:05] Program finished successfully

Wir müssen die Teiler mit ganzzahligen Quotienten nur ablesen und haben unsere Teilermenge. Da der PC bei der sturen Wiederholung von Rechenschritten recht schmerzfrei ist, stört es kein bisschen, die Zuordnung Zahl=12; durch Zahl=5000; zu ersetzen und in weniger als einer Sekunde haben wir die Teiler von 5000 - zugegebenermaßen etwas mühsam ablesbar!