Char shortint или byte smallint или word smallint или word single string single или real
На практике все это в настоящее время - анахронизм. Для целочисленных значений обычно используют integer, для вещественных - real. Это позволяет во-первых, не загружать голову проблемой, что в какой-то момент результат операции не поместится в отведенные рамки, во-вторых, позволяет компилятору получать более быстрый код (данные не надо преобразовывать к какому-то типу для вычисления, а потом назад).
Если вычисляется (byte)*(smallint)+(integer) div (shortint), какого типа данные нужно выбирать компилятору для промежуточных значений и результата? А вот если все данные одного типа integer, то и думать не о чем.
majorovnatalya5
22.09.2021
Решение для PascalABC.NET 3.3 (сборка 1627 от 27.01.2018)
unit Akullove;
/// Площадь круга по известному радиусу r function SpaceCircle(r:real):=Pi*r*r;
/// Длина окружности по известному радиусу r function CircumFence(r:real):=2*Pi*r;
/// Площадь прямоугольника по значениям длины и ширины (a,b) function SpaceRectangle(a,b:real):=a*b;
/// Объема цилиндра по значениям его радиуса основания r и высоты h function VolCylinder(r,h:real):=Pi*r*r*h;
end.
Приведенный выше текст должен быть помещен в файл Akullove.pas.
shortint или byte
smallint или word
smallint или word
single
string
single или real
На практике все это в настоящее время - анахронизм. Для целочисленных значений обычно используют integer, для вещественных - real.
Это позволяет во-первых, не загружать голову проблемой, что в какой-то момент результат операции не поместится в отведенные рамки, во-вторых, позволяет компилятору получать более быстрый код (данные не надо преобразовывать к какому-то типу для вычисления, а потом назад).
Если вычисляется (byte)*(smallint)+(integer) div (shortint), какого типа данные нужно выбирать компилятору для промежуточных значений и результата? А вот если все данные одного типа integer, то и думать не о чем.