Hilfe bei Java-Aufgabe in BlueJ

Hallo Leute,

Ich brauche dringend eure Hilfe! Ich soll als Hausaufgabe die nachfolgende Aufgabe lösen, was ich allerdings noch nicht so drauf hab. Wär echt nett wenn mir Jemand helfen könnte. Es geht meines Wissens nach um Felder (arrays) in Java. Wir arbeiten in der Schule mit dem Programm BlueJ. Wär toll wenn ihr versuchen könntet den Quelltest so einfach wie möglich zu halten und kurz erklärt was ihr eigentlich macht (bzw. für was welche Methode steht usw).

Aufgabe:

Sophie will ein Jahr lang jeden Tag um 15 Uhr die Temperatur auf ihrem Balkon messen und die Ergebnisse auswerten. Dazu definiert sie eine Klasse TEMPMESSUNG.
a) Lege ein Feld Temperatur an, welches die reellen Werte für jeden Tag eines Jahres aufnehmen kann. Definiere die Methode, um das Feld mit zufälligen Temperaturwerten (-20° bis +30°) zu belegen. Hinweis: Um eine Zufallszahle zu generieren kannst du folgenden Methodenaufruf verwenden: Math.random()
b) Nach genau einem Jahr sollen mithilfe dreier Methoden der Tag mit dem höchsten Temperaturwert, die niedrigste gemessene Temperatur und der Durchschnittswert aller Messwerte bestimmt werden. Implementiere geeignete Methoden.

Hinweis von mir:
Um die einzelnen Feldelemente zu benennen reichen die Zahlen 1 bis 365. Dieser Teil müsste dann ungefähr so aussehen:

public class TEMPMESSUNG{
public temperatur{
double [] temperaturwerte = new double [365]
for (double i=0; i

Hallöle
Also die Lösung möchte ich dir nicht verraten, aber ich möchte dir gerne etwas auf die Sprünge helfen :smile:
Dann mal ein Tipp von mir.
Zufallszahlen generiert du in Java so:
Bsp.
int zufallszahl = (int) (Math.random() * 3) + 1;
Math.random() liefert eine Zufallszahl >= 0 und =1 und

Ok, und was ist Deine Frage? Kannst Du konkret was dazu fragen oder hast Du im Unterricht geschlafen und willst, daß wir Deine Aufgabe lösen?

for (double i=0; i

Noch einen Hinweis zum Klassen schreiben: Das Array ist eine Klassenvariable (damit man aus allen methoden darauf zugreifen kann), die forschleife muss in den Konstruktor (der wird beim Aufruf mit new immer ausgeführt) , welcher den gleichen Namen wie die Klasse haben muss(weil darum).

welcher den gleichen Namen wie die Klasse haben muss(weil darum).

Hallo,
sorry aber ich hasse soetwas, „weil darum“ ist garnichts.

Es ist eine Spracheigenschaft das der Constructor in Java den gleichen Namen wie die Klasse hat (gleicher Name, kein Rückgabewert bzw. void).
Das ist zwar gängige Praxis in vielen OOP-Sprachen, C#, C++ etc.
Es gibt aber auch andere wie VB.NET dort heist der Constructor einfach „New“.

MfG Dominik

(gleicher Name, kein Rückgabewert bzw. void).

Wenn Du schon so auf die Sahne hauen willst: Vor einem Konstruktor steht NIE ein ‚void‘, ein Objekttyp oder ein Basisdatentyp. Der Konstruktor liefert nämlich genau ein Objekt seiner Klasse.

Hallo,
na so im metaphorischen Sinne ist void ja garnicht da :stuck_out_tongue_winking_eye:
Ne, hast recht war falsch.

MfG Dominik