Navigation

Eigene Programme

Codeschnipsel

Libraries

english

roundTo(), floorTo(), ceilTo()

Diese Methoden, eigentlich roundTo (long number, long roundingSteps) etc, sind Methoden, um Ganzzahlen zu einer Bestimmten Zahl zu runden. Nützlich ist dies z.B. wenn man Zahlen in bestimmte Bereiche einordnen will. Das Anwendungsbeispiel unten sollte zeigen, wie es funktioniert.

Ihr könnt die untenstehende Testklasse hier herunterladen: roundto.zip

Anwendungsbeispiele:

001: #include <iostream>
002: using namespace std;
003: 
004: long floorTo (long number, long roundingSteps) {
        //[...]
007: }
008: 
009: long ceilTo (long number, long roundingSteps) {
        //[...]
011: }
012: 
013: long roundTo (long number, long roundingSteps) {
       //[...]
020: } 
021: 
022: int main(int argc, char* argv[]) {
023:         int number1 = 43234;
024: 	cout << "number is " << number1 << endl;
025: 	cout << "number (floored to 5000) is\t" << floorTo((long)number1, 5000l) << endl;
026: 	cout << "number (ceiled to 5000) is\t" << ceilTo((long)number1, 5000l) << endl;
027: 	cout << "number (rounded to 5000) is\t" << roundTo((long)number1, 5000l) << endl << endl;
028: 
029: 	long number2 = 82168728l;
030: 	cout << "number is " << number2 << endl;
031: 	cout << "number (floored to 3000000) is\t" << floorTo((long)number2, 3000000l) << endl;
032: 	cout << "number (ceiled to 3000000) is\t" << ceilTo((long)number2, 3000000l) << endl;
033: 	cout << "number (rounded to 3000000) is\t" << roundTo((long)number2, 3000000l) << endl << endl;
034: 	
035: 	cout << "press enter to quit" << endl;
036: 	getchar();
037: }
038: 

Ausgaben:

number is 43234
number (floored to 5000) is     40000
number (ceiled to 5000) is      45000
number (rounded to 5000) is     45000

number is 82168728
number (floored to 3000000) is  81000000
number (ceiled to 3000000) is   84000000
number (rounded to 3000000) is  81000000

press enter to quit