Файлы с несжатыми растровыми изображениями хранятся на жестком диске полезным объемом

Файлы с несжатыми растровыми изображениями хранятся на жестком диске полезным объемом 1024 МБайт. В каждом файле хранятся только значения цветов пикселей изображения размером 480 на 320 пикселей с глубиной цвета 24 колочена на пиксель. Никакой дополнительной информации файлы с изображениями не содержат. Весь нужный объем жесткого диска разбит на блоки одинакового размера. Под хранение каждого файла отводится набор блоков так, что файл занимает целое число блоков. Если в конце заключительного блока, выделенного файлу, остается свободное место, оно не может быть использовано для хранения данных иных файлов. Весь нужный объем диска отводится только для хранения указанных файлов (информация о размещении файлов по блокам хранится раздельно и не заходит в нужный объем диска).
Вначале жесткий диск разбили на блоки, размером X КБайт, где X целое число.
Знаменито, что если жесткий диск разбить на блоки в 2 раза большего размера, то на диске будет вмещаться на 40 файлов меньше. Обусловьте, какой размер блока X был при изначальном разбиении. В ответе укажите целое число.

Задать свой вопрос
2 ответа
1 МБайт = 1024 КБайт; 1КБайт = 1024 б.
На 1 файл: 480*320*24 бит = 480*320*3 б = 450 Кбайт

var f,r,x,n,k1,k2:integer;
begin
f:=450;
r:=1024*1024;
x:=2;
while xlt;=r do begin
 n:=r div x;
 k1:=Ceil(f/x); k2:=Ceil(f/(2*x));
 if (n div k1) = ((n div 2) div k2+40)
   then begin
       writeln('1 разбиение: блок = ',x,' Кбайт, блоков на файл  ',k1,', файлов  ',n div k1);
       writeln('2 разбиение: блок = ',2*x,' Кбайт, блоков на файл  ',k2,', файлов  ',(n div 2) div k2);
        end;
 x:=2*x;
end;
end.

Итог:
1 разбиение: блок = 8 Кбайт, блоков на файл  57, файлов  2299
2 разбиение: блок = 16 Кбайт, блоков на файл  29, файлов  2259
Изображение занимает 480х320х24 колочена инфы. Это приравнивается 450х2 битов, что приравнивается 450кБ.
40 файлов- это 18000кБ.
На диске- 1048576кБ.
Если блоки стали в 2 раза больше, то пустопорожнего места, сответсвенно, тоже стало в 2 раза больше, на 18000кБ, означает до этого было тоже 18000кБ порожнего места(если прирастить его в 2 раза, то будет НА 18000кБ больше), 104857618000 даст 58(без остатка), означает изображений было тоже 58. После кажого изображения оставалось 18000/58 кБ пустопорожнего места(около 310 кБ), соответсвенно изображение с порожним местом занимало 18310кБ, что являлось размером блока

, оставишь ответ?
Имя:*
E-Mail:


Добро пожаловать!

Для того чтобы стать полноценным пользователем нашего портала, вам необходимо пройти регистрацию.
Зарегистрироваться
Создайте собственную учетную запить!

Пройти регистрацию
Авторизоваться
Уже зарегистрированны? А ну-ка живо авторизуйтесь!

Войти на сайт