Runden Sie eine Zahl auf die nächst höhere 10

Ich muß ein Diagramm erstellen, wo die Skalierung der Y-Achse ändert sich je nach Eingabe der Daten in das system. Denkbar, diese Skala könnte überall von 0-10, 0-100 oder sogar untere Grenze von tausend und einer oberen Grenze von Millionen.

Richtig determinethe Skalierung dieser Achse, die ich brauche, um arbeiten aus dem Verhältnis der Punkte in Pixel (basierend auf graph-Höhe/- Bereich).
Jetzt einen Graphen' - Achse starten Sie niemals auf den niedrigsten Wert ein, und gehen Sie auf die höchste, übliche Praxis ist, zu gehen, um die nächsten 2, 5 oder 10 (die oben für die Obere Grenze, und weiter unten für unteren) je nach Wertebereich.

Also was ich wissen möchte ist, wie das max-Wert aus dem Datensatz, und um es bis zu den nächsten 10.
für die Klärung, die input-Werte werden immer Integer sein.

was ich jetzt haben, ist dieser

        if ((rangeMax < 10) && (rangeMax > 5))
            rangeMax = 10;
        else if (rangeMax < 5)
            rangeMax = 5;

Ist nur sinnvoll, Werte für weniger als 10, und nicht erlaubt die notwendige Flexibilität, um wirklich dynamisch. Letztlich ist dieses Diagramm wird automatisch erstellt, während ein load-Ereignis, bei dem keine Benutzereingaben.

Ich gelesen habe ein bisschen herum, und die Leute reden über Dinge wie den modulo-operator (%), aber ich finde keine zuverlässigen Informationen über den Einsatz und die Rede von Math.Decke und Mathematik.Runde, aber diese gehen auf die nächste ganze Zahl, was nicht ganz da, und scheinen nicht zu viel helfen, wenn der Umgang mit ganzen zahlen sowieso.
Anregungen, Hinweise oder Hilfe sehr dankbar.

ich habe eine ähnliche Frage hier gestellt Wie kann ich das nächsthöhere Vielfache von 5 oder 10 aber ich weiß nicht, java, also kann ich nicht verstehen, was gesagt wurde.

Cheers

  • Positive zahlen oder auch negative? Wenn auch negative, sollten Sie Runden in Richtung null oder minus unendlich?
  • Auch, wenn Sie das schreiben in C# dann wissen, Java ist nicht wirklich notwendig. Aber zu Runde bis eine ganze Zahl auf das nächste Vielfache von 5 die Art und Weise Sie scheinen zu sein, beschreiben Sie es mit Ihren code-snippet, das Sie möchte hinzufügen 4, Division durch 5, dann multiplizieren Sie mit 5.
  • in den aktuellen Bereich, nur positive, aber wenn es funktioniert, dann ist das Konzept gewöhnt sich an anderer Stelle im system
  • möglich, Duplikat der Gebaut in .Net Algorithmus zu Runde den Wert auf die nächsten 10 Intervall
InformationsquelleAutor Archaon6044 | 2011-12-30
Schreibe einen Kommentar