Сканируется цветное изображение размером 10 х 10 см. разрешающая сканера - 1200 х 1200 dpi, глубина цвета - 24 бита. какой информационный объем будет иметь полученный графический файл?
Дюйм = 25,4 мм 100 мм = 3,937 дюйма Количество точек по одному измерению изображения 3,937*1200 = 4724,409 округлим до 4724 шт количество точек в изображении 4724^2 = 22316176 При глубине цвета 24 на одну точку приходится 3 байта и объём файла составит 22316176*3 = 66948528 байт или 66948528/1024 = 65379,4 Кбайта или 63,847 Мбайта
Векторное представление заключается в описании элементов изображения математическими кривыми с указанием их цветов и заполняемости (например, круг и окружность – разные фигуры). Красный эллипс на белом фоне будет описан всего двумя математическими формулами – прямоугольника и эллипса соответствующих цветов, размеров и местоположения. Очевидно, такое описание займет значительно меньше места, чем в первом случае. Еще одно преимущество – качественное масштабирование в любую сторону. Увеличение или уменьшение объектов производится увеличением или уменьшением соответствующих коэффициентов в математических формулах. К сожалению векторный формат становится невыгодным при передаче изображений с большим количеством оттенков или мелких деталей (например, фотографий). Ведь каждый мельчайший блик в этом случае будет представляться не совокупностью одноцветных точек, а сложнейшей математической формулой или совокупностью графических примитивов, каждый из которых, является формулой. Это приводит к утяжелению файла. Кроме того, перевод изображения из растрового в векторный формат (например, программой Adobe Strime Line или Corel OCR-TRACE) приводит к наследованию последним невозможности корректного масштабирования в большую сторону. От увеличения линейных размеров количество деталей или оттенков на единицу площади больше не становится. Это ограничение накладывается разрешением вводных устройств (сканеров, цифровых фотокамер и др.).
Var n,t,s,d,e:integer; begin writeln(''); repeat writeln('Введите сумму в рублях<=1000'); readln(n); until (n>0) and (n<=1000); t:=n div 1000; n:=n-t*1000; s:=n div 100; n:=n-s*100; d:=n div 10; if d<>1 then begin n:=n-d*10; e:=n; end; case t of 1:write('тысяча '); end; if s>=0 then case s of 1:write('сто '); 2:write('двести '); 3:write('триста '); 4:write('четыресто '); 5:write('пятьсот '); 6:write('шестьсот '); 7:write('семьсот '); 8:write('восемьсот '); 9:write('девятьсот '); end; if d>=0 then case d of 1: case n of 10: write('десять '); 11: write('одиннадцать '); 12: write('двенадцать '); 13: write('тринадцать '); 14: write('четырнадцать '); 15: write('пятнадцать '); 16: write('шестнадцать '); 17: write('семнадцать '); 18: write('восемнадцать '); 19: write('девятнадцать '); end; 2:write('двадцать '); 3:write('тридцать '); 4:write('сорок '); 5:write('пятьдесят '); 6:write('шестьдесят '); 7:write('семьдесят '); 8:write('восемьдесят '); 9:write('девяносто '); end; if e>=0 then case e of 1:write('один '); 2:write('два '); 3:write('три '); 4:write('четыре '); 5:write('пять '); 6:write('шесть '); 7:write('семь '); 8:write('восемь '); 9:write('девять '); end; if (e=1) then write('рубль ') else if (e=0)or(e>4) then write('рублей ') else write('рубля '); end.
100 мм = 3,937 дюйма
Количество точек по одному измерению изображения
3,937*1200 = 4724,409 округлим до 4724 шт
количество точек в изображении
4724^2 = 22316176
При глубине цвета 24 на одну точку приходится 3 байта
и объём файла составит
22316176*3 = 66948528 байт
или
66948528/1024 = 65379,4 Кбайта
или
63,847 Мбайта