Усъвършенстването в Delphi 1
Усъвършенстването номера в изграждането на програмата е много важен механизъм. Тя ви позволява да се контролира точността на изчисленията, както и да повлияе на хода на алгоритъма в програмата.
В програмирането, има няколко възможни варианта за закръгляване - закръгляне до цялата или до определена точност на знака след десетичната запетая. Точно както го променя в зависимост от механизма на закръгляване - до най-близкото цяло число в посока на по-голяма цяло, или най-малкото цяло число. Поради всички тези задачи в Делфи, набор от математически функции. достъпно след добавяне на съответния раздел от описанието на библиотеката:
Усъвършенстването на стойност цяло число от
Усъвършенстването на близкото цяло число, използвайте следния набор от функции:
CEIL (X) - до по-голям число;
Подова (X) - в цяло число надолу;
Кръгла (X) - брой на цяло число до най-близкия край;
TRUNC (X) - брой на цяло число от otbarasyvaniya фракционна част.
Като опция тези функции използват фракционна стойност X, и се връщат цяло число. Примери на закръгляване номера:
// до най-близкото цяло число:
A: = CEIL (15.15); // А = 16
В: = CEIL (15.95); // В = 16
// до най-близкото цяло число:
A: = етаж (15.15); // А = 15
В: = етаж (15.95); // В = 15
// според математически правила за близкото цяло число:
A: = кръг (15.15); // А = 15
B: = кръг (15.15); // В = 16
C: = кръг (15.5); // С = 16
D: = кръг (15,4999); // D = 15
// изхвърли дробна част
A: = TRUNC (15.15); // А = 15
В: = TRUNC (15.95); // В = 15
* Въпреки сходството на резултатите, на подове и TRUNC има някои разлики. Етаж връща стойност от тип Integer, докато TRUNC - Int64, с по-голям диапазон от стойности. CEIL връща на същата стойност на цяло число. Кръгла връща Int64.
Усъвършенстването на предварително определена точност на десетични дроби
Най-удобна функция за тези изчисления е SimpleRoundTo. Тъй като параметрите е необходимо да се посочи фракционна номер и втория параметър отрицателно число. Вторият параметър показва броя на знака след десетичната запетая, необходими.
A: = SimpleRoundTo (15.1219, -1); // A = 15.1
B: = SimpleRoundTo (15.1219, -2); // В = 15.12
C: = SimpleRoundTo (15.1219, -3); // С = 15.122
D: = SimpleRoundTo (15.1219, -4); // D = 15.1219
Е: = SimpleRoundTo (15.1219, -5); // Е = 15.1219
Трябва да се отбележи, че закръглянето се случва според математически правила за най-близката стойност. Освен това, ако сте задали прецизността на по-голяма от първоначалната стойност, нули не заместват.
Други механизми закръгляне
Използването на една и съща функция SimpleRoundTo, можете да Изпълняват се закръгли на цяло, като втората нула параметър:
A: = SimpleRoundTo (15.1219, 0); // А = 15
Ако е посочено положителна стойност, дадена от закръгляне нагоре до най малко желания номер:
A: = SimpleRoundTo (1235.1219, 1); // А = 1240 - до десетки
B: = SimpleRoundTo (1235.1219, 2); // В = 1200 - до стотици
C: = SimpleRoundTo (1235.1219, 3); // С = 1,000 - хиляди
Frac (х) функция позволява да отхвърли цяло число, оставяйки само частична част:
A: = Frac (1235.1219); // А = 0.1219