монітор має роздільну здатність в графічному режимі 1200×800 пікселів, а в текстовому 16 рядків по 80 позицій обчислість роздільну здатність однієї текстової позиції
Char shortint или byte smallint или word smallint или word single string single или real
На практике все это в настоящее время - анахронизм. Для целочисленных значений обычно используют integer, для вещественных - real. Это позволяет во-первых, не загружать голову проблемой, что в какой-то момент результат операции не поместится в отведенные рамки, во-вторых, позволяет компилятору получать более быстрый код (данные не надо преобразовывать к какому-то типу для вычисления, а потом назад).
Если вычисляется (byte)*(smallint)+(integer) div (shortint), какого типа данные нужно выбирать компилятору для промежуточных значений и результата? А вот если все данные одного типа integer, то и думать не о чем.