Initial commit of the source files.
This commit is contained in:
parent
2d00125ebb
commit
333d9029d0
|
@ -0,0 +1,34 @@
|
||||||
|
/**
|
||||||
|
* Die Klasse MessApp steuert einen Messablauf, um die Performance des
|
||||||
|
* Zufallszahlengenerators zu messen.
|
||||||
|
*/
|
||||||
|
public class MessApp {
|
||||||
|
private Messkonduktor messkonduktor;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Fuehrt eine Messung durch.
|
||||||
|
*/
|
||||||
|
public void messen() {
|
||||||
|
initialisieren();
|
||||||
|
analyseDurchfuehren();
|
||||||
|
berechneUndDruckeMittelwerteMessreihe();
|
||||||
|
berechneUndDruckeMittelwerteMessung();
|
||||||
|
}
|
||||||
|
|
||||||
|
private void initialisieren() {
|
||||||
|
// TODO Objektsammlung und Messkonduktor erzeugen
|
||||||
|
}
|
||||||
|
|
||||||
|
private void analyseDurchfuehren() {
|
||||||
|
// TODO Benutzen Sie 'messkonduktor' um die Messungen
|
||||||
|
// durchzufuehren und in der Objektsammlung zu speichern.
|
||||||
|
}
|
||||||
|
|
||||||
|
private void berechneUndDruckeMittelwerteMessreihe() {
|
||||||
|
// TODO Implementieren Sie die Methode.
|
||||||
|
}
|
||||||
|
|
||||||
|
private void berechneUndDruckeMittelwerteMessung() {
|
||||||
|
// TODO Implementieren Sie die Methode.
|
||||||
|
}
|
||||||
|
}
|
|
@ -0,0 +1,58 @@
|
||||||
|
import java.util.Arrays;
|
||||||
|
import java.util.Random;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Mit dem Messkonduktor kann die Zeit fuer das Erzeugen und Sortieren einer
|
||||||
|
* vorgegebenen Anzahl Zusfallszahlen gemessen werden. Die Anzahl Zufallszahlen
|
||||||
|
* ist konfigurierbar.
|
||||||
|
*/
|
||||||
|
public class Messkonduktor {
|
||||||
|
private int anzahlZufallszahlen;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Erstellt einen Messkonduktor.
|
||||||
|
*
|
||||||
|
* @param anzahlZufallszahlen Anzahl Zufallszahlen pro Messung.
|
||||||
|
*/
|
||||||
|
public Messkonduktor(int anzahlZufallszahlen) {
|
||||||
|
this.anzahlZufallszahlen = anzahlZufallszahlen;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Fuehrt eine Anzahl Messungen durch. Die Anzahl ist bestimmt durch die
|
||||||
|
* Laenge des uebergeben Arrays. Eine einzelne Messung besteht aus dem
|
||||||
|
* Generieren und Sortieren der Zufallszahlen.
|
||||||
|
*
|
||||||
|
* @param messResultate Der Array fuer die Messresultate.
|
||||||
|
* @return Messresultate mit Zeitdauer in ms.
|
||||||
|
*/
|
||||||
|
public int[] messungenDurchfuehren(int[] messResultate) {
|
||||||
|
for (int i = 0; i < messResultate.length; i++) {
|
||||||
|
messResultate[i] = einzelneMessungDurchfuehren();
|
||||||
|
}
|
||||||
|
|
||||||
|
return messResultate;
|
||||||
|
}
|
||||||
|
|
||||||
|
private int einzelneMessungDurchfuehren() {
|
||||||
|
long zeitVorher = System.currentTimeMillis();
|
||||||
|
|
||||||
|
int[] zufallszahlen = zufallszahlenGenerieren();
|
||||||
|
Arrays.sort(zufallszahlen);
|
||||||
|
|
||||||
|
long zeitDanach = System.currentTimeMillis();
|
||||||
|
int zeitdauerInMs = (int) (zeitDanach - zeitVorher);
|
||||||
|
|
||||||
|
return zeitdauerInMs;
|
||||||
|
}
|
||||||
|
|
||||||
|
private int[] zufallszahlenGenerieren() {
|
||||||
|
int[] zufallszahlen = new int[anzahlZufallszahlen];
|
||||||
|
Random zufallszahlenGenerator = new Random();
|
||||||
|
|
||||||
|
for (int i = 0; i < anzahlZufallszahlen; i++) {
|
||||||
|
zufallszahlen[i] = zufallszahlenGenerator.nextInt(100000);
|
||||||
|
}
|
||||||
|
return zufallszahlen;
|
||||||
|
}
|
||||||
|
}
|
|
@ -0,0 +1,14 @@
|
||||||
|
------------------------------------------------------------------------
|
||||||
|
Dies ist die README-Datei des Projekts. Hier sollten Sie Ihr Projekt
|
||||||
|
beschreiben.
|
||||||
|
Erzählen Sie dem Leser (jemand, der nichts über dieses Projekt weiss),
|
||||||
|
alles, was er/sie wissen muss. Üblicherweise sollte der Kommentar
|
||||||
|
zumindest die folgenden Angaben umfassen:
|
||||||
|
------------------------------------------------------------------------
|
||||||
|
|
||||||
|
PROJEKTBEZEICHNUNG:
|
||||||
|
PROJEKTZWECK:
|
||||||
|
VERSION oder DATUM:
|
||||||
|
WIE IST DAS PROJEKT ZU STARTEN:
|
||||||
|
AUTOR(EN):
|
||||||
|
BENUTZERHINWEISE:
|
|
@ -0,0 +1,31 @@
|
||||||
|
#BlueJ package file
|
||||||
|
dependency1.from=MessApp
|
||||||
|
dependency1.to=Messkonduktor
|
||||||
|
dependency1.type=UsesDependency
|
||||||
|
package.editor.height=400
|
||||||
|
package.editor.width=560
|
||||||
|
package.editor.x=222
|
||||||
|
package.editor.y=351
|
||||||
|
package.numDependencies=1
|
||||||
|
package.numTargets=2
|
||||||
|
package.showExtends=true
|
||||||
|
package.showUses=true
|
||||||
|
project.charset=UTF-8
|
||||||
|
target1.editor.height=700
|
||||||
|
target1.editor.width=900
|
||||||
|
target1.editor.x=0
|
||||||
|
target1.editor.y=1
|
||||||
|
target1.height=50
|
||||||
|
target1.name=Messkonduktor
|
||||||
|
target1.showInterface=false
|
||||||
|
target1.type=ClassTarget
|
||||||
|
target1.width=120
|
||||||
|
target1.x=240
|
||||||
|
target1.y=170
|
||||||
|
target2.height=50
|
||||||
|
target2.name=MessApp
|
||||||
|
target2.showInterface=false
|
||||||
|
target2.type=ClassTarget
|
||||||
|
target2.width=80
|
||||||
|
target2.x=70
|
||||||
|
target2.y=40
|
Loading…
Reference in New Issue