Notizen anzeigen
  8 Spieler online
Gast von Gastaccount (1:7:2) Siedlungskommandant 11:11:52, Samstag, 21.9.2019
Aluminium
Aluminium: 36.803.837
Stahl
Stahl: 63.186.345
Plutonium
Plutonium: 102.532.477
Scanenergie
Scanenergie: 100% / 500% [500%]

Nachrichten Nachrichten(0 neu)
Neuigkeiten Neuigkeiten(0 neu)
Siedlungsneuigkeiten Siedlungsneuigkeiten([0/0]/0/0)
Tutorial
Herzlich Willkommen bei dem Tutorial des Onlinestrategiespieles Aquata. Bitte drücken Sie auf Weiter um das Tutorial zu beginnen.

...mehr
Weiter


Scanenergie
Maximale Lagergröße
Wiederaufladung möglich

Allgemeines Forum

 

>> Allgemeines Forum >> Themenlos >> Archiv >> wurzel in java ziehen
>> Suche

wurzel in java ziehen

Wayne
klärt auf
Station 1:10:4
avatar

Forumbeiträge:
Spamposts:
Editierte Posts:
Editiert worden:
Gelöschte Posts:

2493
5
341
275
38

wurzel in java ziehen

hab da gerade ein kleines problem mit meinen nicht vorhandenen java-skills
ich will in ner methode ne wurzel berechnen, bekomme bei der wurzel aber immer den fehler, dass ich float als datentyp brauche, aber double habe

public void berechnung(Graphics g,float a){

float r;
r = Math.sqrt(a/Math.PI);

...

was muss ich ändern, um den fehler zu beheben?

 

<16:13, Knuffeln! Wayne> aber wayne passt in a doch garnicht rein[...] <16:14, Knuffeln! a> na mein mund is groß

15:26, 27.5.2011 Optionen

Herr Nilsson

Station 1:17:1
avatar

Forumbeiträge:
Spamposts:
Editierte Posts:
Editiert worden:
Gelöschte Posts:

1518
1
134
93
14

was haben die variablen die du übergibst für einen datentyp?

 

An alle meine Stalker .... I love to entertain you ;)

15:34, 27.5.2011 Optionen

Wayne
klärt auf
Station 1:10:4
avatar

Forumbeiträge:
Spamposts:
Editierte Posts:
Editiert worden:
Gelöschte Posts:

2493
5
341
275
38

bislang noch keinen; is dass das problem?
also ich hab bislang noch nix für die variablen eingesetzt

€: hab jetzt mal beim methodenaufruf 10.f für a eigesetzt, tut sich aber nix an dem fehler bei der wurzel

 

<16:13, Knuffeln! Wayne> aber wayne passt in a doch garnicht rein[...] <16:14, Knuffeln! a> na mein mund is groß

1 mal editiert von Dr. Wayne, zuletzt um 15:45, 27.5.2011

15:40, 27.5.2011 Optionen

Herr Nilsson

Station 1:17:1
avatar

Forumbeiträge:
Spamposts:
Editierte Posts:
Editiert worden:
Gelöschte Posts:

1518
1
134
93
14

public void berechnung(Graphics g,double a){

double r;
r = Math.sqrt(a/Math.PI);



versch es mal so

 

An alle meine Stalker .... I love to entertain you ;)

15:47, 27.5.2011 Optionen

LordArmageddon
-| The Apocalypse |-
Station 1:9:2
avatar

Forumbeiträge:
Editierte Posts:
Editiert worden:
Gelöschte Posts:

2004
198
363
186

jo ich glaub das problem ist, dass Math.PI ne double zurückgibt.
download.oracle.com/javase/1.4.2/docs/api/java/lang/Math.html#PI

Und einen double-Wert kann man nicht in eine float-Variable speichern.

 


16:05, 27.5.2011 Optionen

Wayne
klärt auf
Station 1:10:4
avatar

Forumbeiträge:
Spamposts:
Editierte Posts:
Editiert worden:
Gelöschte Posts:

2493
5
341
275
38

lokis vorschlag funktioniert :)

besten dank für die hilfe

 

<16:13, Knuffeln! Wayne> aber wayne passt in a doch garnicht rein[...] <16:14, Knuffeln! a> na mein mund is groß

16:30, 27.5.2011 Optionen

el.mob
Minister für Aufrechterhaltung der inneren Ordnung, Hygiene und sonstiger, interner, schmutziger Angelegenheiten
Station 1:4:1
avatar

Forumbeiträge:
Editierte Posts:
Editiert worden:
Gelöschte Posts:

1208
98
28
4

ich hätte noch die idee das du die wurzel mit ^0,5(bzw andre zahl) umgehen kannst .. falls das weniger aufwand sein sollte

 

Ironie ist Wurst im eigenem Darm! *roll*

20:59, 27.5.2011 Optionen

Herr Nilsson

Station 1:17:1
avatar

Forumbeiträge:
Spamposts:
Editierte Posts:
Editiert worden:
Gelöschte Posts:

1518
1
134
93
14

das problem liegt wie arma gesagt hat an math.pi ... das ist eine double konstante

heist einfach mit double werten rechnen und das problem ist erledigt

 

An alle meine Stalker .... I love to entertain you ;)

21:50, 27.5.2011 Optionen

Nicht Gravedigger
GraVee
Station 1:20:4
avatar

Forumbeiträge:
Spamposts:
Editierte Posts:
Editiert worden:
Gelöschte Posts:

1452
11
161
39
32

mit dem hoch 0,5 wäre aber programmiertechnisch besser wenn float als datentyp reicht oder ?? ich mein so von bit sparen.... oder ??

 

Empty your mind. Be formless, shapeless, like water. Now, you put water into a cup - it becomes the cup. Putting it into a tea-pot - it becomes the teapot. Look, water can flow, or creep, or drip or crash. Be water, my friend

21:58, 27.5.2011 Optionen

Herr Nilsson

Station 1:17:1
avatar

Forumbeiträge:
Spamposts:
Editierte Posts:
Editiert worden:
Gelöschte Posts:

1518
1
134
93
14

hat ja nichts mit der wurzel zu tun, das Problem ist "Math.Pi" das ist ein fester double wert den man nicht in float umwandeln kann
und heutzutage spielt der speicher bei solchen programmen weniger die rolle :)
double ist für sowas besser da er eine höhere genauigkeit hat, an sich hätte man pi auch auf z.b 10 stellen von hand eingeben können um flaot zu nutzen

 

An alle meine Stalker .... I love to entertain you ;)

22:06, 27.5.2011 Optionen

neila

Station 1:9:5

Forumbeiträge:
Editierte Posts:
Gelöschte Posts:

120
12
3

man sollte einen double schon in einen float wandeln können, dies ist jedoch eine unsichere umwandlung da nicht nur datenverlsut (genauigleit) auftritt, sondern auch z.B. ein überlauf (zahlen wie 10^300 passen nicht in einen float). Daher sind soclhe umwandlungen in keiner programmiersprache implizit möglich; Ein exliziter typecast sollte dagegen möglich sein.

Beispiele

bype x = 16;
int y = x; //da jedes byte in einen int abbildbar ist ist ein impliziter cast möglich

float x = 16.0;
double y = x; //dies solte auch möhlich sein


double y = 16.0;
float x = (float) y; //so wollte es gehen, nur es könnte zu einer exception kommen (fals y z.B. zu groß
//und zudem würde das hier dann interressant
double z = x;
if(z==y){
//ob dieser code ausgefürt wird also ob y == z ist, ist abhängig von der rundung die beim umweg über x gemaht wurde
}



in deinem beispiel hätte man datt Math.PI warscheinlich

((float) Math.Pi)

schreiben können


was die performance etc. angeht. die typewandlung wäre an dieser stelle warscheinlich teurer als das reine rechnen mit doubles.








 

Ich war auch neu hier!

12:28, 30.5.2011 Optionen

>> Allgemeines Forum >> Themenlos >> Archiv >> wurzel in java ziehen

top


 
 

Antworten

Titel

Registrieren sie sich, um im Forum posten zu können.