Brauche ganz dringend HILFEEE! Math random

Status
Nicht offen für weitere Antworten.
H

HelloWorld

Gast
Ich bin im ersten Semester Programmieren und hab nen Aufgabenzettel den ich bis morgen abgeben muss, hab alle Aufgaben gelöst außer der letzten. Ich bin am verzweifeln und hab keine Ahnung wie ich das machen soll. Ich hoffe ihr könnt mir weiter helfen:


In der Java-Bibliotheksklasse java.lang.Math existiert die Methode Math.random() mit
deren Hilfe eine (quasi) zuf¨allige Zahl z vom Typ double Im Intervall mit 0 (kleiner gleich) z < 1 erzeugt
werden kann, z.B. durch double r = Math.Random();.

a) Nutzen Sie Math.random() und die explizite Typkonversion, um zuf¨allige Werte vom
Typ int im Intervall [-500, 500] zu erzeugen und auszugeben.

b) Schreiben Sie dazu eine Anweisungsfolge, die zus¨atzlich den Absolutbetrag der erzeugten
Zahl berechnet (Ohne Verwendung einer vorgegebenen Bibliothek) und ausgibt.

c) Erzeugen Sie nun solange zuf¨allige Zahlen (im o.g. Intervall) bis zum ersten Mal der
Fall eintritt, dass die Differenz zwischen der erzeugten Zahl und deren Absolutbetrag
grßoßer als 900 (im Absolutbetrag) ist.


Danke im Voraus!!!!
 
S

SlaterB

Gast
b und c sind ja nun keiner Erwähnung wert,
da stelle eine Frage wenn du sie hast, nachdem du angefangen hast,
aber zu verraten gibts da eigentlich nix?,

a ist ein ganz klein wenig tricky, der entscheidene Tipp:
Math.random() liefert ein Interval von 0 bis 1,
um dieses z.B. auf 0-10 zu erhöhen multiplizierst du einfach die Zufallszahl mit 10,
auf diese Art kannst du dir ein beliebiges Interval erzeugen
 
G

Guest

Gast
SlaterB hat gesagt.:
b und c sind ja nun keiner Erwähnung wert,
da stelle eine Frage wenn du sie hast, nachdem du angefangen hast,
aber zu verraten gibts da eigentlich nix?,

a ist ein ganz klein wenig tricky, der entscheidene Tipp:
Math.random() liefert ein Interval von 0 bis 1,
um dieses z.B. auf 0-10 zu erhöhen multiplizierst du einfach die Zufallszahl mit 10,
auf diese Art kannst du dir ein beliebiges Interval erzeugen

public class Zufall
{
public static void main(String[] args)
{
double r = Math.random();
int z=((int)((r*1001)-500)); // Verschiebt die zufallszahl in den richtigen bereich*/

System.out.println(+z);

}

}

Hab a) jetzt raus aber b) und c) bereiten mir noch Kopfschmerzen!
 
G

Guest

Gast
Also muss ich bei b) jede Zahl die negativ ist * (-1) rechnen. RICHTIG?
 
G

Guest

Gast
Kannst du mir vielleicht bei c) sagen was ich da zu machen habe?
 
G

Guest

Gast
Muss hier aufhören Zufallszahlen auszugeben wenn eine Differenz zwischen -500 und 500 ergibt.
Ich muss hier also ne for Schleife drum schreiben aber was schreibe ich als Bedingung.

Also

for (????)
{
}
 
S

SlaterB

Gast
eine for-Schleife bietet sich nicht an, da du etwas solange wiederholst bis es abgebrochen werden kann,
also

do {
zahl1 =
zahl2 =
diferenz =
} while(diferenz < 900)

oder

diferenz = 0;
while(diferenz < 900) {
zahl1 =
zahl2 =
diferenz =
}

oder auch (nicht so schön)

while(true) {
zahl1 =
zahl2 =
diferenz =
if (diferenz > 900) {
break;
}
}
 
G

Guest

Gast
Das Passt so nicht in mein Programm dies sieht so aus:

public class Random
{
public static void main(String[] args)
{

double r = Math.random();

// Verschiebt die zufallszahl in den richtigen bereich*/




int z=((int)((r*1001)-500));

if (z<0)
{
z=z*(-1);
}



System.out.println("Der Zufallswert lautet: "+z);





}

}

Oder sehe ich das falsch, ich weiss nicht genau wie ich das hier einbinden kann. (Vielleicht nen Denkfehler, weiss nicht)
 
S

SlaterB

Gast
ein Programm sollte modular sein,
das was du für b geschrieben hast verwendest du in c,
und zwar als separate Operation, nicht irgendwie 3 Zeilen Code kopiert


differenz = 0;
while(differenz < 900) {
zahl1 = getZufallsZahl();
zahl2 = getAbsolutDazu(zahl2);
differenz = // irgendwas aus zahl1 und zahl2
}

naja, wenn du getZufallsZahl(); und getAbsolutDazu(zahl2); duch den jeweiligen Code direkt ersetzt sollte es zumindest auch funktionieren,
was meinst du mit 'passt nicht'?
der Code muss in die Schleife rein wenn du ihn mehrmals ausführen willst
 
G

Guest

Gast
SlaterB hat gesagt.:
ein Programm sollte modular sein,
das was du für b geschrieben hast verwendest du in c,
und zwar als separate Operation, nicht irgendwie 3 Zeilen Code kopiert


differenz = 0;
while(differenz < 900) {
zahl1 = getZufallsZahl();
zahl2 = getAbsolutDazu(zahl2);
differenz = // irgendwas aus zahl1 und zahl2
}

naja, wenn du getZufallsZahl(); und getAbsolutDazu(zahl2); duch den jeweiligen Code direkt ersetzt sollte es zumindest auch funktionieren,
was meinst du mit 'passt nicht'?
der Code muss in die Schleife rein wenn du ihn mehrmals ausführen willst

Okay du hast recht aber man muss das ja alles verknüpfen und das ist mein Problem, ich bin noch nicht so geübt im Programme schreiben. Ich weiss jetzt nicht wie die Verbindung aussehen soll mit meinem Programm und dem was du mir geschrieben hast:

differenz = 0;
while(differenz < 900) {
zahl1 = getZufallsZahl();
zahl2 = getAbsolutDazu(zahl2);
differenz = // irgendwas aus zahl1 und zahl2
}

Ich verstehe nicht genau wie du das meinst.
Aber trotzdem schon mal danke das du dir Zeit für mich genommen hast ist sehr nett!!!
 
G

Gast

Gast
Okay du hast recht aber man muss das ja alles verknüpfen und das ist mein Problem, ich bin noch nicht so geübt im Programme schreiben. Ich weiss jetzt nicht wie die Verbindung aussehen soll mit meinem Programm und dem was du mir geschrieben hast:

differenz = 0;
while(differenz < 900) {
zahl1 = getZufallsZahl();
zahl2 = getAbsolutDazu(zahl2);
differenz = // irgendwas aus zahl1 und zahl2
}

Ich verstehe nicht genau wie du das meinst.
Aber trotzdem schon mal danke das du dir Zeit für mich genommen hast ist sehr nett!!!

Nach oben
 
G

Guest

Gast
Ich hab das hier versucht aber es wird mir immer wieder nen Fehler angezeigt:

do
{
int z=((int)((r*1001)-500));
System.out.println("Der Zufallswert lautet: "+z);
if (z<0)
{
z=z*(-1);
}
}
while (z>450);
 
S

SlaterB

Gast
zahl1 = getZufallsZahl();

heißt entweder

int zahl1=((int)((r*1001)-500));

----------

oder eben schöner:

int zahl1 = getZufallsZahl();

+ separate Operation:

public int getZufallszahl() {
return ((int)((r*1001)-500));
}


-----------

> aber es wird mir immer wieder nen Fehler angezeigt:

was für ein Fehler in welcher Zeile
 
G

Guest

Gast
Das Programm sieht jetzt so aus der startet auch aber es kommt die ganze Zeit die Gleiche Zeile wiederholt
z.B.: Der Zufallswert lautet 233

Aber ich will das das Programm immer wieder neue Zufallswerte angibt, bis eine Differenz von 900 entsteht und dann stoppt (Aber das weisst du ja) Was mache ich falsch?


public class Zufall
{
public static void main(String[] args)
{

double r = Math.random();


int z;

do
{

z=((int)((r*1001)-500));

if (z<0)
{
z=z*(-1);
}

System.out.println("Der Zufallswert lautet: "+z);

}
while (z<450);




}

}
 

LoN_Nemesis

Bekanntes Mitglied
Code:
public static void main(String[] args) {
		int z; 
		do {
			double r = Math.random(); // hierher muss das
			z=((int)((r*1001)-500));
			if (z<0)
				z=z*(-1);
			 System.out.println("Der Zufallswert lautet: "+z);
	
		 } while (z<450);

	}


Du erzeugst nur einmal eine Zufallszahl, die dann nicht mehr änderst, logisch dass da immer der gleiche Wert rauskommt. Die random Anweisung muss in die Schleife rein, siehe Code.
 
G

Guest

Gast
Super danke! Finde ich klasse. Vielen vielen dank für die Hilfe!!!

Wünsch dir noch nen wunderschönen Abend
 
G

Guest

Gast
LoN_Nemesis hat gesagt.:
Code:
public static void main(String[] args) {
		int z; 
		do {
			double r = Math.random(); // hierher muss das
			z=((int)((r*1001)-500));
			if (z<0)
				z=z*(-1);
			 System.out.println("Der Zufallswert lautet: "+z);
	
		 } while (z<450);

	}


Du erzeugst nur einmal eine Zufallszahl, die dann nicht mehr änderst, logisch dass da immer der gleiche Wert rauskommt. Die random Anweisung muss in die Schleife rein, siehe Code.

Jetzt hab ich noch eine Frage, warum hat der Zufallswert einen höheren Wert als 450. Eigentlich darf das nicht sein weil hier steht "while (z<450);"
 
G

Guest

Gast
Ja stimmt hast recht. Hab was durcheinander gebracht es werden solange Zufallszahlen ausgegeben bis ein höhrer Wert als 450 erzeugt wird, dann setzt das Programm aus.

Danke euch nochmal!!!!!
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
S Brauche ganz dringend Hilfe Java Basics - Anfänger-Themen 4
L Brauche ganz dringed Hilfe Java Basics - Anfänger-Themen 2
B Brauche Hilfe bei nem ganz einfachen Programm... Java Basics - Anfänger-Themen 4
T Ich brauche eine Schleife die eine beliebige Zahl so lange durch 10 teilt bis zur Null Java Basics - Anfänger-Themen 5
_so_far_away_ Inventarisierungssystem brauche switch Cases und weiß nicht, wie ich e implementieren muss Java Basics - Anfänger-Themen 5
berserkerdq2 Brauche ich while != -1, wenn ich immer einen BufferedReader verwende? Java Basics - Anfänger-Themen 8
KyZarr Was brauche ich alles? Java Basics - Anfänger-Themen 2
B Brauche Hilfe zu einem Code Java Basics - Anfänger-Themen 5
J Brauche Hilfe bei for-each Aufgabe Java Basics - Anfänger-Themen 1
HeiTim Brauche Hilfe soll ein nummeriertes Feld ausgeben lassen Java Basics - Anfänger-Themen 17
J Brauche Hilfe bei Aufgabe Java Basics - Anfänger-Themen 4
H Brauche Hilfe Java Basics - Anfänger-Themen 2
H Brauche hilfe Java Basics - Anfänger-Themen 3
C Brauche Hilfe beim Schreiben eines Programmes :/ Java Basics - Anfänger-Themen 1
C Brauche Hilfe um ein Programm zu schreiben Java Basics - Anfänger-Themen 8
Leo0909 Ich brauche Hilfe bei dieser Aufgabe Java Basics - Anfänger-Themen 2
MichelNeedhelp Brauche zu diesem Labyrinth ein Skript? Der Hamster soll im Urzeigersinn das ganze Labyrinth abgehen und wieder an seinem Ursprungsplatz sein. Java Basics - Anfänger-Themen 40
H Brauche Hilfe in Java Eclipse Programmieraufgabe Neuling Java Basics - Anfänger-Themen 3
D Brauche Dringend Hilfe...Prozedur/Funktionsprozedur Ergebnis augeben Java Basics - Anfänger-Themen 11
I Brauche Hilfe bei Objektorientiertem programmieren Java Basics - Anfänger-Themen 23
M Brauche Hilfe bei If-Scheifen Java Basics - Anfänger-Themen 2
F ich brauche Hilfe bei Listen Java Basics - Anfänger-Themen 13
J Ich brauche Hilfe bei einem Code (Variablen speichern) Java Basics - Anfänger-Themen 29
E Ich Brauche Hilfe Java Basics - Anfänger-Themen 3
L Brauche Hilfe beim arbeiten mit Konstruktoren Java Basics - Anfänger-Themen 20
J Brauche Hilfe bei einer aufgabe Java Basics - Anfänger-Themen 1
S Brauche hilfe in Java [Fehler in mein Code]? Java Basics - Anfänger-Themen 2
B BITTE!! Ich brauche dringende Hilfe bei einer Aufgabe Java Basics - Anfänger-Themen 17
TpKey10 Ich brauche Hilfe Java Basics - Anfänger-Themen 14
F Ich brauche Hilfe bei Objektorientierter Programmierung... Java Basics - Anfänger-Themen 19
L Input/Output Wurzelzeichen in der Konsole ausgeben | Brauche Hilfe Java Basics - Anfänger-Themen 6
J Brauche Hilfe bei dieser Aufgabe Java Basics - Anfänger-Themen 3
T Brauche Hilfe um ein Programm zu verstehe Java Basics - Anfänger-Themen 4
C Ich brauche hilfe für meine Klausur Java Basics - Anfänger-Themen 13
C LMC laufen kriegen, welches Java brauche ich ? Java Basics - Anfänger-Themen 5
M Was brauche ich für Java + Fehler Java Basics - Anfänger-Themen 2
J Brauche Hilfe !! Java Basics - Anfänger-Themen 8
R Spielfeldbegrenzung einfügen (Java)? Brauche Hilfe! Java Basics - Anfänger-Themen 15
C Brauche dringend Hilfe. Umfrage mit ja und nein in Java erstellen? Java Basics - Anfänger-Themen 12
U Brauche Hilfe bei Programmierung einer Produktdatenbank App Java Basics - Anfänger-Themen 4
I Brauche Denkanstoß: Weitergabe von Kontaktinfos aus verschiedenen Kontaktformularen von Webseiten Java Basics - Anfänger-Themen 2
M Brauche Tipps für ein Spiel Java Basics - Anfänger-Themen 4
P Brauche Hilfe bei ResultSet mit MySQL Java Basics - Anfänger-Themen 6
T Datentypen Brauche Hilfe bei Arrays Java Basics - Anfänger-Themen 3
U Brauche Hilfe bei Bisektionsverfahren Java Basics - Anfänger-Themen 23
E Erste Schritte brauche hilfe zum verstehen einer Klasse(Tiefensuche) Java Basics - Anfänger-Themen 17
I Brauche Hilfe bei Schleifen Java Basics - Anfänger-Themen 18
J Brauche Starthilfe für editable Tableview Java Basics - Anfänger-Themen 0
B Java Graphen zeichnen - Brauche Hilfe Java Basics - Anfänger-Themen 9
S brauche hilfe bei Fehlersuche Java Basics - Anfänger-Themen 7
M JDK installieren Brauche dringend Hilfe Java Basics - Anfänger-Themen 2
L Brauche Hilfe bei Preisberechnungspogramm Java Basics - Anfänger-Themen 1
J Brauche Fußball-Ratschlag Java Basics - Anfänger-Themen 1
E Brauche eine Antwort zum Thema RegEx ( Alternative zur Lösung auch gesucht ) Java Basics - Anfänger-Themen 5
D Hilbert und Peano Kurve, ich brauche Hilfe Java Basics - Anfänger-Themen 4
S Brauche hilfe bei Pong (JFrame) Java Basics - Anfänger-Themen 2
V Hilfe-brauche eine Idee! Java Basics - Anfänger-Themen 5
Q Erste Schritte Brauche Hilfeeee!! Java Basics - Anfänger-Themen 2
R Brauche Hilfe beim fertigstellen eines Chat programms Java Basics - Anfänger-Themen 8
A Erste Schritte Brauche Hilfe Java Basics - Anfänger-Themen 2
D Brauche Hilfe für mein übungsprogramm Java Basics - Anfänger-Themen 16
S Klassen Brauche Hilfe bei Erstellung einer Klasse für einen Tachenrechner!!! Java Basics - Anfänger-Themen 6
W Brauche hilfe bei Hausübung Java Basics - Anfänger-Themen 10
D Brauche Hilfe bei Modulo (Übungsaufgabe) Java Basics - Anfänger-Themen 14
X Brauche Hilfe bei printOnScreen Methode !!! Java Basics - Anfänger-Themen 2
H mysql brauche hilfe, wer kann eine (längere) aufgabe für mich erledigen Java Basics - Anfänger-Themen 2
K Erste Schritte Brauche Hilfe bei Starten des Programms Java Basics - Anfänger-Themen 11
B Erste Schritte HILFE Brauche ein Beispiel für korrekte Syntax mit Semantikfehlern Java Basics - Anfänger-Themen 6
H Java von Kopf bis Fuß: Brauche Hilfe Java Basics - Anfänger-Themen 6
P Wozu brauche ich (this.)? Java Basics - Anfänger-Themen 3
B Erste Schritte Brauche Hilfe bei einem Java-Taschenrechner Java Basics - Anfänger-Themen 11
M suche/brauche Links über rein GUI Beispielprogramme Java Basics - Anfänger-Themen 4
S brauche hilfe beim fehler finden Java Basics - Anfänger-Themen 2
S Erste Schritte BlueJ-Aufgabe: Programmcode / Brauche dringend Hilfe !!! Java Basics - Anfänger-Themen 37
H Collections Brauche modifizierte HashMap Java Basics - Anfänger-Themen 6
A Brauche Hilfe bei Division von Feldzahl durch Ganzzahl Java Basics - Anfänger-Themen 3
F Java-Anfänger, brauche Hilfe Java Basics - Anfänger-Themen 3
F Java-Anfänger, brauche Hilfe Java Basics - Anfänger-Themen 2
K Wann genau brauche ich die Anweisung gleich null? Java Basics - Anfänger-Themen 10
C Brauche dringend hilfe beim exception im code Java Basics - Anfänger-Themen 5
G Brauche bitte Hilfe, bei umgekehrter Ausgabe!! Java Basics - Anfänger-Themen 6
B Erste Schritte Brauche Hilfe für ein UML Diagramm Java Basics - Anfänger-Themen 7
T Warum brauche ich diese IOException? Java Basics - Anfänger-Themen 30
S ICh brauche Hilfe,weil Java in der Schule Java Basics - Anfänger-Themen 11
B Brauche Hilfe mit Aufgaben mit dem JavaEditor Java Basics - Anfänger-Themen 8
M Brauche ich ein Datenbank oder nicht? Java Basics - Anfänger-Themen 6
B Erste Schritte Welche Kenntnisse brauche ich für diese Programmidee? Java Basics - Anfänger-Themen 4
K Arrays zusammen addieren - brauche Denkanstoß:) Java Basics - Anfänger-Themen 4
I Primzahlenberechnung [Brauche Hilfe] Java Basics - Anfänger-Themen 5
T brauche den pfad Name! Java Basics - Anfänger-Themen 2
T brauche HILFE beim Junit test:eek: Java Basics - Anfänger-Themen 11
F Reader - brauche Hilfe Java Basics - Anfänger-Themen 19
R Klassen MemorySpiel: brauche Timer Java Basics - Anfänger-Themen 3
T Brauche Hilfe bei Variabeln Java Basics - Anfänger-Themen 4
J Brauche Hilfe mit replaceFirst Java Basics - Anfänger-Themen 10
M Brauche Hilfe bei Struktogramm Java Basics - Anfänger-Themen 9
T Datentypen brauche dringende hilfe!dezi in Asci umwandeln! Java Basics - Anfänger-Themen 4
X DB4O Collections and Arrays, brauche dringend Hilfe! Java Basics - Anfänger-Themen 3
B brauche hilfe bei funktion erstellen Java Basics - Anfänger-Themen 8
S Brauche Hilfe bei if/else Java Basics - Anfänger-Themen 3

Ähnliche Java Themen

Neue Themen


Oben