Berechnung mit Module bis bes.timme Zahl erreicht.

Status
Nicht offen für weitere Antworten.
L

Luc0

Gast
Hello ihr!

Ich habe folgendes Problem:

Ich will ein Balkendiagramm erstellen, bei dem man den Maximalwert bestimmen kann. Anhand des Maximalwertes wird dann die Größe des Balkens berechnet.
Das Panel ist 400Pixel groß, wenn man 100 als Max.wert eingibt, ist 1% 4 Pixel groß.
Anhand der Berechnung wird dann dem Balken die genaue Größe zugewiesen...dort sind aber nur Integer Werte zulässig.
Also:
Wenn ich einen krummen Wert, zum Beispiel 111 eingebe, kommen ja dobule Zahlen ins Spiel!
Jetzt hab ich mir überlegt:
Ich kann eine Methode schreiben, die den Max.Wert so lange um 1 erhöht, bis bei 400%zahl = 0 rauskommt.
Das ist kein Problem wenn der Anfangswert 199 ist, dann muss er ja nur 1 mal durch die Schleife.
Aber wenn ich dann andere Zahlen versuche, hängt sich das Programm auf.

Habt ihr da vielleicht noch bessere Varianten bzw. Tipps auf Lager?

Die Methode um den Wert zu checken:
Code:
//     public void checkZahlenPs(){
//      boolean fertig = false;
//      int temp=maxPs;
//      while(fertig==false){
//          
//         if(400%maxPs!=0){
//              temp+=1;
//             } else {
//                 
//                 maxPs=temp;
//                 zeichneZahlenLinks(); 
//                 fertig=true;
//             }
//          
//         }
//        
//     }


Und die Methode um die Zahlen zu schreiben:

 public void zeichneZahlenLinks() {

        int anzahlWerteLinks=10;
        int maxPstemp=maxPs;
        int sprung = 0;
        int temp=maxPs/anzahlWerteLinks;
       

        for(int i=0;i<anzahlWerteLinks;i++)
        {
            if(werteLinks.size()<anzahlWerteLinks){ 
              werteLinks.add(i,new JLabel()) ; 
              if(maxPstemp<100){
         werteLinks.get(i).setText(""+maxPstemp+"  -");
        }else {
            werteLinks.get(i).setText(""+maxPstemp+"-");
        }
         maxPstemp-=temp;
         werteLinks.get(i).setBounds(24,0+sprung,25,77);
         sprung+=40;
         add(werteLinks.get(i));
        } 
        
        
        else {
         if(maxPstemp<100){
         werteLinks.get(i).setText(""+maxPstemp+"  -");
        }else {
            werteLinks.get(i).setText(""+maxPstemp+"-");
        }
         maxPstemp-=temp;
         werteLinks.get(i).setBounds(24,0+sprung,25,77);
         sprung+=40;
         add(werteLinks.get(i));
        }
    }
    zeichneBar();
        repaint();
  
}

Vielen Dank im Voraus!!!

Luc0
 

musiKk

Top Contributor
Ich hab den Code jetzt nicht genau nachvollzogen, aber ich frage mich, wieso du nicht einfach den Wert genau per Dreisatz ausrechnest und dann auf den nächsten int-Wert rundest.
 

musiKk

Top Contributor
Wenn du ein double oder float nach int castest, wird abgerundet. Wenn du echt runden willst, addierst du vor dem Cast 0.5.
 

Luc0

Mitglied
Hey!
Ich habs geschafft.
Und zwar hab ich einfach ausgerechnet,was durch das benutzen von Int "vergessen" wird. Dies addiere ich dann einfach bei .setBounds hinzu:

Code:
double restVer = 400-(pixelVer*maxVer);
int restIntVer=(int)restVer;
barListeVer.get(i).setBounds(80+i*60,40+((maxVer-barListeVer.get(i).getValue())*pixelVer),10,pixelVer*barListeVer.get(i).getValue()+restIntVer);

Vielen Dank!!!

Bis demnächst,
Luc0
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
pkm Berechnung der Fakultät von Fließkommazahlen anhand von Stirlingformel Allgemeine Java-Themen 4
I Berechnung Lagerbestands / Verfügbarkeitsprüfung Allgemeine Java-Themen 1
L RegEx für Teile einer Berechnung Allgemeine Java-Themen 14
L Korrektur nach der Berechnung vornehmen, aber wie? Allgemeine Java-Themen 11
D Berechnung des Cosinus Allgemeine Java-Themen 4
H float Berechnung: Ergebnis ohne wissenschaftliche Notation Allgemeine Java-Themen 5
A Fehlerhafte Nst Berechnung einer bestimmten Fkt. (Bisektion) Allgemeine Java-Themen 10
E Berechnung des Schnittpunktes von zwei Geraden Allgemeine Java-Themen 1
P Performate Zeiteiteiteilungs- Berechnung Allgemeine Java-Themen 4
B TileMap berechnung? Allgemeine Java-Themen 8
P jodaTime Berechnung Geburtstag Allgemeine Java-Themen 1
K Probleme bei Berechnung der Komplexität Allgemeine Java-Themen 7
S Welcher Schleifen type für eine Berechnung Allgemeine Java-Themen 7
B BlueJ Potenz Berechnung Allgemeine Java-Themen 16
W Berechnung Durchschnitt mit Schleife Allgemeine Java-Themen 9
M Berechnung verbessern Allgemeine Java-Themen 8
W OOP Berechnung des Skalarprodukts Allgemeine Java-Themen 9
H Demonstrationsprogramm zur CRC-Berechnung Allgemeine Java-Themen 2
D Berechnung von Sonnenauf und Sonnenuntergang Allgemeine Java-Themen 2
E Berechnung in Arraylist Allgemeine Java-Themen 10
R Eclipse Verschiedene Ergebnisse bei Berechnung eines double-Werts Allgemeine Java-Themen 5
E Falsche Ergebnisse bei PQ-Formel Berechnung Allgemeine Java-Themen 12
N Optimierung einer Berechnung Allgemeine Java-Themen 17
G java.sql Time Berechnung Allgemeine Java-Themen 6
Eldorado Berechnung von Koordinaten, die zufällig aussehen Allgemeine Java-Themen 5
B Berechnung eines sinh abbrechen, wenn 16. Nachkommastelle sich nicht mehr ändert Allgemeine Java-Themen 7
J Berechnung anhand einer XML-Datei Allgemeine Java-Themen 3
Private Void rekursive vs. iterative Lösung für Berechnung der Fakultät Allgemeine Java-Themen 12
S YUV to RGB (einfache Berechnung) Allgemeine Java-Themen 5
G Programm zur Berechnung von Summe, Median, Erwartungswert, usw von einem Array Allgemeine Java-Themen 7
C Bilder rotieren, Denkfehler in der Berechnung? Allgemeine Java-Themen 2
B Berechnung von Punkten/ If-else Strategie?! Allgemeine Java-Themen 51
T Berechnung in zweidimensionalem Array Allgemeine Java-Themen 3
X hashCode() Berechnung Allgemeine Java-Themen 5
R Tabelle - Berechnung der "Zeilenart" Allgemeine Java-Themen 2
P CRC Berechnung Allgemeine Java-Themen 2
J berechnung von potenzen und wurzel-ziehen ohne klasse " Allgemeine Java-Themen 14
D Problem bei einer Berechnung (pow?) Allgemeine Java-Themen 3
P Java-Programm zur Berechnung globaler Minimas und Maximas-ff Allgemeine Java-Themen 4
B Primzahlen Berechnung optimieren Allgemeine Java-Themen 7
A Probleme bei der Berechnung von Pi! Java Problem Allgemeine Java-Themen 2
M Servlet --> Berechnung --> Timeout vom Proxy oder IE!? Allgemeine Java-Themen 7
berserkerdq2 Wenn ich bei Intelij javafx mit maven importieren will, muss ich das in die pom.xml reintun, aber warum noch in module-info.java? Allgemeine Java-Themen 3
I Module-Info für Jar erzeugen Allgemeine Java-Themen 7
Robert Zenz Will mir jemand erklaeren wofuer man Module wirklich braucht? Allgemeine Java-Themen 38
M ist in der Module-Info "opens PACKAGENAME" bedenklich? Allgemeine Java-Themen 0
8u3631984 Generelle Log4j.xml für alle Module Allgemeine Java-Themen 5
L Compiler-Fehler Google Guice Module zur Laufzeit zusammenstellen und binden Allgemeine Java-Themen 4
looparda Best Practice Jigsaw module-info.java Allgemeine Java-Themen 1
sascha-sphw Java 9 module Zugriff auf eine resource einer anderen JAR Allgemeine Java-Themen 0
RalleYTN Java 9 Module mit Dependency auf Pre-Java 9 JARS Allgemeine Java-Themen 2
T Outputstream write() gets blocked using RXTX to communicate with HC-05 BT Module Allgemeine Java-Themen 10
F externe module. geht das in Java? Allgemeine Java-Themen 3
M Maven Wie Persistence Module aufteilen Allgemeine Java-Themen 6
M java Komonenten oder Module Allgemeine Java-Themen 3
L Grundsystem + Module = Wie realisieren? Allgemeine Java-Themen 5
F Jar-Module einbinden Allgemeine Java-Themen 3

Ähnliche Java Themen

Neue Themen


Oben